Okruženje za vežbe
Veštačka inteligencija od nule
Dodatak · Okruženje za vežbe
Ovaj dodatak treba samo onome ko želi da radi vežbe. Kurs se čita bez ijedne linije koda i nijedna lekcija ne zavisi od toga da li je prethodna vežba urađena.
Uz to, svaka vežba ima prvi deo koji se radi olovkom i papirom. I ako nikada ne otvoriš računar, ti delovi te vode kroz sve što je bitno.
I. Dva puta
U pregledaču, bez instalacije. Google Colab je sveska koja se otvara u brauzeru, traži samo Google nalog i dolazi sa svim bibliotekama koje su nam potrebne. Za ovaj kurs je to preporučeni put i nema nikakvu ozbiljnu manu.
Na svom računaru. Ima smisla ako radiš sa podacima koji ne smeju napolje, ako često nemaš internet, ili ako ti je ionako namera da se ovim baviš duže. Traži pola sata podešavanja.
Ako se dvoumiš, kreni od pregledača. Prelazak na lokalno je kasnije lak, obrnuto takođe.
II. Rad u svesci
Sveska se sastoji od ćelija — jedne sadrže kod, druge tekst. Ćelija se pokreće posebno, a ono što je u njoj izračunato ostaje u memoriji i vidi ga svaka sledeća ćelija.
To je odlično za učenje, jer možeš da promeniš jedan broj i pokreneš samo taj deo. Nosi i tri zamke koje muče svakog početnika:
Redosled pokretanja nije redosled na ekranu. Ako pokreneš ćelije naopako, u memoriji je stanje koje ne odgovara onome što vidiš. Kad nešto krene čudno, prvo pokreni sve redom od početka.
Sesija se gasi. Posle dužeg mirovanja ili prekida veze memorija se briše. Sve što je izračunato nestaje, a instalirane dodatne biblioteke treba ponovo instalirati.
Fajlovi se ne čuvaju sami. Ono što upišeš u radni direktorijum nestaje sa sesijom. Ako ti treba trajno, poveži svesku sa svojim Drajvom ili preuzmi fajl na računar.
Za vežbe iz pete, šeste i sedme lekcije korisno je uključiti grafičku karticu — u podešavanjima sveske bira se tip mašine. Za sve ostalo je obična dovoljna, a besplatni resursi su ograničeni pa ih ne treba trošiti bez potrebe. Uslovi korišćenja se povremeno menjaju, pa proveri aktuelno stanje pre nego što se osloniš na nešto.
III. Ako radiš lokalno
Potreban je Python 3 i jedno pravilo kojeg se vredi držati od prvog dana: ne instaliraj biblioteke u sistemski Python. Napravi zasebno okruženje za ovaj kurs. Time se izbegava najčešći kvar u kome dva projekta traže različite verzije iste biblioteke.
python -m venv kurs
source kurs/bin/activate (na Vindouzu: kurs\Scripts\activate)
pip install numpy matplotlib
Za pisanje koda poslužiće bilo šta — VS Code ili JupyterLab su najčešći izbori, a JupyterLab daje isti način rada sa ćelijama kao sveska u pregledaču.
IV. Koliko Pythona treba znati
Manje nego što se obično pretpostavlja. Za sve vežbe u kursu dovoljno je:
promenljive i osnovni tipovi, liste, petlje, uslovi, pisanje i pozivanje funkcije, i uvoženje biblioteke.
To je otprilike prva trećina bilo kog uvodnog kursa i savlada se za jedno popodne. Klase, dekoratori, generatori i asinhrono izvršavanje se ovde ne koriste.
V. Biblioteke, i kada se javljaju
Ne treba instalirati sve odjednom. Svaka se pojavljuje tamo gde zatreba:
NumPy — računanje sa nizovima brojeva. Lekcije 3 i 5.
matplotlib — crtanje grafika, pre svega krive greške. Lekcije 3, 4 i 8.
pandas — rad sa tabelama. Lekcija 4.
scikit-learn — gotovi klasifikatori, podela podataka i sve metrike. Lekcija 4.
PyTorch — mreže, propagacija unazad, treniranje. Lekcije 5, 6 i 7.
Za vežbu sa ugnežđivanjima iz šeste lekcije i za RAG iz sedme trebaće još po jedna biblioteka za gotove vektore i pretragu, ali se to bira u samoj vežbi jer se ta oblast najbrže menja.
VI. Podaci
Vežbe traže tri stvari: skup rukom pisanih cifara, jednu tabelu sa retkom klasom, i jedan tekstualni fajl po izboru. Prva dva se preuzimaju u jednoj liniji preko scikit-learn ili PyTorch-a, treći je bilo šta tvoje — knjiga iz javnog domena, arhiva sopstvenih tekstova, transkript.
Jedan savet vredi više od svih ostalih: radi na malim podacima. Pet hiljada primera pokazuje istu stvar kao pet miliona, a trening traje dvadeset sekundi umesto dva sata. Kad naučiš šta se dešava, uvek možeš da pustiš veće.
VII. Kad nešto ne radi
Čitaj poslednji red greške, ne prvi. Python ispisuje ceo put kojim je došao do problema, a rečenica na dnu je ono što se zaista desilo.
Tri uzroka pokrivaju najveći deo svega:
Neslaganje oblika. Najčešća greška u celom mašinskom učenju — negde se očekuje niz jednog oblika a dolazi drugog. Ispiši oblike pre spornog reda i videćeš gde se razilaze.
Ćelije pokrenute naopako. Rešava se pokretanjem svega redom, od početka.
Greška koja nije greška u kodu. Ako greška tokom treninga skoči u besmislenu vrednost ili postane nan, kod je najverovatnije ispravan, a korak učenja prevelik. To je ona treća kriva iz treće lekcije.
Poruke o greškama možeš da nalepiš u bilo koji čet i obično ćeš dobiti tačnu dijagnozu. Uz to ide upozorenje iz osme lekcije: kod koji ti model napiše treba pročitati i proveriti, jer ume da izmisli funkciju koja ne postoji jednako uverljivo kao i onu koja postoji.
POVRATAK NA KURS
Prva vežba u kojoj se piše kod nalazi se u drugoj lekciji, a prva ozbiljna u trećoj.
Pregled svih lekcija i dodataka je na hub stranici kursa.
Tekst je pisan uz pomoć jezičkog modela Claude Opus 5 kompanije Anthropic. Sadržaj, struktura i konačna redakcija su autorski.
Comments
Post a Comment