Лучший алгоритмический подход к анализу настроений [закрыто
-
11-10-2019 - |
Вопрос
Мое требование заключается в новостных статьях и определение того, являются ли они положительными или отрицательными по поводу предмета. Я использую подход, описанный ниже, но я продолжаю читать NLP, возможно, здесь полезен. Все, что я прочитал, указало на обнаружение NLP от факта, что я не думаю, что в моем случае будет иметь большое значение. Мне интересно две вещи:
1) Почему мой алгоритм не работает и/или как я могу его улучшить? (Я знаю, что сарказм, вероятно, был бы ловушкой, но опять же я не вижу, чтобы это произошло в том виде новостей, которые мы будем получать)
2) Чем бы НЛП помог, почему я должен использовать его?
Мой алгоритмический подход (у меня есть словари положительных, негативных и отрицательных слов):
1) Подсчитать количество положительных и отрицательных слов в статье
2) Если слово отрицания найдено с 2 или 3 словами положительного или негативного слова, (то есть: не самое лучшее) отрицайте оценку.
3) Умножьте оценки на веса, которые были назначены вручную каждому слову. (1.0 для начала)
4) Сложите итоги для положительного и отрицательного, чтобы получить оценку настроений.
Решение
Я не думаю, что есть что -то особенно неправильный С вашим алгоритмом, это довольно простой и практичный способ, но есть много ситуаций, когда он будет делать ошибки.
Неоднозначные чувственные слова - «Этот продукт работает ужасно» против «этот продукт ужасно хорош»
Пропущенные отрицания - «Я бы никогда не сказал, что этот продукт стоит покупать»
Цитируемый/косвенное текст - «Мой папа говорит, что этот продукт ужасен, но я не согласен»
Сравнения - «Этот продукт примерно так же полезен, как дыра в голове»
Что -нибудь тонкое - «Этот продукт некрасивый, медленный и скучный, но это единственное, что на рынке делает работу»
Я использую обзоры продуктов для примеров вместо новостей, но вы понимаете. На самом деле, новостные статьи, вероятно, сложнее, потому что они часто будут пытаться показать обе стороны аргумента и склонны использовать определенный стиль, чтобы передать точку зрения. Например, последний пример довольно распространен во мнении.
Что касается НЛП, помогая вам в этом, Слово смысл неоднозначности (или даже просто Часть речи) может помочь с (1), Синтаксический анализ может помочь с долгосрочными зависимостями в (2), какой -то вид канкинг может помочь с (3). Это вся работа на уровне исследования, я ничего не знаю, что вы можете напрямую использовать. Проблемы (4) и (5) намного сложнее, я поднимаю руки и сдаюсь в этот момент.
Я бы придерживался того подхода, который у вас есть, и внимательно посмотрел на вывод, чтобы увидеть, делает ли он то, что вы хотите. Конечно, это затем поднимает вопрос о том, что вы хотите, вы понимаете, что определение «чувства» в первую очередь ...
Другие советы
Мой любимый пример - «Просто прочитайте книгу». Он не содержит явного настроения и в зависимости от контекста. Если это обзор в фильме, это означает, что с выходом в жизнь-это, но брюшная, но являясь. Однако, если это в обзоре книги, это дает положительное настроение.
А как насчет - «Это самый маленький [мобильный] телефон на рынке». Еще в 90 -х, это была великая похвала. Сегодня это может указывать на то, что это слишком мало.
Я думаю, что это место для начала, чтобы получить сложность анализа настроений: http://www.cs.cornell.edu/home/llee/opinion-mining-sentiment-analysis-survey.html (Лилиан Ли из Корнелла).
Вы можете найти систему PrincomeFinder и документы, описывающие ее полезными. Он доступен в http://www.cs.pitt.edu/mpqa/ с другими ресурсами для анализа мнений.
Он выходит за рамки классификации полярности на уровне документа, но постарайтесь найти индивидуальные мнения на уровне предложения.
Я считаю, что лучший ответ на все упомянутые вами вопросы - читать книгу под названием "Анализ настроений и добыча мнений" профессор Бинг Лю. Анкет Эта книга - лучшая в области анализа настроений. Это потрясающе. Просто посмотрите на это, и вы найдете ответ на все ваши вопросы «почему» и «как»!
Методы машинного обучения, вероятно, лучше.
Whitelaw, Garg и Argamon Иметь метод, который достигает 92% точности, используя метод, аналогичную вашей для работы с отрицанием, и поддержки векторных машин для классификации текста.
Почему бы тебе не попробовать что -то похожее на то, как Спамасассин Spam Filter работает? На самом деле не так уж много различий между добычей интенсивности и добычей мнений.