Nakon što se analiziraju podaci i odaberu odgovarajuće instance i atributi, skup svih podataka se deli na   skup za treniranje   (eng.  training set  ) i   skup za testiranje   (eng.  test set  ). Kao što se može naslutiti iz imena skupa, skup za treniranje se koristi za treniranje samog modela mašinskog učenja. Nad njim se primenjuje odabrani algoritam i kreira sam model. Skup za testiranje se koristi za testiranje modela, tj. izračunavanje podesnih mera kvaliteta modela. Zahvaljujući njemu može objektivno da se oceni koliko dobro je model naučio potrebni zadatak. Obično jedan deo podataka polaznog skupa koristimo i za kreiranje   skupa za validaciju   (eng.  validation set  ). Skup za validaciju se koristi za praćenje procesa treniranja modela i određivanje nekih konfiguracija modela koje dovode do boljih mera kvaliteta. O ovim temama će još biti reči u nastavku kursa.

Podela skupa podataka na skup za treniranje, skup za validaciju i skup za testiranje

Skupovi za treniranje, validaciju i testiranje se po pravilu kreiraju nasumičnom podelom polaznog skupa podataka. Prvo definišemo koliko veliki treba da budu ovi skupovi, a potom nasumično biramo instance koje će se naći u svakom od njih. Obično je skup za treniranje najveći dok su skupovi za testiranje i validaciju manji jer želimo da imamo dovoljno podataka da obučimo model, ali i dovoljno podataka da adekvatno ocenimo njegove performanse. Praksa je da se odnosi veličina ovih skupova izražavaju proporcijom. Na primer, često će se naći odnos skupa za treniranje i odnos skupa za testiranje izražen kao 2:1, što bi značilo da dve trećine polaznog skupa čini skup za treniranje a jedna trećina skup za testiranje. Slično , proporcija 2:1:1 bi značila da se dve četvrtine (tj. jedna polovina) polaznog skupa koriste kao skup za treniranje a po jedna četvrtina kao skup za validaciju i testiranje.

 Iako je zgodno što se skupovi za treniranje, validaciju i testiranje kreiraju nasumično, ipak bi značio i neki uvid u to kako je ova podela izvršena. Na primer, kada želimo da ponovimo eksperiment ili omogućimo drugima da ga samostalno izvedu (ovo je važno svojstvo eksperimenata i zove se reproducibilnost), poželjno je da se koriste isti skupovi za treniranje,  validaciju i testiranje. Slično , kada rešavamo zadatak, nismo baš odmah sigurni šta je najbolje uraditi pa isprobavamo veći broj algoritama i kreiramo veći broj modela. Zbog korektnosti upoređivanja značilo bi da sve modele kreiramo nad istim skupom za treniranje i ocenjujemo nad istim skupom za testiranje. Zato je dobro na nivou biblioteke sa kojom se radi podesiti parametar koji utiče na slučajnost podele (obično se zove   random seed   i ima istu svrhu kao podešavanje semena kod generatora slučajnih brojeva) ili prosto u startu izvršiti podelu podataka i nadalje je konzistentno koristiti. Neki često korišćeni skupovi podataka imaju ove predefinisane podele na skup za treniranje, validaciju i testiranje (na primer, možeš da pogledaš skup   MNIST  ).

 Važno svojstvo koje treba da ispune skupovi za treniranje, validaciju i testiranje je da budu disjunktni. To znači da svaka instanca polaznog skupa podataka prilikom kreiranja skupova za treniranje, validaciju i testiranje mora pripasti tačno jednom od ovih skupova, ne smeju postojati preseci i zajedničke instance. Podsetimo se da se od modela mašinskog učenja očekuje da dobro generalizuju, tj. da se dobro ponašaju za nove instance koje model nije imao prilike da susretne u skupu za treniranje. Ukoliko se skupovi za treniranje i skupovi za testiranje preklapaju, nećemo biti u mogućnosti da objektivno ocenimo da li model zaista uči ili memoriše, tj. pamti informacije iz skupa za treniranje. Slično važi i za odnos skupa za treniranje i skupa za validaciju: funkcija skupa za validaciju je da pomogne u odabiru konfiguracija koje će učenje učiniti što uspešnijim. Ukoliko se ovi skupovi preklapaju, nećemo biti u mogućnosti da objektivno i nepristrasno ocenimo ponašanje modela i odaberemo podesne konfiguracije.

 Uslov da skupovi za treniranje, validaciju i testiranje treba da budu disjunktni znači i da se informacije iz jednog od skupova nikako ne smeju prelivati na druge skupove. Ovo je posebno važno prilikom primene tehnika pretprocesiranja i pripreme skupova. Razmotrimo sledeći primer. Pomenuli smo da se zbog osetljivosti modela mašinskog učenja na vrednost atributa često vrši standardizacija numeričkih atributa. Neko može pristupiti ovoj transformaciji tako što će na osnovu celog skupa izračunati srednju vrednost i standardnu devijaciju, a zatim je iskoristiti, redom, za standardizaciju skupova za treniranje i testiranje. Kako ne bi došlo do prelivanja informacija, korektan redosled ovih koraka je zapravo sledeći:

  1. podela skupa podataka na skup za treniranje i testiranje,
  2. izračunavanje srednje vrednosti i standardne devijacije samo na skupu za treniranje,
  3. transformacija skupa za treniranje koristeći izračunate vrednosti,
  4. transformacija skupa za testiranje koristeći vrednosti izračunate nad skupom za treniranje.

 

Zbog želje da ne pogreši, neko može razmišljati i na sledeći način: nakon što podelim polazni skup podataka na skup za treniranje i skup za testiranje, izvršiću posebno standardizaciju skupa za treniranje i skupa za testiranje. I ovaj pristup, iako oprezniji, nije korektan jer dovodi do modifikacije skupa za testiranje. Na donjoj levoj slici žuti trouglići predstavljaju instance skupa za treniranje, a plavi krugovi instance skupa za testiranje. Slika u sredini predstavlja ove instance nakon korektne standardizacije (možeš pažljivo da uporediš slike i raspored tačaka - skala duž x-ose se promenila usled standardizacije, sve drugo je ostalo isto). Na desnoj slici možeš da vidiš instance nakon što se standardizacija zasebno izvrši nad skupom za treniranje i skupom za testiranje - prostorni raspored se sada prilično promenio.

Primeri korektne i pogrešne standardizacije

 Prilikom podele polaznog skupa podataka bilo bi idealno da očuvamo proporcije u odnosu na vrednosti atributa i vrednost ciljne promenljive. Na primer, ukoliko je u skupu medicinskih podataka odnos muških i ženskih pacijenata 4:5, bilo bi idealno da, nakon podele, u skupu za treniranje i u skupu za testiranje odnos pacijenata bude približno 4:5. Tehnike koje omogućavaju ovakvu vrstu podele nazivamo tehnikama   stratifikacije  . Ipak , zbog broja atributa i njihovih kombinacija, u praksi ovo često nije realističan zahtev pa se najčešće insistira na proporcionalnosti u odnosu na vrednosti ciljne promenljive. O ovoj temi ćemo posebno razgovarati u kontekstu zadatka klasifikacije.

Stratifikovani skupovi za treniranje i testiranje

Last modified: Wednesday, 11 June 2025, 5:27 AM