#day4. — Supervised learning — basic function#100daychallenge

Ivana Medojevic
3 min readApr 8, 2020

--

Nadgledano učenje je našlo primenu u gotovo svim oblastima, međutim fokus istraživača se polako prebacuje na nenadgledano učenje jer je daleko izazovnije. Ukoliko neko nije pročitao #dan2. gde sam objasnila osnovnu podelu, neka baci look.

Photo by Emma Matthews Digital Content Production on Unsplash

Neophodno je na početku definisati oznake radi kasnijeg lakšeg razumevanja uvoda u mašinsko učenje za one koji žele da vide matematički deo.

Glavni cilj je pronaći f-ju h: X→Y, koja odgovara za svaki primer u trening setu na način da h(х) predviđa vrednost što bližu у.

Šta to znači? Treba da sastavimo neku jednačinu sa ulaznom promenljivom x koja predstavlja sve karakteristike sa kojima smo opisali naš model (pogledaj priču #dan3.) koja daje izlaznu vrednost y koja približno ista ili u idealnom slučaju jednaka željenoj izlaznoj vrednosti odnosno tačnom odgovoru kojem smo se nadali. Dakle, treba sastaviti tu jednačinu, pored x dopisati još neke promenljive i uvesti neke operacije/zakonitosti između njih da dobijemo željeni izlaz.

Najjednostavniji model jednačine je linearna regresija ako vektor х ima samo jednu karakteristiku (n=1),

Hipotezna funkcija za linearnu regresiju može se zapisati kao:

Potrebno je pronaći odgovarajuće ϴ faktore, (ϴo,…, ϴn), tako da hipotezna funkcija hϴ(x) bude što je bliže moguće stvarnoj vrednosti y.

Šta su sad težinski faktori? Težinski faktori (Weights) se najčešće označavaju prikazanom oznakom a takođe se mogu obeležavati oznakom W (i hoću kada dodjemo do konvolucijskih mreža). Koriste se da daju ‘težinu’ izabranoj karakteristici. Vrednost težinskog faktora se množi tom karakteristikom. Oni služe za podešavanje funkcije, odnosno oni se menjaju pri svakoj sledećoj iteraciji u treningu. Vrednost karakteristike ostaje ista jer ona opisuje naš model, mi menjamo vrednosti samo težinskih faktora sve dok ne dobijemo konačnu jednačinu čiji je rezultat željena izlazna vrednost.

Photo by Victor Freitas on Unsplash

Potrebno je još definisati funkciju gubitka (Loss function) koja može biti različita za različite zadatke zavisno od željenog izlaza.

Ovom funkcijom se ocenjuje uspešnost modela tako što se računa razlika između predviđene i stvarne vrednosti. Dakle, definiše se za jedan primer.

Zašto nam ona treba? Pa da vidimo koliko je naš model (jednačina koju smo definisali sa izabranim težinskim faktorima) daleko od rezultata koji želimo i na osnovu te razlike dalje podešavaju se težinski faktori. Model se trenira i menjaju se težinski faktori sve dok razlika ne bude približna vrednosti 0 ili u idealnom slučaju 0.

Сost f-ja (J(θo,θ1)), meri ukupnu grešku za celokupni trening set. Сost f-ja može se prevesti kao: cena trenutnih faktora i prikazuje ukupnu grešku Loss funkcije pri trenutno zadatim težinskim faktorima. Naziva se još i srednja kvadratna greška (Mean squared error) ili funkcija kvadratne greške (Squared error function).

Kada je model definisan sa više od jedne karakteristike, u pitanju je višestruka regresija i njen vektorski zapis:

gde ϴ^T predstavlja vektor shvaćen kao matrica dimenzija 1⨯(n+1).

Cilj je dobiti težinske faktore ϴ koji minimiziraju cost f-ju odnosno da ona bude što približnija vrednosti 0.

O inicijalizaciji i optimizacionim algoritmima u sledećoj priči. Do sutra…

--

--

Ivana Medojevic
Ivana Medojevic

Written by Ivana Medojevic

Ph.D. student, interesting in machine learning, deep learning. Multitasking mom. Future data analyst/DL engineer.

No responses yet