Makine öğreniminde kalite metriği ne anlama geliyor? Sıralama eğitimi

GoTo yaz okulu giriş sınavı için problemi hazırlama sürecinde, Rusça'daki ana sıralama metriklerinin neredeyse hiçbir nitel açıklamasının olmadığını gördük (sorun, sıralama probleminin özel bir durumuyla ilgili - bir tavsiye algoritması oluşturmakla ilgili) . E-Contenta'da aktif olarak çeşitli sıralama ölçütleri kullanıyoruz, bu nedenle bu makaleyi yazarak bu yanlış anlamayı düzeltmeye karar verdik.

Sıralama görevi artık her yerde ortaya çıkıyor: belirli bir arama sorgusuna göre web sayfalarını sıralamak, haber akışını kişiselleştirmek, video, ürün, müzik önermek ... Tek kelimeyle, konu sıcak. Makine öğreniminde, kendi kendine öğrenebilen sıralama algoritmaları çalışmasıyla ilgilenen özel bir yön bile vardır - sıralamayı öğrenme. Tüm algoritmalar ve yaklaşımlar arasından en iyisini seçmek için kalitelerini nicel olarak değerlendirebilmek gerekir. En yaygın sıralama kalitesi metrikleri aşağıda tartışılacaktır.

Kısaca sıralama görevi hakkında

Sıralama, bir kümeyi sıralama görevidir elementler sebeplerinden dolayı alaka... Çoğu zaman, alaka düzeyi kimseyle ilgili olarak anlaşılır nesne... Örneğin, bir bilgi arama görevinde bir nesne bir istektir, öğeler çeşitli belgelerdir (onlara bağlantılar) ve alaka düzeyi bir belgenin bir talebe uygunluğudur, bir öneri görevinde bir nesne bir kullanıcıdır, öğeler bir veya bir önerilen diğer bir içerik (ürünler, videolar, müzik) ve alaka düzeyi, kullanıcının bu içeriği kullanma (satın alma/beğenme/görüntüleme) olasılığıdır.

Resmi olarak, N nesneyi ve M öğesini düşünün. Bir nesne için öğeleri sıralama algoritmasının çalışmasının sonucu, her öğeye, bir öğenin bir nesneyle alaka derecesini karakterize eden bir ağırlık atayan bir eşlemedir (ağırlık ne kadar yüksekse, nesne o kadar alakalı). Bu durumda, ağırlıklar kümesi, azalan ağırlık sırasına göre sıralamalarına bağlı olarak, öğelerin öğeleri kümesinde (eleman kümesinin sıralı olduğunu varsayıyoruz) bir permütasyon belirtir.

Sıralamanın kalitesini değerlendirmek için, algoritma sonuçlarının karşılaştırılabileceği belirli bir "standart" olması gerekir. Düşünün - belirli bir nesne için öğelerin "gerçek" alaka düzeyini (- öğe mükemmel, - tamamen alakasız) ve buna karşılık gelen permütasyonu (azalan sırada) karakterize eden referans alaka işlevi.

Bunu elde etmenin iki ana yolu vardır:
1. Tarihsel verilere dayalıdır. Örneğin, içerik önerileri söz konusu olduğunda, kullanıcının görüşlerini (beğeniler, satın almalar) alabilir ve ilgili öğelerin görüntülenen ağırlıklarını 1 () ve diğerleri için 0 atayabilirsiniz.
2. Uzman kararına dayalıdır. Örneğin, bir arama görevinde, her bir talep için, belgelerin taleple ilişkisini manuel olarak değerlendirecek bir değerlendirme ekibini dahil edebilirsiniz.

Yalnızca aşırı değerler aldığında: 0 ve 1, o zaman permütasyonun genellikle dikkate alınmadığını ve yalnızca ilgili öğelerin kümesinin dikkate alındığını belirtmekte fayda var.

Sıralama kalitesi metriğinin amacı- Algoritma ve karşılık gelen permütasyon tarafından elde edilen alaka düzeyi puanlarının ne ölçüde karşılık geldiğini belirlemek için doğru alaka değerleri. Ana metrikleri ele alalım.

Ortalama ortalama hassasiyet

K'de ortalama ortalama hassasiyet ( [e-posta korumalı]) en sık kullanılan sıralama kalitesi metriklerinden biridir. Nasıl çalıştığını anlamak için "temel bilgiler" ile başlayalım.

Not: "* kesinlik" metrikleri, yalnızca iki değer aldığı ikili problemlerde kullanılır: 0 ve 1.

K'de Hassasiyet

K'de hassasiyet ( [e-posta korumalı]) - K öğelerinde doğruluk - bir nesne için sıralama kalitesinin temel metriği. Sıralama algoritmamızın her bir öğe için alaka düzeyi puanları oluşturduğunu varsayalım. Aralarında en büyüğü olan ilk elemanları seçerek, ilgili olanların oranını hesaplayabilirsiniz. Bu tam olarak K'deki hassasiyetin yaptığı şeydir:

Not: Permütasyon sonucunda inci konuma gelen öğeyi kastediyoruz. Yani, - en büyük eleman, - ikinci en büyük eleman, vb.

K'de ortalama hassasiyet

K'de kesinlik, anlaşılması ve uygulanması kolay bir ölçümdür, ancak önemli bir dezavantajı vardır - "en üstteki" öğelerin sırasını dikkate almaz. Bu nedenle, on öğeden yalnızca birini tahmin edersek, nerede olduğu önemli değildir: her durumda ilk veya sonda. Aynı zamanda, ilk seçeneğin çok daha iyi olduğu açıktır.

Bu dezavantaj, sıralama metriği ile dengelenir. K'de ortalama hassasiyet ( [e-posta korumalı]) toplamına eşit olan [e-posta korumalı] 1'den K'ya k endekslerine göre sadece ilgili öğeler için K'ye bölünür:

Yani, üç öğeden yalnızca son sırada ilgiliysek, o zaman yalnızca ilk sırada olanı tahmin edersek ve her şey tahmin edilirse, o zaman.

şimdi ve [e-posta korumalı] dişlerimizde.

K'de ortalama ortalama hassasiyet

K'de ortalama ortalama hassasiyet ( [e-posta korumalı]) en sık kullanılan sıralama kalitesi metriklerinden biridir. V [e-posta korumalı] ve [e-posta korumalı] sıralama kalitesi tek bir nesne (kullanıcı, arama sorgusu) için değerlendirilir. Pratikte birçok nesne vardır: yüz binlerce kullanıcı, milyonlarca arama sorgusu vb. ile uğraşıyoruz. Fikir [e-posta korumalı] saymaktır [e-posta korumalı] her nesne ve ortalama için:

Not: Bu fikir, tüm kullanıcıların eşit derecede gerekli ve eşit derecede önemli olduğunu varsayarsak oldukça mantıklıdır. Durum böyle değilse, o zaman basit ortalama yerine, çarpma ile ağırlıklı bir ortalama kullanabilirsiniz. [e-posta korumalı] her nesnenin ağırlığına göre "önemi"ne karşılık gelir.

Normalleştirilmiş İndirgenmiş Kümülatif Kazanç

Normalleştirilmiş indirimli kümülatif kazanç (nDCG) başka bir yaygın sıralama kalitesi metriğidir. olduğu gibi [e-posta korumalı], temel bilgilerle başlayalım.

K'de Kümülatif Kazanç

Bir nesneyi ve en büyüğü olan öğeleri tekrar düşünün. K'de kümülatif kazanç ( [e-posta korumalı]) basit bir fikir kullanan temel bir sıralama metriğidir: bu üstteki öğeler ne kadar alakalıysa o kadar iyidir:

Bu metriğin bariz dezavantajları vardır: normalleştirilmemiştir ve ilgili öğelerin konumunu hesaba katmaz.

Unutmayın, aksine [e-posta korumalı], [e-posta korumalı] ikili olmayan referans alaka değerleri durumunda da kullanılabilir.

K'de İndirimli Kümülatif Kazanç

K'de indirimli kümülatif kazanç ( [e-posta korumalı]) - öğenin alaka düzeyini konum numarasının ters logaritmasına eşit bir ağırlıkla çarparak listedeki öğelerin sırasını dikkate alarak K'deki kümülatif kazancın değiştirilmesi:

Not: Yalnızca 0 ve 1 değerlerini alırsa ve formül daha basit bir biçim alırsa:

Logaritmanın bir indirgeme işlevi olarak kullanılması aşağıdaki sezgisel nedenlerle açıklanabilir: sıralama açısından, listenin başındaki konumlar, listenin sonundaki konumlardan çok daha farklıdır. Yani, bir arama motoru söz konusu olduğunda, 1 ile 11 arasındaki konumlar arasında tam bir uçurum vardır (sadece birkaç durumda, bir kullanıcı arama sonuçlarının ilk sayfasına girer) ve aralarında çok fazla fark yoktur. 101 ve 111 numaralı pozisyonlar - çok az kişi onlara ulaşır. Bu öznel düşünceler bir logaritma kullanılarak güzel bir şekilde ifade edilir:

İndirimli kümülatif kazanç, ilgili unsurların konumunu dikkate alma sorununu çözer, ancak sorunu yalnızca normalleştirme eksikliğiyle daha da kötüleştirir: sınırlar içinde değişirse, o zaman zaten tamamen net olmayan bir segmentte değerler alır. Aşağıdaki metrik bu sorunu çözmeyi amaçlamaktadır.

K'de Normalleştirilmiş İndirgenmiş Kümülatif Kazanç

Adından da tahmin edebileceğiniz gibi, K'de normalleştirilmiş indirimli kümülatif kazanç ( [e-posta korumalı]) - normalleştirilmiş bir versiyondan başka bir şey değil [e-posta korumalı]:

maksimum (I - ideal) değer nerede. Değerler aldığı konusunda hemfikir olduğumuz için, o zaman.

Böylece, öğelerin listedeki konumunun dikkate alınmasından miras alır ve aynı zamanda 0 ila 1 aralığında değerler alır.

Not: benzetme ile [e-posta korumalı] hesaplanabilir, tüm nesnelerin ortalaması alınabilir.

Ortalama karşılıklı sıralama

Ortalama karşılıklı sıra (MRR) başka bir yaygın olarak kullanılan sıralama kalitesi metriğidir. Aşağıdaki formülle verilir:

nerede - karşılıklı sıralama inci nesne için - özünde çok basit bir değere eşit ilk doğru tahmin edilen elemanın ters sıralaması.

Ortalama karşılıklı sıra, aralıkta değişir ve öğelerin konumunu hesaba katar. Ne yazık ki, bunu yalnızca bir öğe için yapıyor - ilk doğru tahmin, sonrakilere dikkat etmiyor.

Sıra korelasyon metrikleri

Ayrı olarak, katsayılardan birine dayalı olarak sıralama kalitesi metriklerini vurgulamaya değer. sıra korelasyonu... İstatistikte, bir sıra korelasyon katsayısı, değerlerin kendilerini değil, yalnızca sıralarını (sırasını) dikkate alan bir korelasyon katsayısıdır. En yaygın iki sıra korelasyon katsayısını düşünün: Spearman's ve Kendall's.

Kendall'ın sıra korelasyon katsayısı

Bunlardan ilki, tutarlılık hesaplamasına dayanan Kendall korelasyon katsayısıdır.
(ve uyumsuz) permütasyon çiftleri - permütasyonların aynı (farklı) sıraya atandığı eleman çiftleri:

Spearman's rank korelasyon katsayısı

İkincisi - Spearman'ın sıra korelasyon katsayısı - esasen, sıraların değerleri üzerinde hesaplanan Pearson korelasyonundan başka bir şey değildir. Bunu doğrudan saflardan ifade eden oldukça uygun bir formül var:

Pearson korelasyon katsayısı nerede.

Sıra korelasyon ölçümlerinin zaten bildiğimiz bir dezavantajı vardır: öğelerin konumunu hesaba katmazlar (hatta [e-posta korumalı] dan beri korelasyon, en yüksek dereceye sahip K öğeleri için değil, tüm öğeler için hesaplanır). Bu nedenle, pratikte çok nadiren kullanılırlar.

Basamaklı Metrikler

Bu noktaya kadar, kullanıcının (daha sonra nesnenin özel bir durumunu - kullanıcıyı ele alacağız) kendisine sunulan öğeleri nasıl incelediğini araştırmadık. Aslında, örtük olarak her bir öğeyi görüntülemenin bağımsız diğer unsurları görmekten - bir tür "saflık". Bununla birlikte, pratikte, öğeler genellikle kullanıcı tarafından birer birer görüntülenir ve kullanıcının bir sonraki öğeyi görüp görmediği önceki öğelerden memnuniyetlerine bağlıdır. Bir örnek düşünün: bir arama sorgusuna yanıt olarak, sıralama algoritması kullanıcıya birkaç belge sundu. 1. ve 2. konumlardaki belgelerin son derece alakalı olduğu ortaya çıkarsa, kullanıcının 3. konumdaki belgeyi görüntüleme olasılığı küçüktür, çünkü ilk ikisinden oldukça memnun kalacak.

Kendisine önerilen öğelerin incelenmesinin sırayla gerçekleştiği ve öğeyi görme olasılığının öncekilerin uygunluğuna bağlı olduğu benzer kullanıcı davranışı modelleri denir. basamaklı.

Beklenen karşılıklı sıralama

Beklenen karşılıklı sıralama (ERR)- şelale modeline dayalı bir sıralama kalitesi metriği örneği. Aşağıdaki formülle verilir:

burada rütbe azalan sırada anlaşılır. Bu metrikle ilgili en ilginç şey olasılıklardır. Bunları hesaplarken, kademeli modelin varsayımları kullanılır:

kullanıcının sıralamadaki nesneden memnun olma olasılığı nerede. Bu olasılıklar değerlere göre hesaplanır. Bizim durumumuzda basit bir seçenek düşünebiliriz:

hangi olarak okunabilir: elemanın pozisyondaki gerçek alaka düzeyi Sonuç olarak, işte bazı yararlı bağlantılar.

Her listenin içindeki öğelerde. Kısmi sıra genellikle her öğe için bir puan belirtilerek belirtilir (örneğin, "ilgili" veya "ilgili değil"; ikiden fazla not mümkündür). Sıralama modelinin amacı, yeni veriler için eğitim kümesindeki sıralama yöntemini (bir anlamda) en iyi şekilde tahmin etmek ve genelleştirmektir.

Sıralama öğrenme, 2000'li yıllarda makine öğrenmesi yöntemlerinin sıralama problemlerine uygulanmasında bilgi erişimi alanına ilginin ortaya çıkmasıyla ortaya çıkmış, hala oldukça genç, hızla gelişen bir araştırma alanıdır.

Üniversite YouTube'u

  • 1 / 5

    Sıralama modelinin eğitimi sırasında ve çalışması sırasında, her bir belge talebi çifti, belgenin özelliklerini, talebi ve bunların ilişkisini karakterize eden sayısal bir sıralama özellikleri vektörüne (sıralama faktörleri veya sinyalleri de denir) çevrilir. Bu tür işaretler üç gruba ayrılabilir:

    Aşağıda, teknikte yaygın olarak bilinen LETOR veri kümesinde kullanılan bazı sıralama özelliklerine örnekler verilmiştir:

    • Ölçü değerleri TF, TF-IDF, BM25 ve belgenin çeşitli alanlarının isteğine uygun dil modeli (başlık, URL, gövde metni, bağlantı metni);
    • Belge bölgelerinin uzunlukları ve IDF toplamları;
    • PageRank ve HITS gibi çeşitli bağlantı sıralama algoritmaları tarafından elde edilen belge sıraları.

    Sıralama kalitesi metrikleri

    Değerlendiricilerle bir örnek üzerinde sıralama algoritmalarının performansını değerlendiren ve karşılaştıran birkaç ölçü vardır. Çoğu zaman, sıralama modelinin parametreleri, bu metriklerden birinin değerini maksimize edecek şekilde ayarlanma eğilimindedir.

    Metrik örnekleri:

    algoritma sınıflandırması

    "Learning to Rank to Rank for Information Retrieval" adlı makalesinde ve tematik konferanslardaki konuşmalarında, Microsoft Research Asia'dan Tai-Yang Liu, öğretim sıralaması sorununu çözmek için mevcut yöntemleri analiz etti ve kullanılan girdi temsiline bağlı olarak bunların sınıflandırmasını üç yaklaşımda önerdi. . veri ve ceza işlevleri:

    Noktasal yaklaşım

    Notlar (düzenle)

    1. Tie-Yan Liu (2009), Bilgi Erişimi için Sıralamayı Öğrenmek, Bilgi Erişiminde Temeller ve Eğilimler: Cilt. 3: Hayır 3, s. 225-331, ISBN 978-1-60198-244-5, DOI 10.1561 / 1500000016... T. Lew'in WWW 2009'daki konuşmasından slaytlar mevcuttur.

    Merhaba Habr!

    Makine öğrenimi görevlerinde, modellerin kalitesini değerlendirmek ve çeşitli algoritmaları karşılaştırmak için metrikler kullanılır ve bunların seçimi ve analizi, bir veri satıcısının işinin vazgeçilmez bir parçasıdır.

    Bu yazıda, sınıflandırma problemlerinde bazı kalite kriterlerine bakacağız, bir metrik seçerken nelerin önemli olduğunu ve nelerin yanlış gidebileceğini tartışacağız.

    Sınıflandırma problemlerinde metrikler

    Yararlı özellikleri göstermek için sklearn ve metriklerin görsel bir temsili olarak, veri setimizi kursun ilk makalesinde tanıştığımız bir telekom operatörünün müşteri kaybı üzerinde kullanacağız.

    Gerekli kütüphaneleri yükleyelim ve verilere bakalım

    Pandaları pd olarak içe aktarın matplotlib.pyplot'u matplotlib.pylab'dan plt olarak içe aktarın rc'yi içe aktarın, çizin seaborn'u sklearn.preprocessing'den sns olarak içe aktarın LabelmbleEncoder, OneHotEncoder sklearn.model_selection'dan sklearn.linear_modelression'dan cross_val_score'u içe aktarın sklearn.model_selection'dan import train_test_split df = pd.read_csv ("../../ data / telecom_churn.csv")

    Df.kafa (5)

    Veri ön işleme

    # İkili sütunları eşleştirelim # ve durumu kukla kodlama ile kodlayalım (basitlik için bunu ahşap modeller için yapmamak daha iyidir) d = ("Evet": 1, "Hayır": 0) df ["Uluslararası plan"] = df [" Uluslararası plan "]. Harita (d) df [" Sesli posta planı "] = df [" Sesli posta planı "]. Harita (d) df [" Churn "] = df [" Churn "]. Astype (" int64 " ) le = LabelEncoder () df ["Durum"] = le.fit_transform (df ["Durum"]) ohe = OneHotEncoder (seyrek = Yanlış) encoding_state = ohe.fit_transform (df ["Durum"]. değerler .reshape (- 1, 1)) tmp = pd.DataFrame (encoding_state, column = ["state" + str (i) for i in range (encoding_state.shape)]) df = pd.concat (, axis = 1)

    Doğruluk, kesinlik ve hatırlama

    Metriklerin kendilerine geçmeden önce, bu metrikleri sınıflandırma hataları açısından tanımlamak için önemli bir kavramı tanıtmak gerekir - karışıklık matrisi(hata matrisi).
    İki sınıfımız ve her nesnenin sınıflardan birine ait olduğunu tahmin eden bir algoritmamız olduğunu varsayalım, o zaman sınıflandırma hatası matrisi şöyle görünecektir:

    Gerçek Pozitif (TP) Yanlış Pozitif (FP)
    Yanlış Negatif (FN) Gerçek Negatif (TN)

    bu, algoritmanın nesne üzerindeki yanıtıdır ve

    Bu nesnedeki gerçek sınıf etiketi.
    Dolayısıyla, iki tür sınıflandırma hatası vardır: Yanlış Negatif (FN) ve Yanlış Pozitif (FP).

    Algoritma eğitimi ve hata matrisinin oluşturulması

    X = df.drop ("Churn", eksen = 1) y = df ["Churn"] # Örneği tren ve teste bölün, tüm metrikler test veri kümesinde değerlendirilecektir X_train, X_test, y_train, y_test = train_test_split ( X, y , stratify = y, test_size = 0.33, random_state = 42) # Yerel lojistik regresyonu eğitin lr = LogisticRegression (random_state = 42) lr.fit (X_train, y_train) # Sklearn'den hata matrisi oluşturmak için işlevi kullanın dokümantasyon def plot_confusion_matrix (cm, sınıflar , normalize = False, title = "(! LANG: Karışıklık matrisi)", cmap=plt.cm.Blues): """ This function prints and plots the confusion matrix. Normalization can be applied by setting `normalize=True`. """ plt.imshow(cm, interpolation="nearest", cmap=cmap) plt.title(title) plt.colorbar() tick_marks = np.arange(len(classes)) plt.xticks(tick_marks, classes, rotation=45) plt.yticks(tick_marks, classes) if normalize: cm = cm.astype("float") / cm.sum(axis=1)[:, np.newaxis] print("Normalized confusion matrix") else: print("Confusion matrix, without normalization") print(cm) thresh = cm.max() / 2. for i, j in itertools.product(range(cm.shape), range(cm.shape)): plt.text(j, i, cm, horizontalalignment="center", color="white" if cm > thresh else "black") plt.tight_layout() plt.ylabel("True label") plt.xlabel("Predicted label") font = {"size" : 15} plt.rc("font", **font) cnf_matrix = confusion_matrix(y_test, lr.predict(X_test)) plt.figure(figsize=(10, 8)) plot_confusion_matrix(cnf_matrix, classes=["Non-churned", "Churned"], title="karışıklık matrisi") plt.savefig("conf_matrix.png") plt.show()!}

    Kesinlik

    Sezgisel, açık ve neredeyse kullanılmayan bir metrik doğruluktur - algoritmanın doğru cevaplarının yüzdesi:

    Bu metrik, eşit olmayan sınıflarla ilgili problemlerde işe yaramaz ve bir örnekle göstermek kolaydır.

    Bir spam posta filtresinin performansını değerlendirmek istediğimizi varsayalım. 90'ı sınıflandırıcımızın doğru tanımladığı (Doğru Negatif = 90, Yanlış Olumlu = 10) ve 5'i sınıflandırıcının da doğru tanımladığı 10 istenmeyen e-posta olmak üzere 100 istenmeyen e-postamız var (Doğru Olumlu = 5, Yanlış Negatif = 5) .
    Sonra doğruluk:

    Ancak, tüm e-postaların istenmeyen posta olmadığını tahmin edersek daha yüksek bir doğruluk elde ederiz:

    Aynı zamanda, başlangıçta spam iletilerini belirlemek istediğimiz için modelimizin kesinlikle hiçbir tahmin gücü yoktur. Bunun üstesinden gelmek için, tüm sınıflar için ortak bir metrikten sınıfların kalitesinin ayrı göstergelerine geçiş bize yardımcı olacaktır.

    Hassasiyet, geri çağırma ve F-ölçümü

    Algoritmanın performansını sınıfların her birinde ayrı ayrı değerlendirmek için kesinlik ve geri çağırma metriklerini sunuyoruz.

    Kesinlik, sınıflandırıcı tarafından pozitif olarak adlandırılan ve aynı zamanda gerçekten pozitif olarak adlandırılan nesnelerin oranı olarak yorumlanabilir ve geri çağırma, algoritmanın bulduğu pozitif bir sınıfın tüm nesnelerinden pozitif bir sınıfın nesnelerinin oranını gösterir.

    Tüm nesneleri tek bir sınıfa yazmamıza izin vermeyen kesinlik girişidir, çünkü bu durumda Yanlış Pozitif düzeyinde bir artış elde ederiz. Geri çağırma, algoritmanın genel olarak belirli bir sınıfı algılama yeteneğini gösterir ve kesinlik, bu sınıfı diğer sınıflardan ayırt etme yeteneğini gösterir.

    Daha önce de belirttiğimiz gibi, iki tür sınıflandırma hatası vardır: Yanlış Pozitif ve Yanlış Negatif. İstatistikte, ilk hata tipine Tip I hata, ikinci tip hata ise Tip II hata olarak adlandırılır. Abone kaybını belirleme sorunumuzda, birinci tür hata sadık bir abonenin giden bir abone olarak kabul edilmesi olacaktır, çünkü sıfır hipotezimiz abonelerin hiçbirinin dışarı akmadığıdır ve biz bu hipotezi reddediyoruz. Buna göre, ikinci türden bir hata, giden abonenin "atlanması" ve sıfır hipotezinin hatalı kabulü olacaktır.

    Kesinlik ve geri çağırma, doğruluğun aksine, sınıfların oranına bağlı değildir ve bu nedenle dengesiz numune koşullarında uygulanabilir.
    Gerçek uygulamada genellikle görev, bu iki ölçü arasındaki en uygun (müşteri için) dengeyi bulmaktır. Klasik bir örnek, müşteri kaybını belirleme sorunudur.
    Belli ki bulamıyoruz hepsinden giden müşteriler ve bir tek onların. Ancak müşteriyi elde tutmak için strateji ve kaynağı belirledikten sonra, gerekli kesinlik ve geri çağırma eşiklerini seçebiliriz. Örneğin, çağrı merkezi kaynağımızla sınırlı olduğumuz için yalnızca yüksek getirili müşterileri veya rapor verme olasılığı daha yüksek olan müşterileri elde tutmaya odaklanabilirsiniz.

    Genellikle, bir algoritmanın hiperparametrelerini optimize ederken (örneğin, bir ızgara üzerinde yineleme durumunda GridAramaCV), iyileştirilmesini test örneğinde görmeyi umduğumuz bir metrik kullanılır.
    Kesinliği ve geri çağırmayı toplu bir kalite ölçüsünde birleştirmenin birkaç farklı yolu vardır. F ölçüsü (genel olarak

    ) - harmonik ortalama kesinlik ve hatırlama:

    bu durumda, metrikteki doğruluğun ağırlığını belirler ve

    bu harmonik ortalamadır (2 çarpanıyla, böylece kesinlik = 1 ve hatırlama = 1 durumunda,

    )
    F-ölçü, tamlık ve doğruluk bire eşit olduğunda maksimum değerine ulaşır ve bağımsız değişkenlerden biri sıfıra yakınsa sıfıra yakındır.
    Sklearn'in kullanışlı bir _metrics.classification işlevi vardır bildiri her sınıf için geri çağırma, kesinlik ve F-ölçüsünün yanı sıra her sınıfın örnek sayısı.

    Rapor = sınıflandırma_raporu (y_test, lr.predict (X_test), target_names = ["Churned", "Churned"]) yazdır (rapor)

    sınıf hassas hatırlamak f1-skoru destek
    olmayan 0.88 0.97 0.93 941
    çalkalanmış 0.60 0.25 0.35 159
    ort / toplam 0.84 0.87 0.84 1100

    Burada, gerçek uygulamada geçerli olan dengesiz sınıflarla ilgili problemlerde, sınıfların oranını eşitlemek için genellikle veri setinin yapay modifikasyonu tekniklerine başvurmanın gerekli olduğu belirtilmelidir. Birçoğu var ve onlara dokunmayacağız, bazı yöntemlere bakabilir ve işinize uygun olanı seçebilirsiniz.

    AUC-ROC ve AUC-PR

    Algoritmanın gerçek cevabını (kural olarak, bir sınıfa ait olma olasılığı, ayrıca SVM'ye bakınız) ikili etikete dönüştürürken, 0'ın 1 olduğu bir eşik seçmeliyiz. 0,5'e eşit bir eşik doğal ve yakın görünüyor. , ancak örneğin yukarıda belirtilen sınıf dengesi eksikliğinde her zaman optimal olmadığı ortaya çıkıyor.

    Modeli belirli bir eşiğe bağlı kalmadan bir bütün olarak değerlendirmenin yollarından biri AUC-ROC (veya ROC AUC) - alan ( A rea sen alt C urve) hata eğrisinin altında ( r alıcı Ö perating C karakteristik eğri). Bu eğri, True Positive Rate (TPR) ve False Positive Rate (FPR) koordinatlarında (0,0) ile (1,1) arasında bir çizgidir:

    TPR'yi zaten biliyoruz, bu tamlıktır ve FPR, algoritmanın yanlış tahmin ettiği negatif sınıftaki nesnelerin ne kadarını gösterir. İdeal olarak, sınıflandırıcı hata yapmadığında (FPR = 0, TPR = 1), eğrinin altındaki alanı bire eşit alacağız, aksi halde sınıflandırıcı sınıf olasılıklarını rasgele çıktıladığında, AUC-ROC 0,5 olma eğiliminde olacaktır. sınıflandırıcı aynı miktarda TP ve FP verecektir.
    Grafikteki her nokta, belirli bir eşiğin seçimine karşılık gelir. Bu durumda eğrinin altındaki alan algoritmanın kalitesini gösterir (daha fazlası daha iyidir), ayrıca eğrinin dikliği de önemlidir - FPR'yi en aza indirerek TPR'yi en üst düzeye çıkarmak istiyoruz, bu da eğrimizin ideal olarak eğilmesi gerektiği anlamına gelir. (0,1) noktası.

    ROC eğrisi çizim kodu

    Sns.set (font_scale = 1.5) sns.set_color_codes ("sessiz") plt.figure (figsize = (10, 8)) fpr, tpr, eşikler = roc_curve (y_test, lr.predict_proba (X_test) [:, 1], pos_label = 1) lw = 2 plt.plot (fpr, tpr, lw = lw, label = "ROC eğrisi") plt.plot (,) plt.xlim () plt.ylim () plt.xlabel ("Yanlış Pozitif Oran" ") plt.ylabel (" True Positive Rate ") plt.title (" ROC eğrisi ") plt.savefig (" ROC.png ") plt.show ()

    AUC-ROC kriteri dengesiz sınıflara karşı dirençlidir (spoiler: ne yazık ki, ancak her şey o kadar açık değildir) ve rastgele seçilen bir pozitif nesnenin sınıflandırıcı tarafından daha yüksek derecelendirilme olasılığı (daha yüksek olma olasılığı daha yüksek olacaktır) olarak yorumlanabilir. pozitif) rastgele seçilmiş bir negatif nesneden daha fazladır.

    Şu problemi ele alalım: 1 milyon belgeden 100 ilgili belgeyi seçmemiz gerekiyor. İki algoritmada ustalaştık:

    • algoritma 1 90'ı ilgili olmak üzere 100 belge döndürür. Böylece,
    • Algoritma 2 90'ı ilgili olan 2000 belgeyi döndürür. Böylece,

    Büyük olasılıkla, rakibine kıyasla çok az Yanlış Pozitif üreten ilk algoritmayı seçerdik. Ancak bu iki algoritma arasındaki Yanlış Pozitif Oran farkı aşırı boyutta küçük - sadece 0,0019. Bu, AUC-ROC'nin Gerçek Negatif'e göre Yanlış Pozitif oranını ölçmesinin bir sonucudur ve ikinci (daha büyük) sınıfın bizim için çok önemli olmadığı problemlerde, algoritmaları karşılaştırırken tamamen yeterli bir resim vermeyebilir. .

    Durumu düzeltmek için eksiksizliğe ve doğruluğa dönelim:

    • algoritma 1
    • Algoritma 2

    Burada, iki algoritma arasındaki önemli bir fark zaten göze çarpıyor - 0,855 doğruluk!

    Hassasiyet ve geri çağırma da eğriyi oluşturmak ve AUC-ROC gibi onun altındaki alanı bulmak için kullanılır.

    Burada, küçük veri kümelerinde, PR eğrisinin altındaki alanın, yamuk yöntemi kullanılarak hesaplandığından aşırı iyimser olabileceği, ancak genellikle bu tür görevlerde yeterli veri bulunduğu belirtilebilir. AUC-ROC ve AUC-PR arasındaki ilişki hakkında ayrıntılar için buraya bakın.

    Lojistik Kayıp

    Lojistik kayıp fonksiyonu şu şekilde tanımlanır:

    bu algoritmanın cevabı

    Ohm nesnesi,

    gerçek sınıf etiketi

    Ohm nesnesi ve

    örnek boyut.

    Lojistik kayıp fonksiyonunun matematiksel yorumuyla ilgili ayrıntılar, doğrusal modeller hakkındaki yazı çerçevesinde zaten yazılmıştır.
    Bu ölçüm nadiren iş gereksinimlerinde, ancak genellikle kaggle'daki görevlerde görünür.
    Sezgisel olarak, mantık küçültme, yanlış tahminleri cezalandırarak doğruluğu en üst düzeye çıkarma görevi olarak düşünülebilir. Bununla birlikte, sınıflandırıcının yanlış cevaba olan güveni için logloss'un son derece güçlü bir şekilde cezalandırıldığına dikkat edilmelidir.

    Bir örnek düşünelim:

    Def logloss_crutch (y_true, y_pred, eps = 1e-15): return - (y_true * np.log (y_pred) + (1 - y_true) * np.log (1 - y_pred)) print ("Belirsiz sınıflandırma% f ile Logloss "% logloss_crutch (1, 0,5)) >> Sınıflandırması belirsiz Logloss 0.693147 yazdır (" Kendinden emin sınıflandırma ve doğru cevap% f "% logloss_crutch (1, 0.9)) >> Güvenilir sınıflandırma ve doğru cevap ile Logloss 0.105361 yazdır (" Güvenilir sınıflandırma ve Yanlış cevap% f " ile Logloss logloss_crutch (1, 0.1)) >> Güvenilir sınıflandırma ve Yanlış cevap ile Logloss 2.302585

    Yanlış bir cevap ve kendinden emin bir sınıflandırma ile mantık kelimesinin nasıl dramatik bir şekilde büyüdüğüne dikkat edin!
    Sonuç olarak, bir nesnedeki bir hata, genel numune hatasının önemli ölçüde bozulmasına neden olabilir. Bu tür nesneler genellikle aykırı değerlerdir ve filtrelenmeleri veya ayrı olarak değerlendirilmeleri gerektiği unutulmamalıdır.
    Bir mantık grafiği çizerseniz her şey yerine oturur:

    Algoritmanın temel gerçeği = 1 ile yanıtı sıfıra yaklaştıkça hata değerinin arttığı ve eğrinin daha dik büyüdüğü görülebilir.

    Özetliyor:

    • Çok sınıflı bir sınıflandırma durumunda, her bir sınıfın metriklerini dikkatlice izlemeniz ve kararın mantığını takip etmeniz gerekir. görevler metriği optimize etmek yerine
    • Eşit olmayan sınıflar durumunda, eğitim için bir sınıf dengesi ve sınıflandırmanın kalitesini doğru bir şekilde yansıtacak bir metrik seçmek gerekir.
    • Metrik seçimi, konu alanına odaklanarak, verileri önceden işleyerek ve muhtemelen bölümlere ayırarak (zengin ve fakir müşterilere bölünme durumunda olduğu gibi) yapılmalıdır.

    kullanışlı bağlantılar

    1. Evgeny Sokolov'un kursu: Model seçimi üzerine seminer (regresyon problemlerinin metrikleri hakkında bilgi var)
    2. A.G.'den AUC-ROC ile ilgili sorunlar Dyakonova
    3. Kaggle'daki diğer metrikler hakkında daha fazla bilgi edinebilirsiniz. Her metriğin açıklamasına, kullanıldığı yarışmaya bir bağlantı eklendi
    4. Bogdan Melnik namı diğer ld86 tarafından dengesiz numuneler üzerine eğitim hakkında sunum

    UDC 519.816

    S.V. SEMENIKHIN L.A. DENISOVA

    Omsk Devlet Teknik Üniversitesi

    RANGE MAKİNE ÖĞRENME YÖNTEMİ

    YRSO METRİK İÇİN DEĞİŞTİRİLMİŞ BİR GENETİK ALGORİTMAYA DAYALI

    Bilgi arama sonuçları sayfasındaki belgeleri sıralama sorunu ve sıralamanın makine öğrenimi sorunları göz önünde bulundurulur. Değiştirilmiş bir genetik algoritmaya dayalı NOCO kalite metriğini kullanarak sıralama fonksiyonunu optimize etmek için bir yaklaşım önerilmiştir. Geliştirilen algoritmaların araştırması yapıldı (LETO ^ test koleksiyonlarında ve bunların makine öğrenimi sıralaması için etkinlikleri gösterildi.

    Anahtar Kelimeler: bilgi alma, makine öğrenimi sıralaması, alaka düzeyi, optimizasyon, genetik algoritmalar.

    1. Giriş. Modern bilgi erişim sistemlerinde (ISS), sistem tarafından işletilen veri hacimleri o kadar büyüktür ki, temel görev, bir kullanıcının arama sorgusuna yanıt olarak ilgili belgeleri sıralamaktır. ISS'nin geliştirilmesinin bu aşamasında, makine öğrenimi (ML) sıralaması büyük ilgi görmektedir. Sayısal yöntemlere (özellikle gradyan yöntemlerine) veya analitik hesaplamalara dayanan ML'ye yönelik mevcut yaklaşımların, bilgi erişiminin kalitesini ve ilgili belgeleri sıralamak için gereken süreyi önemli ölçüde etkileyen bir dizi dezavantajı vardır.

    Araştırmanın başında, çoğu gradyan iniş yöntemini kullanan makine öğrenimi sıralamasına yönelik liste yaklaşımları dikkate alındı. Ele alınan çalışmalarda ML, arama kalitesi metriklerinin (SEQ) optimizasyonuna indirgenir, ancak yalnızca sürekli işlevlerle temsil edilen metrikler kullanılır. Bu sınırlama genellikle optimizasyonun bir sonucu olarak, sıralama fonksiyonunun ayrık fonksiyonlar olan birçok önemli kabul edilen gösterge (DCG, nDCG, Graded Mean Reciprocal Rank, vb.) için daha düşük puanlara sahip olmasına yol açar. Makale, referans değerleri olarak uzman uygunluk değerlendirmelerini kullanarak Huber'in kayıp fonksiyonunu en aza indirmek için sıralama öğretiminde genetik algoritmaların (GA) kullanımını önermektedir. Bilgi alma kalitesinin ayrık ölçümlerinin optimizasyonuna dayalı bir makine öğrenimi yaklaşımı da önerildi.

    2. Makine öğrenimi sıralaması sorununun ifadesi. Çoğu modern bilgi erişim sisteminde, sıralama işlevi n basit sıralama işlevi (PRF) temelinde oluşturulur ve şu şekilde yazılabilir:

    burada SRF¡, d belgesi ve q sorgusu için ¡'inci basit sıralama fonksiyonudur, WCi ¡'inci basit sıralama fonksiyonunun ağırlık katsayısıdır, n, sıralama sistemindeki PRF'lerin sayısıdır.

    Sıralama için makine öğrenimi sırasında, bir dizi arama belgesi B ve test koleksiyonu LBTOA'dan O sorguları kullanıldı. Tüm deO istekleri için, her bir deD belgesi ile bir çift oluşturulur. Bu tür her bir çift için IRS, arama sonuçlarını sıralamak için kullanılan alaka düzeylerini belirler. Sıralamanın kalitesini değerlendirmek için sistem, her bir belge-sorgu çifti ^, e) için referans uygunluk değerleri E gerektirir. Bu amaçlar için, ilgililik konusunda uzman değerlendirmeleri kullanılır.

    Çalışma için, sıralamanın bir vektör optimallik kriteri oluşturan N = 5 basit sıralama fonksiyonu SRFi (WC) l г = 1, N bazında yapıldığı bir ISS kullandık:

    burada WCе (WC) değişken parametrelerin vektörüdür; (ШС), (ЯБ) sırasıyla parametre ve vektör kriterlerinin uzaylarıdır.

    ML sıralaması için genetik algoritmaların uygulanması, nDCG gibi ayrık kalite ölçümlerini en üst düzeye çıkarmayı mümkün kılar. Arama motorunda belgeleri sıralamak için nDCG metriği şu ifadeye göre belirlenir:

    DCG @ n = X 2 ---

    RF (q, d) = X WC. ■ SRF., I = 1 1 1

    (p) notu, sonuçlar listesinde p konumunda bulunan belgeye uzmanlar tarafından verilen ortalama alaka puanıdır, not; 1 / log2 (2 + p) belgenin konumuna bağlı bir katsayıdır (ilk belgelerin ağırlığı daha fazladır).

    Daha sonra NDCG'nin normalleştirilmiş versiyonu şu şekilde yazılacaktır:

    N000 @ n = RSD @ n / g,

    burada r, mümkün olan maksimum 0С değerine eşit olan normalleştirme faktörüdür. [e-posta korumalı] n belirli bir sorgu için (yani ideal sıralamanın OOO'sine eşittir).

    Böylece, OSS metriğini optimize etmek (maksimize etmek) için amaç fonksiyonu (NM) aşağıdaki biçimde yazılacaktır.

    3. Arama sonuçlarının sıralamasının kalitesine ilişkin metrikler. Belgeleri arama sonuçlarında sıralarken, kalite ölçütleri ölçüt görevi görür. Bilgi erişim sistemlerinin kalitesini değerlendirmek için genel kabul görmüş metrikler listesinden, bilgi erişiminin doğruluğunu, uygunluğunu ve eksiksizliğini değerlendiren üç ana metrik seçilmiştir.

    1. Bilgi alımının doğruluğu için kriter

    a, bulunan ilgili belgelerin sayısı olduğunda, b, yanlışlıkla ilgili olduğu düşünülen belgelerin sayısıdır.

    2. Bilgi alımının uygunluğunu değerlendiren Bpref kriteri, R ile ilgili belgelere sahip bir işi işlemek için kullanılır ve formülle hesaplanır.

    Bpref = - ^ (1 - Non Re ¡Önce (r) / R). (4)

    Burada r, bilinen bir ilgili belgeyi ve NonRelBefore (r) - r'den daha yüksek derecelendirilen bilinen alakasız belgelerin sayısıdır (hesaplamada çalıştırmadan tahmini alakasız belgelerin yalnızca ilk R'si dikkate alınır).

    3. Arama sonuçlarının eksiksizlik kriteri

    r = a / (a ​​+ c),

    a, bulunan ilgili belgelerin sayısı olduğunda, c, bulunamayan ilgili belgelerin sayısıdır.

    4. Test koleksiyonları. Bir makine öğrenimi probleminde, sıralama, uzmanlar tarafından belirlenen ilgili uygunluk puanlarına sahip bir dizi belge ve sorgu gerektirir. Bu veriler, kalite değerlendirmesinin yanı sıra sıralama işlevinin makine öğrenimi için kullanılır.

    sistem tarafından arama sonuçlarının sıralaması. ML sürecinde test koleksiyonları bir eğitim seti olarak kullanılır ve bu nedenle sonuçlar üzerinde önemli bir etkiye sahiptir. Araştırma için belge ve isteklerden oluşan bir test koleksiyonu LETOR kullanıldı. Bu koleksiyon, Microsoft Research tarafından bilgi alma araştırması için kullanılır. Tablo 1, LETOR test koleksiyonlarının özelliklerini gösterir.

    5. Değiştirilmiş genetik algoritma. Makine öğrenimini sıralamada genetik algoritmaları kullanmak için, problem, çözümün her genin bir bit, sayı veya başka bir nesne olabileceği bir vektör (genotip) olarak kodlanacağı şekilde formüle edilmelidir. Bu durumda, genotip, karşılık gelen sıralama faktörleri için bir ağırlık vektörü ile temsil edilir. Genetik algoritmanın yürütülmesini durdurmanın koşulu, optimal çözümün bulunması, nesillerin sayısının veya evrim için ayrılan zamanın tükenmesidir.

    GA'ların küresel ekstremum bölgesini aramada en etkili olduğu, ancak bu bölgede yerel bir minimum bulmak gerektiğinde yavaş çalışabilecekleri belirtilmelidir. Bu dezavantajdan kaçınmanın önerilen yolu, temel GA'yı kullanarak global optimum bölgeyi bulduktan sonra yerel (yüksek hızlı) bir optimizasyon algoritmasına geçecek olan değiştirilmiş bir genetik algoritma (MGA) oluşturmaktır. Önerilen MGA, klasik GA ve Nelder - Mead yöntemine (simpleks algoritma) dayalı hibrit bir yöntemdir. Sıklıkla kullanılan doğrusal olmayan bir optimizasyon algoritması olan Nelder - Mead yöntemi, çok boyutlu bir uzayda bir amaç fonksiyonunun minimumunu bulmak için sayısal bir yöntemdir. Bu yazıda önerilen hibrit MGA algoritması, GA'yı durdurma koşulları sağlandıktan sonra Nelder - Mead yöntemine geçer. MGA algoritmasının blok diyagramı Şekil 1'de gösterilmektedir. bir.

    Araştırma yapılırken, global ekstremum bölgesi aranırken amaç fonksiyonunun hesaplama sayısı (Nrf = 16.000) üzerinde bir sınırlama ve Nelder - Mead yöntemine dayalı bir yerel optimizasyon algoritmasına geçiş koşulu (Nrf = 16.000) kabul edilmiştir. temel genetik algoritma, Nrf işlemlerinin %75'ini gerçekleştirmiştir).

    6. Sonuçlar. Makine öğrenmesi algoritması kullanılarak yapılan araştırma sonucunda

    tablo 1

    Test koleksiyonlarındaki belge ve sorgu sayısı

    Test koleksiyonu adı Alt sistem adı İstek sayısı Belge sayısı

    LETOR 4.0 MQ2007 1692 69623

    LETOR 4.0 MQ2008 784 15211

    LETOR 3.0 OHSUMED 106 16140

    LETOR 3.0 Gov03td 50 49058

    LETOR 3.0 Gov03np 150 148657

    LETOR 3.0 Gov03hp 150 147606

    LETOR 3.0 Gov04td 75 74146

    LETOR 3.0 Gov04np 75 73834

    LETOR 3.0 Gov04hp 75 74409

    Pirinç. 1. Genetik algoritmalara ve Nelder-Mead yöntemine dayalı hibrit MVL algoritmasının blok şeması

    LTR-MGA'yı sıralamak için, sıralama işlevi için WC * ağırlıklarının bir vektörü elde edilir. Ayrıca, LETOYA test koleksiyonundan elde edilen verilere dayanarak, kalite metriklerinin hesaplandığı sıralama kalitesi değerlendirildi. Sıralama kalitesinin ayrı metriği [e-posta korumalı] sistem yanıtının ilk n belgesinin kalitesini değerlendirir. Sıralamanın kalitesini değerlendirmek için genel kabul görmüş metrikler şunlardır: [e-posta korumalı], [e-posta korumalı] ve [e-posta korumalı] Ancak, değerlere bağlı olarak metrikteki değişikliklerin daha ayrıntılı bir değerlendirmesi için [e-posta korumalı] 1'den 10'a kadar tüm n için. Geliştirilen algoritmanın etkinliğini mevcut çözümlerle karşılaştırmak için LETOIA 3.0 koleksiyonlarında sağlanan sıralama algoritmaları kullanılarak karşılaştırmalı bir analiz yapıldı. NDCG metriği için TB2003 ve TB2004 test koleksiyonları için algoritmaları çalıştırmanın sonuçları Şekil 2'de gösterilmektedir. 2. Sonuçlar, LTR-MGA algoritmasının, en yüksek değerler olmak üzere test algoritmalarından daha iyi performans gösterdiğini göstermektedir.

    için [e-posta korumalı](ilk belge düzeyinde). LTR-MGA algoritmasının üstünlüğü, deneylerde ele alınan test sıralama fonksiyonlarının aksine, sıralama fonksiyonunu optimize etmek için önerilen yaklaşımda amaç fonksiyonu olarak kullanılan NDCG metriği olmasından kaynaklanmaktadır.

    Önerilen LTR-MGA algoritmasını kullanırken sıralama kalitesini değerlendirmek için, arama sonuçlarında belgeleri sıralamak için kalite metriklerinin değerleri hesaplandı (Şekil 3). Sıralama sonuçlarının karşılaştırılması (Tablo 2), temel sıralama işlevi, temel LTR-GA algoritması ve değiştirilmiş LTR-MGA algoritması, ikincisinin avantajını gösterir.

    Ek olarak, çalışma MO sıralaması için gereken süreyi tahmin etti. Bu, önerilen LTR-MGA yönteminin bu göstergede geleneksel kullanımına dayalı yaklaşımdan üstün olduğunu doğrulamak için gereklidir.

    Pirinç. 2. Sıralama için makine öğrenimi algoritmalarının karşılaştırılması

    test koleksiyonları için NDCG metriğine göre: solda - Gov03td veri kümesi, sağda - Gov04td veri kümesi

    Pirinç. 3. Temel sıralama formülü ve öğrenme algoritmaları LTR-GA ve LTR-MGA için sıralama kalitesi metriklerinin değerlendirilmesi

    Farklı sıralama makine öğrenimi algoritmaları için sıralama kalitesi metrikleri

    Tablo 2

    Sıralama kalitesi metriği Temel sıralama işlevi LTR-GA LTR-MGA Metrik değerini artırma,%

    Doğruluk 0,201 0,251 0,267 26,81

    [e-posta korumalı](ilk 5 belge) 0,149 0,31 0,339 90,47

    [e-posta korumalı](ilk 10 belge) 0,265 0,342 0,362 29,14

    Bpref 0.303 0.316 0.446 51.49

    Tamlık 0,524 0,542 0,732 39,03

    * Karşılık gelen metrik için en iyi değerler gri renkle vurgulanmıştır

    soğan genetik algoritması (LTYA-OL). LTY-OL ve LTY-MOL algoritmalarının yürütülmesi için harcanan süreyi karşılaştırmanın sonuçları tabloda gösterilmektedir. 3.

    7. Karar. Bu nedenle yapılan çalışmalar, önerilen yaklaşımı kullanırken, ISS'de dikkate alınan sıralama metriklerinin değerlerinin arttığını göstermiştir (LTL-OL algoritmasına kıyasla ortalama olarak %19,55). Bu, LITA-MOL'un doğru çalıştığını ve sıralama işlevini önemli ölçüde iyileştirdiğini doğrular, başka bir deyişle optimizasyon problemini başarıyla çözer. Değiştirilmiş bir algoritma kullanma

    Yerel optimizasyon yönteminin uygulanması ve amaç fonksiyonunun hesaplama sayısına getirilen kısıtlamalar nedeniyle, makine öğrenimi süresi azaldı (geleneksel genetik algoritma LTIAOL kullanımına kıyasla ortalama %17,71).

    Geliştirilmiş ML-MOL sıralama makine öğrenme algoritması, basit sıralama fonksiyonlarının bir kombinasyonuna dayalı bir sıralama modeli kullanan ISS'de kullanılabilir. Ancak, önerilen yaklaşımın uygulanmasına ilişkin bazı kısıtlamalar dikkate alınmalıdır. Temelli

    Eğitim örneğinin boyutuna bağlı olarak makine öğrenimi sıralamasının yürütme süresinin tahmin edilmesi

    Tablo 3

    Metin belgesi koleksiyonunun boyutu

    LTR-GA teslim süresi

    LTR-MGA Çalışma Zamanı

    Yürütme süresinin azaltılması,%

    Kastetmek

    * Karşılık gelen test koleksiyonu boyutu için en iyi değerler gri renkle vurgulanmıştır

    Elde edilen sonuçlardan ML'den sonra en yüksek artışın değeri amaç fonksiyonu olarak alınan sıralama kalite metriğinde gözlendiği ortaya çıkmıştır. Aynı zamanda, metriklerin geri kalanı önemli bir gelişme göstermeyebilir ve bazı durumlarda değerlerini daha da kötüleştirebilir. Bu eksikliği gidermeye yönelik olası yaklaşımlardan biri olarak, optimizasyon probleminin çok kriterli bir problem olarak çözülmesi önerilmiştir: bir tanesini optimize etmek yerine, arama sonuçlarının birkaç ana sıralama metriğini tekdüze bir şekilde iyileştirmek. Ek olarak, daha sonraki çalışmalarda, bilgi erişim sürecini iyileştirmek için ana sıralama kalite metriklerinin doğrusal bir evrişimine dayalı bir amaç fonksiyonu oluşturmak için bir metodoloji geliştirilmesi planlanmaktadır.

    bibliyografik liste

    1. Tie-Yan Liu. Bilgi Erişimi için Sıralamayı Öğrenme // Bilgi Erişiminde Dergi Temelleri ve Eğilimler. Cilt 3, sayı 3. Mart 2009. S. 225-331.

    2. Christopher J.C. Burges, Tal Shaked, Erin Renshaw. Gradient Descent Kullanarak Sıralamayı Öğrenme // Proceeding ICML "05 Makine öğrenimi üzerine 22. uluslararası konferansın bildirileri. 2005. S. 89-96.

    3. Semenikhin, SV Genetik algoritmalara dayalı bir arama sistemine göre belgeleri sıralamak için makine öğrenimi yaklaşımlarının incelenmesi / SV Semenikhin // Genç Rusya: endüstride ileri teknolojiler. - 2013. - No. 2. - S. 82 - 85.

    4. Kontrol sistemlerinin sentezinde genetik algoritmalara dayalı çok kriterli optimizasyon: monograf. / L.A. Denisova. - Omsk: OmSTU yayınevi, 2014 .-- 170 s. - ISBN 978-5-8149-1822-2.

    5. Denisova, L. A. Genetik bir algoritma kullanarak kontrol sisteminin parametrik sentezinin otomasyonu / L. A. Denisova, V. A. Meshcheryakov // Endüstride otomasyon. - 2012. - No. 7. - S. 34 - 38.

    6. Huber, Peter J. Bir Konum Parametresinin Sağlam Tahmini // İstatistik Annals. - 1964. - No. 53. - S. 73-101.

    7. Semenikhin, S. V. Çok kriterli optimizasyon ve genetik algoritmalara dayalı bilgi alma otomasyonu / S. V. Semenikhin, L. A. Denisova // Sistem, mekanizma ve makinelerin dinamiği. - 2014. - No. 3. - S. 224 - 227.

    8. Tie-Yan Liu, Jun Xu, Tao Qin, Wenying Xiong ve Hang Li. LETOR: Bilgi Erişimi için Sıralamayı Öğrenme Araştırması için Karşılaştırma Veri Kümesi // SIGIR 2007 Bilgi Erişimi için Sıralamayı Öğrenme Çalıştayı. - 2007 .-- S. 3-10.

    9. Ageev, MS Official metrics of RMIP "2004 / MS Ageev, IE Kuralenok // II Bilgi alma yöntemlerinin değerlendirilmesi üzerine Rus semineri (ROMIP 2004), Pushchino, 2004: tr.; Ed. S. Nekrest'yanova. - Petersburg: Kimya Araştırma Enstitüsü, St. Petersburg Devlet Üniversitesi - S. 142-150.

    10. J.A. Nelder, R. Mead, Fonksiyon minimizasyonu için bir tek yönlü yöntem, The Computer Journal 7 (1965). 308-313.

    Svyatoslav Vitalievich SEMENIKHIN, Otomatik Bilgi İşleme ve Kontrol Sistemleri Bölümü yüksek lisans öğrencisi. Yazışma adresi: [e-posta korumalı] DENISOVA Lyudmila Albertovna, Teknik Bilimler Doktoru, Otomatik Bilgi İşleme ve Kontrol Sistemleri Bölümü Doçenti. Yazışma adresi: [e-posta korumalı]

    Bu bölüm, diğer şeylerin yanı sıra bu konudaki diğer çalışmalarda kullanılan sınıflandırma modelinin kalitesini değerlendirmek için popüler yöntemler sunmaktadır. Bu değerlendirme için kullanılan metriklerin açıklamaları ve gerekçeleri verilmiştir.

    Kalite değerlendirme metrikleri

    Tam doğruluk

    Bu metrik, sınıflandırma algoritmalarının performansını değerlendirmek için en basit ve aynı zamanda evrensel metriklerden biridir. Bu katsayının değeri, numunedeki toplam nesne sayısından doğru sınıflandırılmış nesnelerin oranı olarak hesaplanır. Bu metrik, sadeliği ve herhangi bir sayıda sınıfa genişletilebilmesi nedeniyle popülerdir. Bu metriğin ana dezavantajı, tüm belgelere aynı ağırlığı atamasıdır; bu, eğitim kümesindeki belgelerin bir veya daha fazla sınıfa yönelik güçlü bir şekilde yer değiştirmesi durumunda yanlış olabilir. Bu metrik yüksek bir değere sahip olabilir, ancak aynı sınıf içindeki sınıflandırıcı son derece düşük iş kalitesi gösterebilir. Aynı zamanda, metrik bunu hiçbir şekilde göstermez.

    Hassasiyet, Tamlık ve F-Ölçü

    Kesinlik ve geri çağırma gibi metrikler, bilgi alma problemlerini çözen sistemlerin performansını değerlendirmede ilk kez yaygın olarak kullanıldı. Bir sınıf içindeki sistemin doğruluğu, sistem tarafından bu sınıfa atanan tüm nesnelere göre, gerçekten belirli bir sınıfa ait olan nesnelerin oranıdır. Tamlık, bir sınıfa ait sınıflandırıcı tarafından bulunan nesnelerin bu sınıfın tüm nesnelerine oranı olarak ifade edilir. Tablo 4, TP'nin (gerçek pozitif) doğru-pozitif bir karar olduğu, TN'nin (gerçek negatif) bir doğru-negatif karar olduğu, FP'nin (yanlış pozitif) bir yanlış-pozitif karar olduğu ve FN'nin olduğu ayrı bir sınıfın beklenmedik durum tablosudur. (yanlış negatif) yanlış bir karardır.

    Tablo 1 - Bir nesne sınıfının olasılık tablosu

    Böylece, kesinlik ve tamlık şu şekilde hesaplanır:

    F-ölçü, değerlendirilen algoritmanın doğruluğu ve eksiksizliği hakkındaki bilgileri birleştirir. Doğruluk ve eksiksizlik göstergelerinin harmonik ortalaması olarak hesaplanır:

    F-ölçümünün her sınıf için ayrı ayrı hesaplanması gerçeğinden dolayı, algoritmanın belirli hatalarını araştırmak ve analiz etmek, birkaç sınıflı bir sınıflandırmayı değerlendirmek için kullanmak uygundur. Ayrıca, çok sayıda sınıf olması durumunda, tüm sınıflar için tamlığı ve doğruluğu toplayacak ve sistemin genel davranışını karakterize edecek bir karakteristik gereklidir. Bu çalışmada, bu amaç için aşağıdaki toplu değerler kullanılmıştır: tüm sınıflar için doğruluğun aritmetik ortalaması olarak hesaplanan makro kesinlik, tüm sınıflar için tamlığın aritmetik ortalaması olarak hesaplanan makro geri çağırma, ve aralarındaki harmonik ortalama olan makro F-ölçümü (Makro F-skoru).

    Çapraz doğrulama

    Çapraz doğrulama, tam test yapmak ve çeşitli makine öğrenimi algoritmalarının performansını değerlendirmek için en yaygın yöntemlerden biridir. Bağımsız bir örnek için, bu yöntem, algoritmanın fazla takılması nedeniyle hata olasılığının önyargılı bir tahmini olabilen, eğitilmiş örnek üzerindeki ortalama hatanın aksine, hata olasılığının yansız bir tahminini elde etmeyi sağlar. Bu prosedürün bir başka avantajı, test için özel olarak tasarlanmış bir kontrol örneğinin yokluğunda bir algoritma hatası olasılığına ilişkin bir tahmin elde etme yeteneğidir.

    Bunun, sonlu bir sınıflar kümesi olan, üzerinde sonlu bir kullanım durumu örneğinin belirtildiği nesnelerin bir dizi özellik tanımları olduğunu varsayalım. Kullanım durumlarının keyfi seçimine bir algoritma atayan bir eşleme belirtilir. Ardından, keyfi bir emsal örneği için algoritmanın kalitesi, kalite işlevi kullanılarak tahmin edilir:

    doğru bir sınıf etiketi ile algoritma hatasının değerini döndüren bazı negatif olmayan işlev nerede.