Što je pretjerano opremanje u strojnom učenju i kako to izbjeći?



Ovaj članak pokriva prekomjerno opremanje u strojnom učenju s primjerima i nekoliko tehnika za izbjegavanje i otkrivanje prekomjerne ugradnje u modelu strojnog učenja.

Izgradnja modela strojnog učenja ne odnosi se samo na unošenje podataka, postoji puno nedostataka koji utječu na točnost bilo kojeg modela. Prekomjerno uklapanje jedan je od takvih nedostataka u strojnom učenju koji koči točnost kao i izvedbu modela. U ovom su članku obrađene sljedeće teme:

Što je pretjerano opremanje u strojnom učenju?

Kaže se da je statistički model pretjerano opremljen kad mu dodamo puno više podataka nego što je potrebno. Da biste je učinili relativnom, zamislite da se pokušate uklopiti u preveliku odjeću.





Kada model stane više podataka nego što mu zapravo treba, počinje hvatati bučne podatke i netočne vrijednosti u podacima. Kao rezultat, smanjuju se učinkovitost i točnost modela. Pogledajmo nekoliko primjera prekomjerne opreme kako bismo shvatili kako se to zapravo događa.



Primjeri prekomjerne opreme

Primjer 1

Ako uzmemo primjer jednostavne Linearna regresija , obuka podataka temelji se na pronalaženju minimalnih troškova između linije koja najbolje odgovara i točaka podataka. Prolazi kroz niz ponavljanja kako bi se pronašlo optimalno prilagođavanje, minimizirajući troškove. Tu se pojavljuje prekomjerno opremanje.



što je miješanje podataka u tablici

Crta na gornjoj slici može dati vrlo učinkovit ishod za novu podatkovnu točku. U slučaju prekomjerne opremljenosti, kada pokrenemo algoritam treninga na skupu podataka, dopuštamo da se trošak smanjuje svakim brojem ponavljanja.

Trčanje ovog predugo će značiti smanjeni trošak, ali će odgovarati i bučnim podacima iz skupa podataka. Rezultat bi izgledao otprilike kao na donjem grafikonu.

Ovo bi moglo izgledati učinkovito, ali zapravo nije. Glavni cilj algoritma kao što je Linearna regresija je pronaći dominantan trend i u skladu s tim uklopiti podatke. Ali u ovom slučaju linija odgovara svim podatkovnim točkama, što je nebitno za učinkovitost modela u predviđanju optimalnih ishoda za nove ulazne podatkovne točke.

Razmotrimo sada opisniji primjer uz pomoć izjave o problemu.

Primjer 2

Izjava o problemu: Razmotrimo da želimo predvidjeti hoće li nogometaš doskočiti na mjesto u nogometnom klubu prvog reda na temelju njegovih trenutnih performansi u tier 2 ligi.

Sad zamislite, treniramo i uklapamo model s 10 000 takvih igrača s ishodima. Kad pokušavamo predvidjeti ishod na izvornom skupu podataka, recimo da smo dobili 99% točnosti. Ali točnost drugog skupa podataka iznosi oko 50 posto. To znači da model ne generalizira dobro iz naših podataka o treningu i neviđenih podataka.

Ovako izgleda pretjerano opremanje. To je vrlo čest problem u strojnom učenju, pa čak i u znanosti o podacima. Razumijemo sada signal i šum.

Signal vs buka

U prediktivnom modeliranju, signal se odnosi na pravi temeljni obrazac koji pomaže modelu da nauči podatke. S druge strane, šum je nebitan i slučajni podaci u skupu podataka. Da bismo razumjeli koncept buke i signala, uzmimo primjer iz stvarnog života.

Pretpostavimo da želimo modelirati dob naspram pismenosti odraslih. Ako uzmemo uzorke za vrlo velik dio populacije, naći ćemo jasan odnos. Ovo je signal, dok buka ometa signal. Ako isto učinimo s lokalnim stanovništvom, odnos će postati blatnjav. Na to bi utjecali outlieri i nasumičnost, npr. Jedna odrasla osoba rano je išla u školu ili si neka odrasla osoba nije mogla priuštiti obrazovanje itd.

Govoreći o buci i signalu u smislu strojnog učenja, dobar algoritam strojnog učenja automatski će odvojiti signale od šuma. Ako je algoritam previše složen ili neučinkovit, možda će naučiti i buku. Dakle, pretjerano opremanje modela. Razumijemo i nedovoljnu opremu u strojnom učenju.

Što je underfitting?

