Programovanie

Výučba bez dozoru vysvetlená

Napriek úspechu kontrolovaného strojového učenia a hlbokého učenia existuje myšlienková škola, ktorá hovorí, že učenie bez dozoru má ešte väčší potenciál. Učenie sa systému učenia sa pod dohľadom je obmedzené jeho školením; to znamená, že kontrolovaný vzdelávací systém sa môže naučiť iba tie úlohy, na ktoré je trénovaný. Naopak, systém bez dozoru mohol teoreticky dosiahnuť „umelú všeobecnú inteligenciu“, čo znamená schopnosť naučiť sa akúkoľvek úlohu, ktorú sa človek môže naučiť. Táto technológia tam však ešte nie je.

Ak najväčším problémom učenia sa pod dohľadom sú náklady na označovanie údajov o tréningu, najväčším problémom učenia bez dozoru (kde údaje nie sú označené) je to, že často nefunguje veľmi dobre. Napriek tomu má učenie bez dozoru svoje využitie: Niekedy môže byť dobré na zníženie rozmernosti súboru údajov, preskúmanie vzoru a štruktúry údajov, nájdenie skupín podobných objektov a detekciu odľahlých hodnôt a iného šumu v dátach.

Všeobecne stojí za to vyskúšať v rámci svojej prieskumnej analýzy údajov metódy učenia bez dozoru, aby ste zistili vzory a zoskupenia, znížili rozmernosť svojich údajov, objavili latentné funkcie a odstránili odľahlé hodnoty. To, či potom budete musieť prejsť k učeniu pod dohľadom, alebo k použitiu vopred pripravených modelov na predpovedanie, závisí od vašich cieľov a údajov.

Čo je to učenie bez dozoru?

Popremýšľajte, ako sa ľudské deti učia. Ako rodič alebo učiteľ nemusíte ukazovať malým deťom každé plemeno psa a mačky, aby ste ich naučili rozpoznávať psy a mačky. Môžu sa poučiť z niekoľkých príkladov bez veľkého vysvetlenia a zovšeobecňovať sami. Mohli by omylom volať čivavu „mačiatko“, keď ju prvýkrát uvidia, ale môžete to napraviť pomerne rýchlo.

Deti intuitívne zhromažďujú do tried skupiny vecí, ktoré vidia. Jedným z cieľov nekontrolovaného učenia je v zásade umožniť počítačom rozvíjať rovnaké schopnosti. Ako uviedli Alex Graves a Kelly Clancy zo spoločnosti DeepMind vo svojom blogovom príspevku „Nesledované učenie: zvedavý žiak“.

Učenie bez dozoru je paradigma navrhnutá na vytvorenie autonómnej inteligencie odmeňovaním agentov (tj. Počítačových programov) za to, že sa dozvedia o údajoch, ktoré pozorujú, bez toho, aby mali na mysli konkrétnu úlohu. Inými slovami, agent sa učí kvôli učeniu.

Potenciál agenta, ktorý sa učí kvôli učeniu, je oveľa väčší ako systém, ktorý redukuje zložité obrázky na binárne rozhodnutie (napr. Pes alebo mačka). Odhaľovanie vzorov namiesto vykonávania vopred definovanej úlohy môže priniesť prekvapivé a užitočné výsledky, čo sa preukázalo, keď vedci z laboratória Lawrence Berkeley Lab spustili algoritmus spracovania textu (Word2vec) na niekoľkých miliónoch abstraktov materiálovej vedy, aby predpovedali objavy nových termoelektrických materiálov.

Metódy zoskupovania

Problém zoskupovania je problém učenia bez dozoru, ktorý model žiada, aby našiel skupiny podobných dátových bodov. V súčasnosti sa používa niekoľko klastrových algoritmov, ktoré majú zvyčajne mierne odlišné charakteristiky. Klastrové algoritmy sa všeobecne zameriavajú na metrické alebo dištančné funkcie medzi vektormi funkcií dátových bodov a potom zoskupujú tie, ktoré sú navzájom „blízko“. Klastrové algoritmy fungujú najlepšie, ak sa triedy neprekrývajú.

Hierarchické zoskupovanie

Hierarchická klastrová analýza (HCA) môže byť aglomeratívna (klastre budujete zdola nahor, počínajúc jednotlivými bodmi a končiac jedným klastrom), alebo rozdeľujúca (začínate od jedného klastra a rozdeľujete ho, až kým neskončíte s jednotlivými bodmi). Ak máte šťastie, môžete nájsť medzistupeň procesu zoskupovania, ktorý odráža zmysluplnú klasifikáciu.

Proces zoskupovania sa zvyčajne zobrazuje ako dendrogram (stromový diagram). Algoritmy HCA majú tendenciu trvať veľa výpočtového času [O(n3)] a pamäť [O(n2)] zdroje; tieto obmedzujú použiteľnosť algoritmov na relatívne malé súbory údajov.

