Каков наилучший метод для расчета сходства текста? - PullRequest
3 голосов
/ 07 ноября 2019

Существуют некоторые методы, которые могут получить сходство между текстами, такие как wup_sdentifity () cosine_sdentifity () и т. Д. Моя цель - создать систему ответов на сочинения. Это означает, что я хочу сравнить лист ответов и схему маркировки. До сих пор я выполнял следующие действия, не прибегая к обучению или моделированию.

1. Предварительно обработал оба документа (удалил знаки препинания, выполнил лемматизацию и т. Д.).

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

3. Затем мне нужно было сравнить эти двабольшие массивы и хотите получить значение сходства

Можете ли вы помочь мне с этим, давая некоторые предложения или ответы. Я знаю, что син-наборы word-net не самые лучшие, потому что это даст несвязанные ответы. Например: животное и транспортное средство будут возвращать 1 в качестве одинаковых значений.

Однако мне нужно найти решения для этого.

1 Ответ

1 голос
/ 07 ноября 2019

Стандартный метод, который использует почти каждая поисковая система, сравнивает векторы TF-IDF с косинусным сходством. Это, вероятно, не будет соответствовать вашей задаче, так как вы говорите об оценке эссе с учетом схемы маркировки. Это также включает проверку идентичности важных предложений (в смысле структур глагол-аргумент) и риторическую структуру ответа. Это важно, потому что «Колумб исследовал американский континент» может быть семантически связан с «американским континентом, исследовавшим Колумб», но последний явно бессмысленный (при условии, что континент является субъектом). Возможно взгляните на Теорию Представления Дискурса (DRT) и формальную логику, которая должна быть смоделирована для этого. Сравнение DRTs ваших текстов сделает лучшую работу и работу для спорных текстов также.

Для DRT вы можете начать с этого: https://plato.stanford.edu/entries/discourse-representation-theory/#DRSLanSynSemAcc. Это довольно сложно, как и ваше приложение. Другой подход заключается в том, чтобы использовать анализатор зависимостей для извлечения наиболее важных предложений из вашей схемы разметки, а затем проверить, сколько и насколько схожи отношения с каким-либо ответом на эссе. Для этого вы можете использовать меры сходства векторов или вложений отношения (глагол) и аргументов с их соответствующими ролями («Предмет» и «Объект»). Я думаю, что стоит попробовать это, прежде чем использовать полные DRT, так как это адская работа по адаптации к вашему домену.

...