Mitä ovat kuvaajan hermoverkot (GNN)?

Lähdesolmu: 1147987

Kaaviot ovat kaikkialla ympärillämme. Sosiaalinen verkostosi on kaavio ihmisistä ja suhteista. Samoin perheesi. Tiet, joita kuljet päästäksesi pisteestä A pisteeseen B, muodostavat kaavion. Linkit, jotka yhdistävät tämän verkkosivun muihin, muodostavat kaavion. Kun työnantajasi maksaa sinulle, maksusi kulkee rahoituslaitosten kaavion läpi.

Periaatteessa kaikki, mikä koostuu linkitetyistä kokonaisuuksista, voidaan esittää kaaviona. Kaaviot ovat erinomaisia ​​työkaluja ihmisten, esineiden ja käsitteiden välisten suhteiden visualisointiin. Tietojen visualisoinnin lisäksi kaaviot voivat kuitenkin olla myös hyviä tietolähteitä koneoppimismallien kouluttamiseen monimutkaisiin tehtäviin.

Graph-hermoverkot (GNN) ovat eräänlainen koneoppimisalgoritmi, joka voi poimia tärkeitä tietoja kaavioista ja tehdä hyödyllisiä ennusteita. Kun graafit yleistyvät ja rikastuvat tiedolla, ja keinotekoisista hermoverkoista tulee suositumpi ja kykenevämpi, GNN:istä on tullut tehokas työkalu moniin tärkeisiin sovelluksiin.

Graafeiden muuntaminen hermoverkkojen käsittelyyn

Kuva toisiinsa yhdistetyistä solmuista marmoritaustaa vasten.

Jokainen graafi koostuu solmuista ja reunoista. Esimerkiksi sosiaalisessa verkostossa solmut voivat edustaa käyttäjiä ja heidän ominaisuuksiaan (esim. nimi, sukupuoli, ikä, kaupunki), kun taas reunat voivat edustaa käyttäjien välisiä suhteita. Monimutkaisempi sosiaalinen graafi voi sisältää muun tyyppisiä solmuja, kuten kaupunkeja, urheilujoukkueita, uutispisteitä sekä reunoja, jotka kuvaavat käyttäjien ja näiden solmujen välisiä suhteita.

Valitettavasti graafirakenne ei sovellu hyvin koneoppimiseen. Neuraaliset verkot odottaa saavansa tietonsa yhtenäisessä muodossa. Monikerroksiset perceptronit odottavat kiinteän määrän syöttöominaisuuksia. Konvoluutiohermoverkot odottavat ruudukkoa, joka edustaa niiden käsittelemän tiedon eri ulottuvuuksia (esim. kuvien leveys, korkeus ja värikanavat).

Graafit voivat olla eri rakenteisia ja erikokoisia, mikä ei vastaa hermoverkkojen odottamia suorakaiteen muotoisia taulukoita. Kaavioilla on myös muita ominaisuuksia, jotka tekevät niistä erilaisia ​​kuin perinteiset hermoverkot on suunniteltu. Esimerkiksi graafit ovat "permutaatioinvariantteja", mikä tarkoittaa, että solmujen järjestyksen ja sijainnin muuttamisella ei ole merkitystä niin kauan kuin niiden suhteet pysyvät samoina. Sitä vastoin pikselien järjestyksen muuttaminen johtaa erilaiseen kuvaan ja saa niitä käsittelevän hermoverkon käyttäytymään eri tavalla.

Jotta graafit olisivat hyödyllisiä syväoppimisalgoritmeille, niiden tiedot on muutettava muotoon, jota hermoverkko pystyy käsittelemään. Kuvaajan tietojen esittämiseen käytetty muotoilu voi vaihdella graafin tyypistä ja aiotusta sovelluksesta riippuen, mutta yleensä tärkeintä on esittää tiedot matriiseina.

