Popravi AI bagove: Kako model uči iz sopstvene greške
Prekini vjerovati u AI magiju: Istina o linearnoj algebri i tvojim pogrešnim podacima
Prestani kupovati priču o ‘inteligentnim mašinama’. Tvoj AI model nije genije; to je samo masivna tabela brojeva koja je upravo donijela katastrofalno lošu odluku jer si ga ‘nahranio’ smećem. Ako tvoj chatbot halucinira ili tvoj Computer Vision sistem miješa mačku sa tosterom, problem nije u kodu. Problem je u tebi. Ti si mu dopustio da nauči pogrešne korelacije. Ovaj vodič nije za one koji žele ‘besprijekornu integraciju’ (ta riječ je marketing laž). Ovo je za one koji su spremni zaprljati ruke u terminalu, mirisati pregrijani AWS server i ručno čupati loše težine iz neuronske mreže. Do 150. riječi ovog teksta, znat ćeš da ti ne treba skuplji GPU, nego bolji proces validacije i razumijevanje kako backpropagation zapravo funkcioniše u praksi, a ne u teoriji.
Zašto ti treba debager, a ne samo nada: Dijagnoza bolesnog modela
Prvi znak da ti model ‘umire’ nije pad sistema, već tiha degradacija performansi. Čuješ li zujanje ventilatora na svom kućnom serveru? To je zvuk uzaludnog trošenja struje. Ako tvoj model ima visoku preciznost na trening podacima, a totalno se pogubi u realnosti, čestitam: napravio si skupu mašinu za pamćenje, a ne za učenje. To se zove overfitting. Nemoj preskakati ovaj korak. Najveća greška koju možeš napraviti je da samo dodaš još podataka. To je kao da pokušavaš ugasiti požar benzinom. Umjesto toga, moraš koristiti dimensionality reduction da očistiš buku iz sistema. Ponekad je manje zapravo više, pogotovo kada tvoji ulazni podaci imaju više smeća nego korisnih informacija.

Da li tvoj model ‘vidi’ ono što ti misliš da vidi?
Uradio sam ovo stotinu puta: model za prepoznavanje bolesti na biljkama je radio savršeno dok nismo shvatili da nije prepoznavao bolest, već logotip firme na saksiji. To je taj trenutak kad ti se smuči u stomaku. Da bi to izbjegao, moraš uvesti strogu kontrolu. Prati performance modela u realnom vremenu. Ako vidiš nagle skokove, nešto smrdi. I to bukvalno – miris ozona iz tvoje serverske sobe je znak da tvoj GPU pokušava procesirati nešto što nema logike.
Anatomija katastrofe: Kako jedan pogrešan parametar uništava mjesece rada
Zamisli da gradiš kuću i koristiš metar koji je za milimetar kraći. Na kraju će ti krov pasti na glavu. U AI svijetu, taj milimetar je tvoj learning rate. Ako je prevelik, model će ‘preskočiti’ rješenje. Ako je premali, tvoj unuk će dočekati kraj treninga. Backpropagation je proces gdje model gleda grešku na kraju i vraća se nazad kroz slojeve neuronske mreže da ‘okrivi’ određene neurone. To je kao da tražiš krivca u korporaciji – svi upiru prstom u druge. Tvoj posao je da budeš nemilosrdni sudija. Slather-uj (namaži) te težine (weights) sa malo regularizacije. Ne budi stidljiv. Ako ne natjeraš model da se ‘muči’ tokom učenja, on nikada neće postati robustan. Loš AI je onaj koji nikad nije pogriješio tokom treninga.
UPOZORENJE: Nikada, ali nikada ne ostavljaj AWS bazu otvorenom dok testiraš nove skripte za učenje. Jedna greška u petlji i tvoj račun za cloud će skočiti na 5.000 dolara prije nego što stigneš reći ‘ups’. Provjeri kako zaključati bazu prije nego što kreneš u eksperimentisanje.
Zašto tvoj chatbot zvuči kao pijanac: Podesi Top-P sampling
Mnogi DIY majstori misle da je problem u modelu kada chatbot počne pričati nebuloze. Nije. Problem je u tome kako ‘vadiš’ odgovore iz njega. Ako koristiš defaultne postavke, dobijaš smeće. Top-P sampling je tvoja kočnica. On sprečava model da bira riječi koje su statistički moguće, ali logički idiotske. To je kao da u radionici koristiš tupi skalpel – samo ćeš se posjeći. Podesi te parametre dok ne dobiješ oštar, precizan odgovor. Osjeti tekst pod prstima, mora biti ‘flush-mounted’ sa tvojim zahtjevom (promptom).
Zašto je transfer learning tvoj najbolji prijatelj (i neprijatelj)?
Ne budi onaj tip koji pokušava sam napraviti svoje vijke. Koristi gotove modele, ali ih pametno ‘finiširaj’. Transfer learning ti štedi mjesece struje, ali nosi rizik: ako je bazni model ‘pristrasan’ ili loše istreniran, tvoj ‘finiš’ će samo sakriti rđu ispod nove farbe. Oguli tu farbu. Testiraj rubne slučajeve (edge cases). Ako model padne na osnovnim testovima logike, baci ga. Nemoj ga pokušavati ‘zakrpiti’.
Fizika kajanja: Zašto se modeli ‘loše osjećaju’ (i kako to popraviti)
Postoji nešto što zovemo Loss Function. To je matematički opis boli koju model osjeća kada pogriješi. Što je veća greška, to je veća ‘bol’. Ali pazi – ako je kazna prevelika, model će postati previše oprezan i beskoristan. To je čista hemija koda. Moraš naći balans. Ja sam proveo 12 sati debugirajući jedan jedini sloj jer sam zaboravio da normalizujem podatke. Rezultat? Model je ‘vrištao’ (generisao NaN vrijednosti) jer su brojevi postali preveliki za memoriju GPU-a. Boli te glava? Dobro. To znači da učiš. AI nije lagan. Ako je lagano, vjerovatno radiš pogrešno. Slather-uj (nanesi) još jedan sloj validacije i ne odustaj dok ne dobiješ rezultat koji je postojan kao hrastovina.
Anatomija jednog ‘zajeba’: Kako sam spržio 300 eura na lošu logiku
Prije par mjeseci, pokušao sam ubrzati proces učenja tako što sam isključio ‘dropout’ slojeve. Mislio sam: ‘Hej, više neurona, brže učenje!’. Velika greška. Model je postao toliko zavisan od specifičnih putanja u mreži da je nakon 6 mjeseci u produkciji počeo bacati greške koje niko nije mogao objasniti. Izgledalo je kao da je poludio. Na kraju smo morali sve obrisati i krenuti ispočetka. Lekcija? Prečice u AI-ju su najduži put do cilja. Nemoj biti lijen sa ‘dropout’-om. Natjeraj neurone da rade samostalno, a ne da se oslanjaju jedni na druge kao pijanci na šanku.
Završni log: Tvoja lista za provjeru prije nego što pritisneš ‘Enter’
Prije nego što pustiš model u svijet, uradi ovo: 1. Provjeri bazu (da li imaš duplikate?). 2. Testiraj na podacima koje model NIKADA nije vidio. 3. Provjeri temperaturu servera (ako je iznad 80°C, gasi sve). 4. Uvjeri se da tvoj AWS server nije rupa bez dna za tvoj novčanik. Popravi te bagove odmah. Nemoj čekati ponedjeljak. AI ne spava, a tvoje greške će te sustići brže nego što misliš.