Algoritmy HCA môžu používať rôzne metriky a kritériá prepojenia. Euklidovská vzdialenosť a druhá mocnina Euklidovská vzdialenosť sú spoločné pre číselné údaje; Hammingova vzdialenosť a Levenshteinova vzdialenosť sú bežné pre nečíselné údaje. Jednoduché a úplné spojenie je bežné; oba môžu zjednodušiť klastrové algoritmy (SLINK a CLINK). SLINK je jedným z mála klastrových algoritmov, ktoré zaručene nájdu optimálne riešenie.

K-znamená zhlukovanie

Problém klastrovania k-means sa pokúša rozdeliť n pozorovania do k klastre využívajúce euklidovskú metriku vzdialenosti s cieľom minimalizovať rozptyl (súčet štvorcov) v rámci každého klastra. Je to metóda kvantovania vektorov a je užitočná na učenie sa funkcií.

Lloydov algoritmus (iteratívna klastrová aglomerácia s aktualizáciami centroidov) je najbežnejšou heuristikou používanou na riešenie problému a je relatívne efektívny, ale nezaručuje globálnu konvergenciu. Aby sa to zlepšilo, ľudia často spúšťajú algoritmus viackrát pomocou náhodných počiatočných klastrových centroidov generovaných metódami Forgy alebo Random Partition.

K-means predpokladá sférické zhluky, ktoré sú oddeliteľné tak, že priemer konverguje smerom k stredu zhluku, a tiež predpokladá, že na poradí dátových bodov nezáleží. Očakáva sa, že klastre budú mať podobnú veľkosť, takže priradenie k najbližšiemu stredu klastra je správne priradenie.

Heuristiky riešenia klastrov k-means sú zvyčajne podobné algoritmu očakávania-maximalizácie (EM) pre modely Gaussovej zmesi.

Modely zmesí

Modely zmesí predpokladajú, že subpopulácie pozorovaní zodpovedajú určitému rozdeleniu pravdepodobnosti, obvykle gaussovskému rozdeleniu pre numerické pozorovania alebo kategorickému rozdeleniu pre nečíselné údaje. Každá subpopulácia môže mať svoje vlastné distribučné parametre, napríklad priemer a rozptyl pre Gaussovské distribúcie.

Maximalizácia očakávaní (EM) je jednou z najpopulárnejších techník používaných na stanovenie parametrov zmesi s daným počtom zložiek. Okrem EM je možné zmiešané modely vyriešiť pomocou Markovovho reťazca Monte Carlo, porovnávania momentov, spektrálnych metód s rozkladom singulárnych hodnôt (SVD) a grafických metód.

Pôvodná aplikácia modelu zmesi mala oddeliť dve populácie pobrežných krabov podľa pomeru dĺžky čela k telu. Karl Pearson vyriešil tento problém v roku 1894 pomocou párovania momentov.

Bežným rozšírením modelov zmesi je pripojenie latentných premenných definujúcich identity zložiek zmesi do Markovovho reťazca namiesto predpokladu, že ide o nezávislé identicky rozložené náhodné premenné. Výsledný model sa nazýva skrytý Markovov model a je jedným z najbežnejších postupných hierarchických modelov.

Algoritmus DBSCAN

Hustota založené na priestorovom klastrovaní aplikácií so šumom (DBSCAN) je neparametrický algoritmus klastrovania údajov, ktorý sa datuje od roku 1996. Je optimalizovaný na použitie s databázami, ktoré dokážu zrýchliť dotazy na geometrické oblasti pomocou stromu R * alebo inej štruktúry geometrického indexu. .

V podstate klastre DBSCAN základné body ktoré majú viac ako určitý minimálny počet susedov v určitej vzdialenosti od Epsilonu, zahodí ako odľahlé body, ktoré nemajú susedov v Epsilone, a do tohto klastra pridá body, ktoré sa nachádzajú v Epsilone od základného bodu. DBSCAN je jeden z najbežnejších klastrových algoritmov a dokáže nájsť klastre ľubovoľného tvaru.

Algoritmus OPTICS

Poradové body na identifikáciu klastrovanej štruktúry (OPTICS) je algoritmus na hľadanie klastrov založených na hustote v priestorových dátach. OPTICS je podobný ako DBSCAN, ale zvláda prípad rôznej hustoty bodov.

Variácie nápadov v DBSCAN a OPTICS sa dajú použiť aj na jednoduchú detekciu nadmerných hodnôt a odstránenie a odstránenie šumu.

Latentné variabilné modely

Model latentných premenných je štatistický model, ktorý dáva do vzťahu množinu pozorovateľných premenných so sadou latentných (skrytých) premenných. Latentné variabilné modely sú užitočné na odhalenie skrytých štruktúr v komplexných a vysokorozmerných dátach.

Analýza hlavných komponentov

Analýza hlavných komponentov (PCA) je štatistický postup, ktorý pomocou ortogonálnej transformácie prevádza množinu pozorovaní pravdepodobne korelovaných numerických premenných na množinu hodnôt lineárne nekorelovaných premenných nazývaných hlavné zložky. Karl Pearson vynašiel PCA v roku 1901. PCA je možné dosiahnuť rozkladom vlastných čísel dátovej kovariančnej (alebo korelačnej) matice alebo rozkladom singulárnych hodnôt (SVD) dátovej matice, zvyčajne po normalizácii počiatočných údajov.

