alkalmazott AI stratégia és tanácsadás | InnoArchiTech
cikkek ebben a sorozatban
-
áttekintés, célok, tanulási típusok és algoritmusok
-
Adatválasztás, előkészítés és modellezés
-
Modellértékelés, érvényesítés, komplexitás és fejlesztés
-
modell teljesítmény és hibaelemzés
-
felügyelet nélküli tanulás, kapcsolódó területek és gépi tanulás a gyakorlatban
bevezetés
Üdvözöljük! Ez egy öt részből álló sorozat első cikke a gépi tanulásról.
a gépi tanulás számos kulcsfontosságú okból nagyon forró téma, és mivel lehetővé teszi, hogy automatikusan mély betekintést nyerjen, felismerje az ismeretlen mintákat, és nagy teljesítményű prediktív modelleket hozzon létre az adatokból, anélkül, hogy explicit programozási utasításokat igényelne.
a téma népszerűsége ellenére a gépi tanulás valódi célját és részleteit nem értik jól, kivéve a nagyon technikai emberek és/vagy adattudósok.
Ez a sorozat célja, hogy egy átfogó, mélyreható útmutató a gépi tanulás, és hasznos lehet mindenki számára az üzleti vezetők a gépi tanulás szakemberek. Ez magában foglalja szinte minden szempontból a gépi tanulás (és számos kapcsolódó területeken) magas szinten, és kell szolgálnia a megfelelő bevezetés vagy hivatkozás a terminológia, fogalmak, eszközök, megfontolások és technikák a területen.
Ez a magas szintű megértés kritikus, ha valaha is részt vesz a gépi tanulás használatát körülvevő döntéshozatali folyamatban, hogyan segíthet az üzleti és projektcélok elérésében, milyen gépi tanulási technikákat kell használni, lehetséges buktatókat és hogyan kell értelmezni az eredményeket.
vegye figyelembe, hogy az ebben a sorozatban tárgyalt témák többsége közvetlenül alkalmazható olyan területeken is, mint a prediktív elemzés, az adatbányászat, a statisztikai tanulás, a mesterséges intelligencia stb.
Gépi tanulás definiált
a gépi tanulás gyakran idézett és széles körben elfogadott formális definíciója, amelyet Tom M. Mitchell, a terepi úttörő állít:
egy számítógépes programról azt mondják, hogy tanul az e tapasztalatból a T feladatok bizonyos osztályai és a P teljesítménymérése tekintetében, ha a T feladatokban P-vel mért teljesítménye javul a tapasztalattal e
az alábbiakban kevésbé formális módon írom le a gépi tanulást.
a gépi tanulás a számítástechnika egyik részterülete, de gyakran prediktív elemzésnek vagy prediktív modellezésnek is nevezik. Célja és használata új és/vagy meglévő algoritmusok létrehozása az adatokból való tanuláshoz, általánosítható modellek létrehozása, amelyek pontos előrejelzéseket adnak, vagy minták keresése, különösen új és láthatatlan hasonló adatokkal.
gépi tanulási folyamat áttekintése
Képzeljünk el egy adatkészletet táblázatként, ahol a sorok az egyes megfigyelések (más néven mérés, adatpont stb.), Az egyes megfigyelések oszlopai pedig az adott megfigyelés jellemzőit és értékeit képviselik.
a gépi tanulási projekt kezdetén az adatkészlet általában két vagy három részhalmazra oszlik. A minimális részhalmazok a képzési és tesztadatkészletek, és gyakran egy opcionális harmadik érvényesítési adatkészlet is létrejön.
miután ezeket az adatrészhalmazokat létrehozták az elsődleges adatkészletből, a prediktív modell vagy osztályozó betanításra kerül a betanítási adatok felhasználásával, majd a modell prediktív pontosságát a tesztadatok segítségével határozzák meg.
mint már említettük, a gépi tanulás algoritmusokat használ az adatok automatikus modellezésére és mintázatának megtalálására, általában azzal a céllal, hogy megjósolja a cél kimenetét vagy válaszát. Ezek az algoritmusok nagymértékben a statisztikákon és a matematikai optimalizáláson alapulnak.
Az optimalizálás a függvény legkisebb vagy legnagyobb értékének (minimumok vagy maximumok) megtalálásának folyamata, amelyet gyakran veszteségnek vagy költségfüggvénynek neveznek a minimalizálás esetén. A gépi tanulásban használt egyik legnépszerűbb optimalizálási algoritmust gradiens descent-nek hívják, a másik pedig a normál egyenlet.
dióhéjban a gépi tanulás lényege egy nagyon pontos prediktív vagy osztályozó modell automatikus megtanulása, vagy ismeretlen minták megtalálása az adatokban, tanulási algoritmusok és optimalizálási technikák felhasználásával.
A tanulás típusai
a gépi tanulás elsődleges kategóriái felügyelt, felügyelet nélküli és félig felügyelt tanulás. A cikk első kettőjére összpontosítunk.
a felügyelt tanulás során az adatok tartalmazzák a modellezett válaszváltozót (label), azzal a céllal, hogy megjósolja a láthatatlan adatok értékét vagy osztályát. A felügyelet nélküli tanulás olyan adatkészletből való tanulást foglal magában, amelynek nincs címkéje vagy válaszváltozója, ezért inkább a minták megtalálásáról szól, mint az előrejelzésről.
mivel hatalmas NFL és Chicago Bears rajongó vagyok, a csapatom segít példázni az ilyen típusú tanulást! Tegyük fel, hogy egy csomó Chicago Bears adat és statisztika származik, amikor a csapat az NFL bérelt tagja lett (1920) a mai napig (2016).
képzelje el, hogy az adatok minden sora lényegében egy csapat pillanatkép (vagy megfigyelés) az 1920 óta minden játék releváns statisztikáiról. Ebben az esetben az oszlopok és az egyes adatok az adatok jellemzőit (értékeit) képviselik, és tartalmazhatnak olyan jellemzőadatokat, mint a játék dátuma, a játék ellenfele, a szezon győzelmei, a szezon veszteségei, a szezon végi divízió pozíciója, a szezon utáni fekvőhely (Y/N), A szezon utáni statisztikák, és talán a játék három szakaszára jellemző statisztikák: támadás, védelem és speciális csapatok.
felügyelt esetben a cél az lehet, hogy ezeket az adatokat felhasználva megjósolja, hogy a medvék nyernek vagy veszítenek-e egy adott csapat ellen egy adott játék során, egy adott pályán (otthon vagy idegenben). Ne feledje, hogy a labdarúgásban bármi megtörténhet a játék előtti és a játékidő előtti sérülések, az időjárási viszonyok, a rossz játékvezető hívások stb.szempontjából, ezért vegye ezt egyszerűen a felügyelt tanulás alkalmazásának példájaként, igen vagy nem válasz (előrejelzés) mellett, szemben annak valószínűségének vagy valószínűségének meghatározásával, hogy a ‘Da Bears’ megszerzi a győzelmet.
mivel történelmi adatok vannak a győzelmekről és veszteségekről (a válaszról) bizonyos csapatok ellen bizonyos futballpályákon, kihasználhatja a felügyelt tanulást, hogy hozzon létre egy modellt az előrejelzéshez.
tegyük fel, hogy a cél az, hogy mintákat találjon a történelmi adatokban, és megtanuljon valamit, amit még nem tud, vagy bizonyos módon csoportosítsa a csapatot a történelem során. Ehhez egy felügyelet nélküli gépi tanulási algoritmust futtat, amely automatikusan csoportosítja (csoportosítja) az adatokat, majd elemzi a fürtözési eredményeket.
egy kis elemzéssel megállapíthatjuk, hogy ezek az automatikusan létrehozott klaszterek látszólag a következő példakategóriákba csoportosítják a csapatot az idő múlásával:
-
erős védelem, gyenge futó támadás, erős múló támadás, gyenge speciális csapatok, rájátszás fekvőhelye
-
erős védelem, erős futó támadás, gyenge múló támadás, átlagos speciális csapatok, rájátszás fekvőhelye
-
gyenge védelem, erős all-around támadás, erős speciális csapatok, hiányzott a rájátszás
-
és így tovább
egy példa a felügyelet nélküli klaszterelemzésre az lenne, ha megtalálnánk egy lehetséges okot, miért hagyták ki a rájátszást a fenti harmadik klaszterben. Talán a gyenge védekezés miatt? A medvék hagyományosan erős védekező csapat, egyesek szerint a védelem nyeri a bajnokságokat. Csak azt mondom …
mindkét esetben a fenti osztályozások mindegyike egy bizonyos időkeretre vonatkozhat, amelyre számítani lehet. Talán a csapatot történelmük során többször is jellemezte az egyik ilyen csoportosítás, különböző időszakokon keresztül.
ahhoz, hogy a csapatot ilyen módon jellemezzük gépi tanulási technikák nélkül, át kell töltenünk az összes történelmi adatot és statisztikát, manuálisan meg kell találnunk A mintákat, és minden évre hozzá kell rendelnünk az osztályozásokat (klasztereket), figyelembe véve az összes adatot, és össze kell állítanunk az információkat. Ez biztosan nem lesz gyors és könnyű feladat.
Alternatív megoldásként írhatsz egy kifejezetten kódolt programot az adatok átöntésére, amelynek tudnia kell, hogy milyen csapatstatisztikákat kell figyelembe venni, milyen küszöbértékeket kell figyelembe venni az egyes statisztikáknál stb. A kód megírása jelentős időt vesz igénybe, és különböző programokat kell írni minden olyan problémára, amelyre választ kell adni.
vagy … alkalmazhat egy gépi tanulási algoritmust, amely mindezt automatikusan elvégzi az Ön számára néhány másodperc alatt.
gépi tanulási célok és kimenetek
a gépi tanulási algoritmusokat elsősorban a következő típusú kimenetekhez használják:
-
klaszterezés (felügyelet nélkül)
-
két-és többosztályos osztályozás (felügyelt)
-
regresszió: egyváltozós, többváltozós stb. (Felügyelt)
-
ajánlási rendszerek (más néven ajánlási motor)
anomália detektálás (felügyelet nélküli és felügyelt)
Az egyes kimeneti típusokhoz használt speciális algoritmusokat a következő szakasz tárgyalja, de először adjunk általános áttekintést a fenti kimenetekről vagy problématípusokról.
mint említettük, a klaszterezés egy felügyelet nélküli technika egy adott adathalmaz összetételének és szerkezetének felfedezésére. Ez egy olyan folyamat, amely az adatokat klaszterekbe tömöríti, hogy megnézze, milyen csoportosítások jelennek meg, ha vannak ilyenek. Minden klasztert tartalmaz egy adatpont, és egy klaszter centroid. A klaszter centroid alapvetően a fürt összes adatpontjának átlaga (átlaga), amelyet a fürt tartalmaz, az összes szolgáltatásban.
az osztályozási problémák magukban foglalják egy adatpont (más néven megfigyelés) egy előre meghatározott osztályba vagy kategóriába helyezését. Néha az osztályozási problémák egyszerűen egy osztályt rendelnek egy megfigyeléshez, más esetekben pedig a cél annak a valószínűségnek a becslése, hogy egy megfigyelés az adott osztályokhoz tartozik.
a kétosztályos osztályozás nagyszerű példája a Spam vagy Ham osztály hozzárendelése egy bejövő e-mailhez, ahol a ham csak azt jelenti, hogy nem spam. A többosztályos osztályozás csak kettőnél több lehetséges osztályt jelent. Tehát a spam példában talán egy harmadik osztály ismeretlen lenne.
a regresszió csak egy divatos szó arra, hogy egy modell folyamatos értéket (választ) rendel az adatmegfigyeléshez, szemben a diszkrét osztály. Jó példa erre a Dow Jones Ipari Átlag záróárának előrejelzése egy adott napon. Ez az érték tetszőleges szám lehet, ezért tökéletes jelölt a regresszióra.
vegye figyelembe, hogy néha a regresszió szót használják egy olyan algoritmus nevében, amelyet valójában osztályozási problémákra használnak, vagy diszkrét kategorikus válasz előrejelzésére (például spam vagy sonka). Jó példa erre a logisztikai regresszió, amely megjósolja egy adott diszkrét érték valószínűségét.
egy másik problématípus az anomália észlelése. Bár szeretnénk azt gondolni, hogy az adatok jól viselkednek és értelmesek, sajnos ez gyakran nem így van. Néha hibás adatpontok vannak a mérési hibák vagy hibák miatt, vagy néha csalás miatt. Más esetekben előfordulhat, hogy a rendellenes mérések a hardver vagy az elektronika meghibásodására utalnak.
néha az anomáliák valódi problémára utalnak, és nem könnyen magyarázhatók, mint például a gyártási hiba, és ebben az esetben az anomáliák észlelése biztosítja a minőségellenőrzést, valamint betekintést nyújt abba, hogy a hibák csökkentésére tett lépések működtek-e vagy sem. Mindkét esetben vannak olyan esetek, amikor hasznos megtalálni ezeket az anomális értékeket, és bizonyos gépi tanulási algoritmusok felhasználhatók erre.
a probléma végső típusát egy ajánlási rendszer, vagy más néven ajánlási motor kezeli. Az ajánlórendszerek egyfajta információszűrő rendszer, amelynek célja, hogy ajánlásokat tegyen számos alkalmazásban, beleértve a filmeket, zenéket, könyveket, éttermeket, cikkeket, termékeket stb. A két leggyakoribb módszer a tartalomalapú és az együttműködő szűrés.
a népszerű ajánlómotorok két nagyszerű példája a Netflix és az Amazon. A Netflix ajánlásokat tesz annak érdekében, hogy a nézők elkötelezettek legyenek, és rengeteg nézhető tartalmat kapjanak. Más szavakkal, hogy az emberek továbbra is használják a Netflixet. Ezt a “Mert figyeltél …”, “Top Picks for Alex” és a “javaslatok az Ön számára” ajánlásokkal teszik.
az Amazon hasonló dolgot tesz annak érdekében, hogy növelje az értékesítést a felértékesítés révén, fenntartsa az értékesítést a felhasználói elkötelezettség révén stb. Ezt az “ügyfelek, akik ezt az elemet is vásárolták”, “ajánlások az Ön számára, Alex”, “a megtekintett elemekhez kapcsolódó” és “további elemek, amelyeket figyelembe kell venni” ajánlásokon keresztül teszik.
gépi tanulási algoritmusok
most lefedtük a gépi tanulási problématípusokat és a kívánt kimeneteket. Most magas szintű áttekintést adunk a releváns gépi tanulási algoritmusokról.
itt van egy lista a felügyelt és felügyelet nélküli algoritmusokról, amelyek nagyon népszerűek és érdemes tudni magas szinten. Vegye figyelembe, hogy ezen algoritmusok egy részét részletesebben tárgyaljuk ebben a sorozatban.
felügyelt regresszió
-
egyszerű és többszörös lineáris regresszió
-
mesterséges neurális hálózatok
döntési fa vagy erdő regresszió
ordinális regresszió
Poisson regresszió
legközelebbi szomszéd módszerek (pl.
felügyelt Kétosztályú & Többosztályos osztályozás
-
logisztikai regresszió és multinomiális regresszió
-
SVM (Support Vector Machine)
-
bayesi osztályozók (pl. naiv Bayes)
-
legközelebbi szomszéd módszerek (pl., K-nn vagy K-legközelebbi szomszédok)
mesterséges neurális hálózatok
döntési fa , erdő és dzsungel
Perceptron módszerek
egy versus összes többosztályos
felügyelet nélkül
-
K-azt jelenti, klaszterezés
-
hierarchikus klaszterezés
anomália detektálás
-
támogatás vektor gép (egy osztály)
-
PCA (Principle component analysis)
vegye figyelembe, hogy a modell teljesítményének javítására gyakran használt technika több modell eredményeinek kombinálása. Ez a megközelítés kihasználja az úgynevezett ensemble módszereket, és a véletlenszerű erdők nagyszerű példa (később tárgyaljuk).
Ha semmi más, akkor jó ötlet, hogy legalább megismerkedjen ezeknek a népszerű algoritmusoknak a nevével, és legyen egy alapötlete a gépi tanulási probléma és kimenet típusáról, amelyre alkalmasak lehetnek.
összefoglaló
a gépi tanulás, a prediktív elemzés és más kapcsolódó témák nagyon izgalmas és hatékony területek.
bár ezek a témák nagyon technikai jellegűek lehetnek, sok érintett fogalom viszonylag egyszerűen érthető magas szinten. Sok esetben egyszerű megértésre van szükség a gépi tanulási problémákon, projekteken, technikákon stb.alapuló megbeszélésekhez.
a sorozat második része bemutatja a modell teljesítményét, bemutatja a gépi tanulási folyamatot, és részletesen megvitatja a modellválasztást és a kapcsolódó kompromisszumokat.
maradjon velünk!
A szerzőről
Alex az InnoArchiTech és az InnoArchiTech Institute alapítója, valamint az O ‘ Reilly Media által kiadott AI for People and Business szerzője.