Model results

Ha már felépítettük a kísérletet, minden rendben van, akkor ideje kinyerni belőle a hasznos adatot amiért végül is dolgoztunk. Átfutunk gyorsan és egyszerűen egy  recommender system dolgon. Mint már korábban említettem valamikor, van elég sok olyan alkalmazása a gépi tanulásnak, hogy például a vásárlásaid alapján, vagy tervezett vásárlásaid alapján (i mean wishlist) a rendszer kidobálja, hogy más vásárolók miket vettek meg, vagy néztek még meg, és nagy valószínűséggel az neked is tetszene (erősen próbálnak rávenni arra, hogy termeld szépen a profitot nekik 😀 ).

Continue reading

Predikciós kísérletünk tesztelése

Először is létrehoztam egy példa kísérletet, amit tesztelhetünk. A próba egy mérleget szimulál. Meg lehet adni, hogy mekkora súlyt rakunk a bal és a jobb oldalra, illetve azt, hogy ezek milyen messze vannak a középponttól. Végül a program megmondja, hogy a mérleg balra (L) vagy jobbra (R) dől, esetleg egyensúlyban (B) van.

1experiment

Continue reading

Azure Machine Learning algorithm choice

Oké, milyen algoritmust is kellene választanom a kísérletemben? Alapvetően sok-sok tényezőtől függ (méret, minőség, az adatok típusa, mit akarok kezdeni a kapott eredménnyel, hogyan tudom az adatokat a gép számára legjobban átadni és igazából mennyi időm is van arra, hogy eljátszadozzak az adatokkal). valójában még nagy tapasztalattal rendelkező ML guruk sem képesek minden egyes helyzethez megmondani, hogy melyik algoritmus fogja a legjobb eredményt adni az adott problémára (Ugye milyen jó, hogy néhány kattintással módosíthatunk mindent az ML Studióban? :D).

A nehéz fegyverzet

A Microsoft összeállított egy segédletet, ami megadja a kellő támogatást ahhoz, hogy ezen az aknamezőn átsétáljunk és minél jobb algoritmust válasszunk. Ez persze nem egy olyan dolog, hogy na akkor én ezt akarom csinálni ahhoz pedig pont az az algoritmus kell, sajnos vagy szerencsére nem. Sok algoritmus nincs is felsorolva benne, ezért csupán egy rendes útmutatást kapunk a nagyoktól, hogy ne lőjünk teljesen mellé a dolgoknak. Ez az egész segédlet nem csupán a Microsoft által kigondolt irányvonalak alapján készült, hanem nagy mennyiségű visszajelzések is alakítottak rajta.

Continue reading

Saját algoritmus írása az ML Studioban

Időnként szükséges lehet, hogy egyedi transzformációkat hajtsunk végre az adatokon. Ilyenkor lehet hasznos valamelyik támogatott nyelven implementálni.

R nyelven:

Execute R Script:

Segítségével elvégezhetünk egyedi transzformációkat az adatainkon, a saját metrikáink szerint építhetjük fel, illetve értékelhetjük ki a modelleket. Continue reading

Azure ML Studio and experiments

Tudjuk, hogy hogyan vigyünk fel adatokat az ML Studio-ba. Most dolgozzunk az adatokkal. A Studióban nagyon könnyen hozhatunk létre kísérleteket (erről már beszéltem egy korábbi bejegyzésben), egyszerű drag-n-drop módszerrel illesztjük össze a megfelelő modulokat, melyből a végén egy értelmes modell áll össze. A Studió számos előre rögzített szerszámot biztosít számunkra, legyen szó tesztelésről, adatmanipulációról vagy tanító algoritmusról. Azonban ha valamivel nem vagyunk kellőképpen megelégedve, vagy szükségünk van egy egyedi megoldásra akkor sokmindent felüldefiniálhatunk, lecserélhetjük saját megoldásunkkal, amelyeket R vagy Python kódban írhatunk meg.

A munka elkezdéséhez csupán két dologra lesz szükség:

  • egy böngészőre (hiszen a teljes Azure ML Studió a felhőben fut, nincs szükségünk telepítésre vagy egyéb lokális konfigurációkra).
  • és a tanító adatokra (hiszen adatok nélkül nem sok értelme van bármit is csinálni)

Continue reading

Adatok transzformálása a Studioban

1normA Normalize Data modul segítségével az adatainkat azonos volumenűre hozhatjuk. Erre akkor van szükség, ha nagyságrendbeli különbségek vannak köztük. A kisebb skálájú adatokat kevésbé veszik fontosnak az algoritmusok, hiszen ott jóval kisebb eltérés van, így hajlamosak szinte „megfeledkezni” róluk. A normalizálással viszont azonos mértékűre hozhatjuk az egyes adatokat, így azonos lesz a „súlyuk” is.

Continue reading