mitä ovat convolutionary neural networks (CNN)?

0 Comments
Kuva luotto:

Tämä artikkeli on osa Edesauttaneen AI, useita virkoja, joka (yrittää) disambiguate ammattikieltä ja myyttejä ympäröivän AI.

1950-luvulta Lähtien alkuaikoina tekoäly, tietokone tutkijat ovat yrittäneet rakentaa tietokoneita, jotka voivat tehdä tunne visuaalinen tiedot., Seuraavina vuosikymmeninä tietokonenäköksi tullut kenttä näki asteittaisia edistysaskeleita. Vuonna 2012, konenäkö otti aimo harppauksen, kun ryhmä tutkijat University of Toronto kehittänyt AI-malli, joka ylitti parhaan kuvan tunnustamista algoritmit suuri marginaali.

AI järjestelmä, joka tuli tunnetuksi AlexNet (nimetty sen tärkein luoja, Alex Krizhevsky), voitti 2012 ImageNet computer vision contest, jossa hämmästyttävä 85 prosentin tarkkuudella. Toiseksi tullut sai testissä vaatimattomat 74 prosenttia.,

ytimessä AlexNet oli konvoluutio neuroverkko (CNN), erikoistunut tyyppi keinotekoinen neuroverkko, että noin jäljittelee ihmisen visio järjestelmä. Viime vuosina, CNNs on tullut keskeinen monia konenäkö sovelluksia. Tässä on mitä sinun täytyy tietää historiasta ja toiminnasta CNS.

lyhyt historia convolutional neuroverkkojen

Convolutional neural networks, jota kutsutaan myös ConvNets, otettiin ensimmäisen kerran käyttöön 1980-luvulla Yann LeCun, tutkijatohtori tietotekniikan tutkija., LeCun oli rakennettu työn Kunihiko Fukushima, Japanilainen tiedemies, joka muutamaa vuotta aiemmin oli keksinyt neocognitron, hyvin perus kuvan tunnustamista neuroverkko.

CNNs: n varhainen versio, nimeltään LeNet (lecunin jälkeen), saattoi tunnistaa käsin kirjoitetut numerot. CNNs löysi pankki-ja postipalvelujen sekä pankkitoiminnan markkinaraon, jossa se luki postinumeroita kirjekuorissa ja numeroita tarkastuksissa.

Mutta huolimatta heidän kekseliäisyytensä, ConvNets pysyi sivussa konenäön ja tekoälyn, koska ne edessään vakava ongelma: He eivät voineet mittakaavassa., CNNs tarvitsi paljon dataa ja laskuresursseja toimiakseen tehokkaasti suurten kuvien hyväksi. Tuolloin tekniikkaa sovellettiin vain vähillä resoluutioilla varustettuihin kuviin.

Vuonna 2012, AlexNet osoitti, että ehkä oli tullut aika palata syvä oppiminen, haara TEKOÄLY, joka käyttää multi-layered neuroverkkojen. Saatavuus suurten tietomäärien, eli ImageNet aineisto miljoonia merkitty kuvia, ja laaja laskea resurssien käytössä tutkijat luoda monimutkaisia CNNs, että voisi suorittaa konenäkö tehtäviä, jotka olivat aiemmin mahdottomia.

miten CNS vaikuttaa?,

Konvolutionaaliset hermoverkot koostuvat useista keinotekoisten neuronien kerroksista. Keinotekoisten neuronien, karkea jäljitelmä heidän biologinen kollegansa, ovat matemaattisia funktioita, joilla lasketaan painotettu summa useita tulot ja lähdöt aktivointi-arvo.

rakenne keinotekoinen neuroni, perusosa keinotekoiset neuroverkot (lähde: Wikipedia)

käyttäytyminen kunkin neuroni on määritelty sen painot., Pikseliarvoilla ruokittuina CNN: n keinotekoiset neuronit poimivat esiin erilaisia visuaalisia ominaisuuksia.

