torek, 10. september 2013

Konceptualizacija strojnega učenja

Poglejte,
lani sem imel prašiča.

Pojedel je 12 ton repe in 5 ton krompirja. Popil je 100 litrov vode in na koncu tehtal 300 kg, imel je pa 22 holesterola. Na sejmu sem ga prodal za 1230 eurov.

Letos imam drugega prašiča, ki je manj repe in več krompirja. Pije podobno ampak dvomim da se bo toliko zredil. Pa vendar me zanima koliko bom na sejmu dobil zanj. Kaj na storim?

Na srečo sem imel prašiča že lani in predlani, pa tudi moji sosedje jih imajo precej. Vsi vodimo podrobne evidence koliko prašiči pojejo in popijejo, koliko so težki, koliko imajo holesterola in koliko smo izkupili za njih.

Ker imam veliko podatkov sumim, da bi se lahko iz njih nekako naučil napovedati ceno prašiča, če je odvisna od njegovih lastnosti.

Lastnosti prašiča so:
- količina požrte repe,
- količina požrtega krompirja,
- količina popite vode,
- teža in
- holesterol.

 Zanimani me podatek je cena prašiča.

Koliko in kako vplivajo lastnosti prašiča na njegovo ceno? Po občutku bi rekel, da teža zelo vpliva in to pozitivno. Kupci plačajo več za težjega prašiča ker predpostavljajo, da bodo iz njega dobili več mesa. To je dejstvo. Mislim, da holesterol vpliva malo negativno, ker pomeni manj mesa.

Kakorkoli, zanima me samo, za koliko bom letos prodal prašiča.

Obstaja več metod strojnega učenja:
Drevesa odločanja / regresijska drevesa
Umetne nevronske mreže (artificial neural network)
Suport vector machines
etcetera...

Te metode se uporabljajo za tri glavne naloge:
Klasifikacija
Regresija in
Grozdenje (clustering ali nenadzorovana klasifikacija)

Klasifikacija in regresija sta ista pašta. Glede na vhodne podatke želimo določiti izhodni podatek. Pri regresiji je to zvezna vrednost (kot v našem primeru cena prašiča). Če bi pa naprimer prašiča želeli glede na barvo dlake, strukturo kože in dolžino ušes razvrstiti v eno od petih možnih pasem bi bila pa to klasifikacija. Izhodna vrednost v tem primeru bi bila diskretna vrednost.

Grozdenje ali nenadzorovana klasifikacija bi pa bila, če nebi poznali možnih pasem prašiča ampak bi samo hoteli, naj algoritem razdeli prašiče v skupine tako, da bojo podobni prašiči skupaj. To sem delal v svoji diplomi, samo, da, ker sem geodet nisem imel prašičev ampak premike točk.

Vsaka uporaba strojnega učenja je sestavljena iz učenja in napovedovanja.

Učenje pomeni, da v algoritem vnesemo vhodne podatke za naših sto prašičev. To pomeni, za vsakega od stotih prašičev povemo njegove lastnosti. To bi zapisali v matriko, ki bo velika 100x5, ker je sto prašičev in vsak ima pet lastnosti. Potem v algoritem vnesemo še izhodne podatke oziroma želene oziroma pravilne rezultate. V enakem vrstnem redu, kot smo podali lastnosti podamo še cene prašičev. Algoritem se bo naučil odnosov med vhodnimi in izhodnimi podatki. Vedel bo koliko in kako na ceno vpliva katera od lastnosti. To vse se bo naučil sam, samo če mu podamo dovolj primerkov parov vhodnih in izhodnih vrednosti.

Drugi del je napovedovanje. Ko je ta naš stroj naučen mu podamo lastnosti letošnjega prašiča in napovedal bo za koliko ga bomo po njegovo prodali.

To je point.

Pri teh metodah je pogosto problem, da se, če jih učimo preveč dolgo, naučijo točno napovedati ceno za vsakega od stotih prašičev, za vsakega drugega bojo pa napovedali narobe, ker so se preveč podrobno naučili točno teh stotih prašičev. Temu problemu rečemo overfitanje. Da bi se temu izognili bomo stroju povedali samo podatke za 70 prašičev in ko se bo naučil mu bomo rekli naj zdaj za ostalih 30 kar sam napove. Za teh 30 mu ne bomo povedali pravih cen ampak bomo sami pogledali kako dobro jih je zadel. S temi 30 bomo lahko tudi ocenili kako dobro se je stroj naučil in kako natančna bo napoved cene za letošnjega prašiča.

To je vse kar vem o metodah strojnega učenja. Polagam vam pa na srce. Ko boste na zagovoru svoje diplome, oprostite, magisterija ali doktorata govorili o strojnem učenju, prosim, povejte kaj so vaši prašiči, katere lastnosti imajo in kaj boste napovedali. Če tega ne poveste jasno, meni izgleda, kot da mešate meglo in da je strojno učenje znanstvena fantastika.

ponedeljek, 21. januar 2013

Pismo svečanemu predstavniku študentov v študijskemu odboru tretje stopnje ...

Cel naslov prispevka bi bil:
Pismo svečanemu predstavniku študentov v študijskemu odboru tretje stopnje študija doktorjev skega grajeno okolje v zvezi z priznavanjem udeležbe strokevne konference na kateri aktivno kot avtor ali soavtor članka pri katerem sodeluje pri predstavitvi oziroma posterja pri katerem ga samo gleda priznajo doktorski seminar kot nadomestilo za opravljeno mednarodno obveznost študenta pred zagovorom doktorske.........

Zveni pa takole.


Pozdravljeni,
na problematiko priznavanja udeležbe na mednarodni konferenci kot opravljanje doktorskega seminarja smemo in moramo gledati z različnih vidikov.
Obveznost doktorskih študentov doktorskega študijskega programa grajeno okolje v zvezi z doktorskimi seminarji sestoji iz obveznosti predstavitve doktorskega seminarja ter obiska vsaj treh seminarjev v pasivni vlogi poslušalca oziroma slušatelja.
Vprašanje nadomeščanja katere od teh obveznosti z aktivnim sodelovanjem doktorskega študenta na mednarodni konferenci je treba opredeliti v odnosu do aktivne oziroma pasivne udeležbe doktorskega seminarja. Kratko, ali aktivno sodelovanje na mednarodni konferenci bodisi kot avtor ali soavtor članka, ki aktivno sodeluje pri predstavitvi , bodisi kot avtor ali soavtor posterja, ki je ob predstavitvi prisoten kot razlagalec, nadomesti predstavitev doktorskega seminarja ali udeležbo na doktorskem seminarju, ki ga predstavlja tretja oseba, v tem primeru tretji doktorskega študenta tretjega letnika grajenega okolja.
Moje osebno mnenje je, da je treba obveznost doktorskega seminarja v njeni pasivnosti in aktivnosti obravnavati celovito ter razumeti namen sestavljavcev programa grajeno okolje, ki so določili to obveznost v zgoraj  predstavljeni obliki.
Menim, da predstavitev na mednarodni konferenci ne more nadomestiti pasivne prisotnosti na doktorskem seminarju, niti ne more nadomestiti dveh ali treh predpisanih nam pasivnih udeležb.
Po mojem mnenju sme predstavitev na mednarodni konferenci upravičiti oziroma nadomestiti zgolj aktivni prispevek na doktorskem seminarju pa še to samo in samo v primeru, da prispevek na konferenci vključuje večji del (nad 80%) vsebine, ki sestavlja tudi doktorsko disertacijo kandidata. Pristojnost za oceno deleža tematike doktorske disertacije v prispevku se podeljuje posebni štiričlanski komisiji, ki jo sestavljamo doktorski študentje in jo lahko vodim tudi jaz. Prispevek mora biti javno objavljen, vsem doktorskim študentom, ki bi se lahko udeležili nadomeščenega (odpadlega) seminarja, pa se mora zagotoviti brezplačen dostop do vsebine predstavitve tako v slovenskem, kot v jeziku, v katerem je bil članek predstavljen na konferenci.
Opravičujem se za dolgoveznost vendar sem se ob nastali zmedi mnenj in predlogov čutil dolžnega pojasniti tudi svoje stališče do pereče problematike. Bistveno se mi zdi spoštovanje ideje, ki so jo sestavljavci študijskega programa tretje stopnje želeli izraziti s predpisi v zvezi doktorskimi seminarji.
Lep pozdrav in uspešen študij vsem.
Klemen Kregar

To sem res poslal : ) Jutri mi bo žal. Ali pa že danes.