Lisi o Mataupu[Natia][Fa'aali]
O metotia fa'aa'oa'oga loloto ua ta'ua o le "kalafa neural networks" (GNNs) o lo'o fa'agaoioia i le vaega o kalafi. O nei feso'ota'iga ua maua talu ai nei le fa'aoga i le tele o matā'upu, e aofia ai le va'aiga fa'akomepiuta, faiga fa'atonu, ma le fa'avasegaina tu'ufa'atasi, e ta'u mai ai ni nai mea.
E le gata i lea, o nei fesoʻotaʻiga e mafai ona faʻaaogaina e fai ma sui o faiga faʻalavelave, e aofia ai fesoʻotaʻiga lautele, fesoʻotaʻiga fesoʻotaʻiga protein-protein, kalafi malamalama, ma isi i le tele o matata o suʻesuʻega.
O le avanoa e le o le euclidean o loʻo faʻaogaina ai faʻamatalaga kalafi, e ese mai i isi ituaiga faʻamatalaga e pei o ata. Ina ia fa'avasegaina nodes, va'ai feso'ota'iga, ma fa'amaumauga tu'ufa'atasi, e fa'aogaina le fa'avasegaina o kalafi.
I lenei tusiga, o le a tatou suʻesuʻeina le Graph Network Neural i auiliiliga, ona ituaiga, faʻapea foʻi ma faʻataʻitaʻiga faʻaaoga e faʻaaoga ai le PyTorch.
O le a la le Graph?
O le kalafi o se ituaiga o fa'amaumauga o fa'amaumauga e faia i nodes ma vertex. O feso'ota'iga i va o nodes 'ese'ese e fa'amauina e ala i luga. Afai o le itu o loʻo faʻaalia i nodes, o le kalafi e fai mai e faʻatonu; a le o lea, e le fa'atonuina.
O se fa'aoga lelei o kalafi o le fa'ata'ita'iina lea o so'otaga o tagata eseese i le a fesootaiga faaagafesootai. Pe a feagai ma tulaga faigata, e pei o fesoʻotaʻiga ma fefaʻatauaiga, o kalafi e fesoasoani tele.
O lo'o fa'afaigaluegaina i latou e ala i faiga fa'atonu, su'esu'ega semantic, su'esu'ega feso'ota'iga fa'aagafesootai, ma le fa'ailoaina o mamanu
. O le fa'atupuina o fofo fa'atatau i kalafi ose matā'upu fou e ofoina mai ai se malamalamaga fa'apitoa o fa'amatalaga lavelave ma feso'ota'i.
Graph Neural Network
O feso'ota'iga neural kalafi o ituaiga feso'ota'iga neural fa'apitoa e mafai ona fa'agaioi i luga ole fa'asologa o fa'amaumauga o kalafi. O le fa'apipi'iina o kalafi ma feso'ota'iga neural convolutional (CNNs) e iai sona a'afiaga tele.
Graph Neural Networks o loʻo faʻaaogaina i galuega e aofia ai le vavalo o nodes, pito, ma kalafi.
- CNN's fa'aoga e fa'avasega ata. E fa'apena fo'i, e va'ai ai se vasega, e fa'aoga GNN i le fa'asologa o pika e fa'atusalia ai le fausaga o le kalafi.
- Fa'avasegaina o tusitusiga e fa'aaoga ai feso'ota'iga neural toe fo'i. O lo'o fa'aogaina fo'i GNN fa'atasi ma fa'ata'ita'iga o kalafi o lo'o iai upu ta'itasi i se fasifuaitau.
Ina ia mafai ona vaʻai pona, pito, poʻo kalafi atoa, e faʻaogaina neural networks e fatu ai GNNs. Mo se fa'ata'ita'iga, e mafai ona fo'ia se fa'afitauli e pei ole su'esu'eina ole spam.
O le va'aiga o feso'ota'iga o se fa'ata'ita'iga masani lea i faiga fa'atonu ma e ono avea ma fa'ata'ita'iga o se fa'afitauli va'aiga pito.
Kalafi Neural Network Ituaiga
Tele ituaiga feso'otaiga neural o lo'o iai, ma Convolutional Neural Networks o lo'o iai i le tele o latou. O le a tatou aʻoaʻoina e uiga i GNN sili ona lauiloa i lenei vaega.
Graph Convolutional Networks (GCNs)
E faʻatusatusa i latou i CNN masani. E maua uiga e ala i le tilotilo i nodes lata ane. O le fa'agaioiga galuega e fa'aaogaina e GNNs e fa'aopoopo ai le le laina laina pe a uma ona tu'ufa'atasia vectors node ma tu'uina atu le gaioiga i le mafiafia.
O lo'o faia i luga o le Graph convolution, se laina laina, ma se galuega fa'atosina e le o se tagata a'oa'o, i lona uiga. E lua ituaiga o GCN e maua: Spectral Convolutional Networks ma Spatial Convolutional Networks.
Kalafi Auto-Encoder Networks
E fa'aogaina se encoder e a'oa'o ai pe fa'apefea ona fa'atusa kalafi ma se decoder e taumafai e toe fau fa'aoga kalafi. O lo'o i ai se fa'ailoga fagu e feso'ota'i ai le encoder ma le decoder.
Talu ai o le auto-encoders e faia se galuega sili ona lelei i le taulimaina o paleni o vasega, e masani ona faʻaaogaina i le vaʻaiga o fesoʻotaʻiga.
Feso'ota'iga Neural Graph faifaipea (RGNNs)
I feso'ota'iga tele-feso'ota'iga, lea e tele feso'ota'iga a le node e tasi, e a'oa'oina ai le fa'asologa o fa'asalalauga sili ona lelei ma mafai ona fa'atautaia kalafi. Ina ia faʻateleina le faʻalelei ma faʻaititia le ova-parameterization, o loʻo faʻaaogaina masani i lenei ituaiga o kalafi neural network.
Ina ia maua ni fa'ai'uga lelei, e mana'omia e RGNN le fa'aitiitia o le malosi e fa'agaoio ai. E fa'aogaina mo le fa'atupuina o tusitusiga, fa'ailoa tautalaga, fa'aliliuga masini, fa'amatalaga ata, fa'ailoga ata, ma le aotelega o tusitusiga.
Gated Neural Graph Networks (GGNNs)
A oʻo mai i galuega faʻalagolago mo taimi umi, latou te sili atu i le RGNNs. E ala i le fa'aofiina o le pona, pito, ma faitoto'a fa'aletino i luga o fa'alagolago mo taimi umi, o feso'ota'iga neural kalafi puipui e fa'aleleia ai feso'ota'iga neural kalafi faifaipea.
O faitotoa e tutusa lelei ma Gated Recurrent Units (GRUs) ona o loʻo faʻaaogaina e manatua ma faʻagalo faʻamaumauga i laʻasaga eseese.
Faʻaaogaina o le Graph Neural Network e faʻaaoga ai le Pytorch
O le mataupu patino o le a tatou taulai i ai o se mataupu masani fa'avasegaina node. E iai la matou feso'ota'iga lautele e ta'ua musae-github, lea na tu'ufa'atasia mai le API tatala, mo GitHub developers.
O pito o loʻo faʻaalia ai le soʻotaga soosootauau i le va o nodes, o loʻo faʻatusalia ai le au atiaʻe (tagata faʻaoga faʻavae) o loʻo faʻailogaina i totonu o faleteuoloa a itiiti ifo ma le 10 (ia maitauina o le upu mutual e faʻaalia ai se sootaga le faʻaogaina).
Fa'atatau i le nofoaga o le node, fale fa'ailoga fetu, fale faigaluega, ma le tuatusi imeli, e toe maua mai uiga o le node. Va'ai pe afai o se tagata fa'aoga GitHub o se atina'e i luga ole laiga po'o se a'oa'oga masini o la tatou galuega.
O le igoa o galuega a tagata ta'ito'atasi sa avea ma fa'avae mo lenei galuega fa'atatau.
Fa'apipi'i le PyTorch
Ina ia amata, tatou te manaʻomia muamua ona faʻapipiʻi PyTorch. E mafai ona e faʻatulagaina e tusa ai ma lau masini mai iinei. O la'u lea:
Fa'aulufaleina o modules
I le taimi nei, matou te faʻaulufaleina mai modules manaʻomia
Fa'aulufaleina ma Su'esu'e fa'amaumauga
O le laasaga o loʻo mulimuli mai o le faitau lea o faʻamaumauga ma faʻapipiʻi laina muamua e lima ma laina mulimuli e lima mai le faila o igoa.
E na'o le lua o koluma e fa—o le node's id (ie, tagata fa'aoga) ma ml_target, o le 1 pe afai o le tagata fa'aoga o se sui o le masini a'oa'oga ma le 0 i se isi itu-e talafeagai ia i tatou i lenei tulaga.
Tuuina atu e na o le lua vasega, ua mafai nei ona tatou mautinoa o la tatou galuega o se mataupu faʻavasegaina.
O se fa'ai'uga o le tele o fa'aletonu o le vasega, e mafai e le fa'avasegaga ona fa'apea po'o fea le vasega e to'atele nai lo le iloiloina o le vasega e le'i fa'atusalia, ma fa'apaleni ai le vasega o se isi vaega taua e mafaufau i ai.
O le fa'avasegaina o le histogram (fa'asalalauga fa'atele) e fa'aalia ai le fa'aletonu ona e la'ititi vasega mai a'oa'oga masini (igoa=1) nai lo isi vasega.
Fa'ailoga Fa'ailoga
O uiga o nodes e ta'u mai ai ia i tatou le vaega e feso'ota'i ma node ta'itasi. E ala i le faʻatinoina o la matou metotia e faʻapipiʻi ai faʻamaumauga, e mafai ona matou faʻaogaina vave na uiga.
Matou te mananaʻo e faʻaoga lenei metotia e faʻapipiʻi ai se vaega itiiti o le fesoʻotaʻiga (fai mai, 60 nodes) mo le faʻaaliga. O lo'o lisiina iinei le code.
Fuafuaina ma fa'aali kalafi
O le a matou faʻaaogaina le suauʻu geometric. fa'amaumauga e fausia ai la tatou kalafi.
Ina ia faʻataʻitaʻiina se kalafi se tasi ma mea eseese (filifiliga), o faʻamatalaga o se mea faigofie Python e faʻaaogaina. E ala i le fa'aogaina o lenei vasega ma uiga nei—o mea uma ia o le fa'amalama sulu—o le a tatou faia ai la tatou mea faitino kalafa.
O le tulaga o le tau x, lea o le a tuʻuina atu i le faʻailoga faʻailoga, o le [numera o nodes, numera o foliga].
O le foliga o le y o le [numera o nodes], ma o le a faʻaoga i igoa o le node.
fa'ailoga pito: Ina ia fa'amatala se kalafi e le'i fa'atonuina, e mana'omia le fa'alauteleina o fa'ailoga pito muamua ina ia fa'ataga ai le i ai o ni pito ma'oti ma'oti e feso'ota'i tutusa pona e lua ae fa'asino i itu fa'afeagai.
O se pea o pito, tasi e faasino mai le node 100 i le 200 ma le isi mai le 200 i le 100, e manaʻomia, mo se faʻataʻitaʻiga, i le va o nodes 100 ma le 200. Afai e tuʻuina atu faʻailoga pito, o le auala lea e mafai ai ona faʻatusalia le kalafi le faʻatonuina. [2,2*numera o pito muamua] o le a avea ma foliga tensor.
Matou te fatuina la matou ata tusi kalafi e faʻaalia ai se kalafi. O le laasaga muamua o le suia lea o la tatou fesoʻotaʻiga tutusa i se kalafi NetworkX, ona mafai lea ona tusia e faʻaaoga ai le NetworkX.draw.
Fai le matou GNN faʻataʻitaʻiga ma aʻoaʻoina
Matou te amata i le faʻailogaina o le seti atoa o faʻamaumauga e ala i le faʻaogaina o faʻamatalaga faʻamaonia ma le malamalama = False ona valaʻau lea construct graph ma le malamalama = False e fausia ai le kalafi atoa. Matou te le taumafai e tusi lenei kalafi tele ona ou te manatu o loʻo e faʻaaogaina se masini faʻapitonuʻu e utiuti punaoa.
O matapulepule, o vete ta'ilua e iloa ai po'o fea pona e patino i matapulepule ta'itasi e fa'aaoga ai numera 0 ma le 1, e mafai ona fa'aoga e fa'ailoa ai le vaega o a'oa'oga po'o fea pona e tatau ona aofia i le taimi o toleniga ma ta'u atu ai le vaega fa'ailo po'o fea pona o fa'amaumauga o su'ega. Torch geometric.transforms.
E mafai ona fa'aopoopoina le vaeluaga o le node e fa'aoga ai le ufimata a'oa'oga, ufimata val, ma mea fa'ata'ita'i ufimata o le vasega AddTrainValTestMask, lea e mafai ona fa'aoga e ave ai se kalafi ma mafai ai ona fa'ailoa mai pe fa'apefea ona fau a tatou matapulepule.
Matou te faʻaaogaina le 10% mo aʻoaʻoga ma faʻaaoga le 60% o faʻamaumauga e fai ma seti suʻega aʻo faʻaaoga le 30% e avea ma seti faʻamaonia.
O lea la, o le a matou fa'aputuina ni laulau se lua GCNConv, o le mea muamua o lo'o i ai le numera o mea e maua mai ai e tutusa ma le numera o foliga i la matou kalafi e pei o mea fa'aoga.
I le vaega lona lua, o loʻo i ai nodes faʻapipiʻi tutusa ma le numera oa matou vasega, matou te faʻaaogaina se galuega faʻafouina relu ma tuʻuina atu mea lilo.
Fa'ailoga pito ma le mamafa o le pito e lua o le tele o filifiliga x e mafai e GCNConv ona talia i le galuega i luma, ae i lo tatou tulaga, tatou te manaʻomia na o suiga muamua e lua.
E ui lava i le mea moni o le a mafai e la tatou faʻataʻitaʻiga ona vaʻai le vasega o node uma i le kalafi, e manaʻomia pea ona tatou fuafuaina le saʻo ma le leiloa mo seti taʻitasi eseese e faʻatatau i le vaega.
Mo se faʻataʻitaʻiga, i le taimi o aʻoaʻoga, matou te manaʻo e faʻaoga le seti o aʻoaʻoga e fuafua ai le saʻo ma le leiloa o aʻoaʻoga, ma o le mea lea e aoga ai a matou matapulepule.
Ina ia faʻatatau le gau ma le saʻo talafeagai, o le a matou faʻamalamalamaina galuega o le leiloa matapulepule ma le saʻo matapulepule.
Aoaoina o le faataitaiga
O lea la ua uma ona matou faʻamalamalamaina le faʻamoemoega o aʻoaʻoga e faʻaaogaina ai le sulu. O Atamu o se matai optimizer.
O le a matou faʻatautaia le aʻoaʻoga mo se numera o taimi aʻo mataʻituina le faʻamaonia saʻo.
Matou te taupulepule foi le gau ma le sa'o o le toleniga i vaitau eseese.
Le lelei ole Graph Neural Network
O le fa'aaogaina o GNN e iai ni nai fa'aletonu. O afea e fa'afaigaluega ai le GNNa ma pe fa'afefea ona fa'aleleia le fa'atinoga o a tatou masini a'oa'oga fa'ata'ita'iga o le a fa'amanino uma ia i tatou pe a uma ona tatou malamalama atili i ai.
- E ui o GNNs o fesoʻotaʻiga papaʻu, e masani lava e tolu laulau, o le tele o fesoʻotaʻiga neura e mafai ona loloto e faʻaleleia le faʻatinoga. E le mafai ona matou faʻatinoina i le pito pito i luga o faʻamaumauga tetele ona o lenei tapulaʻa.
- E sili atu ona faigata le aʻoaʻoina o se faʻataʻitaʻiga i luga o kalafi, talu ai o latou faʻatulagaga faʻatulagaina e malosi.
- Ona o le maualuga o tau fa'akomepiuta o nei feso'ota'iga, o le fuaina o le fa'ata'ita'iga mo le gaosiga o lo'o iai ni lu'itau. O le fa'avasegaina o GNNs mo le gaosiga o le a lu'itau pe a fai e tele ma lavelave lau fa'atulagaga kalafi.
iʻuga
I nai tausaga ua tuana'i, ua fa'atupuina GNNs e avea ma meafaigaluega mamana ma aoga mo fa'afitauli a'oa'oga masini i totonu o le kalafi. O lo'o tu'uina atu i lenei tusiga se fa'amatalaga autu o feso'ota'iga neural kalafi.
A maeʻa lena, e mafai ona e amata fatuina le faʻamaumauga o le a faʻaaogaina e toleni ma suʻe ai le faʻataʻitaʻiga. Ina ia malamalama pe faʻapefea ona galue ma pe o le a le mea e mafai ai, e mafai foi ona e alu mamao atu ma aʻoaʻoina e faʻaaoga ai se isi ituaiga faʻamaumauga.
Fiafia Coding!
Tuua se tali