Rozklad singulárnej hodnoty

Dekompozícia singulárnej hodnoty (SVD) je faktorizácia skutočnej alebo zložitej matice. Je to bežná technika v lineárnej algebre a často sa počíta pomocou transformácií Householder. SVD je jedným zo spôsobov riešenia hlavných komponentov. Aj keď je úplne možné kódovať SVD od nuly, vo všetkých knižniciach lineárnej algebry existujú dobré implementácie.

Metóda momentov

Metóda momentov používa na odhad parametrov populácie momenty pozorovanej vzorky dát (priemer, rozptyl, šikmosť a špičatosť). Metóda je dosť jednoduchá, dá sa často vypočítať ručne a zvyčajne dosahuje globálnu konvergenciu. V prípade nízkej štatistiky však metóda okamihov môže niekedy vytvoriť odhady, ktoré sú mimo priestor parametrov. Metóda momentov je jednoduchý spôsob riešenia zmiešaných modelov (vyššie).

Algoritmy maximalizácie očakávania

Algoritmus maximalizácie očakávania (EM) je iteratívna metóda na nájdenie odhadov maximálnej pravdepodobnosti parametrov v modeloch, ktoré závisia od nepozorovaných latentných premenných. EM iterácia sa strieda medzi uskutočňovaním kroku očakávania (E), ktorý vytvára funkciu pre očakávanie logaritmickej pravdepodobnosti vyhodnotenej pomocou aktuálneho odhadu parametrov, a maximalizačného kroku (M), ktorý počíta parametre maximalizujúce očakávaný logaritmus pravdepodobnosť zistená v kroku E.

EM konverguje do maxima alebo do sedla, ale nie nevyhnutne do globálneho maxima. Šancu na nájdenie globálneho maxima môžete zvýšiť opakovaním postupu EM z mnohých náhodných počiatočných odhadov parametrov alebo použitím momentovej metódy na určenie počiatočných odhadov.

EM aplikovaný na model Gaussovej zmesi (vyššie) sa môže použiť na klastrovú analýzu.

Nervové siete bez dozoru

Neurónové siete sú zvyčajne trénované na označených dátach pre klasifikáciu alebo regresiu, čo je podľa definície supervizované strojové učenie. Môžu sa tiež trénovať na neoznačených dátach pomocou rôznych nekontrolovaných schém.

Autoencoders

Autoencoders sú neurónové siete, ktoré sú trénované na základe ich vstupov. Autoencoder je v podstate sieť spätného toku, ktorá funguje ako kodek a kóduje svoj vstup zo vstupnej vrstvy do jednej alebo viacerých skrytých vrstiev s nižším počtom neurónov a potom dekóduje zakódovanú reprezentáciu do výstupnej vrstvy s topológiou ako vstup.

Počas tréningu autoencoder využíva spätné šírenie, aby minimalizoval rozdiel medzi vstupom a výstupom. Automatické kódovače sa používajú na znižovanie rozmerov, učenie funkcií, odstraňovanie šumu, detekciu anomálií, spracovanie obrazu a na učenie sa generatívnych modelov.

Siete hlbokej viery

Siete hlbokej viery (DBN) sú skupiny automatických kódovačov alebo obmedzených Boltzmannových strojov (RBN), ktoré sa môžu naučiť rekonštruovať svoje vstupy. Vrstvy potom fungujú ako detektory prvkov. RBN sa zvyčajne trénujú pomocou kontrastnej divergencie.

DBN sa používajú na generovanie a rozpoznávanie obrázkov, videosekvencií a údajov o snímaní pohybu.

Generatívne kontradiktórne siete

Generatívne kontradiktórne siete (GAN) súčasne trénujú dve siete, generatívny model, ktorý zachytáva distribúciu údajov, a diskriminačný model, ktorý odhaduje pravdepodobnosť, že vzorka pochádza z tréningových údajov. Výcvik sa snaží maximalizovať pravdepodobnosť, že generátor dokáže oklamať diskriminátora.

GAN možno použiť na vytváranie fotografií imaginárnych ľudí a na vylepšenie astronomických snímok. GAN sa tiež používali na zväčšenie textúr zo starých videohier na použitie vo verziách hier s vysokým rozlíšením. Okrem nekontrolovaného učenia sa siete GAN úspešne aplikovali na posilnenie výučby hrania hier.

Samoorganizujúca sa mapa

Samoorganizujúca sa mapa (SOM) definuje usporiadané mapovanie zo sady daných dátových položiek do pravidelnej, zvyčajne dvojrozmernej mriežky. Ku každému uzlu mriežky je priradený model. Dátová položka bude namapovaná do uzla, ktorého model je najviac podobný dátovej položke, t. J. Má v niektorej metrike najmenšiu vzdialenosť od dátovej položky.

Existuje niekoľko opatrení, ktoré musíte urobiť, aby ste zaistili, že mapovania sú stabilné a dobre usporiadané. Nie všetky komerčné implementácie dodržiavajú všetky preventívne opatrenia.