Kuvasarja rakeista, hiekanväristä taustaa vasten. Ensimmäinen on joukko ihmisten profiileja, jotka on yhdistetty solmuilla. Seuraavassa on kaksi kaaviota, joissa on joukko ihmisten etunimiä ja peruselämäntietoja.

Harkitse esimerkiksi sosiaalisen verkoston kaaviota. Solmut voidaan esittää käyttäjän ominaisuuksien taulukkona. Solmutaulukko, jossa jokainen rivi sisältää tietoja yhdestä entiteetistä (esim. käyttäjä, asiakas, pankkitapahtuma), on sen tyyppinen tieto, jonka antaisit normaalille hermoverkolle.

Mutta kuvaaja hermoverkot voi myös oppia muista kaavion sisältämistä tiedoista. Reunat, solmuja yhdistävät viivat, voidaan esittää samalla tavalla siten, että jokaisella rivillä on käyttäjien tunnukset ja lisätiedot, kuten ystävyyspäivä, suhteen tyyppi jne. Lopuksi graafin yleinen liitettävyys voidaan esittää vierekkäisyysmatriisina, joka näyttää mitkä solmut ovat yhteydessä toisiinsa.

Kun kaikki nämä tiedot toimitetaan hermoverkkoon, se voi poimia kuvioita ja oivalluksia, jotka menevät pidemmälle kuin graafin yksittäisten komponenttien sisältämä yksinkertainen tieto.

Graafisten upotukset

Kolme kuvaa vasten sinistä marmorista taustaa. Ensimmäinen: sarja kaavioita, joissa on käyttäjien nimiä ja henkilökohtaisia ​​tietoja. Toinen kuva: pylväsdiagrammi nimeltä "Graph Embedding". Kolmas kuva: laskentataulukko, jossa on käyttäjiä ja numeroita nimeltä "Kaavion upotukset".

Graafin hermoverkkoja voidaan luoda kuten mitä tahansa muuta hermoverkkoa käyttämällä täysin yhdistettyjä kerroksia, konvoluutiokerroksia, yhdistäviä kerroksia jne. Kerrosten tyyppi ja lukumäärä riippuvat graafidatan tyypistä ja monimutkaisuudesta sekä halutusta lähdöstä.

GNN vastaanottaa muotoillun graafidatan syötteenä ja tuottaa vektorin numeerisista arvoista, jotka edustavat oleellista tietoa solmuista ja niiden suhteista.

Tätä vektoriesitystä kutsutaan "kaavion upottamiseksi". Koneoppimisessa käytetään usein upotuksia monimutkaisen tiedon muuntamiseksi rakenteeksi, joka voidaan erottaa ja oppia. Esimerkiksi luonnollisen kielen käsittelyjärjestelmät käyttävät sanan upotuksia luodakseen numeerisia esityksiä sanoista ja niiden suhteista yhdessä.

Kuinka GNN luo kaavion upotuksen? Kun graafidata välitetään GNN:lle, kunkin solmun ominaisuudet yhdistetään sen viereisten solmujen ominaisuuksiin. Tätä kutsutaan "viestin välittämiseksi". Jos GNN koostuu useammasta kuin yhdestä kerroksesta, seuraavat kerrokset toistavat viestin välitystoiminnon, keräävät dataa naapureiden naapureista ja yhdistävät ne edellisestä kerroksesta saatuihin arvoihin. Esimerkiksi sosiaalisessa verkostossa GNN:n ensimmäinen kerros yhdistäisi käyttäjän tiedot ystäviensä tietoihin ja seuraava kerros lisäisi tietoja ystävien ystäviltä ja niin edelleen. Lopuksi GNN:n lähtökerros tuottaa upotuksen, joka on vektoriesitys solmun datasta ja sen tiedosta graafin muista solmuista.

Mielenkiintoista on, että tämä prosessi on hyvin samanlainen kuin kuinka konvoluutiohermoverkot poimivat ominaisuuksia pikselitiedoista. Näin ollen eräs erittäin suosittu GNN-arkkitehtuuri on graafikonvoluutiohermoverkko (GCN), joka käyttää konvoluutiokerroksia graafin upotusten luomiseen.

