Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мой отчет opinion meaning.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
189 Кб
Скачать
☆

Практическое применение

В качестве примера практического применения классификатора тональности, я реализовал на скорую руку классификатор твитов, схема работа которой следующая:

  1. производим поиск в Твиттере по названию фильмов

  2. пропускаем твиты через классификатор тональности

  3. получаем положительные и отрицательные высказывания о фильмах из Твиттера

Пример работы анализатора:

Как видно, результаты не особо удовлетворительные. Классификатор делает 2 типа ошибок:

  1. Классифицирует нейтральные твиты (описание фильма, новости, спам) как положительные/отрицательные

  2. Неправильно классифицирует тональность отзывов

Первый тип ошибок можно исправить, если добавить дополнительный классификатор, который будет фильтровать нейтральные твиты. Это непростая задача, но вполне осуществимая. Второй тип ошибок возникает в основном из-за того, что твиты сильно отличаются от коллекции обучения: присутствует сленг, орфографические ошибки, отличается манера высказывания. Тут надо либо искать другую коллекцию для обучения классификатора (взять те же твиты, например), либо улучшить набор признаков (например, добавить смайлы). Но в целом, этот пример показывает, что создать систему анализа мнений в Твиттере вполне возможно.

Заключение

Создание системы анализа мнений является сложной задачей, но вполне посильной, если имеются данные для обучения и заранее определен домен (тема). При использовании машинного обучения важно тестировать разные параметры, чтобы подобрать те, которые работают лучше на тестовых данных. В частности нужно тестировать разные алгоритмы классификации (NB, SVM), набор признаков (униграммы, биграммы, символьные N-граммы), функцию взвешивания признаков. Существует еще куча способов для улучшения классификации тональности, такие как использование тональных словарей, дополнительные лингвистические признаки (например, части речи), так и общие способы улучшение машинного обучения (бустинг, баггинг и др.). В этой статье я постарался описать лишь основные методы.

FAQ:

В демо неправильно классифицируются отзывы! — да, это всего лишь прототип написанный за день А что если в тексте присутствует и положительный, и отрицательный отзыв? — текущий алгоритм классифицирует только один из них А если я специально напишу негативный отзыв положительными словами? — он будет неправильно классифицирован (а что вы ожидали от компьютера?)