वर्ड एम्बेडिंग शब्दों को वास्तविक संख्याओं के वेक्टर्स में मैप करने के लिए उपयोग की जाने वाली एक भाषा मॉडलिंग तकनीक है। यह शब्दों या वाक्यांशों को कई आयामों वाले वेक्टर स्पेस में प्रस्तुत करता है। वर्ड एम्बेडिंग्स को न्यूरल नेटवर्क्स, को-ऑक्यूरेंस मैट्रिक्स, प्रोबेबिलिस्टिक मॉडल्स आदि जैसे विभिन्न तरीकों से उत्पन्न किया जा सकता है।
Word2Vec वर्ड एम्बेडिंग उत्पन्न करने के लिए मॉडल्स से बना है। ये मॉडल्स शैलो टू-लेयर न्यूरल नेटवर्क्स हैं जिनमें एक इनपुट लेयर, एक हिडन लेयर और एक आउटपुट लेयर होती है।
उदाहरण
# सभी आवश्यक मॉड्यूल्स आयात करें from nltk.tokenize import sent_tokenize, word_tokenize import warnings warnings.filterwarnings(action = 'ignore') import gensim from gensim.models import Word2Vec # 'alice.txt' फाइल पढ़ें sample = open("C:\\Users\\Vishesh\\Desktop\\alice.txt", "r") s = sample.read() # एस्केप कैरेक्टर को स्पेस से बदलें f = s.replace("\n", " ") data = [] # फाइल में प्रत्येक वाक्य के माध्यम से पुनरावृति करें for i in sent_tokenize(f): temp = [] # वाक्य को शब्दों में टोकनाइज़ करें for j in word_tokenize(i): temp.append(j.lower()) data.append(temp) # CBOW मॉडल बनाएं model1 = gensim.models.Word2Vec(data, min_count = 1, size = 100, window = 5) # परिणाम प्रिंट करें print("Cosine similarity between 'alice' " + "and 'wonderland' - CBOW : ", model1.similarity('alice', 'wonderland')) print("Cosine similarity between 'alice' " + "and 'machines' - CBOW : ", model1.similarity('alice', 'machines')) # Skip Gram मॉडल बनाएं model2 = gensim.models.Word2Vec(data, min_count = 1, size = 100, window =5, sg = 1) # परिणाम प्रिंट करें print("Cosine similarity between 'alice' " + "and 'wonderland' - Skip Gram : ", model2.similarity('alice', 'wonderland')) print("Cosine similarity between 'alice' " + "and 'machines' - Skip Gram : ", model2.similarity('alice', 'machines'))