Анализ настроений в статьях по науке о данных Medium 2021

Информация о данных

Источник данных: https://www.kaggle.com/viniciuslambert/medium-2021-data-science-articles-dataset

План анализа

Основываясь на данных, я заинтересован в проведении анализа тональности для переменной title и статистического анализа того, как тональность варьируется между тегами.

Цель состоит в том, чтобы создать модель, классифицировать текст, чтобы изучить присутствующую тональность и сравнить общую тональность заголовка между тегами.

модель НЛП

Я планирую выполнять следующие задачи НЛП:

  • Предварительная обработка текста с использованием регулярных выражений и NLTK.
  • Исследовательский анализ данных с пандами и морскими животными.
  • Анализ настроений с использованием набора слов и наивного байесовского классификатора.

Предварительная обработка текста

Чтобы удалить ненужные символы и слова и стандартизировать регистр, были полезны следующие задачи предварительной обработки текста:

Удаление шума

  • Пунктуация
  • Стоп-слова
  • URL-адреса
  • HTML-теги

Нормализация текста

  • Нижний корпус

Предварительно обработанная переменная title

Исследовательский анализ данных

  • Построил гистограмму, используя встроенный API-интерфейс pandas.

Анализ настроений

Переменная title отнесена к одной из двух категорий:

  • Положительный
  • Отрицательный

Использована наивная байесовская классификация для определения тональности заголовков в переменной title.

Создал классификатор, используя данные Twitter с известными настроениями, а затем создал средство извлечения признаков, которое определяет, присутствует ли свойство в заголовке.

Созданы наборы для обучения и тестирования с использованием библиотеки random для случайного выбора твитов для каждого токена.

Производительность моей модели на моем тренировочном наборе с использованием функции classify()

Оценка всех заголовков в корпусе данных носителя

Моя модель предсказывает, что 60,2 % заголовков в корпусе являются положительными

Сравнение настроений по тегам

Столбчатая диаграмма показывает настроения по категориям, которые представляют, какие категории являются наиболее положительными/отрицательными.

Спасибо за прочтение, посмотрите мой код здесь. Если у вас есть какие-либо вопросы или идеи, оставьте комментарий!