Perceptron is Definisie van die term, kenmerke, toepassing

INHOUDSOPGAWE:

Perceptron is Definisie van die term, kenmerke, toepassing
Perceptron is Definisie van die term, kenmerke, toepassing
Anonim

In masjienleer is 'n perseptron 'n leeralgoritme vir binêre klassifiseerders onder toesig. Dit word ook dikwels 'n perceptron genoem. 'n Binêre klassifiseerder is 'n funksie wat kan besluit of 'n inset, voorgestel deur 'n vektor van getalle, aan 'n spesifieke klas behoort. Dit is 'n tipe lineêre klassifiseerder, dit wil sê 'n klassifikasie-algoritme wat sy voorspellings maak gebaseer op 'n lineêre voorspellerfunksie wat 'n stel gewigte met 'n kenmerkvektor kombineer.

Perceptron formules
Perceptron formules

In onlangse jare het kunsmatige neurale netwerke aandag gekry as gevolg van vooruitgang in diep leer. Maar wat is 'n kunsmatige neurale netwerk en waaruit bestaan dit?

Ontmoet die Perceptron

In hierdie artikel gaan ons vinnig na kunsmatige neurale netwerke in die algemeen kyk, dan na 'n enkele neuron kyk, en uiteindelik (dit is die koderingsgedeelte) neem ons die mees basiese weergawe van 'n kunsmatige neuron, die perceptron, en klassifiseer sy punte invliegtuig.

Het jy al ooit gewonder hoekom daar take is wat so maklik is vir enige persoon, maar ongelooflik moeilik vir rekenaars? Kunsmatige neurale netwerke (ANN vir kort) is geïnspireer deur die menslike sentrale senuweestelsel. Soos hul biologiese eweknie, is ANN'e gebou op eenvoudige seinverwerkingselemente wat in 'n groot rooster gekombineer word.

Neurale netwerke moet leer

Anders as tradisionele algoritmes, kan neurale netwerke nie "geprogrammeer" of "ingestel" word om te werk soos bedoel nie. Net soos die menslike brein, moet hulle leer om die taak te voltooi. Rofweg gesproke is daar drie leerstrategieë.

Die maklikste manier kan gebruik word as daar 'n toetsgeval (groot genoeg) is met bekende resultate. Dan verloop opleiding soos volg: verwerk een stel data. Vergelyk die resultaat met die bekende resultaat. Stel die netwerk op en probeer weer. Dit is die leerstrategie wat ons hier gaan gebruik.

Leer sonder toesig

Nuttig as daar geen toetsdata beskikbaar is nie en as dit moontlik is om een of ander kostefunksie van die verlangde gedrag af te lei. Die kostefunksie vertel die neurale netwerk hoe ver dit van die teiken af is. Die netwerk kan dan sy parameters dadelik aanpas en met regte data werk.

Versterkte leer

Die "wortel-en-stok"-metode. Kan gebruik word as die neurale netwerk 'n deurlopende aksie genereer. Met verloop van tyd leer die netwerk om die regte aksies te verkies en die verkeerde te vermy.

Goed, nou weet ons 'n bietjie vanaard van kunsmatige neurale netwerke, maar waaruit presies is hulle gemaak? Wat sal ons sien as ons die deksel oopmaak en na binne kyk?

Neurone is die boustene van neurale netwerke. Die hoofkomponent van enige kunsmatige neurale netwerk is 'n kunsmatige neuron. Hulle is nie net vernoem na hul biologiese eweknieë nie, maar hulle is ook gemodelleer na die gedrag van neurone in ons brein.

Biologie vs tegnologie

Net soos 'n biologiese neuron dendriete het om seine te ontvang, 'n selliggaam om dit te verwerk en 'n akson om seine na ander neurone te stuur, het 'n kunsmatige neuron veelvuldige insetkanale, 'n verwerkingstadium en een uitset wat kan vertak na baie ander. kunsmatige neurone.

Kan ons iets nuttigs met 'n enkele perseptron doen? Daar is 'n klas probleme wat 'n enkele perceptron kan oplos. Beskou die invoervektor as puntkoördinate. Vir 'n vektor met n-elemente, sal hierdie punt in n-dimensionele ruimte leef. Om die lewe (en die kode hieronder) te vereenvoudig, kom ons neem aan dit is 2D. Soos 'n stuk papier.

Stel jou nou voor ons teken 'n paar ewekansige punte op hierdie vlak en verdeel dit in twee stelle deur 'n reguit lyn oor die papier te trek. Hierdie lyn verdeel die punte in twee stelle, een bo en een onder die lyn. Die twee stelle word dan lineêr skeibaar genoem.

Een perseptron, maak nie saak hoe eenvoudig dit mag lyk nie, is in staat om te weet waar hierdie lyn is, en wanneer dit klaar geoefen het, kan dit bepaal of 'n gegewe punt bo of onder hierdie lyn is.

