Алгоритм определения того, насколько положительным или отрицательным является утверждение / текст - PullRequest
62 голосов
/ 15 ноября 2008

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

Например:

Джейсон - худший пользователь SO, которого я когда-либо видел (-10)

Джейсон - SO (0)

Джейсон - лучший SO, которого я когда-либо видел (+10)

Джейсон лучше всех сосет с SO (-10)

В то время как в СО, Джейсон хуже всех делает (+10)

Не легко, а? :)

Я не ожидаю, что кто-то объяснит мне этот алгоритм, но я предполагаю, что где-то в академии уже много работы над чем-то подобным. Если вы можете указать мне некоторые статьи или исследования, мне бы это понравилось.

Спасибо.

Ответы [ 14 ]

0 голосов
/ 24 декабря 2008

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

0 голосов
/ 24 декабря 2008

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

  • Джейсон - лучший ТАК пользователь, которого я когда-либо видел, НЕ
  • Джейсон - лучший SO, которого я когда-либо видел, верно
0 голосов
/ 16 ноября 2008

Может быть, для оценки тона можно использовать программу оценки эссе? WIRED артикул.
Возможно ссылка. (Я не мог прочитать это.)
В этом отчете сравниваются навыки письма с уровнем Флеша-Кинкейда, необходимым для его чтения!
Страница 4 из e-rator говорит, что они смотрят на неправильное написание и тому подобное. (Может плохой пост тоже написан с ошибкой!)
Slashdot статья.

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

0 голосов
/ 15 ноября 2008

Я думаю, все дело в контексте. Если вы ищете людей, которые лучше всего сосут с SO. Сосать лучшее может быть положительным моментом. Для определения того, что плохо или хорошо, и сколько я могу порекомендовать изучить Fuzzy Logic.

Это немного похоже на рост. Тот, кто 1,95 м, может считаться высоким. Если вы поместите этого человека в группу людей всего 2,10 м, он выглядит коротким.

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