Kako bismo izbjegli prekomjerno opremanje, mogli bismo prekinuti trening u ranijoj fazi. No, to bi moglo dovesti i do toga da model neće moći naučiti dovoljno iz podataka o treningu, pa će mu biti teško uhvatiti dominantni trend. Ovo je poznato kao nedovoljno opremljeno. Rezultat je jednak prekomjernoj opremi, neučinkovitosti u predviđanju ishoda.

Sad kad smo shvatili što je zapravo nedovoljno opremanje i prekomjerno opremanje u strojnom učenju, pokušajmo shvatiti kako možemo otkriti prekomjerno opremanje u strojnom učenju.

Kako otkriti prekomjernu opremu?

Glavni izazov prekomjerne opremljenosti je procijeniti točnost izvedbe našeg modela s novim podacima. Ne bismo mogli procijeniti točnost dok je zapravo ne testiramo.

Da bismo riješili ovaj problem, početni skup podataka možemo podijeliti u zasebne skupove podataka za obuku i testiranje. Pomoću ove tehnike možemo zapravo odrediti koliko će dobro naš model raditi s novim podacima.

Razumijemo to na primjeru, zamislimo da dobijemo točnost 90+ posto na treningu i 50% točnosti na testnom setu. Tada bi to automatski bila crvena zastavica za model.

Drugi način otkrivanja prekomjerne opremljenosti je započeti s pojednostavljenim modelom koji će poslužiti kao mjerilo.

Ovim pristupom, ako isprobate složenije algoritme, moći ćete shvatiti isplati li se dodatna složenost modelu ili ne. Također je poznat kao Occamov test britve , u osnovi odabire pojednostavljeni model u slučaju usporedivih performansi u slučaju dva modela. Iako je otkrivanje prekomjerne opremljenosti dobra praksa,ali postoji nekoliko tehnika kako bi se spriječilo i prekomjerno opremanje. Pogledajmo kako možemo spriječiti prekomjerno opremanje u strojnom učenju.

Kako izbjeći prekomjerno opremanje u strojnom učenju?

Postoji nekoliko tehnika za izbjegavanje prekomjerne opreme u strojnom učenju, a sve su navedene u nastavku.

  1. Unakrsna provjera valjanosti

  2. Trening s više podataka

  3. Uklanjanje značajki

  4. Rano zaustavljanje

  5. Regularizacija

  6. Sastavljanje

1. Unakrsna provjera valjanosti

Jedna od najsnažnijih značajki za izbjegavanje / sprečavanje prekomjerne opreme je unakrsna provjera valjanosti. Ideja koja stoji iza toga je koristiti podatke početnog treninga za generiranje mini-test-split-vlakova, a zatim ih koristiti za podešavanje vašeg modela.

U standardnoj provjeri k-folda podaci se dijele na k-podskupove također poznate kao foldovi. Nakon toga, algoritam se iterativno uvježbava na k-1 naborima dok se preostali nabori koriste kao testni skup, također poznat kao pregibni pregib.

Uzajamna provjera pomaže nam u podešavanju hiperparametara samo s originalnim setom treninga. U osnovi drži testni skup odvojeno kao pravi neviđeni skup podataka za odabir konačnog modela. Stoga, izbjegavajući prekomjerno opremanje.

2. Trening s više podataka

Ova tehnika možda neće raditi svaki put, kao što smo također raspravljali u gornjem primjeru, gdje trening pomaže značajna populacija modelu. U osnovi pomaže modelu u boljoj identifikaciji signala.

No, u nekim slučajevima povećani podaci mogu značiti i dodavanje više buke modelu. Kad treniramo model s više podataka, moramo biti sigurni da su podaci čisti i bez slučajnosti i nedosljednosti.

3. Uklanjanje značajki

Iako neki algoritmi imaju automatski odabir značajki. Za značajan broj onih koji nemaju ugrađeni odabir značajki, možemo ručno ukloniti nekoliko nebitnih svojstava iz ulaznih značajki kako bismo poboljšali generalizaciju.

Jedan od načina to je izvođenjem zaključka o tome kako se neka značajka uklapa u model. To je prilično slično otklanjanju pogrešaka u retku.

U slučaju da značajka ne može objasniti relevantnost modela, te značajke možemo jednostavno identificirati. Za dobro polazište možemo koristiti čak nekoliko heurističkih karakteristika odabira značajki.

4. Rano zaustavljanje

Kad model trenira, zapravo možete izmjeriti koliko dobro model djeluje na temelju svake iteracije. To možemo učiniti do trenutka kada iteracije poboljšaju izvedbu modela. Nakon toga, model prekomjerno odgovara podacima s treninga, jer generalizacija slabi nakon svake iteracije.

Dakle, u osnovi, rano zaustavljanje znači zaustavljanje procesa treninga prije nego što model prođe točku u kojoj model počinje pretjerivati ​​s podacima treninga. Ova se tehnika uglavnom koristi u duboko učenje .

