Sobes.tech
Middle+
16

Чем Word2Vec отличается от Bag of Words?

Companies where asked
Сбербанк

Answer from AI

sobes.tech AI

Bag of Words (BoW) — это простой способ представления текста, где каждый документ кодируется как вектор частот слов без учета порядка и контекста. Например, вектор показывает, сколько раз каждое слово встречается в документе.

Word2Vec — это нейросетевая модель, которая обучается представлять слова в виде плотных векторов (эмбеддингов), отражающих семантические связи между словами. Векторы Word2Vec учитывают контекст и позволяют находить похожие слова и отношения между ними.

Итог:

  • BoW — разреженное, высокоразмерное представление, без учета порядка и смысла.
  • Word2Vec — плотное, низкоразмерное представление, учитывающее семантику и контекст.

Пример:

# BoW пример
from sklearn.feature_extraction.text import CountVectorizer
corpus = ['кот и собака', 'собака и мышь']
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(corpus).toarray()
print(X)

# Word2Vec пример (упрощённо)
from gensim.models import Word2Vec
sentences = [['кот', 'и', 'собака'], ['собака', 'и', 'мышь']]
model = Word2Vec(sentences, vector_size=10, window=2, min_count=1)
print(model.wv['кот'])