Geskiedenisuitvindings

Die algoritme vir hierdie metode is in 1957 by die Cornell Aviation Laboratory uitgevind deur Frank Rosenblatt (dikwels na hom genoem), befonds deur die US Office of Naval Research. Die perceptron was bedoel om 'n masjien te wees, nie 'n program nie, en hoewel die eerste implementering daarvan in sagteware vir die IBM 704 was, is dit daarna op pasgemaakte hardeware geïmplementeer as die "Mark 1 Perceptron". Hierdie masjien is ontwerp vir beeldherkenning: dit het 'n reeks van 400 fotoselle gehad wat ewekansig aan neurone gekoppel is. Die gewigte is in potensiometers geënkodeer en die gewigopdatering tydens opleiding is deur elektriese motors gedoen.

By 'n perskonferensie wat in 1958 deur die Amerikaanse vloot aangebied is, het Rosenblatt stellings gemaak oor die perceptron wat hewige debat onder die jong KI-gemeenskap veroorsaak het; gebaseer op Rosenblatt se bewerings, het die New York Times berig dat die perseptron "die embrioniese elektroniese rekenaar is wat die vloot verwag om te kan loop, praat, sien, skryf, homself reproduseer en bewus wees van die bestaan daarvan."

Perceptron segmente
Perceptron segmente

Verdere ontwikkelings

Alhoewel die perseptron aanvanklik belowend gelyk het, is dit vinnig bewys dat perseptrone nie opgelei kon word om baie klasse patrone te herken nie. Dit het gelei tot 'n stagnasie in die navorsingsveld met perceptron neurale netwerke vir baie jare voordat dit erken is dat 'n feed-forward neurale netwerk met twee of meer lae (ook genoemmeerlaagperseptron) het baie meer verwerkingskrag gehad as enkellaagperseptrone (ook genoem enkellaagperseptrone). 'n Enkellaagperseptron is slegs in staat om lineêr skeibare strukture te bestudeer. In 1969 het die bekende boek "Perceptrons" deur Marvin Minsky en Seymour Papert gewys dat hierdie klasse netwerke nie die XOR-funksie kon aanleer nie. Dit is egter nie van toepassing op nie-lineêre klassifikasiefunksies wat in 'n enkellaagperseptron gebruik kan word nie.

Perceptron Rosenblatt
Perceptron Rosenblatt

Die gebruik van sulke funksies brei die vermoëns van die perseptron uit, insluitend die implementering van die XOR-funksie. Daar word dikwels (verkeerdelik) aanvaar dat hulle ook aangeneem het dat 'n soortgelyke resultaat vir 'n meerlaagperseptronnetwerk sal geld. Dit is egter nie die geval nie, aangesien beide Minsky en Papert reeds geweet het dat meerlaagperseptrone in staat was om 'n XOR-funksie te produseer. Drie jaar later het Steven Grossberg 'n reeks referate gepubliseer wat netwerke aanbied wat in staat is om differensiële funksies, kontrasverbeteringsfunksies en XOR-funksies te modelleer.

Werke is in 1972 en 1973 gepubliseer. Die Minsky/Papert-teks wat dikwels oor die hoof gesien word, het egter 'n beduidende afname in belangstelling en navorsingsbefondsing met die neurale netwerkperseptron veroorsaak. Nog tien jaar het verloop voordat neurale netwerknavorsing in die 1980's herleef het.

Kenmerke

Die Perceptron Kernel Algorithm is in 1964 deur Yzerman et al. Mori en Rostamizadeh (2013), wat vorige resultate uitbrei en nuwe perke L1 gee.

Perceptron is 'n vereenvoudigde model van 'n biologiese neuron. Terwyl die kompleksiteit van biologiese neurale modelle dikwels vereis word om neurale gedrag ten volle te verstaan, toon navorsing dat 'n perseptronagtige lineêre model sommige van die gedrag wat in regte neurone gesien word, kan veroorsaak.

Die Perceptron is 'n lineêre klassifiseerder, so dit sal nooit in 'n toestand kom met alle insetvektore korrek geklassifiseer as die opleidingstel D nie lineêr skeibaar is nie, m.a.w. as positiewe voorbeelde nie deur 'n hipervlak van negatiewe voorbeelde geskei kan word nie. In hierdie geval sal geen "benaderde" oplossing stap vir stap deur die standaard leeralgoritme nie, in plaas daarvan sal leer heeltemal misluk. As die liniêre skeibaarheid van die opleidingstel dus nie a priori bekend is nie, moet een van die opleidingsopsies hieronder gebruik word.

Perceptron Verhoudings
Perceptron Verhoudings

Pocket Algorithm

