Perceptrón je Definícia pojmu, vlastnosti, aplikácia

Obsah:

Perceptrón je Definícia pojmu, vlastnosti, aplikácia
Perceptrón je Definícia pojmu, vlastnosti, aplikácia
Anonim

V strojovom učení je perceptrón kontrolovaný algoritmus učenia pre binárne klasifikátory. Často sa nazýva aj perceptrón. Binárny klasifikátor je funkcia, ktorá môže rozhodnúť, či vstup reprezentovaný vektorom čísel patrí do nejakej konkrétnej triedy. Toto je typ lineárneho klasifikátora, teda klasifikačný algoritmus, ktorý robí svoje predpovede na základe funkcie lineárneho prediktora, ktorá kombinuje množinu váh s vektorom vlastností.

Vzorce perceptrónu
Vzorce perceptrónu

V posledných rokoch si umelé neurónové siete získali pozornosť vďaka pokroku v hlbokom učení. Čo je to však umelá neurónová sieť a z čoho pozostáva?

Zoznámte sa s Perceptronom

V tomto článku sa rýchlo pozrieme na umelé neurónové siete vo všeobecnosti, potom sa pozrieme na jeden neurón a nakoniec (toto je časť kódovania) vezmeme najzákladnejšiu verziu umelého neurón, perceptrón a klasifikovať jeho body dolietadlo.

Premýšľali ste niekedy nad tým, prečo existujú úlohy, ktoré sú pre každého také jednoduché, no pre počítače neuveriteľne náročné? Umelé neurónové siete (skrátene ANN) boli inšpirované ľudským centrálnym nervovým systémom. Podobne ako ich biologický náprotivok sú siete ANN postavené na jednoduchých prvkoch spracovania signálu, ktoré sú spojené do veľkej siete.

Neurónové siete sa musia učiť

Na rozdiel od tradičných algoritmov sa neurónové siete nedajú „naprogramovať“ani „vyladiť“, aby fungovali podľa plánu. Rovnako ako ľudský mozog sa musia naučiť dokončiť úlohu. Zhruba povedané, existujú tri stratégie učenia.

Najjednoduchší spôsob je možné použiť, ak existuje testovací prípad (dostatočne veľký) so známymi výsledkami. Potom školenie prebieha takto: spracujte jeden súbor údajov. Porovnajte výsledok so známym výsledkom. Nastavte sieť a skúste to znova. Toto je stratégia učenia, ktorú tu budeme používať.

Učenie bez dozoru

Užitočné, ak nie sú dostupné žiadne testovacie údaje a ak je možné odvodiť nejakú nákladovú funkciu z požadovaného správania. Nákladová funkcia hovorí neurónovej sieti, ako ďaleko je od cieľa. Sieť potom môže upravovať svoje parametre za behu a pracovať so skutočnými údajmi.

Posilnené vzdelávanie

Metóda „mrkvy a biča“. Môže sa použiť, ak neurónová sieť generuje nepretržitú akciu. Postupom času sa sieť naučí preferovať správne akcie a vyhýbať sa tým nesprávnym.

Dobre, teraz o tom niečo málo viemepovaha umelých neurónových sietí, ale z čoho presne sú vyrobené? Čo uvidíme, ak otvoríme veko a pozrieme sa dovnútra?

Neuróny sú stavebnými kameňmi neurónových sietí. Hlavnou zložkou akejkoľvek umelej neurónovej siete je umelý neurón. Nielenže sú pomenované po svojich biologických náprotivkoch, ale sú tiež modelované podľa správania neurónov v našom mozgu.

Biológia vs technológia

Tak ako má biologický neurón dendrity na prijímanie signálov, bunkové telo na ich spracovanie a axón na odosielanie signálov iným neurónom, umelý neurón má viacero vstupných kanálov, fázu spracovania a jeden výstup, ktorý dokáže rozvetvovať sa na mnoho ďalších. umelé neuróny.

Môžeme urobiť niečo užitočné s jedným perceptrónom? Existuje trieda problémov, ktoré dokáže vyriešiť jeden perceptrón. Vstupný vektor považujte za bodové súradnice. Pre vektor s n-prvkami bude tento bod žiť v n-rozmernom priestore. Pre zjednodušenie života (a nižšie uvedeného kódu) predpokladajme, že je 2D. Ako kus papiera.

Ďalej si predstavte, že na túto rovinu nakreslíme nejaké náhodné body a rozdelíme ich na dve sady nakreslením rovnej čiary cez papier. Táto čiara rozdeľuje body na dve sady, jednu nad čiarou a jednu pod čiarou. Tieto dve množiny sa potom nazývajú lineárne oddeliteľné.

Jeden perceptrón, bez ohľadu na to, aké jednoduché sa to môže zdať, je schopný vedieť, kde sa táto čiara nachádza, a keď skončí tréning, dokáže určiť, či je daný bod nad alebo pod touto čiarou.

Históriavynálezy

Algoritmus pre túto metódu bol vynájdený v roku 1957 v Cornell Aviation Laboratory Frankom Rosenblattom (často po ňom pomenovaný), financovanom Úradom námorného výskumu USA. Perceptrón mal byť stroj, nie program, a hoci jeho prvá implementácia bola v softvéri pre IBM 704, následne bol implementovaný na hardvér vyrobený na mieru ako „Mark 1 Perceptron“. Tento stroj bol navrhnutý na rozpoznávanie obrazu: mal pole 400 fotobuniek náhodne pripojených k neurónom. Váhy boli zakódované v potenciometroch a aktualizácia hmotnosti počas tréningu bola vykonávaná elektromotormi.

Na tlačovej konferencii, ktorú organizovalo americké námorníctvo v roku 1958, Rosenblatt urobil vyhlásenia o perceptróne, ktoré vyvolali búrlivú diskusiu medzi mladou komunitou AI; na základe Rosenblattových tvrdení New York Times uviedli, že perceptrón je „zárodočný elektronický počítač, o ktorom námorníctvo očakáva, že bude schopný chodiť, rozprávať, vidieť, písať, reprodukovať sa a byť si vedomý jeho existencie.“

Perceptrónové segmenty
Perceptrónové segmenty

Ďalší vývoj

Aj keď sa perceptrón spočiatku zdal sľubný, rýchlo sa dokázalo, že perceptróny nemožno natrénovať na rozpoznávanie mnohých tried vzorov. To viedlo k stagnácii v oblasti výskumu s perceptrónovými neurónovými sieťami na mnoho rokov predtým, ako sa zistilo, že dopredná neurónová sieť s dvoma alebo viacerými vrstvami (tiež tzv.viacvrstvový perceptrón) mal oveľa väčší výpočtový výkon ako jednovrstvové perceptróny (nazývané aj jednovrstvové perceptróny). Jednovrstvový perceptrón je schopný študovať len lineárne separovateľné štruktúry. V roku 1969 slávna kniha „Perceptróny“od Marvina Minského a Seymoura Paperta ukázala, že tieto triedy sietí sa nedokážu naučiť funkciu XOR. Toto však neplatí pre nelineárne klasifikačné funkcie, ktoré možno použiť v jednovrstvovom perceptróne.

Perceptron Rosenblatt
Perceptron Rosenblatt

Použitie takýchto funkcií rozširuje možnosti perceptrónu, vrátane implementácie funkcie XOR. Často sa predpokladá (nesprávne), že tiež predpokladali, že podobný výsledok bude platiť pre viacvrstvovú sieť perceptrónov. Nie je to však tak, keďže Minsky aj Papert už vedeli, že viacvrstvové perceptróny sú schopné produkovať funkciu XOR. O tri roky neskôr Steven Grossberg publikoval sériu článkov prezentujúcich siete schopné modelovať diferenciálne funkcie, funkcie na zvýšenie kontrastu a funkcie XOR.

Diela boli publikované v rokoch 1972 a 1973. Často prehliadaný text Minsky/Papert však spôsobil výrazný pokles záujmu a financovania výskumu s perceptrónom neurónovej siete. Uplynulo ďalších desať rokov, kým sa v 80. rokoch obnovil výskum neurónových sietí.

Funkcie

Algoritmus jadra Perceptron bol predstavený v roku 1964 Yzermanom a kol. Mori a Rostamizadeh (2013), ktorí rozširujú predchádzajúce výsledky a dávajú nové hranice L1.

Perceptrón je zjednodušený model biologického neurónu. Zatiaľ čo zložitosť biologických neurálnych modelov je často potrebná na úplné pochopenie neurálneho správania, výskum ukazuje, že lineárny model podobný perceptrónu môže vyvolať niektoré zo správania pozorovaného v skutočných neurónoch.

Perceptrón je lineárny klasifikátor, takže sa nikdy nedostane do stavu so správne klasifikovanými všetkými vstupnými vektormi, ak trénovacia množina D nie je lineárne separovateľná, t.j. ak pozitívne príklady nemožno oddeliť od negatívnych príkladov nadrovinou. V tomto prípade žiadne „približné“riešenie neprejde krok za krokom štandardným algoritmom učenia, namiesto toho učenie úplne zlyhá. Preto, ak lineárna oddeliteľnosť trénovacej množiny nie je a priori známa, mala by sa použiť jedna z nižšie uvedených možností trénovania.

Perceptrónové vzťahy
Perceptrónové vzťahy

Vreckový algoritmus

