#day23. Tips for beginner friend #100daychallenge
Evo ovu prvu/drugu rečenicu dopisujem nakon što sam završila pisanje cele priče radi obaveštenja čitaoca o čemu se radi pa da zna da li da čita ili ne jer neplanirano je priča ispala malo preobimna :) štedimo i volimo svoje vreme ❤
Ova priča će imati dve teme: savet za organizaciju elektronske pošte i uputi za početnike u ML.
Kako sam polako počela da se krećem ka minimalističkom načinu života (ja ga zovem oslobađajućim), polako sređujem i pojednostavljujem deo po deo svega što posedujem, radim ili koristim. Na red je došla elektronska pošta.
Pre neki dan sam pročitala sjajan savet za kradljivca vremena a to su pozivi/mejlovi. I savet je sledeći:
Proverite i odgovorite na svoje imejlove i telefonske pozive u određeno vreme tokom radnog dana, na primer ujutru, nakon ručka i kasno po podne. Nakon toga isključite zvuk na telefonu. Ljudi će se navići i naučiti da poštuju vaš raspored.
Sjajan savet! Ja sam definisala dva termina jer mi je takav posao. Sledeći korak će biti da obavestim kolege, saradnike i studente. I nakon toga odlučih da se pozabavim poštom jer imam dva aktivna mejla koja svakodnevno koristim a jedan me konstantno opominje da je memorija na 98%. Nisam još uvek završila sa sređivanjem ali biće za koji dan gotovo. Baš se radujem! I tako gledajući foldere naiđoh na poslati mejl jednoj koleginici Sunčici.
Moje pravo interesovanje za machine learning je počelo sredinom 2018. godine. Kada kažem pravo, mislim na to da sam preduzela akciju i počela zvanično da učim. Nekoliko meseci nakon završenih nekoliko kurseva, baš sam nekako bila ponosna na sebe i okačih jedan sertifikat na instagramu. Nakon nekog vremena, javila mi se poznanica koju sam 2013. upoznala u fitnes centru gde sam jedno vreme držala treninge. Zapamtile smo da obe radimo na fakultetu i zapratile se na društvenim mrežama. Videla je moj post i poslala poruku. Pitala me je da li mogu nekako da je uputim u svet mašinskog učenja i dubokog učenja jer misli da možda može da iskoristi neku od metoda nad svojim podacima da napiše doktorsku tezu. Baš sam u to vreme bila apsolutno sveža sa svim informacijama koje sam usvojila prethodnih meseci ali još uvek bez iskustva pa sam pokušala na skroz jednostavan način da joj napišem neko moje viđenje i upute. Bukvalno kopiram mejl koji sam joj poslala te godine kao odgovor na njene podatke koje mi je poslala. Možda nekom apsolutnom početniku bude zanimljivo a i meni je zanimljivo sada kada čitam.
“Ja bih ti onda preporucila da probas SVM (Suport Vector Machine — metoda potpornih vektora), u mnogim radovima sam videla da se koristila ova metoda i da je davala dobre rezultate i da probas neuralne mreze. To su nedelje 4, 5 i 7 u machine learning kursu. Ali tesko da ces pohvatati sve ako pogledas samo njih, pa preporucujem da ipak pogledas i ostale nedelje od 1–7. Zadaci su bitni, ukoliko ne znas da ih uradis …. (ovaj deo sam izbrisala zbog jedne prethodne priče;)). Skontaces onda. Ja sam koristila Matlab, imaces pristup online Matlabu. Vidi da li mozes neke zadatke prilagoditi tvom nekom istrazivackom pitanju i ubaciti tvoje podatke u kod. Posto mi nismo sposobne same napisati ceo kod, ali verujem da mozemo da se snađemo sa nekim izmenama u gotovom i bitno je da dobijes neki pocetni rezultat, cisto da osetis kako nesto radi, onda verujem da ce se stvoriti intuicija i da ces definisati pravi problem za koji neki iskusan programer moze ispisati ceo kod.
Naravno, sjajnih tutorijala se moze naci na Youtube cak i kako se pisu kodovi od pocetka, sto kazu programeri ‘from scratch’: https://www.youtube.com/watch?v=q778MSq21vU ovaj je za SVM.
Iz Deep learning prvi kurs o neuralnim mrezama se nadovezuje detaljnije na 4 i 5 nedelju iz prvog kursa. Tu ces ih savladati skroz. Evo ga link.
https://www.youtube.com/watch?v=CS4cs9xVecg&list=PLkDaE6sCZn6Ec-XTbcX1uRg2_u4xOEky0
ODLICNO predavanje da se shvati backpropagation proces u neuralnim mrezama. Ceo njihov kurs je sjajan ali vise je vezan kasnije za konvolucijske mreze, mada razlika je samo sto je ulaz slika.
https://www.youtube.com/watch?v=d14TUNcbn1k&index=4&list=PLC1qU-LWwrF64f4QKQT-Vg5Wr4qEE1Zxk
I da znas da neces pisati kod za svaku funkciju i korak algoritma, sadasnje razne platforme i softveri vec imaju ugradjeno sve to, dovoljno je da se pozovu, i da se iniciraju pocetni parametri. Cak i backpropagation se radi u jednom redu koda. Tako da generalno ne treba da se zna puno matematike i da se lomi ali po meni ipak treba da se razume kako sta radi i zbog cega, ja bar tako funkcionisem.
E da, ulazne podatke ces morati normalizovati ili standardizovati, formule imaju u mom radu a lekcija kako i zasto se to radi je ovde: https://www.youtube.com/watch?v=e1nTgoDI_m8
Isto i u radu imaju formule kako izracunati efikasnot/tacnost algoritma u procentima.
Neki redosled po kome sam ja zapocela i po kome mislim da bi trebalo iz predavanja:
1. Sakupiti podatke i klasifikovati u jedan dokument, Excel ili nekoliko dokumenata u folder.
2. Definisati sta ce biti izlaz a izabrati onda podatke/parametre koji najbolje opisuju taj izlaz.
3. Izvrsiti standardizaciju ili normalizaciju podataka.
4. Vizuelizovati podatke u 2D ili 3D dijagramu, izbarti po 2 il 3 podatka i videti da li mozda vizuelno mozes da zakljucis da li postoje neki skupovi, zavisnosti i slicno. Uraditi sve moguce kombinacije vizuelizovanja tih podataka.
5. Kada se koriste neuralne mreze, sledeci korak bi bio izabrati arhitekturu, tj. broj skrivenih slojeva/lejera, nodova i aktivacijske funkcije.
6. Naci na internetu ili predavanjima neki gotov primer gde mozes ubaciti svoje podatke i koliko si sposobna izmeniti kod.
Ako se odlucis za neuralne mreze i Matlab, i ako ne moze nesto da se uradi u online programu kome ces imati pristup preko prvog kursa, potreban je toolbox neural networks. E tu sam i ja zakucala, nisam uspela da nadjem probnu verziju a toolbox kosta 500e. Vidi sa tvojim kolegama da li imaju neko resenje, ja nisam stigla da se posvetim tom pitanju, inace bih ga resila.
Bitno je da razumes sta zapravo svi ovi algoritmi masinkog ucenja rade: kada se istreniraju/nauce (nadje se veza/funkcija između ulaza i izlaza), sposobni su da sami donose odluke sa novim nevidjenim podacima. Sa statistickim metodama u radovima ti dobijes neki rezultat koji nesto dokazuje, zavisnot i slicno, ali ovo se moze pretvoriti u neku realnu aplikaciju koju i sa novim saznanjima uz malo podesavanja opet mozes da istreniras da radi posao. Svrha pravca masinskog ucenja je zapravo da zameni uloge coveka koji je cesto subjektivan prilikom ocenjivanja na primer a i nema kapacitete da za kratko vreme obradi veliku kolicinu podataka.
Ne znam koliko se cesto desavaju greske prilikom merenja ili zapisivanja rezultata, istreniran algoritam ih moze prepoznati, nije lose ni u tom smeru da se razmislja kao jednom od rezultata za doktorat. Predavanje u 9. nedelji je vezano za ovo pitanje.
Stvarno je zajednica Deep learninga i generalno masinkog ucenja jako otvorena, mogu da se nadju gotovi algoritmi, kodovi, istrenirane mreze gde ces ubaciti svoje podatke samo kao ulaz. Ali prvo treba proci vreme da naucimo kako se koriste i da ih razumemo kako bi znali sta da trazimo i kako da ih iskoristimo.
Nadam se da sam uspela da ti objasnim sustinu i priblizim sta oni sve mogu i koje pobleme je moguce resiti pa da znas da li da ides u tom pravcu ili ne.
Tu sam za jos pitanja, slobodno salji kad god i sta god. Pomoci cu koliko mogu i u pretrazivanju primera, kodova, literature…”
Sada kada ovo čitam, vraćam se u to vreme i sećam se mog entuzijazma koji me i sada ponovo obuzima u vezi sa ovom temom. Jedino što bih ovde izmenila je č,ć,đ,š,ž i greške pri kucanju. Ali znam da ste me sve razumeli kao i ona, tada mi to nije bilo bitno jer sam bila fokusirana na temu. Dala bih vam sada savet da je ipak sve bitno i da treba uvek sve da upakujete i vodite računa i o izgledu teksta i sitnicama, gramatici i sl., ali ja ovde ne stižem lepe ilustracije da vam pružim još uvek jer sam se obavezala sebi izazovom, pa onda ovo smatrajte kao malu digresiju samo.
Do sutra…gde nastavljam sa najpoznatijim CNN mrežama.
“When it gets hard, just remember: this is the point at which everyone else gives up.”