Связывание операторов свободного текста с предопределенными атрибутами - PullRequest
1 голос
/ 17 декабря 2011

У меня есть список из нескольких десятков атрибутов продукта, которые интересуют людей, например

  • Финансирование
  • Качество изготовления
  • Прочность
  • Опыт продаж

и несколько миллионов заявлений клиентов в свободном тексте о продукте, например

«Финансирование было легким, но жилье хрупкое.»

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

В данном примере будет сильная положительная связь с Financing и сильная отрицательная связь с Manufacturing quality.

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

Итак, мой вопрос из трех частей:

  • Является ли НЛП правильным маршрутом для решения этого класса проблем?
  • Какому аспекту НЛП я должен сосредоточиться на обучении для этой конкретной проблемы?
  • Есть ли альтернативы, которые я не рассматривал?

Ответы [ 3 ]

2 голосов
/ 17 декабря 2011

Ресурс, который вам может пригодиться, - это SentiWordNet. (http://sentiwordnet.isti.cnr.it/) Это похоже на словарь, который имеет оценку настроения для слов. Он скажет вам, в какой степени слово считается положительным, отрицательным или объективным.

Затем вы можете объединить это с некоторым кодом nltk, который просматривает ваши предложения для слов, с которыми вы хотите связать настроение. Таким образом, вы бы написали сценарий, чтобы получить некоторый уровень значимых кусков текста, которые окружают слова, которые вы просматривали, возможно, уровень предложения или предложения. Тогда у вас может быть еще одна вещь, которая проходит через окружающие слова и захватывает все оценки настроений из SentiWordNet.

У меня есть какой-то старый код, который сделал это и может разместить на github, если вы хотите, но вам все равно нужно сделать свой собственный запрос для SentiWordNet.

2 голосов
/ 17 декабря 2011

Полагаю, ваша проблема не в классификации, а в ассоциации.Теперь перейдем к следующему предположению:

Является ли НЛП правильным маршрутом для решения этого класса проблем?

Да.

Какой аспектНЛП я должен сосредоточиться на обучении для этой конкретной проблемы?

Существуют ли альтернативы, которые я не рассматривал?

Углубленное изучение теории автоматов в отношении НЛП очень вам поможет, очень мне помоглов понимании реализаций, таких как OpenNLP.

1 голос
/ 17 декабря 2011

Да, это проблема НЛП по имени Анализ настроений .Анализ настроений - это активная область исследований с различными подходами и задачей, в которой многие другие НЛП-методы должны работать вместе, поэтому, безусловно, это не самая легкая область для начала в НЛП.Менее недавний обзор научных исследований в этой области можно найти в Pang & Lee (2008) .

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