Birthmarks data #6 – SMOTE training

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).

Continue reading

Klaszterezés a Studioban

Az előző posztomban foglalkoztam a klaszterezéssel általában, most nézzük meg, hogy konkrétan milyen lehetőségünk van erre a Studioban.

Jelenleg mindössze egyetlen egy megoldás áll rendelkezésünkre, méghozzá egy centroid alapú, a k-means (k-közép) algoritmus. Ez ugye központi vektorokkal választja el egymástól a klasztereket. n megfigyelést k klaszterbe partícionál az átlaguk alapján, ezáltal Voronoj-cellákat hoz létre. Iteratív algoritmus, optimalizálást hajt végre. Ez egy NP-nehéz probléma, amit jelenlegi tudásunk (és technológiánk) szerint nem tudunk megoldani belátható idő alatt, még szuperszámítógépekkel sem. Azonban léteznek heurisztikus algoritmusok, amik elég hamar konvergálnak a lokális optimumhoz. Ezek használatával gyorsan elérhetjük a kívánt eredményt.

Continue reading

Klaszteranalízis

Ahogy már korábban is írtam, létezik felügyelt, és felügyelet nélküli tanulás is. Most a másodikkal fogok foglalkozni.

A klaszterezés lényege, hogy az egyes egyedeket csoportokba osztja.
Fontos különbség az osztályozással szemben, hogy itt az adat belső struktúrájának a felfedése a lényeg, és nem pedig az egyes elemek pozíciója.

Continue reading

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.

Continue reading

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.

Continue reading

Filters in Azure ML Studio experiment

fil1A 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

Continue reading

Azure ML dataset, result, etc… save to Azure SQl Database

sql1Az 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.

Continue reading

Algoritmus választása az ML Studioban

1catRengeteg 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