Kun syötät kuva ConvNet, jokainen sen kerrokset tuottaa useita aktivointi karttoja. Aktivointikartat korostavat kuvan olennaisia ominaisuuksia. Jokainen neuronien vie patch pikseliä syötteenä, kertoo niiden väriarvot sen painot, määrät niitä, ja käy ne läpi aktivointi toiminto.

CNN: n ensimmäinen (tai Pohja) Kerros havaitsee yleensä perusominaisuudet, kuten vaaka -, pysty-ja lävistäjäreunat., Ensimmäisen kerroksen ulostulo syötetään seuraavan kerroksen syötteenä, joka poimii monimutkaisempia ominaisuuksia, kuten kulmia ja reunojen yhdistelmiä. Kun siirrytte syvemmälle konvoluutio neuroverkko, kerrosten alkaa havaita korkeamman tason ominaisuuksia, kuten esineitä, kasvot, ja enemmän.

Jokaisen kerroksen neuroverkko on poimia erityisiä ominaisuuksia input kuva.,

toimintaan kertomalla pikselin arvoja painoilla ja summaamalla ne on nimeltään ”konvoluutio” (siitä nimi konvoluutio neuroverkko). CNN koostuu yleensä useista konvoluutiokerroksista, mutta se sisältää myös muita komponentteja. Lopullinen kerros CNN on luokittelu kerros, joka vie tuotoksen lopullinen konvoluutio kerros syötteenä (muista, korkeampi konvoluutio kerrokset tunnistaa monimutkaisia objekteja).,

Perustuu aktivointi-kartta lopullinen konvoluutio kerros, luokittelu kerros lähdöt joukko luottamusta tulokset (arvot välillä 0 ja 1), joka määrittää, kuinka todennäköisesti kuva on kuulua ”luokka.”Esimerkiksi, jos sinulla on ConvNet, joka havaitsee kissat, koirat ja hevoset, lähtö lopullinen kerros on mahdollista, että input kuva sisältää kaikki ne eläimet.,

