Как предсказать, является ли данное предложение грамматически правильным или нет? - PullRequest
0 голосов
/ 10 апреля 2019

Я пытаюсь создать прогностическую модель, в которой модель сообщает, является ли данное предложение правильным или нет, проверяя порядок слов в предложении. Модель проверяет погоду в определенной последовательности слов, которая уже произошла в огромном корпусе, и имеет смысл или нет.

Я попытался сделать это с моделью word2vec и удалил косинусное сходство или расстояние ОМУ двух предложений, но это дает только сходство, основанное на сходстве вектора слов, а не последовательности слов.

Так что, если мы дадим ввод в виде 2 предложений:

Предложение 1- "Я иду в магазин"

Предложение 2 - "Я иду в магазин"

вывод должен указывать, что предложение является недействительным или имеет сходство 20% или менее

В то время как модель word2vec показывает 100% сходство, поскольку введенные слова одинаковы, независимо от порядка. Поэтому я думаю, что это не может быть использовано для сравнения порядка слов. Любые другие предложения также могут быть очень полезны.

1 Ответ

1 голос
/ 10 апреля 2019

Я думаю, вы не до конца поняли, как работает word2vec.Он обучается как языковая модель, но это не так.Это способ кодировать слова на естественном языке в векторы непрерывного пространства, которые можно использовать позже для моделирования языка, включая и другие задачи.

В приведенном выше примере вы получаете 100% сходство, потому что word2vec, которыйвы использовали, скорее всего, был обучен с помощью метода "мешок слов".Это не заботится о порядке появления слов, только о контексте.

Если вам нужно что-то для работы из коробки, я предлагаю вам проверить, есть ли доступные инструменты в StanfordNLP (https://stanfordnlp.github.io/stanfordnlp/installation_download.html).

...