No tästä päästään jälleen siihen tiedon esitystapaan. ChatGPT, transformerit ja periaatteessa mitkä tahansa neuroverkot, hyvin karkealla tasolla ilmaistuna, kykenevät tekemään päätelmiä samanmuotoisesta datasta, koska syötteen esitystapa on aina sama. Jos ajatellaan vaikkapa ihan ääriyksinkertaistettua esimerkkiä, niin alta löytyvän kuvan vasemmalta puolelta syötetään verkkoon sana, joka on jossain toisessa prosessissa muunnettu kaksialkioiseksi vektoriksi (vihreät pallot). Ja sitten oikealta puolelta (keltainen pallo) tulee ulos jotakin järkevää tietoa (luku) siitä annetusta syötteestä.
Tällainen neuroverkko kykenee käsittelemään samanlaista tietoa (teksti-teksti), koska se tiedon formaatti on jokaisella syötteellä sama.
Mutta mitä sitten tehdään, jos halutaankin käsitellä multimodaalista tietoa eli kuvaa, ääntä jne. samaan aikaan? Lisätäänkö syötekerroksen kokoa, enemmän vihreitä palloja? Jossain vaiheessa siitä tulee ongelma, koska todelliset sanojen (tai tokeneiden kuten
@Umbra esimerkissä) ovat satojen alkioiden kokoisia. Eli verkon koko kasvaa aivan järkyttävästi. Vai pidetäänkö vektoreiden koko suunnilleen samana, mutta jotenkin enkoodataan tekstuaalinen ja visuaalinen data yhteen? Silloin pitäisi tietää, mikä sellainen enkoodaus on. Ja entäpä sitten, kun tarvitaan mukaan vaikka ääntäkin?
Vai pidetäänkö vektoreiden koko samana ja syötetään verkkoon vain peräkkäin tekstuaalisia vektoreita, visuaalisia vektoreita jne? Silloin oikeastaan vain siirretään se ongelma jonnekin muualle, sillä tässä tapauksessa niiden erimuotoisten informaatiotapojen pitää olla riittävän yhtäpitäviä, jotta siitä koko datasta ei tule vain pelkkää kohinaa, josta verkko ei pysty oppimaan mitään.
Toki voidaan sitten myös sanoa, että käytetään erilaisia verkkoja eri datalle. Sitten meillä on kuitenkin useita keltaisia palloja, joten pitää tietää, miten niitä yhdistellään, jotta saadaan ulos haluttua tietoa. Tarvitaan siis jonkinlaista laajennettua arkkitehtuuria. Mikä se olisi?
Kuten sanottu, tämä on aivan äärimmäisen yksinkertaistettu esimerkki ihan vain perusneuroverkon toiminnasta, saati sitten vaikka jostakin ChatGPT:n rakenteesta. Mutta sitä haen tässä takaa, että tästä syystä ChatGPT:n kaltainen kielimallin laajentaminen muihin datamuotoihin ei ole mikään ihan yksinkertainen asia. Esimerkiksi jos ajatellaan kuvaa ja tekstiä, niin tekstissä sen sanan sijainti on periaatteessa yksiulotteinen asia ja kuvassa esineen sijainti ainakin kaksiulotteinen asia. Sen vuoksi asiassa on paljon huomioon otettavia tekijöitä, jotka ainakaan itselleni eivät ole selviä.