Pull to refresh

Comments 6

Леонардо да Винчи тоже оставлял «дефекты» в своих чертежах, нарочно. Может, авторы хотели, чтобы к ним обратились за разъяснением.
с отрицательной выборкой

В оригинале другое.
с вложениями слов

Никто так не говорит.
той мере, в какой совпадают названия переменных

Действительно, gensim — единственная известная мне верная реализация на C.

В оригинале другое.
Один вектор для этого слова в фокусе, а второй для слова в контексте

Кому-нибудь понятно, что имел в виду переводчик?

Дальше читал в оригинале.
с вложениями слов

Да, звучит смешно. Перевод оторванный от контекста (words embedding in a continuous vector space) и сделанный с ошибкой — embedding = встраивание. По-русски я б написал «векторное представление слов».

Я прекрасно понимаю автора, поскольку несколько раз пытался разобраться и воспроизвести, например в рамках курса по tensorflow (или про deep learning в целом на примере tensorflow) от Udacity. Да, что-то похожее получалось, но не то.
Но справедливости ради хочу заметить, что описание реализации с двумя векторами мне попадалось, если нужно будет — поищу пруф. Тоже тогда недоумевал, почему такие детали скрыты...

2-3 года назад хотел досконально разобраться в алгоритме, в результате написал свой вариант — github.com/maxoodf/word2vec
Думаю неточность идет от функции ошибки.
Конкретно вот в этом примере на TF www.tensorflow.org/tutorials/representation/word2vec создаются 2 embedding-матрицы: одна непосредственно для слов (то что потом будем использовать на инференсе), вторая — для Noise Contrastive Loss (ее для инференса не используем).

Есть еще 1 прикол w2v, который мало кто видит.
В оригинальной статье в CBOW используется сложение контекстных векторов. А по факту через месяц после публикации кто-то додумался использовать среднее. Спросили у Миколова — он подтвердил, что доли процента добавляет.
И в результате в gensim используется mean.
Sign up to leave a comment.

Articles

Change theme settings