Word2vec este un nume generic pentru o colecție de modele de rețele neuronale artificiale concepute pentru a obține reprezentări vectoriale ale cuvintelor din limbaj natural . Folosit pentru a analiza semantica limbilor naturale bazată pe semantică distributivă , învățarea automată și reprezentarea vectorială a cuvintelor. Software-ul numit „word2vec” a fost dezvoltat de un grup de cercetători Google în 2013 [1] [2] . Instrumente pentru crearea modelelor vector-semantice au existat înainte de [3] [4] , dar word2vec a devenit prima implementare populară: în primul rând datorită ușurinței de utilizare, codului open source și vitezei.[5]
Programul funcționează după cum urmează: word2vec preia un corpus de text mare ca intrare și mapează fiecare cuvânt într-un vector, dând coordonatele cuvintelor ca ieșire. Mai întâi generează un dicționar al corpusului și apoi calculează o reprezentare vectorială a cuvintelor prin „învățare” din textele introduse. Reprezentarea vectorială se bazează pe proximitatea contextuală: cuvintele care apar în text lângă aceleași cuvinte (și, prin urmare, au un înțeles similar) vor avea vectori apropiați (prin distanța cosinus ). Reprezentările vectoriale rezultate ale cuvintelor pot fi utilizate pentru procesarea limbajului natural și învățarea automată.
Word2vec implementează doi algoritmi principali de învățare: CBoW ( Continuous Bag of Words ) și Skip -gram. CBoW este o arhitectură care prezice cuvântul curent pe baza contextului înconjurător. O arhitectură precum Skip-gram face opusul: folosește cuvântul curent pentru a prezice cuvintele din jur. Construirea unui model word2vec este posibilă folosind acești doi algoritmi. Ordinea cuvintelor din context nu afectează rezultatul în niciunul dintre acești algoritmi.
Reprezentările vectoriale rezultate ale cuvintelor fac posibilă calcularea „distanței semantice” dintre cuvinte. Deci, puteți găsi cuvinte care au sens similar. De obicei, ei dau un exemplu cu regele și regina: regele tratează bărbatul la fel cum regina tratează femeia. Word2vec face predicții pe baza proximității contextuale a acestor cuvinte. Deoarece instrumentul word2vec se bazează pe antrenarea unei rețele neuronale simple , pentru a obține cea mai eficientă performanță, este necesar să folosiți corpuri mari pentru a o antrena. Acest lucru îmbunătățește calitatea predicțiilor.