Как извлечь слова из текста в соответствии с контекстом - PullRequest
1 голос
/ 27 октября 2010

Я хочу извлечь соответствующие слова из текстового оператора, предоставленного пользователем. например. На вопрос "Сколько сторон в прямоугольнике?" Слова должны быть «прямоугольники», «стороны», «многие», «как».

Мы обнаружили, что именно я собираюсь сделать, это система ответов на вопрос НЛП. Но сейчас я хочу извлечь только необходимые ключевые слова из вопроса, Область вопросов не очень обширна.

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

Пожалуйста, дайте мне знать, если есть какой-либо инструмент, который соответствует требованию, или я должен пойти и попробовать кодировать себя.

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

Ответы [ 2 ]

1 голос
/ 27 октября 2010

Помимо советов Среана использовать POS-теги и NER, многие люди используют инструменты поисковой системы (в частности, Lucene , но существует несколько других), чтобы отвечать на вопросы.Они индексируют набор документов, которые должны содержать ответ, используют вопрос в качестве запроса, извлекают набор документов и фильтруют их, чтобы найти ответ.Инструменты поискового движка имеют встроенное взвешивание терминов.

Это базовая настройка;для более продвинутых систем они выполняют все виды предварительной обработки вопроса и документов, включая фильтрацию стоп-слов, POS-теги, анализ, NER, генетические алгоритмы и т. д.для примера этой установки.

1 голос
/ 27 октября 2010

Если у вас есть только вопросы, вы можете попробовать часть речевого тегирования (POS) и извлечения именованных объектов (NER).В частности, существительные будут представлять интерес.Для этого существует ряд инструментов с открытым исходным кодом, POS-тагер Brill, Lingpipe, Open NLP и т. Д. Однако, если у вас есть корпус из интересующего вас домена, вы можете извлечь из него ключевые слова и фразы:используя то, насколько отличаются частоты слов и фраз по сравнению с некоторыми другими базовыми корпусами.После заданного вопроса вы можете найти эти ключевые слова и фразы.

...