Die ratel-sakalgoritme los die perseptronleerrobuustheidsprobleem op deur die beste oplossing tot dusver gevind "in die sak" te hou. Die sakalgoritme gee dan die oplossing in die sak terug eerder as die laaste oplossing. Dit kan ook gebruik word vir nie-skeibare datastelle waar die doel is om 'n perseptron met min wanklassifikasies te vind. Hierdie oplossings lyk egter stogasties en dus pas die sakalgoritme nie by hulle nie.geleidelik deur die loop van opleiding, en dit word nie gewaarborg om oor 'n sekere aantal opleidingstappe opgespoor te word nie.

Maxover Algorithm

Maxover se algoritme is "robuust" in die sin dat dit sal konvergeer ongeag die kennis van die lineêre skeibaarheid van die datastel. In die geval van 'n lineêre verdeling sal dit die leerprobleem oplos, opsioneel selfs met optimale stabiliteit (maksimum marge tussen klasse). Vir nie-skeibare datastelle sal 'n oplossing met 'n klein aantal wanklassifikasies teruggestuur word. In alle gevalle benader die algoritme die oplossing geleidelik tydens die leerproses, sonder om vorige toestande te onthou en sonder willekeurige spronge. Konvergensie lê in globale optimaliteit vir gedeelde datastelle en plaaslike optimaliteit vir nie-skeibare datastelle.

perceptronvergelyking
perceptronvergelyking

Gestemde Perceptron

The Voted Perceptron-algoritme is 'n variant wat veelvuldige geweegde perseptrone gebruik. Die algoritme begin 'n nuwe perseptron elke keer as 'n voorbeeld verkeerd geklassifiseer word, en initialiseer die gewigsvektor met die finale gewigte van die laaste perseptron. Elke perseptron sal ook 'n ander gewig kry wat ooreenstem met hoeveel voorbeelde hulle korrek klassifiseer voordat hulle een verkeerd klassifiseer, en aan die einde sal die uitset 'n geweegde stem oor die hele perseptron wees.

Aansoek

In skeibare probleme kan perceptronopleiding ook daarop gemik wees om die grootste skeidingsgrens tussen klasse te vind. Sogenaamde'n Optimale stabiliteitsperceptron kan bepaal word deur iteratiewe opleiding en optimeringskemas soos die Min-Over of AdaTron-algoritme te gebruik. AdaTron benut die feit dat die ooreenstemmende kwadratiese optimaliseringsprobleem konveks is. Die optimale stabiliteitsperceptron, tesame met die kerntruuk, is die konseptuele basis van die ondersteuningsvektormasjien.

Meerlaagse perseptron
Meerlaagse perseptron

Alternatief

'n Ander manier om nie-lineêre probleme op te los sonder om veelvuldige lae te gebruik, is om hoërorde-netwerke (sigma-pi-blok) te gebruik. In hierdie tipe netwerk word elke element van die insetvektor uitgebrei deur elke paarsgewyse kombinasie van vermenigvuldigde insette (tweede orde). Dit kan uitgebrei word na 'n n-orde netwerk. Die Perceptron is 'n baie buigsame ding.

Onthou egter dat die beste klassifiseerder nie noodwendig die een is wat alle opleidingsdata akkuraat klassifiseer nie. Inderdaad, as ons die vorige beperking gehad het dat die data van gelyke-variante Gaussiese verdelings kom, is 'n lineêre verdeling in die invoerruimte optimaal, en 'n nie-lineêre oplossing word oorskryf.

Ander lineêre klassifikasie-algoritmes sluit Winnow, ondersteuningsvektor en logistiese regressie in. Perceptron is 'n universele stel algoritmes.

Russiese vertaling van die skema
Russiese vertaling van die skema

Hoofbestek vir leer onder toesig

Leer onder toesig is 'n masjienleertaak wat 'n funksie aanleer wat insette na uitset karteergebaseer op voorbeelde van I/O-pare. Hulle lei 'n kenmerk af uit gemerkte opleidingsdata wat uit 'n stel voorbeelde bestaan. In leer onder toesig is elke voorbeeld 'n paar wat bestaan uit 'n insetvoorwerp (gewoonlik 'n vektor) en 'n verlangde uitsetwaarde (ook genoem 'n beheersein).

Die leeralgoritme onder toesig ontleed die opleidingsdata en produseer 'n beraamde funksie wat gebruik kan word om nuwe voorbeelde te vertoon. Die optimale scenario sal die algoritme toelaat om klasetikette korrek te bepaal vir onsigbare gevalle. Dit vereis dat die leeralgoritme die leerdata op 'n "redelike" manier na onsigbare situasies veralgemeen.

Die parallelle taak in mens- en dierpsigologie word dikwels konseptuele leer genoem.

Aanbeveel: