olvasás: 5 perc
Amikor a mesterséges intelligencia írja a népdalokat
Az MI-t az ipar 4.0 fontos eszközeként tartjuk számon, hiszen egyre fontosabb szerepet játszik többek között a prediktív karbantartásban és a minőség-ellenőrzés automatizálásában is. A technológia számos felhasználási területe között azonban akadnak igazán szórakoztató fejlesztések is. Nemrég mi is részt vehettünk egy izgalmas projektben, melynek eredményeként megszületett a KukoricAIános nevet viselő mesterséges intelligencia alapú népdalíró chatbot. De hogyan vágtunk bele a feladatba és milyen kihívásokkal kellett szembenéznünk a munka során? Az alábbi cikkünkből minden kiderül!
A projekt háttere és célkitűzése
A fejlesztés a Mesterséges Intelligencia (MI) Koalíció keretében valósult meg, cégünk és a Zeneszöveg.hu együttműködésében. A projekt célja egy olyan alkalmazás létrehozása volt, amely egy, a felhasználó által előre kiválasztott kategória alapján képes egy teljesen új népdalt szerezni. Végeredményként egyrészt a mesterséges intelligencia által generált népdal, másrészt egy, ahhoz a legjobban hasonlító eredeti népdal jön létre.
Technikai háttér
A projekt során a Stratis meglévő, természetes nyelvfeldolgozási (NLP) feladatok elvégzésére képes mesterséges intelligenciáját, A.N.I.T.A-t hívtuk segítségül. A megvalósítás során három fő kihívással is szembe találtuk magunkat:
1. Az új népdalok generálására szolgáló modell elkészítése
Az első kérdés, amit feltettünk magunknak, hogy vajon hogyan lesz képes a mesterséges intelligencia strófákat, esetleg teljes dalokat generálni? Megoldásként két módszer vetődött fel: az egyik, miszerint megtanítjuk A.N.I.T.A.-t az általános magyar nyelv generálására majd ezen belül népdalok írására, a másik pedig, hogy kizárólag a népdal korpuszon történik a tanítás. Az előzetes eredmények, az elérhető adatmennyiség és az erőforrások miatt végül a második megközelítésre esett a választásunk.
A megvalósítás következő fázisában több mesterséges intelligencia modellt is kipróbáltunk, melyek közül a generált szövegek minősége alapján egy egyszerű visszacsatolt neurális háló (RNN) mellett határoztunk.
2. Az elkészült dalok kategorizálása
Szerencsére ez a folyamat A.N.I.T.A. számára már egyáltalán nem okozott nehézséget: A dalkorpuszban minden dalhoz megadtunk egy címkét, így a felügyelt tanítás segítségével elkészítettük az osztályozót.
3. A generálthoz hasonló, létező dal megtalálása
A program miután megírja nekünk a négysoros dalszöveget, azt is megadja nekünk, hogy szerinte melyik a hozzá legközelebb álló, már létező népdal. Úgy véltük, hogy két dal akkor számít hasonlónak, ha a kategóriájuk megegyezik és a szóhasználatukban minél kevesebb eltérés fedezhető fel. Ezek alapján a leghasonlóbb dalt egy TFIDF vektorizáló és a NearestNeighbour algoritmus segítségével alkottuk meg.
Az adatok folyamát a következő ábra kiválóan szemlélteti:
Adatokból chatbot
El is érkeztünk a projekt utolsó lépéséhez, mely során el kellett juttatnunk az elkészült adatokat a felhasználókhoz. Erre a Facebook (Meta) Messenger applikációja bizonyult a tökéletes platformnak. Ezután Python nyelven, a Flask csomag segítségével készítettünk egy chatbotot, amely interaktívan képes reagálni a különböző bemenetekre. Így a felhasználó csak elküldi a „dal” szócskát üzenetben, majd 3 különböző kategóriából választhat, (fájdalmas, szerelmes, meglepetés) attól függően, hogy milyen hangulatú szerzeményt szeretne kapni. A mesterséges intelligencia minden esetben egy teljesen egyedi négysoros népdalt hoz létre, amit utána a felhasználó 1-től 5-ig pontozhat, illetve címet is adhat a költeménynek. Abban az esetben pedig, ha a chatbot olyan üzenetet kap, amelyet nem képes értelmezni, átirányítja a felhasználót a Zeneszöveg.hu ügyfélszolgálatához.
A projekt igazolta, hogy A.N.I.T.A funkciói számos területen, többek között a dalszerzés területén is alkalmazhatóak. Természetesen vertikálisan integrált mesterséges intelligencia modellünk továbbra sem fog dalra fakadni, de mostantól képes vicces népdalszövegeket írni a zeneszoveg.hu chatbot-ján keresztül.
Projektünk felkeltette érdeklődését A.N.I.T.A iránt? Tudjon meg többet saját fejlesztésű mesterséges intelligencia alapú megoldásunkról, forduljon hozzánk bizalommal!
A szerzőről
Gáspár Sándor a Stratis mesterséges intelligenciával foglalkozó területét vezeti 2020 óta és több, mint 20 éve foglalkozik data science-szel. Csapatával nagyvállalatok számára fejleszt gépi tanulásra, prediktív analitikára épülő döntéstámogató megoldásokat ügyfeleink meglévő adatvagyonának kiaknázásával. Ezen kívül mély neurális hálókra épülő NLP és machine vision megoldásokkal segíti ügyfeleink meglévő folyamatainak automatizálását.