Dobički:
- Sposobnost izbire metrike, ki ustreza vrsti problema in poslovnemu kontekstu (PR-AUC/priklic v neuravnoteženih podatkih, MAE/RMSE v regresiji) in prepoznavanje prekomernega/premalo učenja
- Sposobnost interpretacije vsake metrike glede na izhodišče in merjenje odstopanja ter ločevanje šuma od napredka z navzkrižno validacijo
- Sposobnost poročanja o neoptimističnih rezultatih z nastavitvijo hiperparametrov s potrditvenim nizom in uporabo testnega niza šele na koncu
Usposabljanje modela (usposabljanje: proces učenja vzorcev iz podatkov) je najbolj viden, a najbolj zavajajoč korak inženiringa ML. Zdi se, ker daje zadovoljivo število, kot je "natančnost 95 %". Zavajajoče, ker je ta številka pogosto pravi odgovor na napačno vprašanje. V tej enoti se obravnava izobraževanje in vrednotenje z inženirsko disciplino; Umetno inteligenco uporabljamo kot partnerja pri načrtovanju eksperimentov, odločitev pa temelji na meritvah.
Logika vadbenega cikla
Model se nauči vzorca v podatkih z minimiziranjem funkcije izgube: funkcija, ki numerično meri napako modela. Optimizacijski algoritem (npr. gradientni spust) zmanjša izgubo s prilagajanjem parametrov korak za korakom. Cilj ni zapomniti podatkov o usposabljanju, ampak jih posplošiti na podatke brez primere.
Dve glavni nevarnosti:
- Prekomerno opremljanje: model si zapomni podatke o vadbi in ne uspe pri novih podatkih. Uspešnost usposabljanja je visoka, uspešnost preverjanja nizka.
- Premajhno prileganje: model ne more zajeti vzorca; Uspeh pri usposabljanju in potrjevanju je nizek.
Iskanje ravnotežja je umetnost izobraževanja. Nabor validacije je namenjen spremljanju tega ravnovesja: če se uspešnost validacije začne zmanjševati, medtem ko se uspešnost usposabljanja povečuje, se je začelo prekomerno učenje.
Namig: na vsakem koraku skupaj narišite izgubo pri usposabljanju in validaciji. Točka, na kateri se krivulji začneta razhajati, je kraj, kjer se začne prekomerno učenje in je pravi trenutek za "zgodnji konec".
Izbira metrike: najbolj kritična odločitev
Zaradi napačne metrike je dober model videti slab in slab model videti dobro. Težava določa metriko:
- Neuravnotežena klasifikacija (en razred je zelo redek, npr. goljufija): Natančnost je zavajajoča. Model, ki pravi, da je vse normalno, bo dosegel 99-odstotno natančnost, vendar ne bo ujel niti ene goljufije. Namesto tega se uporabljajo natančnost (koliko tega, kar sem ujel, je dejansko pozitivnega), odpoklic (koliko tega, kar sem ujel, je resnično pozitivnega) in njihovo ravnotežje F1 ali PR-AUC.
- Uravnotežena razvrstitev: Točnost in ROC-AUC sta lahko ustrezna.
- Regresija (ocena števila): MAE (srednja absolutna napaka), RMSE (kaznuje velike napake), MAPE (odstotna napaka).
- Uvrstitev/priporočilo: NDCG, MRR, Recall@K.
Ali je pomembna natančnost ali priklic, je odvisno od poslovnega konteksta. Odpoklic (neizpuščen noben bolnik) je prednostna naloga pri presejanju raka; Pomembna je natančnost v filtru neželene pošte (ne pošiljanje pomembnih e-poštnih sporočil v neželeno pošto). To je poslovna in ne tehnična odločitev, ki jo skupaj sprejmeta inženir in lastnik.
Šibek poziv/močan poziv
Šibek poziv: "Oceni zmogljivost mojega modela, natančnost 0,97."
Zmogljiv poziv: "Imam model za odkrivanje goljufij; stopnja pozitivnega razreda je 1,5 %. Natančnost je navedena kot 0,97. Pojasnite, zakaj je ta metrika lahko zavajajoča, povejte mi, katere metrike (natančnost, odpoklic, PR-AUC) naj imam raje in zakaj. Izračunajte tudi, kako natančen bi bil osnovni model 'pokliči vse negativno' na teh podatkih, da bom lahko videl resnično dodano vrednost."
Razlika: zmogljiv poziv poda razredno razmerje in poslovni kontekst; zahteva tudi primerjavo osnovnega modela – to je najpomembnejše sidro za ugotovitev, ali je metrika smiselna.
Izhodišče: metrika brez primerjave je nesmiselna
Meritev sama po sebi ni dobra ali slaba; Je dober ali slab glede na osnovni model. Osnovni model je najenostavnejša rešitev, ki pride na misel: "vedno povej večinskemu razredu", "ponovi vrednost prejšnjega tedna", "ugani srednjo vrednost". Če vaš model ne more jasno prestati te preproste rešitve, je vsa zapletenost zaman.
Pozor: stavek "Moj model je 85% natančen" sam po sebi ne pove ničesar. Če osnovni model že dobi 84 %, je vaš model skoraj brez vrednosti; Če osnovni model dobi 50 %, je vaš model popoln. Vedno govorite v smislu osnovnega modela.
Navzkrižno preverjanje in zaupanje
Ena sama razdelitev usposabljanja/testiranja je lahko posledica naključja. Navzkrižno preverjanje: razdelitev podatkov na k delov in zaporedno testiranje vsakega dela pokaže, kako stabilno je delovanje. Pri 5-kratnem navzkrižnem preverjanju dobite pet različnih rezultatov; Njihovo povprečje in standardni odklon sta pomembna. Če je povprečje 80 %, odstopanje pa ±12 %, je vaš model nestabilen – v naslednjem paketu podatkov se lahko obnaša zelo drugače.
To je kritično tudi za "primerjavo dveh modelov". Če je model A dobil 81 % in model B 82 %, ali je B res boljši? Če je odstopanje ±3 %, je ta razlika lahko hrup. Preden se odločite, razmislite, ali je razlika pomembna.
Uravnavanje hiperparametrov: z validacijo, brez testiranja
Hiperparametri (nastavitve, ročno določene pred usposabljanjem—stopnja učenja, globina drevesa itd.) so nastavljeni z nizom za preverjanje veljavnosti. Testni set se uporabi samo na koncu, enkrat. Če izberete hiperparametre tako, da pogledate testni niz, bo testni niz kontaminiran in uspešnost, o kateri poročate, bo optimistična, kar v resnici ni tako.
Umetna inteligenca je dober pomočnik pri oblikovanju iskalnega prostora hiperparametrov in pisanju iskalne kode (mrežno iskanje, naključno iskanje, Bayesova optimizacija). Vendar se še vedno odločite, "katero meritev bomo optimizirali?"
trije mini kovčki
1. primer – past natančnosti. Zdravstvena ekipa je bila ponosna na model, ki je zaznal redko bolezen: 98-odstotna natančnost. Ko je bila opravljena osnovna primerjava modelov, je resnica prišla na dan: ker je bila stopnja bolezni 2 %, je model, ki je pisal "vse zdrave", prejel tudi 98 %. Odpoklic modela je bil samo 11-odstoten – manjka večina bolnikov. Ko je bila metrika pretvorjena v PR-AUC, je bila izmerjena dejanska zmogljivost in model je bil preoblikovan.
Primer 2 – Zamenjavanje hrupa za napredek. Ekipa je mesece izboljševala model s 86,2 % na 86,9 %. Navzkrižna validacija je pokazala, da je bila pristranskost ±1,4 % – tako da je bila »izboljšava« za 0,7 točke statistični šum. Ekipa je tri tedne zapravila za neresnične zaslužke. Nauk: ne razglasite zmage, ne da bi preverili, ali je izboljšanje večje od odstopanja.
Primer 3 – Kontaminacija testnega kompleta. Inženir je večkrat pogledal testni niz, da bi izbral najboljše hiperparametre. 91 %, o katerih je poročal, je padlo na 83 % proizvodnje. Zakaj: nevede je ustrezno izbral model tako, da je znova in znova gledal testni niz (preveč učenja na testnem nizu). Sporočena in dejanska zmogljivost sta se prekrivali, ko je bil uporabljen ločen niz za preverjanje.
Kopirane predloge
Pomagaj mi izbrati pravo metriko za to težavo s klasifikacijo. Problem: [kaj je napovedano] Porazdelitev po razredih: [pozitivna stopnja
Ocenite primerjavo naslednjih dveh modelov. Navzkrižna validacija modela A: [seznam rezultatov] Navzkrižna validacija modela B: [seznam rezultatov] Izračunajte povprečje in standardni odklon. Ali je razlika statistično značilna ali gre le za šum znotraj odstopanja? Katerega mi priporočate in zakaj?
Preverite to kodo za usposabljanje za naslednje: 1) Ali so hiperparametri izbrani s preskusnim nizom ali nizom za validacijo? 2) Ali je zgodnja ustavitev nadzorovana s pravilnim nizom? 3) Ali obstajajo kakršni koli znaki prekomernega učenja (razlika v izgubi med usposabljanjem/validacijo)? Koda: [koda]
Katerega od MAE, RMSE in MAPE naj navedem za to regresijsko težavo? Lestvica ciljne spremenljivke: [razpon] Ali so velike napake nesorazmerno slabe (RMSE) ali so vse enake (MAE)? Ali obstajajo vrednosti blizu nič (ali izkrivljajo MAPE)? Predlagajte s kratko utemeljitvijo.
Tabela za izbiro metrike
Vrsta težave
Ustrezna metrika
Izogibati se
zakaj
Neuravnotežena razvrstitev
PR-AUC, F1, odpoklic
Natančnost
Večinski razred napihne metriko
Uravnotežena razvrstitev
Natančnost, ROC-AUC
—
Zanesljivo pri uravnoteženih podatkih
Regresija (pomembno odstopanje)
RMSE
MAPE (če je nič)
Kaznuje večje napake
Regresija (enaka teža)
MAE
—
Enostaven za interpretacijo
Uvrstitev/priporočilo
NDCG, Odpoklic@K
Natančnost
Red je pomemben
Pogoste napake
- Uporaba natančnosti pri neuravnoteženih podatkih. Najpogostejša metrična napaka.
- Brez primerjav osnovnih modelov. Zaradi tega metrika izgubi svoj pomen.
- Pogled na testni niz za hiperparametre. Optimističen, nerealen rezultat.
- Zanašanje na en sam prekat. Brez navzkrižne validacije ne boste videli pristranskosti.
- Zamenjajte hrup za napredek. Majhne "izboljšave" odstopanja so večinoma sreča.
- Ignoriranje poslovnega konteksta. Ravnovesje natančnost/odpoklic je poslovna odločitev.
Če povzamem
Resnična veščina pri šolanju modelov ni ustvariti veliko število, ampak vedeti, kaj ta številka pomeni. Težava in poslovni kontekst določata pravo meritev; interpretirati vsako metriko glede na osnovni model; merite pristranskost z navzkrižno validacijo in ne zamenjujte hrupa za napredek; Testni niz uporabite samo na koncu, enkrat. Umetna inteligenca je vaš partner pri načrtovanju eksperimenta, vendar je odločitev o »dovolj dobrem« odvisna od vas in vaših.
Aplikacijska naloga
Za klasifikacijski model: (1) napišite porazdelitev razreda, (2) zgradite ustrezen osnovni model in izmerite njegov rezultat, (3) ovrednotite svoj model s 5-kratnim navzkrižnim preverjanjem ter poročajte o povprečju in standardnem odklonu, (4) namesto natančnosti izračunajte metriko, ki ustreza problemu (npr. PR-AUC). Zapišite, ali je vaš model boljši od osnovnega modela z veliko razliko brez pristranskosti.
kontrolni seznam
- [ ] Meritev sem izbral glede na vrsto problema in poslovni kontekst.
- [ ] Izdelal sem osnovni model in ga primerjal.
- [ ] Srednjo vrednost in odstopanje sem prijavil z navzkrižno validacijo.
- [ ] Potrdil sem, da je izboljšanje večje od odstopanja.
- [ ] Izbral sem hiperparametre s potrditvenim nizom.
- [ ] Testni niz sem uporabil samo enkrat, čisto na koncu.