upper python




Python: оценка семантического сходства для строк (2)

AFAIK самый мощный NLP-Lib для Python - http://nltk.org/

На этот вопрос уже есть ответ:

Существуют ли библиотеки для вычисления семантических оценок подобия для пары предложений?

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

Я нашел незавершенную работу, написанную с использованием платформы .NET, которая вычисляет счет, используя массив шагов предварительной обработки. Есть ли проект, который делает это в python?

Я не ищу последовательность операций, которые помогли бы мне найти оценку (как просили here )
Я хотел бы реализовать каждый этап самостоятельно или использовать функции клея из разных библиотек, чтобы он работал для пар предложений, но мне это нужно в основном как инструмент для тестирования выводов по данным.

EDIT: Я рассматривал возможность использования NLTK и вычисления балла для каждой пары слов, итераций по двум предложениям, а затем делать выводы из стандартного отклонения результатов, но я не знаю, является ли это законной оценкой сходства. Кроме того, это займет много времени для длинных строк.
Опять же, я ищу проекты / библиотеки, которые уже реализуют это разумно. Что-то, что позволяет мне сделать это:

import amazing_semsim_package
str1='Birthday party ruined as cake explodes'
str2='Grandma mistakenly bakes cake using gunpowder'

>>similarity(str1,str2)
>>0.889

К сожалению, я не могу помочь вам с PY, но вы можете взглянуть на мой старый проект, который использует словари для выполнения семантических сравнений между предложениями (которые позже могут быть закодированы в PY, реализующем векторно-пространственный анализ). Для перевода с JAVA на PY должно быть всего несколько часов кодирования. https://sourceforge.net/projects/semantics/





similarity