pintakerros CNN määrittää luokan kuvan perusteella ominaisuudet uuttaa konvoluutio-tasot(lähde: http://www.deeplearningbook.org)

Koulutuksen konvoluutio neuroverkko

Yksi suurista haasteista on kehittää CNNs on säätää painot yksittäisten neuronien poimia oikeat ominaisuudet kuvia. Näiden painojen säätöprosessia kutsutaan” harjoitteluksi ” hermoverkostoksi.

alussa CNN aloittaa satunnaisilla painoilla., Koulutuksen aikana, kehittäjät tarjoavat neuroverkko, jossa on suuri aineisto kuvia selityksineen niiden vastaavat luokat (kissa, koira, hevonen, jne.). ConvNet käsittelee jokaisen kuvan satunnaisarvoillaan ja vertaa sen ulostuloa kuvan oikeaan etikettiin. Jos verkko on tuotos ei vastaa tarra—joka on todennäköisesti tapauksessa, alussa koulutus prosessi—se tekee pieni säätö painot sen neuronien niin, että seuraavan kerran, kun se näkee saman kuvan, sen tuotanto on hieman lähempänä oikeaa vastausta.,

korjaukset tehdään backpropagation (tai backprop) – nimisellä tekniikalla. Pohjimmiltaan, backpropagation optimoi viritys ja helpottaa verkon päättää, mitkä yksiköt säädä sen sijaan, että satunnainen korjauksia.

koko harjoitusdatan jokaista juoksua kutsutaan ”epookiksi.”ConvNet käy läpi useita aikakausia harjoittelun aikana ja säätää painojaan pieninä määrinä. Jokaisen aikakauden jälkeen hermoverkko alkaa hieman paremmin luokitella harjoituskuvia., CNN: n parantuessa sen tekemät säädöt painoihin pienenevät ja pienenevät. Jossain vaiheessa verkko ”lähentyy”, mikä tarkoittaa, että siitä tulee pohjimmiltaan niin hyvä kuin se voi.

CNN: n koulutuksen jälkeen kehittäjät käyttävät testitietokantaa varmistaakseen sen tarkkuuden. Testitietokanta on joukko merkittyjä kuvia, jotka eivät kuulu harjoitusprosessiin. Jokainen kuva ajetaan Convnetin läpi, ja tulostetta verrataan kuvan varsinaiseen etikettiin. Pohjimmiltaan testidata arvioi, kuinka hyväksi hermoverkko on tullut luokiteltaessa kuvia, joita se ei ole aiemmin nähnyt.,

Jos CNN: n harjoitustiedoista saa hyvän arvosanan, mutta testitietojen perusteella pisteet ovat huonot, sen sanotaan olleen ”ylimitoitettu.”Tämä tapahtuu yleensä silloin, kun harjoitustiedoissa ei ole tarpeeksi vaihtelua tai kun ConvNet käy läpi liian monta aikakautta koulutustietokannassa.

konvolutionaalisten neuroverkkojen menestys johtuu pitkälti viime vuosikymmenellä kehitettyjen valtavien kuvatietojen saatavuudesta. ImageNet, kilpailu mainittiin alussa tämän artikkelin, on sen otsikko on kaima aineisto, jossa on yli 14 miljoonaa leimattu kuvia., On olemassa muita erikoistuneita aineistot, kuten MNIST, tietokanta 70000 kuvia käsinkirjoitettuja numeroita.

sinun ei kuitenkaan tarvitse kouluttaa jokaista konvolusoitua hermoverkkoa miljoonilla kuvilla. Monissa tapauksissa, voit käyttää pretrained malli, kuten AlexNet tai Microsoftin ResNet, ja hienosäätää sitä vielä enemmän erikoistuneita sovellus. Tätä prosessia kutsutaan transfer learningiksi, jossa koulutettu neuroverkko uudelleenkoulutetaan pienempi joukko uusia esimerkkejä.,

rajat convolutional neuroverkkojen

Vaikka niiden voima ja monimutkaisuus, konvoluutio-neuroverkot ovat, pohjimmiltaan, hahmontunnistus koneita. Ne voivat hyödyntää massiivisia laskuresursseja, jotta ne voivat hillitä pieniä ja huomaamattomia visuaalisia kuvioita, jotka saattavat jäädä huomaamatta ihmissilmältä. Mutta kun on kyse kuvien sisällön merkityksen ymmärtämisestä, ne toimivat huonosti.

harkitse seuraavaa kuvaa. Hyvin koulutettu Konvetti kertoo, että se on kuva sotilaasta, lapsesta ja Amerikan Lipusta., Mutta ihminen voi antaa pitkä kuvaus, kohtaus, ja puhua siitä, asevelvollisuus, matkat vieraassa maassa, tunne kaipuu kotiin, iloa yhdistämistä perheen kanssa, jne. Keinotekoisilla hermoverkoilla ei ole käsitystä näistä käsitteistä.

Kuva luotto:

Nämä rajat tulee selvemmäksi käytännön sovelluksia convolutional neuroverkkojen. Esimerkiksi CNS: ää käytetään nykyään laajasti sisällön kohtuullistamiseen sosiaalisen median verkoissa., Mutta huolimatta valtavista kuva-ja videovarastoista, joihin heidät on koulutettu, he kamppailevat yhä epäasiallisen sisällön havaitsemiseksi ja estämiseksi. Eräässä tapauksessa Facebookin content-moderation-tekoäly kielsi Facebookilta kuvan 30 000 vuotta vanhasta patsaasta alastomuutena.

myös hermoverkot alkavat hajota heti, kun ne liikkuvat hieman pois kontekstistaan. Useat tutkimukset ovat osoittaneet, että CNNs koulutettu ImageNet ja muita suosittuja aineistot eivät tunnista esineitä, kun he näkevät ne eri valaistusolosuhteissa ja uusista näkökulmista.,

MIT-IBM Watson AI Labin tutkijoiden tuore tutkimus korostaa näitä puutteita. Siinä esitellään myös ObjectNet, aineisto, joka edustaa paremmin eri vivahteita siitä, miten esineet nähdään tosielämässä. CNS ei kehitä niitä henkisiä malleja, joita ihmisillä on eri esineistä ja niiden kyvystä kuvitella näitä esineitä aiemmin näkymättömissä yhteyksissä.

ImageNet vs todellisuus: Vuonna ImageNet (vasen sarake) esineet ovat siististi sijoitettu, ihanteellinen tausta ja valaistus., Todellisessa maailmassa, asiat ovat messier (lähde: objectnet.dev)

Toinen ongelma convolutional neuroverkkojen on niiden kyvyttömyys ymmärtää suhteita eri esineitä. Tarkastellaan seuraavaa kuvaa, joka tunnetaan ”Bongard ongelma”, joka on nimetty sen keksijä, venäjän tietojenkäsittelytieteessä Mikhail Moiseevich Bongard. Bongard ongelmat esitellä teille kaksi sarjaa kuvia (kuusi vasemmalla ja kuusi oikealla), ja sinun täytyy selittää, että keskeinen ero välillä kaksi., Esimerkiksi alla olevassa esimerkissä vasemman joukon kuvissa on yksi objekti ja oikean joukon kuvissa kaksi objektia.

ihmisten on helppo tehdä tällaisia johtopäätöksiä näin pienistä määristä näytteitä. Jos näytän nämä kaksi sarjaa ja sitten antaa sinulle uuden kuvan, voit nopeasti päättää, onko se pitäisi mennä vasemmalle tai oikealle aseta.

Bongard ongelmat ovat helppo ihmisille ratkaista, mutta vaikea konenäkö-järjestelmissä., (Lähde: Harry Foundalis)

Mutta siellä on vielä ole konvoluutio neuroverkko, joka voi ratkaista Bongard ongelmat niin vähän koulutusta esimerkkejä. Eräässä vuonna 2016 tehdyssä tutkimuksessa tekoälytutkijat kouluttivat CNN: lle 20 000 Bongardinäytettä ja testasivat sitä 10 000 lisää. CNN: n suoritus oli huomattavasti keskivertoihmisiä heikompi.

erityispiirteet ConvNets myös tehdä niistä alttiita kontradiktorisen hyökkäyksiä, häiriöiden lähtötiedot, jotka menevät huomaamatta, että ihmisen silmä, mutta vaikuttaa käyttäytymiseen neuroverkkojen., Kontradiktorisen hyökkäyksiä on tullut merkittävä huolenaihe, koska syvä oppiminen ja erityisesti CNNs on tullut olennainen osa monia kriittisiä sovelluksia, kuten itsestään ajavat autot.

Kontradiktorisen esimerkiksi: Lisäämällä huomaamaton kerros melun tämä panda kuva aiheuttaa konvoluutio neuroverkko on väärä gibbon.

Tarkoittaako tämä, että CNNs ovat hyödyttömiä?, Vaikka rajat convolutional neuroverkot, kuitenkin, ei ole kiistatonta, että ne ovat aiheuttaneet vallankumouksen tekoäly. Tänään, CNNs käytetään monissa konenäkö sovelluksia, kuten kasvojen tunnistus, kuvan haku ja muokkaus, lisätyn todellisuuden, ja enemmän. Joillakin aloilla, kuten lääketieteellisessä kuvankäsittelyssä, hyvin koulutetut Konvnetit saattavat jopa päihittää ihmisasiantuntijat relevanttien kuvioiden havaitsemisessa.,

Kuten kehitys convolutional neuroverkkojen ssa, meidän saavutukset ovat merkittäviä ja hyödyllisiä, mutta olemme vielä hyvin kaukana jäljittelevän keskeinen osa ihmisen älykkyyttä.


Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *