Čo znamená metrika kvality v strojovom učení? Rankingový tréning

V procese prípravy problému na vstupný test na letnú školu GoTo sme zistili, že prakticky neexistuje kvalitatívny popis hlavných hodnotiacich metrík v ruštine (problém sa týkal špeciálneho prípadu klasifikačného problému – zostavenia odporúčacieho algoritmu) . My v E-Contenta aktívne používame rôzne hodnotiace metriky, preto sme sa rozhodli toto nedorozumenie napraviť napísaním tohto článku.

Úloha hodnotenia teraz vyvstáva všade: triedenie webových stránok podľa zadaného vyhľadávacieho dopytu, personalizácia news feedu, odporúčanie videí, produktov, hudby... Jedným slovom, téma je horúca. V strojovom učení existuje dokonca aj špeciálny smer, ktorý sa zaoberá štúdiom hodnotiacich algoritmov schopných samoučenia – učením sa hodnotiť. Na výber toho najlepšieho z celej škály algoritmov a prístupov je potrebné vedieť kvantitatívne posúdiť ich kvalitu. Najbežnejšie metriky hodnotenia kvality budú uvedené nižšie.

Stručne o úlohe hodnotenia

Rebríček je úlohou zoradiť množinu prvkov z ich dôvodov relevantnosť... Relevantnosť sa najčastejšie chápe vo vzťahu k nikomu objekt... Napríklad v úlohe získavania informácií je objektom požiadavka, prvkami sú rôzne dokumenty (odkazy na ne) a relevantnosť je súlad dokumentu s požiadavkou, v úlohe odporúčania je objektom používateľ, prvky sú jeden alebo ďalší odporúčaný obsah (produkty, videá, hudba ) a relevantnosť je pravdepodobnosť, že používateľ tento obsah použije (kúpi / páči sa mi / zobrazí).

Formálne zvážte N objektov a M prvkov. Výsledkom práce algoritmu na klasifikáciu prvkov pre objekt je mapovanie, ktoré priraďuje každému prvku váhu, ktorá charakterizuje stupeň relevantnosti prvku k objektu (čím vyššia je váha, tým relevantnejší je objekt). V tomto prípade množina váh určuje permutáciu množiny prvkov prvkov (predpokladáme, že množina prvkov je usporiadaná) na základe ich zoradenia v zostupnom poradí podľa hmotnosti.

Na vyhodnotenie kvality rankingu je potrebné mať určitý „benchmark“, s ktorým by sa dali výsledky algoritmu porovnávať. Uvažujme - funkciu referenčnej relevancie, ktorá charakterizuje "skutočnú" relevanciu prvkov pre daný objekt (- prvok je ideálny, - úplne irelevantný), ako aj zodpovedajúcu permutáciu (v zostupnom poradí).

Existujú dva hlavné spôsoby, ako ho získať:
1. Na základe historických údajov. Napríklad v prípade odporúčaní obsahu môžete zobrať názory používateľa (páči sa mi, nákupy) a priradiť váhy prezerania zodpovedajúcim prvkom 1 () a 0 všetkým ostatným.
2. Na základe znaleckého posudku. Napríklad pri vyhľadávacej úlohe môžete pri každej žiadosti zapojiť tím posudzovateľov, ktorí manuálne posúdia relevantnosť dokumentov k žiadosti.

Stojí za zmienku, že keď nadobudne iba extrémne hodnoty: 0 a 1, potom sa zvyčajne nezohľadňuje permutácia a iba množina relevantných prvkov, pre ktoré.

Účel hodnotenia kvality- určiť, do akej miery zodpovedajú skóre relevantnosti získané algoritmom a zodpovedajúca permutácia pravda hodnoty relevantnosti. Zoberme si hlavné metriky.

Stredná priemerná presnosť

Stredná priemerná presnosť pri K ( [e-mail chránený]) je jedným z najčastejšie používaných ukazovateľov kvality hodnotenia. Aby sme pochopili, ako to funguje, začnime so „základmi“.

Poznámka: Metriky „* presnosti“ sa používajú v binárnych problémoch, kde sú potrebné iba dve hodnoty: 0 a 1.

Presnosť u K

Presnosť pri K ( [e-mail chránený]) - presnosť na K prvkoch - základná metrika kvality hodnotenia pre jeden objekt. Povedzme, že náš hodnotiaci algoritmus vygeneroval skóre relevantnosti pre každú položku. Výberom prvých prvkov s najväčšími z nich môžete vypočítať podiel relevantných prvkov. Presne toto robí presnosť v K:

Poznámka: prvkom sa rozumie prvok, ktorý v dôsledku permutácie skončil na tej pozícii. Takže, - prvok s najväčším, - prvok s druhým najväčším atď.

Priemerná presnosť pri K

Presnosť na K je metrika, ktorá je ľahko pochopiteľná a implementovateľná, má však dôležitú nevýhodu – nezohľadňuje poradie položiek v „hore“. Takže, ak sme z desiatich prvkov uhádli iba jeden, potom nezáleží na tom, kde to bolo: na prvom alebo na poslednom, v každom prípade. Zároveň je zrejmé, že prvá možnosť je oveľa lepšia.

Táto nevýhoda je kompenzovaná metrikou hodnotenia. priemerná presnosť pri K ( [e-mail chránený]) čo sa rovná súčtu [e-mail chránený] podľa indexov k od 1 do K len pre relevantné položky delené K:

Takže, ak sme z troch prvkov boli relevantní až na poslednom mieste, tak ak sme uhádli iba ten, ktorý bol na prvom mieste, tak a ak bolo uhádnuté všetko, tak.

Teraz a [e-mail chránený] v našich zuboch.

Stredná priemerná presnosť pri K

Stredná priemerná presnosť pri K ( [e-mail chránený]) je jedným z najčastejšie používaných ukazovateľov kvality hodnotenia. V [e-mail chránený] a [e-mail chránený] kvalita hodnotenia sa posudzuje pre jeden objekt (používateľ, vyhľadávací dopyt). V praxi existuje veľa objektov: máme do činenia so stovkami tisíc používateľov, miliónmi vyhľadávacích dopytov atď. Nápad [e-mail chránený] je vypočítať [e-mail chránený] pre každý objekt a priemer:

Poznámka: Táto myšlienka je celkom logická, za predpokladu, že všetci používatelia sú rovnako potrební a rovnako dôležití. Ak tomu tak nie je, potom namiesto jednoduchého spriemerovania môžete použiť vážené násobenie [e-mail chránený] každý predmet podľa hmotnosti zodpovedajúcej jeho „dôležitosti“.

Normalizovaný diskontovaný kumulatívny zisk

Normalizovaný diskontovaný kumulatívny zisk (nDCG) je ďalším bežným ukazovateľom kvality hodnotenia. Ako s [e-mail chránený], začnime so základmi.

Kumulatívny zisk v K

Zvážte znova jeden objekt a prvky s najväčšími. Kumulatívny zisk pri K ( [e-mail chránený]) je základná hodnotiaca metrika, ktorá využíva jednoduchú myšlienku: čím relevantnejšie položky sú v tejto hornej časti, tým lepšie:

Táto metrika má zjavné nevýhody: nie je normalizovaná a nezohľadňuje polohu príslušných prvkov.

Všimnite si, že na rozdiel od [e-mail chránený], [e-mail chránený] možno použiť aj v prípade nebinárnych referenčných hodnôt relevantnosti.

Zľavnený kumulatívny zisk v K

Diskontovaný kumulatívny zisk pri K ( [e-mail chránený]) - úprava kumulatívneho zisku pri K, berúc do úvahy poradie prvkov v zozname vynásobením relevantnosti prvku váhou rovnajúcou sa inverznému logaritmu čísla pozície:

Poznámka: ak má iba hodnoty 0 a 1, potom a vzorec nadobudne jednoduchšiu formu:

Použitie logaritmu ako diskontnej funkcie možno vysvetliť nasledujúcimi intuitívnymi dôvodmi: z hľadiska hodnotenia sa pozície na začiatku zoznamu líšia oveľa viac ako pozície na konci zoznamu. V prípade vyhľadávača je teda medzi pozíciami 1 a 11 celá priepasť (len v niekoľkých prípadoch zo sto sa používateľ dostane na ďalšiu prvú stránku s výsledkami vyhľadávania) a nie je veľký rozdiel medzi pozíciami 101 a 111 – málokto ich dosiahne. Tieto subjektívne úvahy sú pekne vyjadrené pomocou logaritmu:

Diskontovaný kumulatívny zisk rieši problém zohľadnenia polohy príslušných prvkov, ale len zhoršuje problém s nedostatočnou normalizáciou: ak sa mení v medziach, potom už nadobúda hodnoty v neúplne jasnom segmente. Na vyriešenie tohto problému je určená nasledujúca metrika.

Normalizovaný diskontovaný kumulatívny zisk pri K

Ako ste mohli uhádnuť z názvu, normalizovaný diskontovaný kumulatívny zisk pri K ( [e-mail chránený]) - nič viac ako normalizovaná verzia [e-mail chránený]:

kde je maximálna (I - ideálna) hodnota. Keďže sme sa zhodli, že to má hodnotu.

Dedí teda z hľadiska polohy prvkov v zozname a zároveň nadobúda hodnoty v rozsahu od 0 do 1.

Poznámka: analogicky s [e-mail chránený] možno vypočítať, spriemerovať zo všetkých objektov.

Priemerná recipročná hodnosť

Stredná recipročná hodnosť (MRR) je ďalším bežne používaným ukazovateľom kvality hodnotenia. Je daný nasledujúcim vzorcom:

kde - recipročná hodnosť pre tý objekt - v podstate veľmi jednoduchá hodnota rovná prevrátené poradie prvého správne uhádnutého prvku.

Stredná recipročná pozícia sa mení v rozsahu a zohľadňuje polohu prvkov. Žiaľ, robí to len pre jeden prvok – ten prvý, ktorý bol správne predpovedaný, bez ohľadu na všetky nasledujúce.

Hodnotové korelačné metriky

Samostatne stojí za to zdôrazniť hodnotenie kvality na základe jedného z koeficientov poradová korelácia... V štatistike je koeficient poradovej korelácie korelačný koeficient, ktorý nezohľadňuje samotné hodnoty, ale iba ich poradie (poradie). Zvážte dva najbežnejšie korelačné koeficienty poradia: Spearmanov a Kendallov.

Kendallov koeficient poradovej korelácie

Prvým z nich je Kendallov korelačný koeficient, ktorý je založený na výpočte konzistentného
(a nezhodné) páry permutácií - dvojice prvkov, ktorým boli permutácie priradené rovnaké (rôzne) poradie:

Spearmanov koeficient poradovej korelácie

Druhý - Spearmanov koeficient poradovej korelácie - nie je v podstate nič iné ako Pearsonova korelácia vypočítaná na hodnotách hodností. Existuje pomerne pohodlný vzorec, ktorý to vyjadruje priamo z radov:

kde je Pearsonov korelačný koeficient.

Hodnotové korelačné metriky majú nevýhodu, ktorú už poznáme: nezohľadňujú pozíciu prvkov (ešte horšie ako [e-mail chránený] odkedy korelácia sa vypočíta pre všetky prvky, nie pre K prvkov s najvyšším hodnotením). Preto sa v praxi používajú veľmi zriedkavo.

Kaskádové metriky

Do tohto bodu sme sa nezaoberali tým, ako používateľ (ďalej budeme uvažovať o špeciálnom prípade objektu – používateľ) študuje jemu ponúkané prvky. V skutočnosti sme implicitne predpokladali, že prezeranie každého prvku nezávislý od prezerania iných prvkov – akási „naivita“. V praxi si však položky často prezerá používateľ jednu po druhej a to, či používateľ zobrazí ďalšiu položku, závisí od jeho spokojnosti s predchádzajúcimi položkami. Uvažujme o príklade: ako odpoveď na vyhľadávací dopyt algoritmus hodnotenia ponúkol používateľovi niekoľko dokumentov. Ak sa dokumenty na pozícii 1 a 2 ukázali ako mimoriadne relevantné, potom je pravdepodobnosť, že používateľ zobrazí dokument na pozícii 3, malá, pretože s prvými dvoma bude celkom spokojný.

Podobné modely správania používateľa, kde štúdium prvkov, ktoré sú mu navrhnuté, prebieha postupne a pravdepodobnosť zobrazenia prvku závisí od relevantnosti predchádzajúcich, sa nazývajú kaskádové.

Očakávaná recipročná hodnosť

Očakávaná recipročná hodnosť (ERR)- príklad hodnotiacej metriky kvality založenej na vodopádovom modeli. Je daný nasledujúcim vzorcom:

kde sa poradie chápe v zostupnom poradí. Najzaujímavejšia vec na tejto metrike sú pravdepodobnosti. Pri ich výpočte sa používajú predpoklady kaskádového modelu:

kde je pravdepodobnosť, že používateľ bude spokojný s objektom s hodnosťou. Tieto pravdepodobnosti sú vypočítané na základe hodnôt. Keďže v našom prípade môžeme zvážiť jednoduchú možnosť:

ktorý možno čítať ako: skutočnú relevantnosť prvku v pozícii Na záver uvádzame niekoľko užitočných odkazov.

Na prvky v každom zozname. Čiastočné poradie je zvyčajne špecifikované zadaním skóre pre každý prvok (napríklad „relevantné“ alebo „nepodstatné“; sú možné viac ako dva stupne). Účelom hodnotiaceho modelu je čo najlepším spôsobom (v istom zmysle) priblížiť a zovšeobecniť metódu hodnotenia v trénovacej množine nových údajov.

