Как извлечь информацию из заданных предложений - PullRequest
0 голосов
/ 06 февраля 2019

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

Итак, каков наилучший подход для извлеченияинформация от них как ниже:

can you delete file "file name" from "folder name"

тогда система должна собрать:

Action : deleting
upon   : "file name"
destination : "folder name" 

1 Ответ

0 голосов
/ 06 февраля 2019

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

Но вВ общем, вы, вероятно, попытаетесь выполнить запрос с помощью тега части речи , чтобы извлечь глагольные фразы для действий, пары глагол-объект для on / destination и т. д. Затем вы сопоставите эти термины ссписок приемлемых синонимов для каждого действия.Например, у вас может быть список синонимов для «удаления», таких как ['delete', 'remove', 'rm', 'toss', 'eliminate', ...] и т. Д., И затем задано действие для удаления, если фраза глагола содержит любое из этих слов.Относительно того, как использовать POS-тег NLTK и другие инструменты для разбора запросов, взгляните на это руководство, которое охватывает многие трудности анализа семантики предложений: Анализ значения предложений

Вы также можете проверить следующие связанные темы:

Вы упомянули поиск академической статьи по этому вопросу, и если вы ищете больше журнальных статей, я предлагаю поискать термин "естественный"языковой запрос »(и его варианты).Поиск в Semantic Scholar с 2010 по настоящее время принес более 75 000 результатов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...