Algoritmus račňového vrecka rieši problém robustnosti učenia perceptrónu tak, že najlepšie riešenie, ktoré sa doteraz našlo, uchováva „vo vrecku“. Algoritmus vrecka potom vráti riešenie do vrecka a nie posledné riešenie. Môže sa tiež použiť pre neoddeliteľné súbory údajov, kde je cieľom nájsť perceptrón s niekoľkými nesprávnymi klasifikáciami. Tieto riešenia však vyzerajú stochasticky, a preto im vreckový algoritmus nevyhovuje.postupne v priebehu školenia a nie je zaručené, že budú odhalené počas určitého počtu krokov školenia.

Algoritmus Maxover

Maxoverov algoritmus je „robustný“v tom zmysle, že bude konvergovať bez ohľadu na znalosť lineárnej separovateľnosti súboru údajov. V prípade lineárneho rozdelenia to vyrieši problém učenia, voliteľne aj s optimálnou stabilitou (maximálna rezerva medzi triedami). Pre neoddeliteľné súbory údajov sa vráti riešenie s malým počtom nesprávnych klasifikácií. Algoritmus sa vo všetkých prípadoch v procese učenia postupne približuje k riešeniu, bez zapamätania si predchádzajúcich stavov a bez náhodných skokov. Konvergencia spočíva v globálnej optimalite pre zdieľané súbory údajov a lokálnej optimalite pre neoddeliteľné súbory údajov.

perceptrónová rovnica
perceptrónová rovnica

Voted Perceptron

Algoritmus Voted Perceptron je variant využívajúci viacnásobne vážené perceptróny. Algoritmus spustí nový perceptrón vždy, keď je príklad nesprávne klasifikovaný, pričom inicializuje váhový vektor s konečnými váhami posledného perceptrónu. Každému perceptrónu bude tiež pridelená iná váha zodpovedajúca tomu, koľko príkladov správne klasifikuje, kým jeden nesprávne zatriedi, a na konci bude výstupom vážené hlasovanie v rámci celého perceptrónu.

Aplikácia

V oddeliteľných problémoch môže byť perceptrónový tréning zameraný aj na nájdenie najväčšej separačnej hranice medzi triedami. TzvOptimálny perceptrón stability možno určiť pomocou iteračných tréningových a optimalizačných schém, ako je algoritmus Min-Over alebo AdaTron. AdaTron využíva skutočnosť, že príslušný kvadratický optimalizačný problém je konvexný. Optimálny perceptrón stability spolu s trikom s jadrom je koncepčným základom stroja na podporu vektorov.

Viacvrstvový perceptrón
Viacvrstvový perceptrón

Alternatíva

Ďalším spôsobom riešenia nelineárnych problémov bez použitia viacerých vrstiev je použitie sietí vyššieho rádu (blok sigma-pi). V tomto type siete je každý prvok vstupného vektora rozšírený o každú párovú kombináciu násobených vstupov (druhý rád). Toto môže byť rozšírené na sieť n-poradia. Perceptron je veľmi flexibilná vec.

Pamätajte však, že najlepší klasifikátor nemusí byť nevyhnutne ten, ktorý presne klasifikuje všetky tréningové údaje. V skutočnosti, ak by sme mali predchádzajúce obmedzenie, že údaje pochádzajú z Gaussovho rozdelenia s rovnakými variantmi, lineárne rozdelenie vo vstupnom priestore je optimálne a nelineárne riešenie je prepísané.

Ďalšie lineárne klasifikačné algoritmy zahŕňajú Winnow, podporný vektor a logistickú regresiu. Perceptron je univerzálna sada algoritmov.

Ruský preklad schémy
Ruský preklad schémy

Hlavný rozsah výučby pod dohľadom

Učenie pod dohľadom je úloha strojového učenia, ktorá sa učí funkciu, ktorá mapuje vstup na výstupna základe príkladov I/O párov. Funkciu odvodzujú z označených tréningových údajov, ktoré pozostávajú zo súboru príkladov. Pri učení pod dohľadom je každý príklad pár pozostávajúci zo vstupného objektu (zvyčajne vektora) a požadovanej výstupnej hodnoty (nazývanej aj riadiaci signál).

Algoritmus učenia pod dohľadom analyzuje tréningové dáta a vytvára odhadovanú funkciu, ktorú možno použiť na zobrazenie nových príkladov. Optimálny scenár by umožnil algoritmu správne určiť označenia tried pre neviditeľné inštancie. To si vyžaduje, aby algoritmus učenia zovšeobecnil údaje učenia na neviditeľné situácie „rozumným“spôsobom.

Paralelná úloha v psychológii ľudí a zvierat sa často nazýva konceptuálne učenie.

Odporúča: