Co znamená metrika kvality ve strojovém učení. Žebříčkový trénink

V procesu přípravy úkolu pro přijímací test na letní školu GoTo jsme zjistili, že v ruštině prakticky neexistuje kvalitativní popis hlavních hodnotících metrik (úloha se týkala speciálního případu hodnotícího problému – sestavení doporučujícího algoritmu) . My v E-Contenta aktivně používáme různé hodnotící metriky, a tak jsme se rozhodli toto nedorozumění napravit napsáním tohoto článku.

Úkol hodnocení nyní vyvstává všude: seřadit webové stránky podle zadaného vyhledávacího dotazu, personalizovat novinky, doporučovat videa, zboží, hudbu... Jedním slovem je téma horké. Ve strojovém učení dokonce existuje speciální oblast, která se zabývá studiem hodnotících algoritmů schopných samoučení – učením se hodnotit. Abychom z celé řady algoritmů a přístupů vybrali ten nejlepší, je nutné umět kvantifikovat jejich kvalitu. Nejběžnější metriky kvality hodnocení budou diskutovány níže.

Krátce o problému pořadí

Ranking - úkol seřadit množinu Prvky pro jejich relevantnost. Nejčastěji je relevance chápána ve vztahu k někomu. objekt. Například v úloze vyhledávání informací je objektem dotaz, prvky jsou všechny druhy dokumentů (odkazy na ně) a relevance je shoda dokumentu s požadavkem, v úloze doporučení je objektem uživatel. , prvky jsou ten či onen doporučený obsah (produkty, videa, hudba) a relevance je pravděpodobnost, že uživatel tento obsah použije (koupí/lajkne/zobrazí).

Formálně zvažte N objektů a M prvků. Výstupem algoritmu hodnocení prvků pro objekt je mapování, které každému prvku přiřadí váhu, která charakterizuje stupeň relevance prvku k objektu (čím větší váha, tím relevantnější je objekt). Množina vah zároveň určuje permutaci množiny prvků prvků (předpokládáme, že množina prvků je uspořádaná) na základě jejich řazení v sestupném pořadí podle váhy .

Pro hodnocení kvality žebříčku je potřeba mít nějakou „referenci“, se kterou lze výsledky algoritmu porovnávat. Uvažujme - referenční funkci relevance, charakterizující "skutečnou" relevanci prvků pro daný objekt ( - prvek se ideálně hodí, - zcela irelevantní), jakož i jemu odpovídající permutaci (v sestupném pořadí).

Existují dva hlavní způsoby, jak získat:
1. Na základě historických dat. Například v případě doporučení obsahu můžete vzít zobrazení (lajky, nákupy) uživatele a přiřadit zobrazené váhy relevantních prvků 1 () a všem ostatním 0.
2. Na základě vzájemného hodnocení. Například do vyhledávací úlohy můžete pro každý dotaz zapojit tým hodnotitelů, kteří ručně vyhodnocují relevanci dokumentů k dotazu.

Stojí za zmínku, že když nabývá pouze extrémních hodnot: 0 a 1, pak se s permutací většinou neuvažuje a bere se v úvahu pouze množina relevantních prvků, pro které .

Účel hodnocení kvality- určit, jak odpovídají odhady relevance získané algoritmem a odpovídající permutace skutečný hodnoty relevance. Zvažte hlavní metriky.

Průměrná průměrná přesnost

Střední průměrná přesnost při K ( [e-mail chráněný]) je jednou z nejčastěji používaných metrik kvality hodnocení. Abychom pochopili, jak to funguje, začněme „základy“.

Poznámka: Metrika „*precision“ se používá v binárních problémech, kde nabývá pouze dvou hodnot: 0 a 1.

Přesnost u K

Přesnost na K ( [e-mail chráněný]) - přesnost na K prvcích - základní klasifikační metrika kvality pro jeden objekt. Řekněme, že náš hodnotící algoritmus vytvořil skóre relevance pro každou položku. Po výběru prvních prvků s největšími z nich můžeme vypočítat podíl relevantních. To je přesně to, co přesnost v K dělá:

Poznámka: prvek je chápán tak, že je v důsledku permutace na -té pozici. Takže, je prvek s největším , je prvek s druhým největším a tak dále.

Průměrná přesnost na K

Přesnost na K je metrika, která je snadno pochopitelná a implementovatelná, ale má důležitou nevýhodu – nebere v úvahu pořadí prvků v „nahoře“. Takže pokud jsme uhodli pouze jeden z deseti prvků, pak nezáleží na tom, kde to bylo: v prvním nebo v posledním v každém případě. Je zřejmé, že první možnost je mnohem lepší.

Tento nedostatek je kompenzován metrikou hodnocení průměrná přesnost při K ( [e-mail chráněný]) , což se rovná součtu [e-mail chráněný] podle indexů k od 1 do K pouze pro relevantní položky děleno K:

Pokud se tedy ze tří prvků ukázal jako relevantní pouze ten na posledním místě, pak pokud byl uhodnut pouze ten na prvním místě, pak , a pokud byly uhodnuty všechny, pak .

nyní a [e-mail chráněný] nás v zubech.

Střední průměrná přesnost při K

Střední průměrná přesnost při K ( [e-mail chráněný]) je jedním z nejčastěji používaných ukazatelů kvality hodnocení. V [e-mail chráněný] a [e-mail chráněný] kvalita hodnocení se hodnotí pro jeden objekt (uživatel, vyhledávací dotaz). V praxi existuje mnoho objektů: máme co do činění se stovkami tisíc uživatelů, miliony vyhledávacích dotazů a tak dále. Nápad [e-mail chráněný] je počítat [e-mail chráněný] pro každý objekt a průměr:

Poznámka: tato myšlenka je celkem logická, předpokládáme, že všichni uživatelé jsou stejně potřební a stejně důležití. Pokud tomu tak není, můžete místo prostého průměrování použít vážené násobení [e-mail chráněný] každý předmět svou odpovídající „důležitou“ váhou.

Normalizovaný diskontovaný kumulativní zisk

Normalizovaný diskontovaný kumulativní zisk (nDCG) je další běžná metrika kvality hodnocení. Stejně jako v případě s [e-mail chráněný] Začněme základy.

Kumulativní zisk u K

Zvažte znovu jeden objekt a prvky s největší . Kumulativní zisk při K ( [e-mail chráněný]) – základní metrika hodnocení, která využívá jednoduchý nápad: čím relevantnější položky jsou v této horní části, tím lépe:

Tato metrika má zjevné nevýhody: není normalizována a nebere v úvahu pozici relevantních prvků.

Všimněte si, že na rozdíl od [e-mail chráněný], [e-mail chráněný] lze také použít v případě nebinárních referenčních hodnot relevance.

Zvýhodněný kumulativní zisk na K

Diskontovaný kumulativní zisk při K ( [e-mail chráněný]) - úprava kumulativního zisku v K, s přihlédnutím k pořadí prvků v seznamu vynásobením relevance prvku váhou rovnou inverznímu logaritmu čísla pozice:

Poznámka: pokud má pouze hodnoty 0 a 1, pak , a vzorec má jednodušší formu:

Použití logaritmu jako diskontní funkce lze vysvětlit následujícími intuitivními úvahami: z hlediska pořadí se pozice na začátku seznamu liší mnohem více než pozice na jeho konci. Mezi pozicemi 1 a 11 je tedy v případě vyhledávače celá propast (jen v pár případech ze sta uživatel překročí první stránku s výsledky vyhledávání) a není velký rozdíl mezi pozice 101 a 111 – málokdo na ně dosáhne. Tyto subjektivní úvahy jsou krásně vyjádřeny pomocí logaritmu:

Diskontovaný kumulativní zisk řeší problém zohlednění pozice relevantních prvků, ale pouze zhoršuje problém s nedostatečnou normalizací: pokud se mění v rámci , pak již nabývá hodnot na segmentu, který není zcela jasný. K vyřešení tohoto problému je navržena následující metrika.

Normalizovaný diskontovaný kumulativní zisk na K

Jak můžete tušit z názvu, normalizovaný diskontovaný kumulativní zisk při K ( [e-mail chráněný]) - nic než normalizovaná verze [e-mail chráněný]:

kde je maximální (I - ideální) hodnota . Vzhledem k tomu, že jsme se shodli, že to má hodnoty v , pak .

Dědí tedy zohlednění pozice prvků v seznamu a zároveň nabývá hodnot v rozsahu od 0 do 1.

Poznámka: Podobné jako [e-mail chráněný] lze vypočítat, zprůměrovat přes všechny objekty.

Průměrná reciproční hodnost

Střední reciproční pořadí (MRR) je další běžně používaná metrika kvality hodnocení. Je dán následujícím vzorcem:

kde - reciproční hodnost pro -tý objekt - ve své podstatě velmi jednoduchá hodnota, rovná se opačné pořadí prvního správně uhádnutého prvku.

Střední reciproční pořadí se liší v rozsahu a bere v úvahu polohu prvků. Bohužel to dělá pouze pro jeden prvek - 1. správně předpovězený, ignoruje všechny následující.

Metriky založené na korelaci pořadí

Samostatně stojí za to zdůraznit metriky hodnocení kvality založené na jednom z koeficientů hodnostní korelace. Ve statistice je koeficient korelace pořadí korelační koeficient, který nezohledňuje samotné hodnoty, ale pouze jejich pořadí (pořadí). Zvažte dva nejběžnější koeficienty korelace pořadí: Spearmanův a Kendallův koeficient.

Kendallův koeficient pořadové korelace

Prvním z nich je Kendallův korelační koeficient, který je založen na počítání shodných
(a nekonzistentní) dvojice permutací - dvojice prvků, kterým permutace přiřadily stejné (různé) pořadí:

Spearmanův koeficient pořadové korelace

Druhý - Spearmanův koeficient hodnostní korelace - není v podstatě nic jiného než Pearsonova korelace vypočítaná na hodnotách hodnosti. Existuje poměrně pohodlný vzorec, který to vyjadřuje přímo z řad:

kde je Pearsonův korelační koeficient.

Metriky založené na korelaci pořadí mají nevýhodu, kterou již známe: neberou v úvahu pozici prvků (ještě horší než [e-mail chráněný], protože korelace se vypočítá pro všechny prvky, nikoli pro K prvků s nejvyšším hodnocením). Proto se v praxi používají jen zřídka.

Metriky založené na modelu vodopádového chování

Do této chvíle jsme se neponořili do toho, jak uživatel (později budeme uvažovat o speciálním případu objektu – uživatel) zkoumá prvky, které se mu nabízejí. Ve skutečnosti jsme implicitně vycházeli z předpokladu, že prohlížení každého prvku nezávislý z pohledů jiných živlů – jakási „naivita“. V praxi si prvky často prohlíží uživatel postupně a zda uživatel zobrazí další prvek, závisí na jeho spokojenosti s předchozími. Vezměme si příklad: v reakci na vyhledávací dotaz nabídl algoritmus hodnocení uživateli několik dokumentů. Pokud jsou dokumenty na pozicích 1 a 2 extrémně relevantní, pak je pravděpodobnost, že uživatel uvidí dokument na pozici 3, nízká, protože s prvními dvěma bude docela spokojený.

Podobné modely uživatelského chování, kdy ke studiu jemu nabízených prvků dochází sekvenčně a pravděpodobnost zobrazení prvku závisí na relevanci předchozích, jsou tzv. kaskádové.

Očekávaná reciproční hodnost

Očekávaná reciproční hodnost (ERR) je příkladem metriky hodnocení kvality založené na vodopádovém modelu. Je dán následujícím vzorcem:

kde je hodnost chápána v sestupném pořadí. Nejzajímavější na této metrice jsou pravděpodobnosti. Při jejich výpočtu se použijí předpoklady kaskádového modelu:

kde je pravděpodobnost, že uživatel bude spokojen s objektem s hodnocením . Tyto pravděpodobnosti se počítají na základě hodnot . Protože v našem případě můžeme zvážit jednoduchou možnost:

který lze číst jako: skutečnou relevanci položky na pozici Na závěr uvádíme několik užitečných odkazů.

Na prvky v každém seznamu. Částečné pořadí je obvykle dáno určením skóre pro každou položku (např. „relevantní“ nebo „nepodstatné“; jsou možné více než dvě gradace). Cílem hodnotícího modelu je nejlépe (v jistém smyslu) přiblížit a zobecnit způsob, jakým hodnocení v trénovací sadě odpovídá novým datům.

Ranking learning je stále poměrně mladá, rychle se rozvíjející oblast výzkumu, která vznikla v roce 2000 se vznikem zájmu o oblast vyhledávání informací při aplikaci metod strojového učení na problémy s hodnocením.

Encyklopedický YouTube

  • 1 / 5

    Během trénování hodnotícího modelu a během jeho provozu je každý pár dokument-žádost přeložen do číselného vektoru hodnotících prvků (nazývaných také hodnotící faktory nebo signály), které charakterizují vlastnosti dokumentu, dotaz a jejich vztah. Tyto znaky lze rozdělit do tří skupin:

    Níže jsou uvedeny některé příklady funkcí hodnocení používaných ve známém datovém souboru LETOR v této oblasti:

    • Hodnoty měření TF, TF-IDF , BM25 a jazykový model přizpůsobení požadavku různých zón dokumentu (název, URL, hlavní text, text odkazu);
    • Délky a součty IDF oblastí dokumentu;
    • Hodnocení dokumentů získané pomocí různých variant algoritmů hodnocení odkazů, jako je PageRank a HITS.

    Hodnocení metrik kvality

    Existuje několik metrik, které vyhodnocují a porovnávají výkon hodnotících algoritmů na vzorku s partnerskými recenzemi. Parametry hodnotícího modelu mají často tendenci být upraveny tak, aby se maximalizovala hodnota jedné z těchto metrik.

    Příklady metrik:

    Klasifikace algoritmů

    Tai-Yan Liu z Microsoft Research Asia ve svém článku „Learning to Rank for Information Retrieval“ a projevech na tematických konferencích analyzoval metody, které jsou v současné době k dispozici pro řešení problému učení se hodnotit a navrhl jejich klasifikaci do tří přístupů v závislosti na vstupu. reprezentace použitých dat a funkcí v pořádku:

    Bodový přístup

    Poznámky

    1. Tie Yan Liu (2009) Naučit se hodnotit za získávání informací, Základy a trendy ve vyhledávání informací: sv. 3: Ne 3, str. 225-331, ISBN 978-1-60198-244-5 , DOI 10.1561/1500000016. K dispozici jsou snímky z projevu T. Lewa na konferenci WWW 2009.

    Čau Habr!

    V úlohách strojového učení se metriky používají k hodnocení kvality modelů a porovnávání různých algoritmů a jejich výběr a analýza je nepostradatelnou součástí práce datového vědce.

    V tomto článku se podíváme na některá kritéria kvality v problémech klasifikace, probereme, co je důležité při výběru metriky a co se může pokazit.

    Metriky v klasifikačních problémech

    Pro demonstraci užitečných funkcí sklearn a vizuální reprezentaci metrik, použijeme datovou sadu zákaznických churnů našeho telekomunikačního operátora, se kterou jsme se seznámili v prvním článku kurzu.

    Stáhněte si potřebné knihovny a podívejte se na data

    Importovat pandy jako pd import matplotlib.pyplot jako plt z matplotlib.pylab import rc, vykreslovat import seaborn jako sns ze sklearn.preprocessing import LabelEncoder, OneHotEncoder ze sklearn.model_selection import cross_val_score ze sklearn.linear_model import LogisticRegression import z RandomsGradingClasarn. ze sklearn.metrics import precision_recall_curve, klasifikační_report ze sklearn.model_selection import train_test_split df = pd.read_csv("../../data/telecom_churn.csv")

    Df.head(5)

    Předzpracování dat

    # Zmapujte binární sloupce # a fiktivně zakódujte stav (pro zjednodušení je lepší to u dřevěných modelů nedělat) d = ("Ano" : 1, "Ne" : 0) df["Mezinárodní plán"] = df [" Mezinárodní plán"].map(d) df["Plán hlasové pošty"] = df["Plán hlasové pošty"].map(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(encoded_state, columns=["state " + str(i) pro i v rozsahu(encoded_state.shape)]) df = pd.concat(, osa=1)

    Přesnost, přesnost a zapamatovatelnost

    Než přejdeme k samotným metrikám, je třeba zavést důležitý koncept popisující tyto metriky z hlediska chyb klasifikace – matoucí matice(matice chyb).
    Předpokládejme, že máme dvě třídy a algoritmus, který předpovídá, zda každý objekt patří do jedné z tříd, pak bude matice chyb klasifikace vypadat takto:

    Skutečně pozitivní (TP) Falešně pozitivní (FP)
    falešně negativní (FN) True Negative (TN)

    je odezva algoritmu na objekt a

    Skutečný popisek třídy na tomto objektu.
    Existují tedy dva typy chyb klasifikace: falešně negativní (FN) a falešně pozitivní (FP).

    Trénink algoritmů a konstrukce matice chyb

    X = df.drop("Churn", axis=1) y = df["Churn"] # Rozdělte vzorek na vlak a otestujte, všechny metriky budou vyhodnoceny na testovacím datovém souboru X_train, X_test, y_train, y_test = train_test_split( X, y , stratify=y, test_size=0,33, random_state=42) # Trénujte nativní logistickou regresi lr = LogisticRegression(random_state=42) lr.fit(X_train, y_train) # Použijte funkci k vytvoření matice chyb ze sklearn dokumentace 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="Matice zmatení") plt.savefig("conf_matrix.png") plt.show()!}

    Přesnost

    Intuitivní, zřejmá a téměř nepoužívaná metrika je přesnost - procento správných odpovědí algoritmu:

    Tato metrika je nepoužitelná v problémech s nerovnými třídami a lze ji snadno ukázat na příkladu.

    Řekněme, že chceme vyhodnotit výkon filtru nevyžádané pošty. Máme 100 nespamových e-mailů, z nichž 90 náš klasifikátor určil správně (pravdivě negativní = 90, falešně pozitivní = 10) a 10 spamových e-mailů, z nichž 5 bylo klasifikátorem také správně určeno (pravdivě pozitivní = 5, falešně negativní = 5).
    Pak přesnost:

    Pokud však pouze předpovídáme, že všechny e-maily nejsou spam, získáme vyšší přesnost:

    Náš model zároveň nemá vůbec žádnou prediktivní schopnost, protože jsme původně chtěli identifikovat spamové e-maily. Přechod od společné metriky pro všechny třídy k individuálním ukazatelům kvality třídy nám to pomůže překonat.

    Přesnost, vyvolání a F-měření

    Abychom mohli posoudit kvalitu algoritmu na každé z tříd samostatně, zavedeme metriku přesnost (přesnost) a zapamatovatelnost (úplnost).

    Přesnost lze interpretovat jako podíl objektů, které klasifikátor nazývá pozitivní a zároveň jsou skutečně pozitivní, a vyvolání ukazuje, jaký podíl objektů pozitivní třídy ze všech objektů pozitivní třídy algoritmus našel.

    Právě zavedení přesnosti nám neumožňuje zapsat všechny objekty do jedné třídy, protože v tomto případě získáme zvýšení úrovně False Positive. Recall demonstruje schopnost algoritmu vůbec detekovat danou třídu, zatímco přesnost demonstruje schopnost odlišit tuto třídu od ostatních tříd.

    Jak jsme uvedli dříve, existují dva typy klasifikačních chyb: falešně pozitivní a falešně negativní. Ve statistice se první typ chyby nazývá chyba typu I a druhý typ se nazývá chyba typu II. V našem úkolu určit odliv předplatitelů bude chybou prvního druhu chyba loajálního předplatitele za odcházejícího, protože naší nulovou hypotézou je, že žádný z předplatitelů neodchází, a tuto hypotézu odmítáme. V souladu s tím bude chybou druhého druhu "průchod" odchozího účastníka a chybné přijetí nulové hypotézy.

    Přesnost a vyvolání nezávisí, na rozdíl od přesnosti, na poměru tříd, a proto jsou použitelné v podmínkách nevyvážených vzorků.
    Často je v reálné praxi úkolem najít optimální (pro zákazníka) rovnováhu mezi těmito dvěma metrikami. Klasickým příkladem je problém stanovení odlivu zákazníků.
    Je jasné, že nemůžeme najít Všechno stloukání zákazníků a pouze jim. Ale když jsme určili strategii a zdroje pro udržení zákazníků, můžeme vybrat nezbytné prahové hodnoty pro přesnost a odvolání. Můžeme se například zaměřit na udržení pouze zákazníků s vysokou marží nebo těch, u kterých je větší pravděpodobnost, že se budou chovat, protože jsme omezeni zdroji call centra.

    Obvykle při optimalizaci hyperparametrů algoritmu (například v případě iterace přes mřížku GridSearchCV) používá jednu metriku, jejíž zlepšení očekáváme na testovacím vzorku.
    Existuje několik různých způsobů, jak zkombinovat přesnost a vyvolání do souhrnného měřítka kvality. F-míra (obecně

    ) - průměrná harmonická přesnost a zapamatovatelnost:

    v tomto případě určuje váhu přesnosti v metrice a kdy

    toto je harmonický průměr (s faktorem 2, takže v případě přesnosti = 1 a vyvolání = 1 máme

    )
    F-míra dosahuje svého maxima při vyvolání a přesnosti rovné jedné a je blízká nule, pokud je jeden z argumentů blízký nule.
    sklearn má praktickou funkci _metrics.classification zpráva který vrací vyvolání, přesnost a F-measure pro každou třídu a také počet instancí každé třídy.

    Zpráva =klasifikace_report(y_test, lr.predict(X_test), target_names=["Non-churned", "Churned"]) print(report)

    třída přesnost odvolání skóre f1 Podpěra, podpora
    Neupravené 0.88 0.97 0.93 941
    Rozdrcený 0.60 0.25 0.35 159
    prům./celkem 0.84 0.87 0.84 1100

    Zde je třeba poznamenat, že v případě úloh s nevyváženými třídami, které převládají v reálné praxi, je často nutné sáhnout po technikách umělé modifikace datové sady pro vyrovnání poměru tříd. Existuje mnoho z nich a nebudeme se jich dotýkat, můžete se podívat na některé metody a vybrat si tu, která vyhovuje vašemu úkolu.

    AUC-ROC a AUC-PR

    Když převádíme skutečnou odezvu algoritmu (obvykle pravděpodobnost příslušnosti k nějaké třídě, viz SVM samostatně) na binární štítek, musíme zvolit nějaký práh, při kterém se 0 stane 1. Práh 0,5 se zdá přirozený a blízký, ale je ne vždy se ukáže jako optimální, například ve zmíněné nevyváženosti tříd.

    Jedním ze způsobů, jak vyhodnotit model jako celek, aniž by byl vázán na konkrétní práh, je AUC-ROC (nebo ROC AUC) - plocha ( A rea U pod C urve) pod chybovou křivkou ( R přijímač Ó perating C charakteristická křivka). Tato křivka je čára od (0,0) do (1,1) v souřadnicích True Positive Rate (TPR) a False Positive Rate (FPR):

    TPR již známe, to je úplnost a FPR ukazuje, jaký podíl objektů negativní třídy algoritmus předpověděl nesprávně. V ideálním případě, kdy klasifikátor nedělá žádné chyby (FPR = 0, TPR = 1), dostaneme plochu pod křivkou rovnou jedné, jinak, když klasifikátor náhodně vytvoří pravděpodobnosti tříd, bude mít AUC-ROC tendenci 0,5, protože klasifikátor vydá stejné množství TP a FP.
    Každý bod na grafu odpovídá volbě nějaké prahové hodnoty. Plocha pod křivkou v tomto případě ukazuje kvalitu algoritmu (více je lepší), navíc je důležitá strmost samotné křivky – chceme maximalizovat TPR a zároveň minimalizovat FPR, což znamená, že naše křivka by v ideálním případě měla mít tendenci bod (0,1).

    Kód kreslení ROC křivky

    sns.set(font_scale=1.5) sns.set_color_codes("muted") 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 křivka ") plt.plot(, ) plt.xlim() plt.ylim() plt.xlabel("Falešně pozitivní míra ") plt.ylabel("True Positive Rate") plt.title("ROC křivka") plt.savefig("ROC.png") plt.show()

    Kritérium AUC-ROC je odolné vůči nevyváženým třídám (spoiler: bohužel, ne všechno je tak jednoduché) a lze jej interpretovat jako pravděpodobnost, že náhodně vybraný pozitivní objekt bude klasifikátorem zařazen výše (bude mít vyšší pravděpodobnost, že bude pozitivní) než náhodně vybraný negativní objekt.

    Zvažte následující problém: potřebujeme vybrat 100 relevantních dokumentů z 1 milionu dokumentů. Strojově jsme se naučili dva algoritmy:

    • Algoritmus 1 vrátí 100 dokumentů, z nichž 90 je relevantních. Tím pádem,
    • Algoritmus 2 vrátí 2000 dokumentů, z nichž 90 je relevantních. Tím pádem,

    S největší pravděpodobností bychom zvolili první algoritmus, který ve srovnání s konkurencí produkuje velmi málo falešných pozitiv. Ale rozdíl ve False Positive Rate mezi těmito dvěma algoritmy velmi malý - pouze 0,0019. Je to důsledek toho, že AUC-ROC měří podíl falešně pozitivních ve vztahu k True negativním a v úkolech, kde pro nás druhá (větší) třída není tak důležitá, nemusí při porovnávání algoritmů poskytnout zcela adekvátní obrázek. .

    Abychom situaci napravili, vraťme se k úplnosti a přesnosti:

    • Algoritmus 1
    • Algoritmus 2

    Mezi těmito dvěma algoritmy je již významný rozdíl - přesnost 0,855!

    Přesnost a vyvolání se také používají k vykreslení křivky a podobně jako u AUC-ROC k nalezení oblasti pod ní.

    Zde lze poznamenat, že na malých souborech dat může být plocha pod křivkou PR příliš optimistická, protože se počítá pomocí lichoběžníkové metody, ale obvykle je v takových úlohách dostatek dat. Podrobnosti o vztahu mezi AUC-ROC a AUC-PR naleznete zde.

    Logistická ztráta

    Samostatná je funkce logistických ztrát, definovaná jako:

    je odezva algoritmu na

    ohm objekt,

    skutečný štítek třídy na

    ohm objekt a

    velikost vzorku.

    Podrobnosti o matematické interpretaci funkce logistické ztráty již byly napsány v příspěvku o lineárních modelech.
    Tato metrika se často neobjevuje v obchodních požadavcích, ale často v úlohách kaggle.
    Intuitivně lze minimalizaci ztráty logu považovat za problém maximalizace přesnosti penalizací nesprávných předpovědí. Je však třeba poznamenat, že logloss tvrdě penalizuje důvěru klasifikátora ve špatnou odpověď.

    Zvažte příklad:

    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("Logloss s nejistou klasifikací %f " % logloss_crutch(1, 0.5)) >> Logloss s nejistou klasifikací 0.693147 print("Logloss s jistou klasifikací a správnou odpovědí %f" % logloss_crutch(1, 0.9)) >> Logloss s jistou klasifikací a správnou odpovědí 0.105361 print(" Logloss pro jistou klasifikaci a špatná odpověď %f" % logloss_crutch(1, 0.1)) >> Logloss pro jistou klasifikaci a špatná odpověď 2.302585

    Všimněte si, jak dramaticky vzrostl logloss se špatnou odpovědí a jistou klasifikací!
    Proto chyba na jednom objektu může způsobit výrazné zhoršení celkové chyby na vzorku. Takové objekty jsou často odlehlé hodnoty, které je třeba pamatovat na to, že je třeba je filtrovat nebo posuzovat samostatně.
    Vše zapadne na své místo, pokud nakreslíte graf ztráty logu:

    Je vidět, že čím blíže k nule je odpověď algoritmu pro základní pravdu = 1, tím vyšší je hodnota chyby a tím strměji křivka roste.

    Shrnutí:

    • V případě klasifikace do více tříd musíte pečlivě sledovat metriky každé z tříd a řídit se logikou rozhodnutí úkoly místo optimalizace metriky
    • V případě nerovných tříd je nutné zvolit rovnováhu tříd pro trénink a metriku, která bude správně odrážet kvalitu klasifikace
    • Výběr metriky by měl být proveden se zaměřením na předmětovou oblast, předzpracování dat a případně segmentaci (jako v případě dělení na bohaté a chudé zákazníky)

    užitečné odkazy

    1. Kurz Evgeny Sokolov: Seminář o volbě modelů (jsou zde informace o metrikách regresních problémů)
    2. Problémy pro AUC-ROC od A.G. Dyakonova
    3. Více o dalších metrikách si můžete přečíst na kaggle. Do popisu každé metriky byl přidán odkaz na soutěž, kde byla použita
    4. Prezentace Bogdana Melnyka aka ld86 o učení na nevyvážených samplích

    MDT 519,816

    S. V. SEMENIKHIN L. A. DENISOVÁ

    Státní technická univerzita v Omsku

    METODA STROJOVÉHO UČENÍ PRO HODNOCENÍ

    ZALOŽENO NA UPRAVENÉM GENETICKÉM ALGORITHMU PRO METRIKU URCO

    Zvažuje se problém řazení dokumentů na stránce s výsledky vyhledávání informací a otázky hodnocení strojového učení. Je navržen přístup k optimalizaci klasifikační funkce pomocí metriky kvality LOCO založené na modifikovaném genetickém algoritmu. Vyvinuté algoritmy byly studovány (na testovacích kolekcích LETO^) a byla prokázána jejich účinnost pro strojové učení v hodnocení.

    Klíčová slova: vyhledávání informací, hodnocení strojového učení, relevance, optimalizace, genetické algoritmy.

    1. Úvod. V moderních systémech vyhledávání informací (IRS) je objem dat, se kterými systém pracuje, tak velký, že klíčovým úkolem je seřadit relevantní dokumenty v reakci na vyhledávací dotaz uživatele. V této fázi vývoje IPS je největší zájem o strojové učení (ML) pro hodnocení. Stávající přístupy k ML založené na numerických metodách (zejména na gradientových metodách) nebo na analytických výpočtech mají řadu nedostatků, které významně ovlivňují kvalitu vyhledávání informací a čas potřebný k řazení relevantních dokumentů.

    Na začátku výzkumu byly zvažovány seznamové přístupy k hodnocení strojového učení, z nichž většina využívá metodu gradientního sestupu. V uvažovaných pracích se ML redukuje na optimalizaci metrik kvality vyhledávání (QM), ale používají se pouze metriky reprezentované spojitými funkcemi. Toto omezení často vede k tomu, že v důsledku optimalizace má funkce řazení nižší skóre pro mnoho důležitých akceptovaných ukazatelů (DCG, nDCG, Graded Mean Reciprocal Rank atd.), což jsou diskrétní funkce. Článek navrhuje použití genetických algoritmů (GA) v klasifikačním učení k minimalizaci Huberovy ztrátové funkce pomocí expertních odhadů relevance jako referenčních hodnot. Byl také navržen přístup k ML založený na optimalizaci metrik kvality vyhledávání diskrétních informací.

    2. Vyjádření k problému klasifikace strojového učení. Ve většině moderních systémů vyhledávání informací je funkce hodnocení postavena na základě n jednoduchých hodnotících funkcí (PRF) a lze ji zapsat jako:

    kde SRF¡ je ¡-tá jednoduchá hodnotící funkce pro dokument da dotaz d, WCi je váhový koeficient ¡-té jednoduché hodnotící funkce, n je počet PF v systému hodnocení.

    V průběhu strojového učení pro hodnocení byla použita sada vyhledávacích dokumentů B a dotazů O z testovací kolekce LBTOT. Pro všechny požadavky deO je s každým dokumentem deD vytvořen pár. Pro každý takový pár IPS určuje hodnoty relevance, které se používají k hodnocení SERP. Aby bylo možné vyhodnotit kvalitu hodnocení, systém potřebuje referenční hodnoty relevance E pro každý pár dokument-žádost t, e). Pro tyto účely se používají expertní posouzení relevance.

    Pro studii byl použit IPS, ve kterém je hodnocení založeno na N = 5 jednoduchých hodnotících funkcích SRFi(WC)l r = 1, N, které tvoří kritérium vektorové optimality:

    kde WCе (WC) - vektor proměnných parametrů; (SHS), (YB) jsou prostory parametrů a vektorových kritérií.

    Použití genetických algoritmů pro hodnocení MO umožňuje maximalizovat diskrétní metriky kvality, jako je nDCG. Metrika nDCG pro hodnocení dokumentů ve vyhledávači je určena v souladu s výrazem:

    DCG@n=X2---

    RF(q, d) = XWC. ■ SRF., i=111

    kde stupeň(p) je průměrné skóre relevance přidělené odborníky dokumentu na pozici p v seznamu výsledků, stupeň ; 1/log2(2 + p) - koeficient v závislosti na pozicích dokumentu (první dokumenty mají větší váhu).

    Poté se do formuláře zapíše normalizovaná verze NDCG

    N000 @ n = RSD @ n / r,

    kde r je normalizační faktor, který se rovná maximální možné hodnotě 0C [e-mail chráněný] n pro daný dotaz (tj. rovná se OOO ideálního hodnocení).

    Aby se tedy optimalizovaly (maximalizovaly) metriky SFR, bude účelová funkce (JM) zapsána v následujícím tvaru

    3. Metriky kvality hodnocení výsledků vyhledávání. Při hodnocení dokumentů ve výsledcích vyhledávání fungují metriky kvality jako kritéria. Ze seznamu obecně uznávaných metrik pro hodnocení kvality systémů vyhledávání informací byly vybrány tři hlavní, které hodnotí přesnost, relevanci a úplnost vyhledávání informací.

    1. Kritérium přesnosti pro vyhledávání informací

    kde a je počet nalezených relevantních dokumentů, b je počet dokumentů, které byly mylně považovány za relevantní.

    2. Kritérium Bpref, které hodnotí relevanci vyhledávání informací, se používá pro zpracování úkolu s R relevantními dokumenty a je vypočítáno podle vzorce

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

    Zde r označuje známý relevantní dokument a NonRelBefore(r) je počet známých irelevantních dokumentů zařazených výše než r (při výpočtu se berou v úvahu pouze první R hodnocené irelevantní dokumenty z běhu).

    3. Kritérium úplnosti výsledků vyhledávání

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

    kde a je počet nalezených relevantních dokumentů, c je počet nenalezených relevantních dokumentů.

    4. Testovací kolekce. V úloze strojového učení vyžaduje hodnocení sadu dokumentů a dotazů s odpovídajícím skóre relevance stanoveným odborníky. Tato data se používají pro strojové učení funkce hodnocení a také pro hodnocení kvality.

    hodnocení výsledků vyhledávání systémem. V procesu ML se kolekce testů používají jako tréninková sada, a proto mají významný vliv na výsledky. K výzkumu byla použita testovací kolekce dokumentů a dotazů LETOR. Tato kolekce se používá při výzkumu vyhledávání informací společností Microsoft Research. V tabulce. 1 ukazuje charakteristiku testovacích kolekcí LETOR.

    5. Upravený genetický algoritmus. Aby bylo možné použít genetické algoritmy ve strojovém učení pro hodnocení, musí být problém formulován tak, že řešení je zakódováno jako vektor (genotyp), kde každý gen může být bit, číslo nebo jiný objekt. V tomto případě je genotyp reprezentován vektorem vah pro příslušné klasifikační faktory. Podmínkou pro zastavení provádění genetického algoritmu je nalezení optimálního řešení, vyčerpání počtu generací nebo času určeného pro evoluci.

    Je třeba poznamenat, že GA jsou nejúčinnější při hledání globální extrémní oblasti, nicméně mohou být pomalé, když je nutné najít lokální minimum v této oblasti. Navrhovaný způsob, jak se tomuto nedostatku vyhnout, je vytvořit modifikovaný genetický algoritmus (MGA), který se po nalezení globální optimální oblasti pomocí základního GA přepne na lokální (rychlý) optimalizační algoritmus. MGA navrhovaná v článku je hybridní metoda založená na klasické GA a Nelder-Meadově metodě (simplexní algoritmus). Nelder-Meadova metoda, běžně používaný nelineární optimalizační algoritmus, je numerická metoda pro nalezení minima účelové funkce ve vícerozměrném prostoru. Hybridní algoritmus MGA navržený v tomto článku se po splnění podmínek pro zastavení GA přepne na metodu Nelder-Mead. Blokové schéma algoritmu MGA je znázorněno na Obr. jeden.

    Při provádění výzkumu byl přijat limit na počet výpočtů objektivních funkcí (Nrf = 16 000) při hledání globální extrémní oblasti a podmínka pro přechod na lokální optimalizační algoritmus založený na Nelder-Meadově metodě (po základním genetickém algoritmu provádí 75 % operací Nrf).

    6. Výsledky. Výsledkem výzkumu provedeného pomocí algoritmu strojového učení

    stůl 1

    Počet dokumentů a dotazů v testovacích kolekcích

    Název testovací kolekce Název podsystému Počet dotazů Počet dokumentů

    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

    Rýže. 1. Blokové schéma hybridního MVL algoritmu založeného na genetických algoritmech a Nelder-Meadově metodě

    Hodnocení LTR-MGA obdrželo vektor váhových koeficientů WC* pro funkci hodnocení. Dále byla na základě dat z testovací kolekce LETOY hodnocena kvalita hodnocení, pro kterou byly vypočteny metriky kvality. Diskrétní hodnocení kvality [e-mail chráněný] vyhodnocuje kvalitu prvních n dokumentů odezvy systému. Obecně přijímané metriky pro hodnocení kvality žebříčku jsou [e-mail chráněný], [e-mail chráněný] a [e-mail chráněný] Pro podrobnější zvážení však byly uvažovány změny metriky v závislosti na hodnotách [e-mail chráněný] pro všechna n od 1 do 10. Pro porovnání účinnosti vyvinutého algoritmu se stávajícími řešeními byla provedena srovnávací analýza pomocí hodnotících algoritmů poskytnutých v kolekcích LETOM 3.0. Výsledky provádění algoritmů pro testovací kolekce TB2003 a TB2004 pro metriku NDCG jsou uvedeny na Obr. 2. Výsledky ukazují, že algoritmus LTR-MGA překonává testovací algoritmy, přičemž nejvyšší hodnoty mají

    jsou pro [e-mail chráněný](na úrovni prvního dokumentu). Přednost algoritmu LTR-MGA je způsobena skutečností, že na rozdíl od testovacích hodnotících funkcí uvažovaných v experimentech, v navrhovaném přístupu k optimalizaci hodnotící funkce je jako cílová funkce použita metrika NDCG.

    Aby bylo možné vyhodnotit kvalitu hodnocení při použití navrženého algoritmu LTR-MGA, byly vypočteny hodnoty metrik kvality pro hodnocení dokumentů ve výsledcích vyhledávání (obr. 3). Porovnání výsledků klasifikace (Tabulka 2) pomocí základní klasifikační funkce, základního algoritmu LTR-GA a upraveného algoritmu LTR-MGA ukazuje na výhodu druhého.

    Kromě toho studie provedla odhad času potřebného pro zařazení MO. To je nutné k potvrzení, že navrhovaná metoda LTR-MGA je v tomto ukazateli lepší než přístup založený na použití tradičních

    Rýže. 2. Porovnání algoritmů strojového učení pro hodnocení

    podle metriky NDCG pro testovací kolekce: vlevo - datová sada Gov03td, vpravo - datová sada Gov04td

    Rýže. 3. Vyhodnocení metrik kvality hodnocení pro základní vzorec hodnocení a algoritmy učení LTR-GA a LTR-MGA

    Hodnocení metrik kvality pro různé hodnotící algoritmy strojového učení

    tabulka 2

    Metrika kvality měření Základní funkce řazení LTR-GA LTR-MGA Metrický nárůst, %

    Přesnost 0,201 0,251 0,267 26,81

    [e-mail chráněný](prvních 5 dokumentů) 0,149 0,31 0,339 90,47

    [e-mail chráněný](prvních 10 dokumentů) 0,265 0,342 0,362 29,14

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

    Úplnost 0,524 0,542 0,732 39,03

    * Nejlepší hodnoty pro odpovídající metriku jsou zvýrazněny šedě

    genetický algoritmus (NTL-OL). Výsledky srovnání času stráveného prováděním algoritmů LTN-OL a LTN-MOL jsou uvedeny v tabulce. 3.

    7. Závěr. Provedené studie tedy ukázaly, že při použití navrhovaného přístupu se hodnoty uvažovaných hodnotících metrik v IRS zvyšují (v průměru o 19,55 % ve srovnání s algoritmem LTR-OL). To potvrzuje, že LTR-MOL funguje správně a výrazně zlepšuje funkci řazení, jinými slovy úspěšně řeší problém s optimalizací. S upraveným algoritmem

    díky aplikaci metody lokální optimalizace a zavedeným omezením počtu výpočtů účelové funkce se zkrátila doba strojového učení (v průměru o 17,71 % oproti použití tradičního genetického algoritmu LTNOL).

    Vyvinutý algoritmus strojového učení pro hodnocení LTN-MOL lze použít v IS pomocí hodnotícího modelu založeného na kombinaci jednoduchých hodnotících funkcí. Je však třeba vzít v úvahu některá omezení navrhovaného přístupu. Na základě

    Odhad doby provedení hodnocení strojového učení v závislosti na velikosti trénovacího vzorku

    Tabulka 3

    Velikost kolekce textu dokumentu

    Runtime LTR-GA

    Runtime LTR-MGA

    Snížení doby provádění, %

    Znamenat

    *Nejlepší hodnoty pro příslušnou velikost testovací kolekce jsou zvýrazněny šedě.

    ze získaných výsledků bylo zjištěno, že po MO je největší nárůst v žebříčku kvalitativní metriky, jejíž hodnota byla brána jako cílová funkce. Ostatní metriky přitom nemusí mít výrazné zlepšení a v některých případech dokonce jejich hodnoty zhoršit. Jako jeden z možných přístupů k odstranění tohoto nedostatku se předpokládá řešit problém optimalizace jako vícecílový: jednotně zlepšit několik hlavních hodnotících metrik výsledků vyhledávání namísto optimalizace jedné. Kromě toho se v dalším výzkumu plánuje vyvinout metodologii pro konstrukci objektivní funkce založené na lineární konvoluci hlavních hodnoticích metrik kvality pro zlepšení procesu vyhledávání informací.

    Bibliografický seznam

    1. Tie-Yan Liu. Naučit se hodnotit za vyhledávání informací // Základy a trendy ve vyhledávání informací v časopisech. sv. 3, číslo 3. březen 2009. S. 225-331.

    2. Christopher J. C. Burges, Tal Shaked, Erin Renshaw. Learning to Rank using Gradient Descent // Proceeding ICML "05 Sborník z 22. mezinárodní konference o strojovém učení. 2005. S. 89-96.

    3. Semenikhin, S. V. Výzkum přístupů ke strojovému učení pro hodnocení dokumentů pomocí vyhledávacího systému založeného na genetických algoritmech / S. V. Semenikhin // Mladé Rusko: pokročilé technologie pro průmysl. - 2013. - č. 2. - S. 82 - 85.

    4. Vícekriteriální optimalizace založená na genetických algoritmech při syntéze řídicích systémů: monografie. / L. A. Denisová. - Omsk: Nakladatelství OmGTU, 2014. - 170 s. - ISBN 978-5-8149-1822-2.

    5. Denisova, L. A., Meshcheryakov, V. A. Automatizace parametrické syntézy řídicího systému pomocí genetického algoritmu. - 2012. - č. 7. - S. 34 - 38.

    6. Huber, Peter J. Robustní odhad parametru umístění // Annals of Statistics. - 1964. - č. 53. - S. 73-101.

    7. Semenikhin, S. V. Automatizace vyhledávání informací na základě multikriteriální optimalizace a genetických algoritmů / S. V. Semenikhin, L. A. Denisova // Dynamika systémů, mechanismů a strojů. - 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, M. S. Oficiální metriky R0MIP "2004 / M. S. Ageev, I. E Kuralenok // II Ruský seminář o hodnocení metod vyhledávání informací (ROMIP 2004), Pushchino, 2004: tr. ; ed. I S. Nekrestyanova, St Petersburg: Výzkumný ústav chemie, St. Petersburg State University, s. 142-150.

    10. J. A. Nelder, R. Mead, Simplexní metoda pro minimalizaci funkcí, The Computer Journal 7 (1965). 308-313.

    SEMENIKHIN Svyatoslav Vitalievich, postgraduální student katedry "Automatizované systémy zpracování a řízení informací". Adresa pro korespondenci: [e-mail chráněný] DENISOVA Lyudmila Albertovna, doktorka technických věd, docentka katedry automatizovaného zpracování informací a systémů řízení. Adresa pro korespondenci: [e-mail chráněný]

    Tato kapitola představuje oblíbené metody hodnocení kvality klasifikačního modelu, které se používají i v jiných pracích na toto téma. Je uveden jejich popis a zdůvodnění metrik použitých pro toto hodnocení.

    Metriky hodnocení kvality

    Úplná přesnost (přesnost)

    Tato metrika je jednou z nejjednodušších a zároveň univerzálních metrik pro hodnocení kvality klasifikačních algoritmů. Hodnota tohoto koeficientu se vypočítá jako podíl správně klasifikovaných objektů z celkového počtu objektů ve vzorku. Tato metrika je oblíbená díky své jednoduchosti a možnosti rozšířit se na libovolný počet tříd. Hlavní nevýhodou této metriky je, že všem dokumentům přiděluje stejnou váhu, což může být nesprávné v případě silného vychýlení dokumentů v trénovacím vzorku vůči jedné nebo více třídám. Tato metrika může mít vysokou hodnotu, ale klasifikátor ve stejné třídě může vykazovat extrémně nízkou kvalitu práce. Metrika to přitom nijak nesignalizuje.

    Přesnost, zapamatovatelnost a F-měření

    Metriky jako precision (precision) a reminiscence (recall) se poprvé staly široce používány při hodnocení kvality práce systémů, které řeší problém získávání informací. Přesnost systému v rámci jedné třídy je poměr objektů, které skutečně patří do určité třídy, vzhledem ke všem objektům přiřazeným systémem do této třídy. Úplnost je vyjádřena jako podíl objektů nalezených klasifikátorem patřícím do třídy vzhledem ke všem objektům této třídy. Tabulka 4 je kontingenční tabulka samostatné třídy, kde TP (skutečně pozitivní) je skutečně pozitivní řešení, TN (skutečně negativní) je skutečně negativní řešení, FP (falešně pozitivní) je falešně pozitivní řešení a FN (falešně negativní) je falešné - negativní rozhodnutí.

    Tabulka 1 - Kontingenční tabulka tříd objektů

    Přesnost a zapamatovatelnost se tedy počítají takto:

    F-measure kombinuje informace o přesnosti a úplnosti vyhodnocovaného algoritmu. Vypočítá se jako harmonický průměr ukazatelů přesnosti a vyvolání:

    Vzhledem k tomu, že F-measure se počítá pro každou třídu zvlášť, je vhodné ji použít pro vyhledávání a analýzu konkrétních chyb algoritmu, pro vyhodnocení klasifikace s více třídami. Zároveň je v případě velkého počtu tříd potřeba charakteristika, která by agregovala úplnost a přesnost přes všechny třídy a charakterizovala obecné chování systému. V tomto článku jsou pro tento účel použity následující agregované hodnoty: makro přesnost (makro přesnost), která se vypočítá jako aritmetický průměr přesnosti pro všechny třídy, vyvolání makra (vyvolání makra), která se vypočítá jako aritmetický průměr vyvolání pro všechny třídy a makro F-měření (Macro F-score), což je harmonický průměr mezi nimi.

    Křížové ověření

    Jednou z nejběžnějších metod provádění plnohodnotného testování a hodnocení výkonu různých algoritmů strojového učení je křížová validace. Pro nezávislý vzorek vám tato metoda umožňuje získat nezkreslený odhad pravděpodobnosti chyby, na rozdíl od průměrné chyby na trénovacím vzorku, což může být zkreslený odhad pravděpodobnosti chyby kvůli přeplnění algoritmu. Další výhodou tohoto postupu je možnost získat odhad pravděpodobnosti chyby algoritmu při absenci kontrolního vzorku speciálně navrženého pro testování.

    Předpokládejme, že se jedná o množinu popisů vlastností objektů, na kterých je specifikován konečný vzorek precedentů, kde je konečná množina tříd. Je dáno mapování, které spojuje libovolný vzorek precedentů s algoritmem. Poté se odhadne výkon algoritmu pro libovolný vzorek precedentů pomocí funkcionálu kvality:

    kde je nějaká nezáporná funkce, která vrací chybovou hodnotu algoritmu se správným označením třídy.