Palaan vielä mun viestin OpenAI postaukseen (
https://openai.com/research/generative-models), jonka alussa esitetään sen aihe seuraavasti:
OpenAI kirjoitti:This post describes four projects that share a common theme of enhancing or using generative models, a branch of unsupervised learning techniques in machine learning. In addition to describing our work, this post will tell you a bit more about generative models: what they are, why they are important, and where they might be going.
Noista yksi oli erityisen kiinnostava koskien
kehityksen eturintaman uutta menetelmää:
Generative Adversarial Network (GAN) (mun suomennos: Uutta sisältöä luova vastakkainasettelu-verkko).
Generative Adversarial Network (GAN)
(Mun selittämänä yo. linkin perusteella:)
Siinä on kaksi verkkoa, joista ensimmäinen ("
luoja-verkko", generator network) luo kuvan (esimerkiksi sille annetun lukujonon perusteella). Toinen verkko ("
luokittelija-verkko", discriminator network) luokittelee luodun kuvan joko "humpuukiksi, siis tekoälyn generoimaksi" tai "todelliseksi kuvaksi" ja tulos annetaan luoja-verkolle, joka muuttaa parametrejaan takaisinvirtaus-algoritmillaan (backpropagate). Kierros alkaa alusta: uusi kuva ja sen arviointi, kunnes luokittelija-verkko ei pysty näkemään kuvissa humpuukia.
Edellisen lisäksi myös luokittelija-verkko käyttää takaisinvirtaus-algoritmiaan, ja oppii paremmaksi luokittelijaksi.
Siis
luoja-verkko yrittää muuttaa parametrejään saadakseen
luokittelija-verkon hämilleen, joka puolestaan muuttaa parametrejään ollakseen tarkempi.
Esimerkiksi GAN koe
- Luoja-verkolle opetetaan 200 kuvapankin kuvaa, joista se oppii piirteet, jotka noilla 200 kuvalla on (ei siis opi kuvien palasia, saati itse kuvia). Oppimiaan painoarvoja, biaseja sekä muita parametrejä käyttäen se pystyy generoimaan uusia kuvia, joilla on samat piirteet kuin opetus-datalla.
- Luokittelija-verkolle opetetaan 200 humpuukikuvaa ja 200 oikeaa kuvapankin kuvaa, jolloin siitä tulee luokittelija, joka erottaa kaksi kuvatyyppiä toisistaan (humpuukikuvat ja kuvapankin kuvat).
- Tämän jälkeen verkot pistetään oppimis-silmukkaan (kumpikin parantaa silmukassa parametrejään), jolloin ne tulevat yhä paremmiksi tehtävässään.
Lopputuloksena saadaan luoja-verkko, jonka kuvista ei pysty sanomaan onko ne otettu kuvapankista, vai tekoälyn generoimia.
Mun mielestä idea on kiehtova, en vain tiedä kuinka pitkällä ovat kehityksessä - hieman epäilyttää konetehojen riittävyys, kun halutaan riittävän isoja kuvia, tarkoilla piirteillä ja isolla kuvapankilla. Eikä oppimis-silmukassa oppimisen konvergoituvuuskaan ole itsestäänselvyys.
Jos tällainen AI kuitenkin saadaan kuluttajienkin testaukseen, olisin varsin hanakka kokeilemaan ... siis jos sille voi sekä opettaa, että oman koneen vääntö riittää.