При использовании Word2ve c, как я могу получить результат от невидимых слов корпуса? - PullRequest
0 голосов
/ 06 марта 2020

Я использую модель Word2ve c для извлечения похожих слов, но я хочу знать, возможно ли получить слова, используя невидимые слова для ввода.

Например, у меня есть модель, натренированная на корпус [дыня, повозка, жираф, яблоко, лягушка, банан]. «оранжевый» - это невидимое слово в этом корпусе, но когда я помещаю его в качестве ввода, я хочу [дыня, яблоко, банан] для результата.

Это возможная ситуация?

1 Ответ

1 голос
/ 06 марта 2020

Исходный алгоритм word2ve c ничего не может предложить для слов, которых нет в его обучающих данных.

Потомок Facebook "FastText" от word2ve c может предложить векторы, которые лучше случайных для невидимых слов - но он строит такие векторы из фрагментов слова (символьных векторов n-граммы), поэтому он лучше всего работает там, где существуют общие корни слова или где слово вне словаря является просто опечаткой обученного слова.

То есть, в вашем примере это не поможет, если бы не было других слов, морфологически похожих на «оранжевый» (например, «апельсин», «апельсин», «апельсины sh» и др. c) ,

Единственный способ выучить или угадать вектор для «апельсина» - это иметь несколько обучающих примеров с ним или связанными словами. (Если ничего не помогло, вы можете собрать некоторые примеры из других крупных корпораций или Интернета, чтобы смешать их с другими данными обучения.)

...