Создание модели глубокого обучения для выявления ненадежных новостных статей

Что такое фейковые новости?

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

Цель

Разработать классификатор фейковых новостей с использованием двунаправленной долговременной кратковременной памяти (LSTM) с использованием языка программирования Python и Keras на платформе Cainvas.

Предпосылки

Прежде чем приступить к работе, вы должны хорошо понимать:

  1. Язык программирования Python
  2. Keras — библиотека глубокого обучения

Набор данных

мы собираемся использовать набор данных train.csv для обучения модели, а затем делаем прогнозы для набора данных test.csv.

вы можете скачать эти CSV-файлы с Kaggle:

URL: https://www.kaggle.com/c/fake-news/data

Импорт всех необходимых библиотек

давайте импортируем все необходимые библиотеки:

Загрузка и обработка данных

Давайте загрузим наш файл данных train.csv с помощью pandas.

Вывод:

сбросьте значения nan:

загрузить X и y с независимыми и зависимыми функциями:

Одно горячее представление:

Размер словарного запаса:

Получение копии независимых функций:

Загрузка стоп-слов:

мы используем метод стоп-слов nltk для удаления стоп-слов из наших данных, NumPy для операций с массивами и pandas для обработки данных.

Предварительная обработка набора данных:

вывод:

вывод:

Встраивание представления:

обратитесь к: https://towardsdatascience.com/neural-network-embeddings-explained-4d028e6f0526

вывод:

Построение модели:

вывод:

Разделение тестового обучения:

здесь мы используем пакет sklearn.model_selection для разделения данных на данные поезда и тестовые данные.

Модель обучения:

вывод:

Прогнозирование и тепловая карта:

вывод:

Точность модели:

вывод:

вывод:

Загрузка тестовых данных:

вывод:

Создание прогнозов для тестовых данных:

Объединение тестовых данных и предсказанных меток:

вывод:

URL для доступа к Блокноту: https://cainvas.ai-tech.systems/use-cases/fake-news-classification-app-using-lstm/

Вывод

Мы обучили нашу простую двунаправленную модель LSTM на наборе данных фальшивых новостей и получили точность 90%. Есть много других моделей машинного обучения, которые работают намного лучше, но давайте признаем, что модели машинного обучения требуют большого количества функций и обработки данных. Мы используем модель глубокого обучения, чтобы позволить модели разобраться во всем самостоятельно.

Источник: Ом Чайтанья В.