Учебные комплекты по субъективности Twitter - PullRequest
1 голос
/ 01 августа 2011

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

Существуют ли какие-либо учебные комплекты, которые можно использовать в качестве субъективного / объективного классификатора для сообщений Twitter или других доменов, которые могут быть переданы?

Ответы [ 3 ]

2 голосов
/ 02 августа 2011

Где-то в CMU есть данные обучения настроениям.Я не могу вспомнить ссылку.CMU многое сделал для анализа твиттеров и настроений:

Я написал англо-англоязычный классификатор Naive Bayes для твиттера и сделал пример Dev / Test Set, и он составил 98%точный.Я думаю, что такие вещи всегда очень хороши, если вы просто пытаетесь понять проблему, но такой пакет, как SentiWordNet, может дать вам преимущество.

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

Вы говорите, что точность 75% - это все, что вам нужно ... как насчет отзыва?Если вы предоставите правильные данные об обучении, вы сможете получить их за счет меньшего количества отзывов.

2 голосов
/ 02 августа 2011

Для исследовательских и некоммерческих целей SentiWordNet дает вам именно то, что вы хотите.Коммерческая лицензия также доступна.

SentiWordNet: http://sentiwordnet.isti.cnr.it/

Пример кода Jave: http://sentiwordnet.isti.cnr.it/code/SWN3.java

Документ по теме: http://nmis.isti.cnr.it/sebastiani/Publications/LREC10.pdf


Другой подход, который я бы попробовал:

Пример

Tweet 1: @xyz Вы должны увидеть темного рыцаря.Это awesme.

1) Сначала поиск по словарю для значений.

"u" и "awesme" ничего не вернут.

2) Затем идите противизвестные сокращения / сокращения и замещающие совпадения с расширениями (некоторые ресурсы: netlingo http://www.netlingo.com/acronyms.php или smsdictionary http://www.smsdictionary.co.uk/abbreviations)

Теперь оригинальный твит будет выглядеть так:

Tweet 1: @xyz вы должны увидеть темного рыцаря. Это потрясающе.

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

Ссылка по теме: Поиск библиотеки проверки орфографии Java

Теперь оригинальный твит будет выглядеть так:

Tweet 1: @xyz, который вы должны увидетьтемный рыцарь.Его офигенно .

4) Разделить и передать твит в SWN3, собрать результат

Проблема с этим подходом заключается в том, что

а) Отрицанияследует обращаться за пределами SWN3.

b) Информация в смайликах и преувеличенных пунктуациях будет потеряна или обрабатываться отдельно.

1 голос
/ 08 августа 2011

DynamicLMClassifier в LingPipe работает довольно хорошо.

http://alias -i.com / lingpipe / demos / tutorial / sentiment / read-me.html

...