Mivel a jelenlegi adathalmaz elég kicsinek mondható, így nem olyan egyszerű olyan kísérletet összeállítani ami hozza az elvárt precizitást, megbízható eredményt szolgáltat (fontos néhány alkalmazás tekintetében, hogy a felhasználó mit kap vissza válaszként), ugyanakkor nagy mértékben csökkenti a magolás bekövetkezését. Ezért megnézzük a tanulás eredményét abban az esetben, ha az adatokat egy kicsit felturbózzuk (mármint példányszámban).
Author Archives: Imre Kiss
Birthmarks data #5 – training
Az anyajegyek adatait tartalmazó adathalmazunk első körben készen áll arra, hogy felhasználjuk tanulásra. Elkészítettem pár osztályozó algoritmus modelljét, amiket majd összehasonlítási alapként fogok használni a további finomhangolás és egyebek után. A folyamat végén majd valamikor végül a legjobban működő modellt fogjuk kiválasztani, amiből elkészül a web service.
Birthmarks data #4 – normalization
Az előző bejegyzésben eljutottam addig, hogy megvan a tisztán csak feature selection modul által javasolt feature listám. Ez rendben is van. Ebben a bejegyzésben viszont egy kis kitérőt fogok tenni, amiben csak annyit szeretnék elvégezni, hogy a rendelkezésre álló adatokat normalizáljuk (elsősorban azért, mert mint említettem egy kis utána olvasás után és nálam komolyabban a témához értő emberek iránymutatása azt az eredményt adta nekem, hogy a leginkább célravezető feature selection method ilyen esetben az a mutual information, amihez – és egyébként is – jobb a normalizált adathalmaz).
Birthmarks data #3 – feature selection
Miután az adatainkat rendeztük, szétvágtuk, alakítottuk, kezdhetjük a megfelelő Feature halmaz meghatározását. Mint már tudjuk, ehhez maga az Azure is számos megoldást kínál, de csinálhatjuk ezt manuálisan is (ha tudunk valami olyat amit a gép nem 😀 ). Tehát az anyajegyek adathalmazunkban jelenleg mik lesznek a meghatározó feature elemek, amelyeket az osztályozáshoz fogunk használni?
Birthmarks data #2 – separation
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.