Алгоритм, чтобы определить, насколько положительный или отрицательный оператор/текст

63
задан Joel Coehoorn 9 December 2011 в 17:45
поделиться

9 ответов

Существует подполе обработки естественного языка, названной анализ мнений , который имеет дело конкретно с этой проблемной областью. Существует изрядное количество коммерческой работы, сделанной в области, потому что потребительские товары так в большой степени рассматриваются на форумах подключенного пользователя (ugc или user-generated-content). Существует также платформа прототипа для текстовой аналитики, названной ЛОГИЧЕСКИЙ ЭЛЕМЕНТ из Университета Шеффилда и проекта Python, названного nltk. Обоих считают гибкими, но не очень высокопроизводительные. Один или другой могло бы быть хорошо для того, чтобы работать над Вашими собственными идеями.

48
ответ дан gpmcadam 24 November 2019 в 16:24
поделиться

В моей компании у нас есть продукт, который делает это и также работает хорошо. Я сделал большую часть работы над ним. Я могу дать краткую идею:

необходимо разделить абзац на предложения и затем разделить каждое предложение на меньшие sub предложения - разделяющий на основе запятых, дефиса, полу двоеточия, двоеточия, 'и', 'или', и т.д. Каждое sub предложение будет показывать полностью отдельное чувство в некоторых случаях.

Некоторые предложения, даже если это разделяется, должны будут быть объединены.

, Например: продукт является удивительным, превосходным и фантастическим.

Мы разработали исчерпывающий набор правил о типе предложений, которые должны быть разделены и которые не должны быть (на основе тегов POS слов)

На первом уровне, можно использовать мешок подхода слов, означать - имеет список положительных и отрицательных слов/фраз и регистрируется в каждом sub предложении. При выполнении этого также посмотрите на слова отрицания как 'не', 'нет', и т.д. который изменит полярность предложения.

Даже тогда, если Вы не можете найти чувство, можно пойти для наивный байесов подход. Этот подход не очень точен (приблизительно 60%). Но если Вы применяете это только к предложению, которым не удается пройти через первый ряд правил - можно легко добраться до 80-85%-й точности.

важная часть является положительным/отрицательным списком слов и способом, которым Вы разделяете вещи. Если Вы хотите, можно пойти даже уровень выше путем реализации (скрытая марковская модель) HMM или CRF (Условные случайные поля). Но я не про в обработке естественного языка, и кто-то еще может заполнить Вас в той части.

Для любопытных людей, мы реализовали все это, Python с NLTK и модулем преподобного Bayes.

Довольно простой и дескрипторы большинство предложений. Можно однако столкнуться с проблемами при попытке отметить содержание от сети. Большинство людей не пишет надлежащие предложения в сети. Также обработка сарказма очень трудна.

34
ответ дан cnu 24 November 2019 в 16:24
поделиться

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

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

Один из Ваших примеров был бы потенциально отмечен положительный, когда это было на самом деле отрицательное использование этого подхода ("Jason, является лучшим при всасывании с ТАК"), если Вас не происходит с весом, "сосущим" больше, чем "лучше всего".... Но также и это - маленький текстовый образец при рассмотрении абзацев или большего количества текста тогда взвешивание становится более надежным, если у Вас нет кого-то целеустремленно пытающегося одурачить Ваш алгоритм.

8
ответ дан Greg Hewgill 24 November 2019 в 16:24
поделиться

Как указано, это прибывает при анализе мнений под обработкой естественного языка.
ЛОГИЧЕСКИЙ ЭЛЕМЕНТ Afaik не имеет никакого компонента, который делает анализ мнений.
, По моему опыту, я реализовал алгоритм, который является адаптацией той в газете 'Распознавание Контекстной Полярности в Анализе Чувства Уровня Фразы Theresa Wilson, Janyce Wiebe, Paul Hoffmann ( это ) как плагин ЛОГИЧЕСКОГО ЭЛЕМЕНТА, который дает разумные хорошие результаты. Могло помочь Вам, если Вы хотите загрузить реализацию.

5
ответ дан anand.trex 24 November 2019 в 16:24
поделиться

В зависимости от Вашего приложения Вы могли сделать это через Байесовская Фильтрация алгоритм (который часто используется в спам-фильтрах).

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

положительный фильтр (когда-то отобранный) искал бы положительные слова. Возможно, это закончилось бы со словами как любовь , мир , и т.д. Отрицательный фильтр был бы отобран соответственно также.

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

Байесовские Фильтры, хотя простой, являются удивительно эффективными.

5
ответ дан TAG 24 November 2019 в 16:24
поделиться

Это - все о контексте, я думаю. Если Вы ищете людей, которые являются лучшими при всасывании с ТАК. Всасывание лучшего может быть положительным моментом. Для определения, что плохо или хорошо и насколько я мог рекомендовать изучить Нечеткую логику.

Это немного похоже на то, чтобы быть высоким. Кто-то, кто 1.95 м, может, считал высоким. Если Вы размещаете того человека в группу с людьми на всем протяжении 2.10 м, он выглядит коротким.

0
ответ дан Sorskoot 24 November 2019 в 16:24
поделиться

Возможно, программное обеспечение классификации эссе могло использоваться для оценки тона? СОЕДИНИЛ ПРОВОДОМ статья.
Возможный ссылка. (Я не мог считать его.)
Этот отчет выдерживает сравнение, навык письма к Году обучения Flesch-Kincaid должен был считать его!
Страница 4 электронный-rator говорит, что они смотрят на орфографическую ошибку и такой. (Возможно, плохое сообщение пишется c орфографическими ошибками также!)
статья Slashdot.

Вы могли также использовать какой-то почтовый фильтр для отрицательности вместо мыса спама.

0
ответ дан waynecolvin 24 November 2019 в 16:24
поделиться

Как насчет сарказма:

  • Jason является лучшим ТАК пользователь, которого я когда-либо видел, НЕ
  • , Jason является лучшим ТАК пользователь, которого я когда-либо видел, право
0
ответ дан Osama Al-Maadeed 24 November 2019 в 16:24
поделиться

А-ч, я помню одну библиотеку Java за этот названный (коммерческая лицензия) LingPipe , которую мы оценили. Это хорошо работало бы для корпуса в качестве примера, который доступен на сайте, но для реальных данных это сосет довольно плохо.

0
ответ дан cnu 24 November 2019 в 16:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: