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

В данный момент я идентифицировал сущности в данном сценарии и попытался классифицировать входные и выходные сущности, используя метод анализа соседства для каждой идентифицированной сущности.Этот метод не очень точен, поскольку способ предоставления сценария может время от времени меняться.

Например:

  • Существует дверь , окно и сейф .Сейф разблокируется, если дверь закрыта и окно открыто.

Чтобы найти логическое выражение для этого, мы должны рассмотреть сейф, дверь и окно являются сущностями. Кроме того, сейфвыходной объект и два других являются входными объектами.

Может кто-нибудь предложить мне правильную логику, использующую python для определения, какие входные объекты и какие являются выходными объектами?

1 Ответ

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

Эта задача не совсем простая задача машинного обучения.Вам необходимо знать, откуда поступают ваши входные данные (webscraping, NL corpus и т. Д.), И из этого вы должны абстрагировать некоторые шаблоны, соответствующие вашим входным данным.Возможно, вы могли бы использовать некоторый анализ зависимостей (вместо соседства и коллокаций), чтобы извлечь шаблоны и отношения из данных корпуса.Логическим компилятором для python является pyke, вы можете проверить, можете ли вы его использовать.

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

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

http://pyke.sourceforge.net/

https://www.doc.ic.ac.uk/~sgc/teaching/pre2012/v231/lecture8.html

...