5. Regularizacija

To u osnovi znači, umjetno prisiljavanje vašeg modela da bude jednostavniji korištenjem šireg spektra tehnika. To u potpunosti ovisi o vrsti učenika koji koristimo. Na primjer, možemo orezati a , upotrijebite ispadanje na a živčana mreža ili dodajte parametar kazne funkciji troškova u regresiji.

Nerijetko je i regularizacija hiperparametar. To znači da se može podesiti i putem unakrsne provjere valjanosti.

6. Okupljanje

Ova tehnika u osnovi kombinira predviđanja iz različitih modela strojnog učenja. Dvije su najčešće metode okupljanja navedene u nastavku:

životni ciklus aktivnosti androida
  • Pokušaji vrećica smanjuju mogućnost prekomjerne opreme modela

  • Pojačavanje pokušaja poboljšanja prediktivne fleksibilnosti jednostavnijih modela

Iako su obje metode ansambla, pristup u potpunosti polazi iz suprotnih smjerova. Bagging koristi složene osnovne modele i pokušava izravnati njihova predviđanja, dok pojačavanje koristi jednostavne osnovne modele i pokušava povećati njegovu ukupnu složenost.

Što je Goodness Of Fit?

U statističkom modeliranju, dobrobit prilagođavanja odnosi se na to koliko se ishodi ili predviđene vrijednosti podudaraju s uočenim ili istinskim vrijednostima.Model koji je naučio buku umjesto signala prenamjenjen je jer će odgovarati skupu podataka o treningu, ali će imati slabiju učinkovitost s novim skupom podataka.

Kompromis između pristranosti i varijance

I varijanca i pristranost su oblici pogreške predviđanja u . Kompromis između velike varijance i velike pristranosti vrlo je važan koncept u statistici i strojnom učenju. Ovo je jedan koncept koji utječe na sve nadzirane algoritme strojnog učenja.

Kompromis pristranosti i varijance ima vrlo značajan utjecaj na određivanje složenosti, nedovoljne opremljenosti i prekomjerne opremljenosti bilo kojeg modela strojnog učenja.

Pristranost

To je ništa drugo do razlika između predviđenih vrijednosti i stvarnih ili istinskih vrijednosti u modelu. Modelu nije uvijek lako učiti iz prilično složenih signala.

Zamislimo da uklapamo a Linearna regresija na model s nelinearnim podacima. Bez obzira koliko učinkovito model naučio opažanja, neće učinkovito modelirati krivulje. Poznato je pod nazivom underfitting.

Varijansa

Odnosi se na osjetljivost modela na određene skupove u podacima o treningu. Algoritam velike varijance stvorit će bizaran model koji se drastično razlikuje od skupa treninga.

Zamislite algoritam koji odgovara neograničenom i super fleksibilnom modelu, a također će učiti iz buke u sklopu treninga koja uzrokuje prekomjerno opremanje.

Kompromis pristranosti i varijance

Algoritam strojnog učenja ne može se shvatiti kao jednokratnu metodu za obuku modela, već je to ponavljajući postupak.

Algoritmi male pristranosti i velike varijance manje su složeni, s jednostavnom i krutom strukturom.

  • Oni će trenirati modele koji su dosljedni, ali u prosjeku netočni.

  • To uključuje linearne ili parametarske algoritme, poput regresije, itd.

Algoritmi velike varijance-male pristranosti imaju tendenciju da budu složeniji, sa fleksibilnom strukturom.

  • Oni će trenirati modele koji su u prosjeku nedosljedni, ali precizni.

  • Tu spadaju nelinearni ili neparametarski algoritmi kao što su , itd.

Ovo nas dovodi do kraja ovog članka, gdje smo naučili prekomjerno opremanje u strojnom učenju i razne tehnike kako to izbjeći. Nadam se da vam je jasno sve što je s vama podijeljeno u ovom vodiču.

Ako smatrate da je ovaj članak o „Prekomjernom ugradnji u strojno učenje“ relevantan, pogledajte članak pouzdana tvrtka za internetsko učenje s mrežom od više od 250 000 zadovoljnih učenika raširenih širom svijeta.

Ovdje smo da vam pomognemo u svakom koraku na putovanju i osmislimo kurikulum namijenjen studentima i profesionalcima koji žele biti . Tečaj je osmišljen kako bi vam pružio prednost u programiranju Pythona i osposobio vas za osnovne i napredne koncepte Pythona, zajedno s raznim Kao , itd.

Ako naiđete na neko pitanje, slobodno postavite sva svoja pitanja u odjeljku za komentare 'Prekomjerno uklapanje u strojno učenje' i naš će tim rado odgovoriti.