Programmēšana

Nepamatota mācīšanās ir izskaidrota

Neskatoties uz mašīnmācīšanās un padziļinātas mācīšanās panākumiem, pastāv doma, kurā teikts, ka nepieskatītai mācībai ir vēl lielāks potenciāls. Uzraudzītas mācību sistēmas apguvi ierobežo tās apmācība; i., uzraudzīta mācību sistēma var apgūt tikai tos uzdevumus, kuriem tā ir apmācīta. Turpretī bez uzraudzības sistēma teorētiski varētu sasniegt “mākslīgo vispārējo intelektu”, kas nozīmē spēju iemācīties jebkuru uzdevumu, ko cilvēks var iemācīties. Tomēr tehnoloģija vēl nav pieejama.

Ja lielākā uzraudzītās mācīšanās problēma ir apmācības datu marķēšana, lielākā problēma ar bez uzraudzības (kur dati nav marķēti) ir tā, ka tā bieži nedarbojas ļoti labi. Neskatoties uz to, uzraudzībai bez uzraudzības ir savi pielietojumi: dažreiz tā var būt laba, lai samazinātu datu kopas dimensiju, izpētītu datu modeli un struktūru, atrastu līdzīgu objektu grupas un atklātu neobjektivitātes un citus trokšņus datos.

Kopumā izpētes datu analīzes ietvaros ir vērts izmēģināt nepieskatītas mācīšanās metodes, lai atklātu modeļus un kopas, samazinātu datu dimensiju, atklātu slēptās funkcijas un noņemtu izteiktās vērtības. Tas, vai jums pēc tam jāpāriet uz uzraudzītu mācīšanos vai iepriekš apmācītu modeļu izmantošanu, lai veiktu prognozes, ir atkarīgs no jūsu mērķiem un jūsu datiem.

Kas ir bez uzraudzības mācīšanās?

Padomājiet par to, kā mācās cilvēku bērni. Jums kā vecākiem vai skolotājam nav jāparāda maziem bērniem katra suņu un kaķu šķirne, lai iemācītu viņiem atpazīt suņus un kaķus. Viņi var mācīties no dažiem piemēriem, bez daudz paskaidrojumiem, un vispārināt paši. Ak, viņi var kļūdaini saukt Čivavu par “Kitiju”, kad viņi pirmo reizi to redz, bet jūs to varat izlabot salīdzinoši ātri.

Bērni intuitīvi grupē redzamo lietu grupas klasēs. Viens bez uzraudzības mācību mērķis būtībā ir ļaut datoriem attīstīt tādas pašas spējas. Kā Alekss Greivs un Kellija Klansija no DeepMind izteica savā emuāra ziņā “Nepārraudzīta mācīšanās: ziņkārīgais skolnieks”

Nepieskatīta mācīšanās ir paradigma, kas izveidota, lai izveidotu autonomu inteliģenci, apbalvojot aģentus (tas ir, datorprogrammas), lai uzzinātu par novērotajiem datiem, paturot prātā konkrētu uzdevumu. Citiem vārdiem sakot, aģents mācās mācīšanās dēļ.

Aģenta, kas mācās, potenciāls mācīšanās nolūkā ir daudz lielāks nekā sistēma, kas sarežģītus attēlus samazina līdz bināram lēmumam (piemēram, suns vai kaķis). Modeļu atklāšana, nevis iepriekš noteikta uzdevuma veikšana var dot pārsteidzošus un noderīgus rezultātus, kā parādīts, kad Lawrence Berkeley Lab pētnieki veica teksta apstrādes algoritmu (Word2vec) uz vairākiem miljoniem materiālzinātņu abstrakciju, lai prognozētu jaunu termoelektrisko materiālu atklājumus.

Klasterizācijas metodes

Klasteru problēma ir nepieskatīta mācību problēma, kas prasa modelim atrast līdzīgu datu punktu grupas. Pašlaik tiek izmantoti vairāki kopu veidošanas algoritmi, kuriem parasti ir nedaudz atšķirīgas īpašības. Kopā kopu veidošanas algoritmi aplūko metriku vai attāluma funkcijas starp datu punktu pazīmju vektoriem un pēc tam sagrupē tos, kas atrodas “tuvu” viens otram. Klasterizācijas algoritmi vislabāk darbojas, ja klases nepārklājas.

Hierarhiska kopu veidošana

Hierarhiskā kopu analīze (HCA) var būt aglomeratīva (jūs veidojat kopas no apakšas uz augšu, sākot ar atsevišķiem punktiem un beidzot ar vienu kopu) vai daloša (jūs sākat ar vienu kopu un sadalāt to, līdz beidzat atsevišķus punktus). Ja paveicas, varat atrast kopu veidošanas procesa starpposmu, kas atspoguļo jēgpilnu klasifikāciju.

Klasterizācijas process parasti tiek parādīts kā dendrogramma (koku diagramma). HCA algoritmiem ir tendence aizņemt daudz skaitļošanas laika [O(n3)] un atmiņa [O(n2)] resursi; tie ierobežo algoritmu pielietojamību salīdzinoši mazām datu kopām.

HCA algoritmos var izmantot dažādus rādītājus un sasaistes kritērijus. Eiklida attālums un kvadrātā eiklīda attālums ir kopīgi skaitliskiem datiem; Hamminga attālums un Levenshtein attālums ir kopīgi skaitliskiem datiem. Viena saite un pilnīga sasaiste ir kopīgas; abi šie elementi var vienkāršot kopu veidošanas algoritmus (attiecīgi SLINK un CLINK). SLINK ir viens no nedaudzajiem kopu veidošanas algoritmiem, kas garantē optimāla risinājuma atrašanu.

K nozīmē klasterizāciju

K nozīmē klasterizācijas problēmu, mēģina sadalīt n novērojumi k kopas, izmantojot Eiklida attāluma metriku, ar mērķi samazināt dispersiju (kvadrātu summu) katrā klasterī. Tā ir vektoru kvantēšanas metode, un tā ir noderīga funkciju apguvei.

Loida algoritms (iteratīvā klastera aglomerācija ar centroid atjauninājumiem) ir visizplatītākā heiristika, ko izmanto problēmas risināšanai, un tas ir salīdzinoši efektīvs, taču negarantē globālu konverģenci. Lai to uzlabotu, cilvēki bieži palaiž algoritmu vairākas reizes, izmantojot nejaušus sākotnējos klastera centraīdus, ko ģenerē Forgy vai Random Partition metodes.

K-mean pieņem sfēriskas kopas, kuras ir atdalāmas tā, lai vidējā vērtība saplūst pret klastera centru, kā arī pieņem, ka datu punktu secībai nav nozīmes. Paredzams, ka kopas būs līdzīga izmēra, tāpēc piešķiršana tuvākajam kopu centram ir pareiza piešķiršana.

Heiristika k-vidus klasteru risināšanai parasti ir līdzīga gaidu-maksimizācijas (EM) algoritmam Gausa maisījumu modeļiem.

Maisījuma modeļi

Maisījuma modeļos tiek pieņemts, ka novērojumu apakšpopulācijas atbilst kādam varbūtības sadalījumam, parasti skaitliskiem novērojumiem Gausa sadalījumi vai kategoriju nesadalītiem datiem. Katrai apakšpopulācijai var būt savi sadalījuma parametri, piemēram, Gausa sadalījuma vidējais lielums un dispersija.

Gaidījumu maksimizēšana (EM) ir viena no populārākajām metodēm, ko izmanto, lai noteiktu maisījuma parametrus ar noteiktu komponentu skaitu. Papildus EM maisījumu modeļus var atrisināt ar Markova ķēdi Montekarlo, momentu saskaņošanu, spektrālās metodes ar vienskaitļa vērtību sadalīšanu (SVD) un grafiskās metodes.

Sākotnējais maisījuma modeļa pielietojums bija divu krasta krabju populāciju atdalīšana pēc pieres un ķermeņa garuma attiecībām. Karls Pīrsons šo problēmu atrisināja 1894. gadā, izmantojot momenta saskaņošanu.

Maisījumu modeļu kopīgs paplašinājums ir pieslēgt latentos mainīgos, kas nosaka maisījuma sastāvdaļu identitātes, Markova ķēdē, nevis pieņemt, ka tie ir neatkarīgi identiski sadalīti nejauši mainīgie. Iegūto modeli sauc par slēpto Markova modeli un tas ir viens no visbiežāk sastopamajiem secīgajiem hierarhiskajiem modeļiem.

DBSCAN algoritms

Uz blīvuma balstīta lietojumprogrammu telpiskā klasterizācija ar troksni (DBSCAN) ir neparametrisks datu kopu veidošanas algoritms, kas datēts ar 1996. gadu. Tas ir optimizēts lietošanai ar datu bāzēm, kas var paātrināt ģeometrisko reģionu vaicājumus, izmantojot R * koku vai kādu citu ģeometrisko rādītāju struktūru .

Būtībā DBSCAN kopas galvenie punkti kam ir vairāk nekā minimālais kaimiņu skaits kādā attālumā Epsilon, izmet kā galējus punktus, kuriem Epsilon kaimiņu nav, un šai kopai pievieno punktus, kas atrodas Epsilonā. DBSCAN ir viens no izplatītākajiem klasterizācijas algoritmiem, un tajā var atrast patvaļīgas formas kopas.

OPTICS algoritms

Punktu secība, lai identificētu kopu struktūru (OPTICS), ir algoritms, lai telpiskajos datos atrastu blīvuma bāzes kopas. OPTICS ir līdzīgs DBSCAN, taču tas darbojas ar dažādu punktu blīvumu.

DBSCAN un OPTICS ideju variācijas var izmantot arī vienkāršai skaņas noteikšanai un trokšņu noteikšanai un noņemšanai.

Latentā mainīgā modeļi

Latentā mainīgā modelis ir statistikas modelis, kas novērojamo mainīgo lielumu kopu saista ar latentu (slēpto) mainīgo lielumu kopumu. Latentā mainīgā modeļi ir noderīgi, lai atklātu slēptās struktūras sarežģītos un augstas dimensijas datos.

Galvenā komponenta analīze

Galveno komponentu analīze (PCA) ir statistikas procedūra, kas izmanto ortogonālu transformāciju, lai, iespējams, korelētu skaitlisko mainīgo lielumu novērojumu kopumu pārveidotu par lineāri nekorrelētu mainīgo lielumu vērtību kopu, ko sauc par galvenajiem komponentiem. Karls Pīrsons izgudroja PCA 1901. gadā. PCA var panākt ar datu kovariācijas (vai korelācijas) matricas īpašvērtības sadalīšanu vai datu matricas vienskaitļa vērtību sadalīšanu (SVD), parasti pēc sākotnējo datu normalizācijas soļa.

Vienskaitļa vērtības sadalīšanās

Vienskaitļa vērtības sadalīšanās (SVD) ir reālas vai sarežģītas matricas faktorizācija. Tas ir izplatīts paņēmiens lineārajā algebrā, un to bieži aprēķina, izmantojot Householder transformācijas. SVD ir viens no veidiem, kā atrisināt galvenos komponentus. Lai gan ir pilnīgi iespējams kodēt SVD no nulles, visās lineārās algebras bibliotēkās ir labas iespējas.

Mirkļu metode

Momentu metode izmanto novēroto datu izlases momentus (vidējo, dispersiju, šķībumu un kurtozi), lai novērtētu populācijas parametrus. Metode ir diezgan vienkārša, to bieži var aprēķināt ar rokām, un parasti tā sasniedz globālo konverģenci. Zemas statistikas gadījumā momentu metode dažkārt var radīt aprēķinus, kas atrodas ārpus parametru telpas. Mirkļu metode ir vienkāršs veids, kā atrisināt maisījumu modeļus (iepriekš).

Gaidīšanas-maksimizācijas algoritmi

Gaidīšanas – maksimizācijas (EM) algoritms ir iteratīva metode, lai atrastu parametru maksimālās varbūtības novērtējumus modeļos, kas ir atkarīgi no neievērotajiem latentajiem mainīgajiem. EM atkārtojums mainās starp gaidīšanas soļa (E) veikšanu, kas rada funkciju log-varbūtības sagaidīšanai, kas novērtēta, izmantojot pašreizējo parametru novērtējumu, un maksimizācijas soli (M), kas aprēķina parametrus, maksimizējot paredzamo log-log varbūtība konstatēta uz E pakāpiena.

EM saplūst līdz maksimālajam vai seglu punktam, bet ne vienmēr līdz globālajam maksimumam. Jūs varat palielināt iespēju atrast globālo maksimumu, atkārtojot EM procedūru no daudziem nejaušiem sākotnējiem parametru aprēķiniem vai izmantojot momentu metodi, lai noteiktu sākotnējās aplēses.

Klasteru analīzei var izmantot EM, kas piemērots Gausa maisījuma modelim (iepriekš).

Neuzraudzīti neironu tīkli

Neironu tīkli parasti tiek apmācīti par iezīmētiem datiem klasifikācijai vai regresijai, kas pēc definīcijas tiek uzraudzīta mašīnmācīšanās. Viņus var apmācīt arī par nemarķētiem datiem, izmantojot dažādas nepieskatītas shēmas.

Auto kodētāji

Auto kodētāji ir neironu tīkli, kas ir apmācīti par to ievadi. Būtībā automātiskais kodētājs ir plūsmas pārsūtīšanas tīkls, kas darbojas kā kodeks, kodējot tā ievadi no ievades slāņa vienā vai vairākos slēptajos slāņos ar mazāku neironu skaitu un pēc tam kodēto attēlojumu dekodējot izejas slānim ar topoloģiju kā ievade.

Apmācības laikā automātiskais kodētājs izmanto izplatīšanos aizmugurē, lai samazinātu atšķirību starp ievadi un izvadi. Automātiskie kodētāji ir izmantoti izmēru samazināšanai, funkciju apgūšanai, trokšņu mazināšanai, anomāliju noteikšanai, attēlu apstrādei un ģeneratīvo modeļu apguvei.

Dziļu ticību tīkli

Dziļu ticību tīkli (DBN) ir automātisko kodētāju vai ierobežotu Boltzmann mašīnu (RBN) kaudzes, kas var iemācīties rekonstruēt savus resursus. Tad slāņi darbojas kā funkciju detektori. RBN parasti tiek apmācīti, izmantojot kontrastējošas atšķirības.

DBN ir izmantoti attēlu, video secību un kustības uztveršanas datu ģenerēšanai un atpazīšanai.

Ģeneratīvie pretrunu tīkli

Ģeneratīvie pretrunu tīkli (GAN) vienlaikus apmāca divus tīklus, ģeneratīvo modeli, kas uztver datu izplatīšanu, un diskriminējošu modeli, kas novērtē varbūtību, ka izlase ir iegūta no apmācības datiem. Apmācība mēģina maksimāli palielināt varbūtību, ka ģenerators var apmānīt diskriminatoru.

GAN var izmantot, lai izveidotu iedomātu cilvēku fotogrāfijas un uzlabotu astronomiskos attēlus. GAN ir izmantoti arī, lai palielinātu veco videospēļu faktūras, lai tās izmantotu spēļu augstas izšķirtspējas versijās. Ārpus nepārraudzītas mācīšanās GAN ir veiksmīgi izmantoti, lai pastiprinātu spēles apguvi.

Pašorganizējoša karte

Pašorganizējošā karte (SOM) nosaka sakārtotu kartēšanu no norādīto datu vienumu kopas uz parastu, parasti divdimensiju režģi. Katram režģa mezglam ir saistīts modelis. Datu vienums tiks kartēts mezglā, kura modelis ir visvairāk līdzīgs datu vienumam, t.i., tam ir vismazākais attālums no datu vienuma kādā metrikā.

Lai kartējumi būtu stabili un labi sakārtoti, jums jāveic vairāki piesardzības pasākumi. Ne visi komerciālie ieviešanas gadījumi ievēro visus piesardzības pasākumus.