Як word2vec можна використовувати для ідентифікації невидимих ​​слів та відношення їх до вже підготовлених даних


11

Я працював над моделлю gensim word2vec і вважав це дійсно цікавим. Мене цікавить пошук того, як невідоме / небачене слово при перевірці з моделлю зможе отримати подібні терміни з навченої моделі.

Чи можливо це? Чи можна налаштувати word2vec для цього? Або навчальний корпус повинен мати всі слова, з якими я хочу знайти подібність.

Відповіді:


9

Кожен алгоритм, який займається текстовими даними, має словниковий запас. У випадку з word2vec словниковий запас складається з усіх слів у вхідному корпусі або принаймні з тих, що перевищують поріг мінімальної частоти.

Алгоритми, як правило, ігнорують слова, що знаходяться поза їх словником. Однак є способи переосмислити свою проблему таким чином, щоб по суті не було слов, що не знаходяться поза словником.

Пам'ятайте, що слова є просто "лексемами" у word2vec. Вони можуть бути ngram або вони можуть бути літерами. Один із способів визначити свій словниковий запас - сказати, що кожне слово, яке зустрічається принаймні X разів, є у вашому лексиці. Тоді до вашої лексики додаються найпоширеніші "склади" (nграм літер). Потім ви додаєте окремі букви до свого словника.

Таким чином ви можете визначити будь-яке слово як будь-яке

  1. Слово у вашому словнику
  2. Набір складів у вашому словниковому запасі
  3. Комбінований набір букв і складів у вашому словнику

3

word2vec трактує слова як атоми. Щоб отримати значущі вектори для невідомих слів, вам або доведеться

  • змінити, якими є ці атоми, наприклад, перейти на букву n-грам, як у відповіді jamesmf, або
  • використовуйте іншу модель, яка чітко розглядає те, що є у ваших словах, наприклад модель CWE на https://github.com/Leonard-Xu/CWE проста у використанні.

1
github.com/facebookresearch/fastText, здається, працює добре
Йоахім Вагнер

Так, я спробував це, але не справляється з такими завданнями, як морфологічна сегментація.
гаври


0

Слово2Vec і FastText виходять з ладу, якщо цього слова немає в словнику. Здається помилку. Він дає список балів за споріднені слова. Але невидимого слова у словнику не буде, чи не так? Отже, як вона вирішує проблему небаченого слова?

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.