Graafisten neuroverkkojen sovellukset

Kuva kolmesta erillisestä neuroverkosta harmaata taustaa vasten.

Kun sinulla on hermoverkko, joka voi oppia graafin upotukset, voit käyttää sitä eri tehtävien suorittamiseen.

Tässä on muutamia sovelluksia graafisen neuroverkoille:

Solmujen luokittelu: Yksi GNN:ien tehokkaista sovelluksista on uuden tiedon lisääminen solmuihin tai aukkojen täyttäminen, jos tietoa puuttuu. Oletetaan esimerkiksi, että käytät sosiaalista verkostoa ja olet havainnut muutaman bot-tilin. Nyt haluat selvittää, onko verkossasi muita bot-tilejä. Voit kouluttaa GNN:n luokittelemaan muut sosiaalisen verkoston käyttäjät "botiksi" tai "ei botiksi" sen perusteella, kuinka lähellä heidän kaavioiden upotukset ovat tunnettujen robottien vastaavia.

Reunojen ennustus: Toinen tapa ottaa GNN:t käyttöön on löytää uusia reunoja, jotka voivat lisätä arvoa kuvaajaan. Palatakseni sosiaaliseen verkostoomme, GNN voi löytää käyttäjiä (solmuja), jotka ovat lähelläsi upotusavaruudessa, mutta jotka eivät ole vielä ystäviäsi (eli ei ole reunaa, joka yhdistäisi teitä toisiinsa). Nämä käyttäjät voidaan sitten esitellä sinulle ystäväehdotuksina.

Klusterit: GNN:t voivat poimia uutta rakennetietoa kaavioista. Esimerkiksi sosiaalisessa verkostossa, jossa jokainen on tavalla tai toisella sukua muille (ystävien tai ystävien ystävien kautta jne.), GNN voi löytää solmuja, jotka muodostavat klustereita upotustilassa. Nämä klusterit voivat osoittaa käyttäjäryhmiä, joilla on samanlaiset kiinnostuksen kohteet, toiminnot tai muut huomaamattomat ominaisuudet riippumatta siitä, kuinka läheiset heidän suhteensa ovat. Klusterointi on yksi koneoppimiseen perustuvan markkinoinnin tärkeimmistä työkaluista.

Graafiset neuroverkot ovat erittäin tehokkaita työkaluja. He ovat jo löytäneet tehokkaita sovelluksia sellaisilla aloilla kuin reittisuunnittelu, petosten havaitseminen, verkon optimointi ja lääketutkimus. GNN:t voivat auttaa saamaan suurimman arvon olemassa olevasta tiedosta missä tahansa toisiinsa liittyvien entiteettien kaaviossa.

Ben Dickson on ohjelmistoinsinööri ja TechTalksin perustaja. Hän kirjoittaa tekniikasta, liiketoiminnasta ja politiikasta.

Tämä tarina alunperin ilmestyi Bdtechtalks.com. Tekijänoikeus 2021

VentureBeat

VentureBeatin tehtävänä on olla digitaalinen kaupungin aukio teknisille päätöksentekijöille saadakseen tietoa muuttuvasta tekniikasta ja kaupoista. Sivustomme tarjoaa olennaisia ​​tietoja tietotekniikoista ja strategioista, jotka ohjaavat sinua organisaatiosi johdossa. Kutsumme sinut tulemaan yhteisömme jäseneksi ja tutustumaan:

  • ajantasaista tietoa sinua kiinnostavista aiheista
  • uutiskirjeemme
  • aidattu ajattelijan sisältö ja alennettu pääsy arvostettuihin tapahtumiin, kuten Muuta 2021: Lisätietoja
  • verkko-ominaisuudet ja paljon muuta

Tule jäseneksi

Lähde: https://venturebeat.com/2021/10/13/what-are-graph-neural-networks-gnn/

Aikaleima:

Lisää aiheesta AI - VentureBeat