Az előző postban eljutottam addig, hogy az adatokat kicsit módosítottam és a több osztályos tanulásból kétosztályos tanulást csináltam. Most ismét a későbbi könnyebb munka és egy kicsit az eredmények javítása céljából tovább bontottam az adathalmazt. Azaz teljesen különálló adathalmazt hoztam létre a tanuló és a teszt adatoknak. Ez azt jelenti, hogy mind a BENING és a MALIGNANT halmazból véletlenszerűen kiválasztottam 5 db sort tesztadatnak.
Birthmarks data #1 – preparing data
Itt az ideje, hogy valós adatokon egy teljesen új kísérletet állítsunk össze, nem kimondottan a környezet, a rendszer vagy a lehetőségek megismerése céljából, hanem sokkal inkább az eddigi ismeretek felhasználva valami egészet alkotni. Kaptam egy adathalmazt amelyben x számú ember (mind férfi és nő) adatai szerepelnek olyan anyajegyekről amelyekről el kell dönteni, hogy nem problémás, gyanús vagy gondot okozó darab.
AML Feature Selection – Permutation Feature Importance
Feature Selection – a gépi tanuláson belül és statisztikában azt a folyamatot jelenti, amivel meghatározhatunk releváns, hasznos feature részhalmazt az analitikai modell megalkotásához. Segít meghatározni a hasznos inputok egy szűk keresztmetszetét, csökkenti a zajt és fejleszti a képzés hatékonyságát.
Azure ML Reader modul alternative use
Felmerült nemrégiben egy probléma (amit írtam is egy korábbi bejegyzésben), hogy ha pl. Azure SQL DB-ben mentünk el valamilyen adatot a kísérletben (legyen az végeredmény, köztes állapot, bemeneti adathalmaz egy metszete…), akkor a Writer modul minden egyes alkalommal végrehajtja az INSERT parancsot a megkapott adatokkal. Ez nekünk nem jó, nagyon nem jó. Ezt fel is tüntetik a hivatalos doksiban Azure ML fejlesztői is ( 🙂 utólag rájöttem). Megoldás viszont egy kicsit érdekes, vagy inkább alternatív, mint ahogy a címben is írtam 😀
Filters in Azure ML Studio experiment
A Data Tranformaton menüpontban található Filter modulok következnek. Maguk a filterek arra lettek koncepció szerint megalkotva, hogy a numerikus adatokon alkalmazva támogassák a machine learning feladatokat, mint pl. a képfelismerés, hangfelismerés és “hullám” analízis. Pontosabban mire is szokás használni a filtereket:
- Interferencia analízis telemetrikus jelekben
- Kép vagy beszédfelismerő feladatok ellátása
- “Trendek” felismerése vagy idényjellegű hatások eltávolítása zajos eladásokból vagy gazdasági adatokból
Azure ML dataset, result, etc… save to Azure SQl Database
Az aktuális adathalmazunkat, vagy eredményeinket, részeredményeinket (lényegében bármit) el tudunk menteni a Writer modul segítségével. A modul a Data Input and Output csoportosítás alatt található. A modul segítségével írható Hive Query, Azure SQL Databse, Azure Table és Azure BLOB Storage.
Algoritmus választása az ML Studioban
Rengeteg algoritmus megtalálható a Studioban, így sokszor az adhatja a legnagyobb fejtörést, hogy melyiket válasszuk ezek közül.
Először azt kell kitalálni, hogy milyen típusú a problémánk, majd azon belül kell választani egy megfelelő algoritmust.
Megpróbálok egy kicsit segíteni a választásban az alábbi leírással:
Continue reading
Results in C# or R
Az eredményeinket persze nem csak az Azure szolgáltatásain belül vagyunk képesek használni, hanem simán ki tudjuk vinni a modellünket egy külső appra is. Gyors megmutatom, hogy hogyan is néz ez ki C# és R programokban.
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 😀 ).
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.
