Skip to content
/ tweets Public

Цель проекта - анализ тональности твитов. Для сообщений пользователей из тестового набора, необходимо предсказать с максимально возможным результатом, является ли тональность твита положительной, отрицательной или нейтральной.

Notifications You must be signed in to change notification settings

dbadeev/tweets

Repository files navigation

Проект Tweets


Постановка задачи

Цель проекта - анализ тональности твитов.
Для сообщений пользователей из тестового набора, необходимо предсказать с максимально возможным результатом, является ли тональность твита положительной, отрицательной или нейтральной.

При этом, необходимо:

  1. Подготовка данных Для получения эмбеддигов, обработать исходные сообщения, используя различные подходы:
    just tokenization -- stemming -- lemmatization -- stemming+misspellings -- lemmatization+misspellings -- any other ideas of preprocessing || 0 or 1, if word exists -- word count -- TFIDF

  2. Определение сходства Среди датасетов, полученных в результате использования различных подходов к предварительной обработке данных, с помощью косинусного сходства, найти 10 наиболее похожих пар твитов

  3. Машинное обучение Провести анализ тональности сообщений, используя разные алгоритмы машинного обучения и наборы данных, полученных в результате использования различных подходов к предварительной обработке. Результат оценки предсказания (accuracy) на тестовом датасете должен иметь минимальную точность 0.832

  4. Bonus:

    • Использовать иные методы для векторного представления слов (например, word2vec)
    • Результат оценки предсказания (accuracy) на тестовом датасете должен иметь минимальную точность 0.873

Замечания: При необходимости, при подготовке данных можно использовать различные способы очистки данных, включая исключение незначащих стоп-слов.

Начало Работы

Копирование

Для копирования файлов Проекта на локальный компьютер в папку <your_dir_on_local_computer> выполните:

    $ git clone git@github.com:dbadeev/tweets.git <your_dir_on_local_computer>

Описание файлов

  • tweets.pdf - текст задания
  • requirements.txt - список библиотек, необходимых для работы
  • Папка data
    • processedNegative.csv - файл с твитами негативной тональности
    • processedNeutral.csv - файл с твитами нейтральной тональности
    • processedPositive.csv - файл с твитами позитивной тональности
  • tweets.ipynb - ноутбук проекта
  • text_cleaninig.py - утилиты "чистки" текста твитов
  • text_processing.py - утилиты векторизации текста твитов
  • w2v_ml.py - утилиты векторизации с помощью Word2Vec и предварительно обученных моделей представления векторов слов
  • cosine_similarity.py - утилиты вычисления косинусного сходства векторов представлений слов
  • machine_learning.py - утилиты нахождения оптимальных параметров различных моделей машинного обучения для подсчета accuracy с помощью GridSearch
  • Папка res
    • cos_sim.csv - файл с 10 наиболее схожими парами твитов среди датасетов, полученных в результате использования различных подходов к предварительной обработке данных
    • df_df_prep.csv - файл с твитами, полученными в результате использования различных подходов к предварительной обработке данных

Запуск

В файле tweets.ipynb приведена пошаговая реализация проекта с пояснениями и промежуточными результатами.

Авторы

loram (Дмитрий Бадеев)
gdorcas (Татьяна Смирнова)



Результат в School 21

image

About

Цель проекта - анализ тональности твитов. Для сообщений пользователей из тестового набора, необходимо предсказать с максимально возможным результатом, является ли тональность твита положительной, отрицательной или нейтральной.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published