Улучшение обнаружения поддельных новостей с помощью несбалансированного набора данных с использованием методов машинного обучения и SMOTE

По данным Pew Research Center, 50% американцев считают фейковые новости серьезной проблемой. И обнаружение фейковых новостей было проблемой, которую многие исследователи стремились улучшить.

Поскольку меня интересует та же проблема, с которой сталкиваются многие средства массовой информации, я решил использовать набор данных FakeNewsNet и методы машинного обучения, чтобы улучшить обнаружение фейковых новостей и разработать веб-приложение Fake Детектор новостей.

Соответствующее исследование

Предыдущие исследования по обнаружению фальшивых новостей в сообществе компьютерных наук использовали различные методы, такие как интеллектуальный анализ данных, машинное обучение и глубокое обучение. Две связанные статьи будут кратко рассмотрены ниже.

FakeBERT: обнаружение фальшивых новостей в социальных сетях с помощью подхода глубокого обучения на основе BERT (2021 г.)

В этой статье исследователи предлагают подход глубокой свертки на основе двунаправленных представлений кодировщика от трансформаторов (BERT) для обнаружения фальшивых новостей с использованием новостей, которые распространялись во время президентских выборов 2016 года.

Исследователи используют BERT в качестве кодировщика предложений и различные параллельные блоки однослойных CNN для точного захвата контекста предложения. Это исследование отличается от других исследований, поскольку оно использует двунаправленный подход к обучению.

FakeNewsNet: хранилище данных с новостным контентом, социальным контекстом и пространственно-временной информацией для изучения фейковых новостей в социальных сетях (2019 г.)

FakeNewsNet — это многомерное хранилище данных о фальшивых новостях с функциями новостного контента, социального контекста и пространственно-временной информации.

В этой статье исследователи стремятся улучшить обнаружение фейковых новостей с помощью FakeNewsNet путем включения различных моделей машинного обучения, таких как SVM, логистическая регрессия, наивный байесовский анализ и CNN.

Набор данных

Набор данных FakeNewsNet содержит данные о новостном содержании, социальном контексте и пространственно-временной информации.

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

Новостной контент включает новости с сайтов проверки фактов, Politifact и GossipCop.

Социальный контекст включает взаимодействия пользователей, связанные с поддельными и реальными новостями (ответы, отметки "Нравится", репосты, профили пользователей, публикации пользователей и информацию в социальных сетях). API поиска.

Пространственно-временная информация включает в себя пространственную (местоположение пользователя указывается в профиле) и временную (временные метки действий пользователя) информацию и полезна для изучения проблем с фальшивыми новостями из временная перспектива.

Для этого проекта я решил использовать данные Politifact и GossipCop (всего 5755 фейковых новостей, всего 17441 реальная новость), чтобы улучшить обнаружение фейковых новостей.

Метод

В то время как исследователи статьи FakeNewsNet применили модели машинного обучения к наборам данных Politifact и GossipCop по отдельности, я решил применить другой подход, объединив эти наборы данных, обработав несбалансированные данные, а затем применив модели машинного обучения.

Объединение наборов данных Politifact и GossipCop

Фреймы данных поддельных новостей Politifact и GossipCop объединяются с помощью функции конкатенации Numpy. То же самое было сделано для кадров данных реальных новостей.

Мы видим, что количество настоящих новостей более чем в три раза превышает количество поддельных новостей.

К фреймам данных фальшивых новостей и реальных новостей были добавлены флаги: 1 указывает на фальшивые новости и 0 указывает на настоящие новости. .

Фрейм данных allnews, объединяющий поддельные и настоящие новости, включает как поддельные, так и настоящие новости от Politifact и GossipCop.

Обработка несбалансированных данных

Одна проблема с набором данных заключается в том, что общее количество реальных новостей (17441 настоящая новость) более чем в три раза превышает общее количество поддельных новостей (5755 фейковые новости). Следовательно, модели классификаторов могут неточно идентифицировать класс меньшинства (фальшивые новости).

Существует несколько способов обработки несбалансированных данных. Одним из них является ресэмплинг (избыточная и недостаточная выборка). Однако при недостаточной выборке будет отброшено более 10 000 записей данных новостей, чтобы соответствовать количеству данных класса меньшинства.

Чтобы решить эту проблему, применяется метод синтетической передискретизации меньшинства (SMOTE) для передискретизации миноритарного класса. SMOTE добавляет недублированные и синтезированные записи из существующего набора данных класса меньшинства без добавления какой-либо новой информации в модель.

После применения векторизатора TF-IDF для преобразования текста (заголовков новостей) в осмысленное представление чисел данные делятся на обучающие и тестовые наборы с 70–30 разделить

Применение моделей машинного обучения

Из применяемых моделей классификатора (логистическая регрессия, наивный байесовский подход, SVM и XGBoost) наивное байесовское сравнение до и после SMOTE будет обсуждаться ниже.

Наивный байесовский алгоритм — это алгоритм, основанный на теореме Байеса, который широко используется для классификации и обработки естественного языка (NLP) задачи.

До использования SMOTE модель хорошо обнаруживала настоящие новости (о чем свидетельствует очень высокий показатель True Positive), но плохо обнаруживала поддельные новости (показывает низкий показатель Истинно отрицательный).

По словам исследователя данных Joos Korstanje, использование SMOTE может настроить модель, чтобы уменьшить количество ложных отрицательных результатов за счет увеличения ложных положительных результатов. Результатом использования SMOTE обычно является увеличение отзыва за счет более низкой точности.

После применения SMOTE, а затем обучения данных с помощью мультиномиального наивного байесовского алгоритма, удалось лучше обнаруживать поддельные новости, увеличив показатель F1 на более чем на 45 % с 0,43 до 0,63.

Результат

Ниже приведено сравнение окончательной эффективности моего подхода и результатов исследователей FakeNewsNet.

  • Логистическая регрессия и Наивный байесовский анализ оказались наиболее эффективными моделями для обнаружения поддельных новостей, в то время как SVM и XGBoost неэффективны. настолько хорошо.
  • Объединив наборы данных Politifact и GossipCop, а затем используя логистическую регрессию и SMOTE, показатель F1 улучшился с 0,63 до 0,65.
  • Оценка F1 FakeNewsNet для набора данных GossipCop выше из-за большего количества реальных новостей по сравнению с количеством поддельных новостей.