Ranking learning je stále pomerne mladá, rýchlo sa rozvíjajúca oblasť výskumu, ktorá sa objavila v roku 2000 so vznikom záujmu o oblasť získavania informácií pri aplikácii metód strojového učenia na problémy s klasifikáciou.

Collegiate YouTube

  • 1 / 5

    Počas trénovania hodnotiaceho modelu a počas jeho prevádzky sa každý pár dokument – ​​dopyt preloží do číselného vektora hodnotiacich prvkov (nazývaných aj hodnotiace faktory alebo signály), ktoré charakterizujú vlastnosti dokumentu, dotazu a ich vzťah. Takéto znaky možno rozdeliť do troch skupín:

    Nasleduje niekoľko príkladov funkcií hodnotenia používaných v súbore údajov LETOR, ktorý je v odbore dobre známy:

    • Hodnoty mier TF, TF-IDF, BM25 a jazykový model vyhovujúci požiadavkám rôznych oblastí dokumentu (názov, URL, hlavný text, text odkazu);
    • Dĺžky a súčty IDF oblastí dokumentu;
    • Hodnotenia dokumentov získané rôznymi variantmi algoritmov hodnotenia odkazov, ako sú PageRank a HITS.

    Hodnotenie metrík kvality

    Existuje niekoľko metrík, ktoré hodnotia a porovnávajú výkonnosť hodnotiacich algoritmov na vzorke s hodnotiteľmi. Parametre hodnotiaceho modelu sa často upravujú tak, aby sa maximalizovala hodnota jednej z týchto metrík.

    Príklady metrík:

    Klasifikácia algoritmov

    Tai-Yang Liu z Microsoft Research Asia vo svojom článku „Learning to Rank for Information Retrieval“ a prejavoch na tematických konferenciách analyzoval existujúce metódy riešenia problému hodnotenia výučby a navrhol ich klasifikáciu do troch prístupov v závislosti od použitej reprezentácie vstupov. dátové a penalizačné funkcie:

    Bodový prístup

    Poznámky (upraviť)

    1. Tie-Yan Liu (2009), Naučiť sa hodnotiť pri získavaní informácií, Základy a trendy vo vyhľadávaní informácií: roč. 3: č. 3, s. 225-331, ISBN 978-1-60198-244-5, DOI 10.1561 / 1500000016... K dispozícii sú snímky z prejavu T. Lewa na WWW 2009.

    Ahoj Habr!

    V úlohách strojového učenia sa metriky používajú na hodnotenie kvality modelov a porovnávanie rôznych algoritmov a ich výber a analýza je nevyhnutnou súčasťou práce datasatanistu.

    V tomto článku sa pozrieme na niektoré kritériá kvality v problémoch s klasifikáciou, prediskutujeme, čo je dôležité pri výbere metriky a čo sa môže pokaziť.

    Metriky v klasifikačných problémoch

    Na demonštráciu užitočných funkcií sklearn a vizuálnu reprezentáciu metrík, použijeme náš dataset pri odchode zákazníkov telekomunikačného operátora, s ktorým sme sa stretli v prvom článku kurzu.

    Načítajme požadované knižnice a pozrieme sa na dáta

    Importovať pandy ako pd import matplotlib.pyplot ako plt z matplotlib.pylab import rc, importovať import seaborn ako sns zo sklearn.preprocessing import Labelmblencoder, OneHotEncoder zo sklearn.model_selection import cross_val_score zo sklearn.linear_modelression GrainFormer_modelression zo sklearn.romFrom Gradient sklearn_modelresmetric sklearn import precision_recall_curve, klasifikačný_report zo sklearn.model_selection import train_test_split df = pd.read_csv (../../ data / telecom_churn.csv")

    Df.head (5)

    Predspracovanie údajov

    # Urobme mapovanie binárnych stĺpcov # a zakódujeme stav pomocou fiktívneho kódovania (pre jednoduchosť je lepšie to nerobiť pri drevených modeloch) d = ("Áno": 1, "Nie": 0) df ["Medzinárodný plán "] = df [" Medzinárodný plán "]. Mapa (d) df [" Plán hlasovej pošty "] = df [" Plán hlasovej pošty "]. Mapa (d) df [" Churn "] = df [" Churn "] . Astype (" int64 " ) le = LabelEncoder () df ["State"] = le.fit_transform (df ["State"]) ohe = OneHotEncoder (sparse = False) encoded_state = ohe.fit_transform (df ["State"] values.reshape (- 1, 1)) tmp = pd.DataFrame (kódovaný_stav, stĺpce = ["stav" + str (i) pre i v rozsahu (kódovaný_stav.tvar)]) df = pd.concat (, os = 1)

    Presnosť, presnosť a zapamätanie

    Predtým, ako prejdeme k samotným metrikám, je potrebné zaviesť dôležitý koncept na opísanie týchto metrík z hľadiska chýb klasifikácie – zmätená matica(matica chýb).
    Predpokladajme, že máme dve triedy a algoritmus, ktorý predpovedá príslušnosť každého objektu k jednej z tried, potom bude matica chýb klasifikácie vyzerať takto:

    Skutočne pozitívne (TP) falošne pozitívny (FP)
    falošne negatívny (FN) True Negative (TN)

    toto je odozva algoritmu na objekt a

    Skutočné označenie triedy na tomto objekte.
    Existujú teda dva typy chýb klasifikácie: falošne negatívne (FN) a falošne pozitívne (FP).

    Trénovanie algoritmov a konštrukcia chybovej matice

    X = df.drop ("Churn", axis = 1) y = df ["Churn"] # Rozdeľte vzorku na vlak a otestujte, všetky metriky sa vyhodnotia na testovacom súbore údajov X_train, X_test, y_train, y_test = train_test_split ( X, y , stratify = y, test_size = 0,33, random_state = 42) # Trénujte natívnu logistickú regresiu lr = LogisticRegression (random_state = 42) lr.fit (X_train, y_train) # Pomocou funkcie zostavte maticu chýb zo sklearnu dokumentácia def plot_confusion_matrix (cm, class , normalize = False, title = "(! LANG: Confusion matrix", 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="Matica zmätku") plt.savefig("conf_matrix.png") plt.show()!}

    Presnosť

    Intuitívna, zrejmá a takmer nepoužívaná metrika je presnosť - percento správnych odpovedí algoritmu:

    Táto metrika je pri problémoch s nerovnými triedami zbytočná a je ľahké ju ukázať na príklade.

    Povedzme, že chceme vyhodnotiť výkon filtra nevyžiadanej pošty. Máme 100 nespamových e-mailov, z ktorých 90 náš klasifikátor identifikoval správne (pravdivý negatívny = 90, falošne pozitívny = 10) a 10 spamových e-mailov, z ktorých 5 klasifikátor identifikoval správne (skutočne pozitívny = 5, falošne negatívny = 5 ) .
    Potom presnosť:

    Ak však predpovedáme, že všetky e-maily nie sú spam, získame vyššiu presnosť:

    Náš model zároveň nemá absolútne žiadnu predikčnú schopnosť, keďže sme pôvodne chceli identifikovať spamové správy. K prekonaniu nám pomôže prechod zo spoločnej metriky pre všetky triedy na samostatné ukazovatele kvality tried.

    Presnosť, odvolanie a F-meranie

    Aby sme vyhodnotili výkonnosť algoritmu na každej triede samostatne, zavedieme metriku presnosti a vybavovania.

    Presnosť možno interpretovať ako podiel objektov označených klasifikátorom ako pozitívne a zároveň skutočne pozitívne a vyvolanie ukazuje, aký podiel objektov pozitívnej triedy zo všetkých objektov pozitívnej triedy algoritmus našiel.

    Práve zavedenie presnosti nám neumožňuje zapísať všetky objekty do jednej triedy, keďže v tomto prípade dostaneme zvýšenie úrovne False Positive. Recall demonštruje schopnosť algoritmu detegovať danú triedu vo všeobecnosti a presnosť demonštruje schopnosť odlíšiť túto triedu od iných tried.

    Ako sme už uviedli, existujú dva typy klasifikačných chýb: falošne pozitívne a falošne negatívne. V štatistike sa prvý typ chyby nazýva chyba typu I a druhý sa nazýva chyba typu II. V našom probléme určovania odchodu predplatiteľov bude chybou prvého druhu prijatie lojálneho predplatiteľa za odchádzajúceho, pretože našou nulovou hypotézou je, že žiadny z predplatiteľov neodchádza, a túto hypotézu zamietame. V súlade s tým bude chybou druhého druhu "preskočenie" odchádzajúceho účastníka a chybné prijatie nulovej hypotézy.

    Presnosť a vyvolanie nezávisia, na rozdiel od presnosti, od pomeru tried, a preto sú použiteľné v podmienkach nevyvážených vzoriek.
    V reálnej praxi je často úlohou nájsť optimálnu (pre zákazníka) rovnováhu medzi týmito dvoma metrikami. Klasickým príkladom je problém určovania odchodu zákazníkov.
    Je zrejmé, že nemôžeme nájsť zo všetkých odchádzajúcich zákazníkov a iba ich. Ale po identifikácii stratégie a zdrojov na udržanie zákazníkov môžeme vybrať potrebné prahové hodnoty presnosti a spätného odberu. Môžete sa napríklad zamerať na udržanie iba zákazníkov s vysokými výnosmi alebo tých, ktorí s väčšou pravdepodobnosťou nahlásia, keďže nás obmedzuje zdroj call centra.

    Zvyčajne pri optimalizácii hyperparametrov algoritmu (napríklad v prípade iterácie cez mriežku GridSearchCV), používa sa jedna metrika, ktorej zlepšenie očakávame na testovacej vzorke.
    Existuje niekoľko rôznych spôsobov, ako skombinovať presnosť a zapamätanie do súhrnnej miery kvality. F-miera (vo všeobecnosti

    ) - harmonická stredná presnosť a vybavovanie:

    v tomto prípade určuje váhu presnosti v metrickom a pre

    toto je harmonický priemer (s násobiteľom 2, takže v prípade presnosti = 1 a vyvolania = 1 máme

    )
    F-miera dosiahne svoje maximum, keď sa úplnosť a presnosť rovná jednej a je blízka nule, ak je jeden z argumentov blízky nule.
    Sklearn má šikovnú funkciu _metrics.classification správa vrátené vyvolanie, presnosť a F-meranie pre každú triedu, ako aj počet výskytov každej triedy.

    Správa = klasifikačná_správa (y_test, lr.predict (X_test), target_names = ["Non-churned", "Churned"]) tlač (prehľad)

    trieda presnosť odvolať f1-skóre podpora
    Nezmiešané 0.88 0.97 0.93 941
    Zmätený 0.60 0.25 0.35 159
    priem/celkom 0.84 0.87 0.84 1100

    Tu je potrebné poznamenať, že v prípade problémov s nevyváženými triedami, ktoré prevládajú v reálnej praxi, je často potrebné siahnuť po technikách umelej modifikácie datasetu na vyrovnanie pomeru tried. Existuje veľa z nich a nebudeme sa ich dotýkať, môžete sa pozrieť na niektoré metódy a vybrať si ten, ktorý vyhovuje vašej úlohe.

    AUC-ROC a AUC-PR

    Pri prevode skutočnej odpovede algoritmu (spravidla pravdepodobnosť príslušnosti k triede, pozri samostatne SVM) na binárne označenie musíme zvoliť nejaký prah, pri ktorom sa 0 stane 1. Prah rovnajúci sa 0,5 sa zdá prirodzený a blízky , no nie vždy to dopadne optimálne, napríklad pri spomínanom nevyváženosti triedy.

    Jedným zo spôsobov, ako vyhodnotiť model ako celok, bez viazanosti na konkrétny prah, je AUC-ROC (alebo ROC AUC) - plocha ( A rea U pod C urve) pod chybovou krivkou ( R prijímač O perating C charakteristická krivka). Táto krivka je čiara od (0,0) do (1,1) v súradniciach True Positive Rate (TPR) a False Positive Rate (FPR):

    TPR už poznáme, to je úplnosť a FPR ukazuje, aký podiel objektov negatívnej triedy algoritmus predpovedal nesprávne. V ideálnom prípade, keď klasifikátor nerobí žiadne chyby (FPR = 0, TPR = 1), dostaneme plochu pod krivkou rovnú jednej, inak, keď klasifikátor náhodne vypíše pravdepodobnosti tried, AUC-ROC bude mať tendenciu k 0,5, pretože klasifikátor vydá rovnaké množstvo TP a FP.
    Každý bod na grafe zodpovedá voľbe určitého prahu. Oblasť pod krivkou v tomto prípade ukazuje kvalitu algoritmu (čím viac, tým lepšie), okrem toho je dôležitá aj samotná strmosť krivky – chceme maximalizovať TPR minimalizáciou FPR, čo znamená, že naša krivka by mala v ideálnom prípade smerovať k bod (0,1).

    Kód kreslenia ROC krivky

    Sns.set (font_scale = 1,5) sns.set_color_codes ("utlmené") plt.figure (figsize = (10, 8)) fpr, tpr, prahy = roc_curve (y_test, lr.predict_proba (X_test) [:, 1], pos_label = 1) lw = 2 plt.plot (fpr, tpr, lw = lw, label = "ROC krivka") plt.plot (,) plt.xlim () plt.ylim () plt.xlabel ("False Positive Rate" ") plt.ylabel (" True Positive Rate ") plt.title (" Krivka ROC ") plt.savefig (" ROC.png ") plt.show ()

    Kritérium AUC-ROC je odolné voči nevyváženým triedam (spoiler: bohužiaľ, ale nie všetko je také jednoznačné) a možno ho interpretovať ako pravdepodobnosť, že náhodne vybraný pozitívny objekt bude klasifikátorom zaradený vyššie (bude mať vyššiu pravdepodobnosť, že bude pozitívny) než náhodne vybraný negatív objekt.

    Zvážte nasledujúci problém: z 1 milióna dokumentov musíme vybrať 100 relevantných dokumentov. Zvládli sme dva algoritmy:

    • Algoritmus 1 vráti 100 dokumentov, z ktorých 90 je relevantných. teda
    • Algoritmus 2 vráti 2000 dokumentov, z ktorých 90 je relevantných. teda

    S najväčšou pravdepodobnosťou by sme si vybrali prvý algoritmus, ktorý produkuje veľmi málo falošných pozitívnych výsledkov v porovnaní s jeho konkurentom. Ale rozdiel vo falošnej pozitívnej miere medzi týmito dvoma algoritmami extrémne malý - len 0,0019. Je to dôsledok skutočnosti, že AUC-ROC meria podiel falošne pozitívnych v porovnaní s pravdivo negatívnymi a v problémoch, kde pre nás druhá (väčšia) trieda nie je taká dôležitá, nemusí pri porovnávaní algoritmov poskytnúť úplne adekvátny obraz. .

    Aby sme situáciu napravili, vráťme sa k úplnosti a presnosti:

    • Algoritmus 1
    • Algoritmus 2

    Tu je už viditeľný významný rozdiel medzi týmito dvoma algoritmami - presnosť 0,855!

    Presnosť a vyvolanie sa tiež používajú na zostavenie krivky a rovnako ako AUC-ROC na nájdenie oblasti pod ňou.

    Tu možno poznamenať, že na malých súboroch údajov môže byť plocha pod krivkou PR príliš optimistická, pretože sa počíta pomocou lichobežníkovej metódy, ale zvyčajne je v takýchto úlohách dostatok údajov. Podrobnosti o vzťahu medzi AUC-ROC a AUC-PR nájdete tu.

    Logistická strata

    Funkcia logistických strát je oddelená, definovaná ako:

    toto je odpoveď algoritmu

    Ohm objekt,

    skutočný štítok triedy na

    Ohm objekt a

    veľkosť vzorky.

    Podrobnosti o matematickej interpretácii funkcie logistickej straty už boli napísané v rámci príspevku o lineárnych modeloch.
    Táto metrika sa zriedka objavuje v obchodných požiadavkách, ale často v úlohách na kaggle.
    Intuitívne možno minimalizáciu straty logu chápať ako úlohu maximalizácie presnosti penalizáciou nesprávnych predpovedí. Treba však poznamenať, že logloss mimoriadne silne penalizuje za dôveru klasifikátora v nesprávnu odpoveď.

    Uvažujme o príklade:

    Def logloss_crutch (y_true, y_pred, eps = 1e-15): návrat - (y_true * np.log (y_pred) + (1 - y_true) * np.log (1 - y_pred)) print ("Logloss s neistou klasifikáciou% f "% logloss_crutch (1, 0,5)) >> Logloss s neistou klasifikáciou 0,693147 print (" Logloss s istou klasifikáciou a správnou odpoveďou% f "% logloss_crutch (1, 0,9)) >> Logloss s istou klasifikáciou a správnou odpoveďou 0,105361 print (" Logloss s istou klasifikáciou a nesprávnou odpoveďou% f "% logloss_crutch (1, 0.1)) >> Logloss s istou klasifikáciou a nesprávnou odpoveďou 2.302585

    Všimnite si, ako sa logloss dramaticky zvýšil s nesprávnou odpoveďou a sebavedomou klasifikáciou!
    V dôsledku toho môže chyba na jednom objekte viesť k významnej degradácii celkovej chyby vzorky. Takéto objekty sú často odľahlé hodnoty, ktoré treba pamätať na to, že ich treba filtrovať alebo posudzovať oddelene.
    Všetko zapadne na svoje miesto, ak nakreslíte graf straty záznamu:

    Je možné vidieť, že čím bližšie k nule je odozva algoritmu so základnou pravdou = 1, tým vyššia je hodnota chyby a tým strmšie krivka rastie.

    Zhrnutie:

    • V prípade klasifikácie viacerých tried musíte starostlivo sledovať metriky každej z tried a riadiť sa logikou rozhodnutia. úlohy namiesto optimalizácie metriky
    • V prípade nerovnakých tried je potrebné zvoliť vyváženosť tried na tréning a metriku, ktorá bude správne odrážať kvalitu klasifikácie
    • Výber metriky by sa mal robiť so zameraním na predmetnú oblasť, predspracovanie údajov a prípadne segmentáciu (ako v prípade rozdelenia na bohatých a chudobných zákazníkov)

    užitočné odkazy

    1. Kurz Evgenyho Sokolova: Seminár o výbere modelov (sú informácie o metrikách regresných problémov)
    2. Problémy na AUC-ROC od A.G. Dyakonova
    3. Viac o ďalších metrikách si môžete prečítať na kaggle. Do popisu každej metriky bol pridaný odkaz na súťaž, kde bola použitá
    4. Prezentácia Bogdana Melnika aka ld86 o tréningu na nevyvážených vzorkách

    MDT 519,816

    S. V. SEMENIKHIN L. A. DENISOVÁ

    Štátna technická univerzita v Omsku

    SADA STROJOVÉHO UČENIA

    NA ZÁKLADE UPRAVENÉHO GENETICKÉHO ALGORITHMU PRE METRIKU YRSO

    Zvažuje sa problém hodnotenia dokumentov na stránke s výsledkami vyhľadávania informácií a problémy strojového učenia. Navrhuje sa prístup na optimalizáciu funkcie hodnotenia pomocou metriky kvality NOCO založenej na modifikovanom genetickom algoritme. Výskum vyvinutých algoritmov (na testovacích kolekciách LETO ^ bol vykonaný a bola preukázaná ich účinnosť pre strojové učenie hodnotenia.

    Kľúčové slová: získavanie informácií, hodnotenie strojového učenia, relevantnosť, optimalizácia, genetické algoritmy.

    1. Úvod. V moderných informačných systémoch (ISS) sú objemy údajov prevádzkovaných systémom také veľké, že kľúčovou úlohou je zoradiť relevantné dokumenty ako odpoveď na vyhľadávací dopyt používateľa. V tejto fáze vývoja ISS je najväčší záujem o hodnotenie strojového učenia (ML). Existujúce prístupy k ML, založené na numerických metódach (najmä gradientových metódach) alebo na analytických výpočtoch, majú množstvo nevýhod, ktoré výrazne ovplyvňujú kvalitu získavania informácií a čas potrebný na zoradenie relevantných dokumentov.

    Na začiatku výskumu boli zvažované zoznamové prístupy k klasifikácii strojového učenia, z ktorých väčšina využíva metódu gradientového zostupu. V uvažovaných prácach sa ML redukuje na optimalizáciu metrík kvality vyhľadávania (SEQ), používajú sa však iba metriky reprezentované spojitými funkciami. Toto obmedzenie často vedie k tomu, že v dôsledku optimalizácie má hodnotiaca funkcia nižšie skóre pre mnohé dôležité akceptované ukazovatele (DCG, nDCG, Graded Mean Reciprocal Rank atď.), čo sú diskrétne funkcie. Článok navrhuje použitie genetických algoritmov (GA) pri klasifikácii výučby s cieľom minimalizovať Huberovu stratovú funkciu pomocou odborných hodnotení relevantnosti ako referenčných hodnôt. Bol tiež navrhnutý prístup k ML založený na optimalizácii diskrétnych metrík kvality vyhľadávania informácií.

    2. Vyjadrenie k problému klasifikácie strojového učenia. Vo väčšine moderných systémov na vyhľadávanie informácií je funkcia hodnotenia postavená na základe n jednoduchých hodnotiacich funkcií (PRF) a môže byť napísaná ako:

    kde SRF¡ je ¡tá funkcia jednoduchého hodnotenia pre dokument da dotaz q, WCi je koeficient hmotnosti ¡tej funkcie jednoduchého hodnotenia, n je počet PRF v systéme hodnotenia.

    V rámci strojového učenia na hodnotenie bola použitá sada vyhľadávacích dokumentov B a dopytov O z testovacej kolekcie LBTOY. Pre všetky požiadavky deO sa vytvorí pár s každým dokumentom deD. Pre každý takýto pár IRS určuje hodnoty relevantnosti, ktoré sa používajú na hodnotenie výsledkov vyhľadávania. Aby bolo možné vyhodnotiť kvalitu hodnotenia, systém vyžaduje referenčné hodnoty relevancie E pre každý pár dokument – ​​dopyt ^, e). Na tieto účely sa používajú odborné hodnotenia relevantnosti.

    Na vykonanie štúdie bola použitá ISS, v ktorej sa klasifikácia robí na základe N = 5 jednoduchých hodnotiacich funkcií SRFi (WC) l г = 1, N, ktoré tvoria vektorové kritérium optimálnosti:

    kde WCе (WC) je vektor premenných parametrov; (ШС), (ЯБ) sú priestory parametrov a vektorových kritérií.

    Aplikácia genetických algoritmov na hodnotenie ML umožňuje maximalizovať diskrétne metriky kvality, ako je nDCG. Metrika nDCG na hodnotenie dokumentov vo vyhľadávači sa určuje v súlade s výrazom:

    DCG @ n = X 2 ---

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

    kde známka (p) je priemerné skóre relevantnosti priradené odborníkmi dokumentu nachádzajúcemu sa na pozícii p v zozname výsledkov, známka; 1 / log2 (2 + p) - koeficient v závislosti od polohy dokumentu (prvé dokumenty majú väčšiu váhu).

    Potom sa normalizovaná verzia NDCG zapíše ako

    N000 @ n = RSD @ n / g,

    kde r je normalizačný faktor, ktorý sa rovná maximálnej možnej hodnote 0С [e-mail chránený] n pre daný dopyt (t. j. rovná sa OOO ideálneho hodnotenia).

    Aby sa teda optimalizovala (maximalizovala) metrika OSS, účelová funkcia (YM) bude napísaná v nasledujúcom tvare

    3. Metriky kvality hodnotenia výsledkov vyhľadávania. Pri hodnotení dokumentov vo výsledkoch vyhľadávania fungujú metriky kvality ako kritériá. Zo zoznamu všeobecne akceptovaných metrík na hodnotenie kvality ISS boli vybrané tri hlavné, ktoré hodnotia presnosť, relevantnosť a úplnosť vyhľadávania informácií.

    1. Kritérium presnosti vyhľadávania informácií

    kde a je počet nájdených relevantných dokumentov, b je počet dokumentov, ktoré sa mylne považujú za relevantné.

    2. Kritérium Bpref, ktoré hodnotí relevantnosť vyhľadávania informácií, sa používa na spracovanie úlohy s R relevantnými dokumentmi a vypočíta sa podľa vzorca

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

    Tu r označuje známy relevantný dokument a NonRelBefore (r) - počet známych irelevantných dokumentov s vyšším hodnotením ako r (pri výpočte sa berie do úvahy iba prvé R z odhadovaných irelevantných dokumentov z cyklu).

    3. Kritérium úplnosti výsledkov vyhľadávania

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

    kde a je počet nájdených relevantných dokumentov, c je počet nenájdených relevantných dokumentov.

    4. Testovacie kolekcie. V prípade problému strojového učenia si hodnotenie vyžaduje súbor dokumentov a dopytov so zodpovedajúcimi skóre relevantnosti určenými odborníkmi. Tieto údaje sa používajú na strojové učenie funkcie hodnotenia, ako aj na hodnotenie kvality.

    klasifikáciu výsledkov vyhľadávania systémom. V procese ML sa testovacie kolekcie používajú ako tréningová sada, a preto majú významný vplyv na výsledky. Na výskum bola použitá testovacia zbierka dokumentov a žiadostí LETOR. Táto kolekcia sa používa na výskum získavania informácií spoločnosťou Microsoft Research. Tabuľka 1 je znázornená charakteristika testovacích kolekcií LETOR.

    5. Upravený genetický algoritmus. Aby bolo možné použiť genetické algoritmy v strojovom učení na hodnotenie, problém musí byť formulovaný tak, že riešenie je zakódované ako vektor (genotyp), kde každý gén môže byť bit, číslo alebo iný objekt. V tomto prípade je genotyp reprezentovaný vektorom váhových faktorov pre zodpovedajúce klasifikačné faktory. Podmienkou zastavenia vykonávania genetického algoritmu je nájdenie optimálneho riešenia, vyčerpanie počtu generácií alebo času určeného na evolúciu.

    Treba si uvedomiť, že GA sú najefektívnejšie pri hľadaní regiónu globálneho extrému, môžu však fungovať pomaly, keď je potrebné nájsť lokálne minimum v tomto regióne. Navrhovaný spôsob, ako sa vyhnúť tejto nevýhode, je vytvoriť modifikovaný genetický algoritmus (MGA), ktorý po nájdení globálnej optimálnej oblasti pomocou základného GA prejde na lokálny (vysokorýchlostný) optimalizačný algoritmus. Navrhovaná MGA je hybridná metóda založená na klasickej GA a metóde Nelder - Mead (simplexný algoritmus). Nelder-Meadova metóda, často používaný nelineárny optimalizačný algoritmus, je numerická metóda na nájdenie minima cieľovej funkcie vo viacrozmernom priestore. Hybridný algoritmus MGA navrhnutý v tejto práci sa po splnení podmienok na zastavenie GA prepne na metódu Nelder - Mead. Bloková schéma algoritmu MGA je znázornená na obr. 1.

    Pri realizácii výskumu bolo akceptované obmedzenie počtu výpočtov cieľovej funkcie (Nrf = 16 000) pri hľadaní globálneho extrémneho regiónu a podmienka prechodu na lokálny optimalizačný algoritmus založený na metóde Nelder - Mead (po tzv. základný genetický algoritmus vykonal 75 % operácií Nrf).

    6. Výsledky. Výsledkom výskumu uskutočneného pomocou algoritmu strojového učenia

    stôl 1

    Počet dokumentov a dopytov v testovacích kolekciách

    Názov testovacej kolekcie Názov podsystému Počet žiadostí Počet dokumentov

    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

    Ryža. 1. Bloková schéma hybridného MVL algoritmu založeného na genetických algoritmoch a Nelder-Meadovej metóde

    Na klasifikáciu LTR-MGA sa získa vektor váh WC * pre funkciu hodnotenia. Ďalej sa na základe údajov z testovacej kolekcie LETOYA posudzovala kvalita hodnotenia, pre ktorú boli vypočítané metriky kvality. Diskrétna metrika hodnotenia kvality [e-mail chránený] hodnotí kvalitu prvých n dokumentov odozvy systému. Všeobecne akceptované metriky na hodnotenie kvality hodnotenia sú [e-mail chránený], [e-mail chránený] a [e-mail chránený] Pre podrobnejšie zváženie zmien v metrike v závislosti od hodnôt [e-mail chránený] pre všetky n od 1 do 10. Na porovnanie účinnosti vyvinutého algoritmu s existujúcimi riešeniami bola vykonaná porovnávacia analýza pomocou hodnotiacich algoritmov poskytnutých v kolekciách LETOIA 3.0. Výsledky spustenia algoritmov pre testovacie kolekcie TB2003 a TB2004 pre metriku NDCG sú znázornené na obr. 2. Výsledky ukazujú, že algoritmus LTR-MGA prekonáva testovacie algoritmy, pričom najvyššie hodnoty sú

    sú pre [e-mail chránený](na úrovni prvého dokumentu). Nadradenosť algoritmu LTR-MGA je spôsobená skutočnosťou, že na rozdiel od testovacích hodnotiacich funkcií uvažovaných v experimentoch, v navrhovanom prístupe na optimalizáciu hodnotiacej funkcie je to metrika NDCG, ktorá sa používa ako cieľová funkcia.

    Aby bolo možné posúdiť kvalitu hodnotenia pri použití navrhovaného algoritmu LTR-MGA, boli vypočítané hodnoty metrík kvality pre hodnotenie dokumentov vo výsledkoch vyhľadávania (obr. 3). Porovnanie výsledkov klasifikácie (Tabuľka 2) pri použití základnej klasifikačnej funkcie, základného algoritmu LTR-GA a modifikovaného algoritmu LTR-MGA ukazuje na výhodu druhého.

    Štúdia navyše odhadla čas potrebný na klasifikáciu MO. Je to potrebné na potvrdenie, že navrhovaná metóda LTR-MGA je v tomto ukazovateli lepšia ako prístup založený na použití tradičných

    Ryža. 2. Porovnanie algoritmov strojového učenia pre hodnotenie

    podľa metriky NDCG pre testovacie kolekcie: vľavo - súbor údajov Gov03td, vpravo - súbor údajov Gov04td

    Ryža. 3. Hodnotenie metrík kvality hodnotenia pre základný vzorec hodnotenia a algoritmy učenia LTR-GA a LTR-MGA

    Hodnotenie metrík kvality pre rôzne hodnotiace algoritmy strojového učenia

    tabuľka 2

    Metrika kvality hodnotenia Základná funkcia hodnotenia LTR-GA LTR-MGA Zvýšenie hodnoty metriky,%

    Presnosť 0,201 0,251 0,267 26,81

    [e-mail chránený](prvých 5 dokumentov) 0,149 0,31 0,339 90,47

    [e-mail chránený](prvých 10 dokumentov) 0,265 0,342 0,362 29,14

    Bpref 0,303 0,316 0,446 51,49

    Úplnosť 0,524 0,542 0,732 39,03

    * Najlepšie hodnoty pre príslušnú metriku sú zvýraznené sivou farbou

    onnogo genetický algoritmus (LTA-OL). Výsledky porovnania času stráveného vykonávaním algoritmov LТЯ-OL a LТЯ-MOL sú uvedené v tabuľke. 3.

    7. Záver. Vykonané štúdie teda ukázali, že pri použití navrhovaného prístupu sa hodnoty uvažovaných hodnotiacich metrík v ISS zvyšujú (v priemere o 19,55 % v porovnaní s algoritmom LTS-OL). To potvrdzuje, že LITA-MOL funguje správne a výrazne zlepšuje funkciu hodnotenia, inými slovami, úspešne rieši problém s optimalizáciou. Použitie upraveného algoritmu

    Vďaka aplikácii metódy lokálnej optimalizácie a zavedeným obmedzeniam počtu výpočtov cieľovej funkcie sa skrátil čas strojového učenia (v priemere o 17,71 % v porovnaní s použitím tradičného genetického algoritmu LTIAOL).

    Vyvinutý algoritmus strojového učenia na klasifikáciu LТY-MOL možno použiť v ISS, ktoré používajú model hodnotenia založený na kombinácii jednoduchých klasifikačných funkcií. Mali by sa však vziať do úvahy niektoré obmedzenia uplatňovania navrhovaného prístupu. Na základe

    Odhadnutie času vykonania hodnotenia strojového učenia v závislosti od veľkosti trénovacej vzorky

    Tabuľka 3

    Veľkosť kolekcie textových dokumentov

    Čas vykonania LTR-GA

    Runtime LTR-MGA

    Skrátenie času vykonania, %

    Priemerná

    * Najlepšie hodnoty pre zodpovedajúcu veľkosť testovacej kolekcie sú zvýraznené sivou farbou

    zo získaných výsledkov sa ukázalo, že po MO je najvyšší nárast zaznamenaný v metrike kvality rankingu, ktorej hodnota bola braná ako objektívna funkcia. Zároveň ostatné metriky nemusia mať výrazné zlepšenie a v niektorých prípadoch dokonca zhoršujú ich hodnoty. Ako jeden z možných prístupov k odstráneniu tohto nedostatku sa navrhuje riešiť problém optimalizácie ako multikriteriálny: namiesto optimalizácie jednej z nich jednotne zlepšiť niekoľko hlavných hodnotiacich metrík výsledkov vyhľadávania. Okrem toho sa v ďalších štúdiách plánuje vyvinúť metodológiu na zostavenie objektívnej funkcie založenej na lineárnej konvolúcii hlavných hodnotiacich metrík kvality na zlepšenie procesu získavania informácií.

    Bibliografický zoznam

    1. Tie-Yan Liu. Naučiť sa hodnotiť pri získavaní informácií // Základy a trendy pri získavaní informácií v časopisoch. Vol. 3, číslo 3. Marec 2009. S. 225-331.

    2. Christopher J. C. Burges, Tal Shaked, Erin Renshaw. Learning to Rank using Gradient Descent // Proceeding ICML "05 Zborník z 22. medzinárodnej konferencie o strojovom učení. 2005. S. 89-96.

    3. Semenikhin, S. V. Skúmanie prístupov k strojovému učeniu na hodnotenie dokumentov pomocou vyhľadávacieho systému založeného na genetických algoritmoch / S. V. Semenikhin // Mladé Rusko: pokročilé technológie v priemysle. - 2013. - Č. 2. - S. 82 - 85.

    4. Multikriteriálna optimalizácia založená na genetických algoritmoch pri syntéze riadiacich systémov: monografia. / L. A. Denisová. - Omsk: Vydavateľstvo OmSTU, 2014 .-- 170 s. - ISBN 978-5-8149-1822-2.

    5. Denisova, L. A. Automatizácia parametrickej syntézy riadiaceho systému pomocou genetického algoritmu / L. A. Denisova, V. A. Meshcheryakov // Automatizácia v priemysle. - 2012. - Číslo 7. - S. 34 - 38.

    6. Huber, Peter J. Robustný odhad parametra polohy // Annals of Statistics. - 1964. - Číslo 53. - S. 73-101.

    7. Semenikhin, S. V. Automatizácia získavania informácií na základe multikriteriálnej optimalizácie a genetických algoritmov / S. V. Semenikhin, L. A. Denisova // Dynamika systémov, mechanizmov a strojov. - 2014. - Č. 3. - S. 224 - 227.

    8. Tie-Yan Liu, Jun Xu, Tao Qin, Wenying Xiong a Hang Li. LETOR: Benchmark Dataset for Research on Learning to Rank for Information Retrieval // SIGIR 2007 Workshop on Learning to Rank for Information Retrieval. - 2007 .-- S. 3-10.

    9. Ageev, MS Oficiálna metrika RMIP "2004 / MS Ageev, IE Kuralenok // II Ruský seminár o hodnotení metód získavania informácií (ROMIP 2004), Pushchino, 2004: tr.; Ed. S. Nekrestyanova. - St. Petersburg: Výskumný ústav chémie, Štátna univerzita v Petrohrade - S. 142-150.

    10. J. A. Nelder, R. Mead, Simplexná metóda na minimalizáciu funkcií, The Computer Journal 7 (1965). 308-313.

    Svyatoslav Vitalievich SEMENIKHIN, postgraduálny študent Katedry automatizovaného spracovania informácií a systémov riadenia. Korešpondenčná adresa: [e-mail chránený] DENISOVA Lyudmila Albertovna, doktorka technických vied, docentka Katedry automatizovaného spracovania informácií a systémov riadenia. Korešpondenčná adresa: [e-mail chránený]

    Táto kapitola predstavuje populárne metódy hodnotenia kvality klasifikačného modelu, ktoré sa okrem iného používajú aj v iných prácach na túto tému. Uvádza sa ich popis a zdôvodnenie metrík použitých na toto hodnotenie.

    Metriky hodnotenia kvality

    Úplná presnosť

    Táto metrika je jednou z najjednoduchších a zároveň univerzálnych metrík na hodnotenie výkonnosti klasifikačných algoritmov. Hodnota tohto koeficientu sa vypočíta ako podiel správne klasifikovaných objektov z celkového počtu objektov vo vzorke. Táto metrika je populárna vďaka svojej jednoduchosti a možnosti rozšírenia na ľubovoľný počet tried. Hlavnou nevýhodou tejto metriky je, že všetkým dokumentom priraďuje rovnakú váhu, čo môže byť nesprávne v prípade silného presunu dokumentov v trénovacej sade smerom k jednej alebo viacerým triedam. Táto metrika môže mať vysokú hodnotu, ale klasifikátor v rámci rovnakej triedy môže vykazovať extrémne nízku kvalitu práce. Metrika to zároveň nijako nesignalizuje.

    Presnosť, úplnosť a F-miera

    Metriky, ako je presnosť a vybavovanie, boli prvýkrát široko používané pri hodnotení výkonnosti systémov, ktoré riešia problémy s vyhľadávaním informácií. Presnosť systému v rámci jednej triedy je pomer objektov, ktoré skutočne patria do určitej triedy, vo vzťahu ku všetkým objektom priradeným systémom k tejto triede. Úplnosť je vyjadrená ako podiel objektov nájdených klasifikátorom patriacich do triedy vzhľadom na všetky objekty tejto triedy. Tabuľka 4 je kontingenčnou tabuľkou samostatnej triedy, kde TP (skutočne pozitívne) je pravdivo-pozitívne rozhodnutie, TN (skutočne negatívne) je pravdivo-negatívne rozhodnutie, FP (falošne pozitívne) je falošne pozitívne rozhodnutie a FN (falošne negatívne) je nesprávne rozhodnutie -negatívne rozhodnutie.

    Tabuľka 1 – Kontingenčná tabuľka triedy objektov

    Presnosť a úplnosť sa teda vypočítajú takto:

    F-measure kombinuje informácie o presnosti a úplnosti hodnoteného algoritmu. Vypočítava sa ako harmonický priemer ukazovateľov presnosti a úplnosti:

    Vzhľadom na to, že F-measure sa počíta samostatne pre každú triedu, je vhodné ju použiť na vyhľadávanie a analýzu špecifických chýb algoritmu, na vyhodnotenie klasifikácie s viacerými triedami. Navyše, v prípade veľkého počtu tried je potrebná charakteristika, ktorá by agregovala úplnosť a presnosť pre všetky triedy a charakterizovala celkové správanie systému. V tejto práci sa na tento účel používajú tieto agregované hodnoty: presnosť makra, ktorá sa počíta ako aritmetický priemer presnosti pre všetky triedy, vyvolanie makra, ktorá sa počíta ako aritmetický priemer úplnosti pre všetky triedy, a makro F- miera (Macro F-score), čo je harmonický priemer medzi nimi.

    Krížová validácia

    Krížová validácia je jednou z najbežnejších metód vykonávania úplného testovania a hodnotenia výkonnosti rôznych algoritmov strojového učenia. Pre nezávislú vzorku táto metóda umožňuje získať nestranný odhad pravdepodobnosti chyby, na rozdiel od priemernej chyby na trénovanej vzorke, čo môže byť skreslený odhad pravdepodobnosti chyby v dôsledku preplnenia algoritmu. Ďalšou výhodou tohto postupu je možnosť získať odhad pravdepodobnosti chyby algoritmu pri absencii špeciálne navrhnutej kontrolnej vzorky na testovanie.

    Predpokladajme, že ide o množinu popisov vlastností objektov, na ktorých je špecifikovaná konečná vzorka prípadov použitia, kde je konečná množina tried. Je dané mapovanie, ktoré priraďuje algoritmus ľubovoľnému výberu prípadov použitia. Potom sa kvalita algoritmu pre ľubovoľnú vzorku precedensov odhadne pomocou funkcionálu kvality:

    kde je nejaká nezáporná funkcia, ktorá vráti hodnotu chyby algoritmu so správnym označením triedy.