A Word2vec a mesterséges neurális hálózati modellek gyűjteményének általános neve, amelyet a természetes nyelvi szavak vektoros megjelenítésére terveztek . A természetes nyelvek szemantikájának elemzésére szolgál a disztributív szemantika , a gépi tanulás és a szavak vektoros ábrázolása alapján. A "word2vec" nevű szoftvert a Google kutatóinak egy csoportja fejlesztette ki 2013-ban [1] [2] . A vektorszemantikai modellek létrehozására szolgáló eszközök már korábban is léteztek [3] [4] , de a word2vec lett az első népszerű implementáció: elsősorban a könnyű kezelhetőség, a nyílt forráskód és a sebesség miatt.[5]
A program a következőképpen működik: a word2vec egy nagy szövegkorpuszt vesz be bemenetként, és minden szót leképez egy vektorra, kimenetként megadva a szavak koordinátáit. Először egy szótárt generál a korpuszból, majd a bemeneti szövegekből "tanulva" kiszámítja a szavak vektoros reprezentációját . A vektoros ábrázolás a kontextuális közelségen alapul: a szövegben ugyanazon szavak mellett előforduló (és ezért hasonló jelentésű) szavaknak közeli ( koszinusz távolság szerint ) vektorai lesznek. Az így kapott szavak vektoros reprezentációi felhasználhatók természetes nyelvi feldolgozásra és gépi tanulásra.
A Word2vec két fő tanulási algoritmust valósít meg: CBoW ( Continuous Bag of Words ) és Skip -gram. A CBoW egy olyan architektúra, amely megjósolja az aktuális szót a környező kontextus alapján. A Skip-gramhoz hasonló architektúra ennek az ellenkezőjét teszi: az aktuális szót használja a környező szavak előrejelzésére. A word2vec modell felépítése lehetséges ezzel a két algoritmussal. A szövegkörnyezet szórendje egyik algoritmusban sem befolyásolja az eredményt.
A szavak eredő vektoros reprezentációi lehetővé teszik a szavak közötti "szemantikai távolság" kiszámítását. Tehát találhat hasonló jelentésű szavakat. Általában a királlyal és a királynővel hoznak példát: a király ugyanúgy bánik a férfival, mint a királynő a nővel. A Word2vec előrejelzéseket készít ezeknek a szavaknak a környezeti közelsége alapján. Mivel a word2vec eszköz egy egyszerű neurális hálózat betanításán alapul , a leghatékonyabb teljesítmény elérése érdekében nagy korpuszokat kell használni a betanítására. Ez javítja az előrejelzések minőségét.