Я реализую простой алгоритм анализа чувств, в котором авторы статьи имеют список слов для положительных и отрицательных слов и просто подсчитывают количество вхождений каждого в анализируемом документе и дают ему оценку голосов в документе:Sentiment Analysis - должен ли я нормализовать положительные и отрицательные списки слов, когда они различаются по длине?
настроение = (#positive_matches - #negative_matches)/(document_word_count)
Это нормализуется счет настроений по длине документа, НО свод негативных слов в 6 раз больше, чем положительное слово корпус (около 300 положительных слов и 1800 отрицательных слов), поэтому по вышеуказанной мере оценка сентимента, скорее всего, будет негативно предвзятой, так как есть более отрицательные слова, чтобы соответствовать положительным словам.
Как я могу исправить дисбаланс в длине положительного и отрицательного корпусов?
Должен ли я скорректировать оценку настроения, чтобы нормализовать каждый положительный/отрицательный счет на соответствующих длинах корпусная, что:
настроения * = ((# positive_matches/# words_in_positive_corpus) - (# negative_matches/# words_in_negative_corpus))/(document_word_count)
Любые мысли/проверка исправности/совет высоко ценится :)
Вы имеете какое-либо влияние на данный положительный/отрицательный словарный словарь? – Stephan
Да - я использую словарь Loughran McDonald, но это полностью зависит от меня – Alex
Нахождение хорошего лексикона всегда очень ценно. Возможно, вы можете перекрестно проверить несколько лексиконов и взвесить слова на основе nr. (см. мой ответ) – Stephan