Использование анализа настроений для выявления противоречивых аргументов? - PullRequest
2 голосов
/ 19 февраля 2012

У меня совсем нет опыта в анализе настроений или обработке естественного языка, но я немного читал об этом в свободное время. Я хотел бы провести и поэкспериментировать, чтобы проанализировать цепочки / комментарии на форуме, такие как reddit, digg, блоги и т. Д. Я особенно заинтересован в том, чтобы подсчитывать количество «за», «против» и «нейтральных» комментариев для потоков горячей и политической информации дебаты. Вот что я думаю.

1) Найдите ветку, в которой в оригинальном плакате была задокументирована политическая или религиозная тема.

2) Для каждого комментария классифицируйте его как поддержку оригинального постера или иное принятие противоречивой или нейтральной позиции.

3) Сравните различные средства с количеством аргументов «за» или «против», чтобы определить, какие платформы являются хорошими «дискуссионными платформами» (т.е. сбалансированное количество аргументов).

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

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

Ответы [ 2 ]

2 голосов
/ 19 февраля 2012

ИМХО, это невозможно без использования семантики. Рассмотрим предложение:

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

Вашему ИИ может потребоваться распознать идиоматические подфразы, такие как "не против" или другие фрагменты "не ...". Это не невозможно; -)

Дополнительная проблема состоит в том, что «не» является более или менее стоп-словом, его ранг, вероятно, будет в топ-100, вызывая низкую энтропию (хотя он имеет высокую «семантическую» ценность для каждого предложения, где он находится unsed). Также обратите внимание на то, что пропуск слова «отмена» приведет к изменению полярности предложения.

2 голосов
/ 19 февраля 2012

Вы можете попытаться использовать пакет слов [или даже лучше: используйте n-грамм как жетоны к пакету]

Подход в основном:

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

Кроме того, вы можете посмотреть на Apache Mahout .

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