В этой статье мы узнаем о работе другого традиционного алгоритма машинного обучения под названием «Наивный Байесовский».

Вступление

Наивный алгоритм Байеса - это метод классификации, основанный на теореме Байеса с допущением независимости между предикторами. Теорема Байеса утверждает, что:

Используя теорему Байеса, мы можем найти вероятность того, что произойдет A, при условии, что произошло B. Здесь B - свидетельство, а A - гипотеза. Сделанное здесь предположение состоит в том, что функции независимы. То есть наличие одной особенности не влияет на другую. Отсюда его называют наивным.

Работающий

Теорема Байеса утверждает следующую взаимосвязь для данной переменной класса y и зависимого признака x1 от вектора до xn:

Используя наивное предположение условной независимости,

для всех i эта связь упрощается до

Различные наивные байесовские классификаторы различаются в основном предположениями, которые они делают относительно распределения P (xi ∣ y).

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

Типы наивного байесовского классификатора:

Полиномиальный наивный байесовский метод:

Это в основном используется для задач классификации документов, например, если документ является резюме, или он относится к категории спорта, технологий и т. Д. Функции, используемые классификатором, - это частота слов, присутствующих в документе.

Наивный Байес Бернулли:

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

Наивный Байес по Гауссу:

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

Реализация

Шаги по реализации Наивного Байеса:

Шаг 1. Преобразуйте набор данных в таблицу частот.

Шаг 2: Создайте таблицу правдоподобия, найдя вероятности.

Шаг 3: Теперь используйте наивное байесовское уравнение для вычисления апостериорной вероятности для каждого класса. Результатом предсказания является класс с самой высокой апостериорной вероятностью.

Реализация в Google Colab (CODE):

Плюсы:

  • Легко и быстро предсказать класс набора тестовых данных. Он также хорошо работает при прогнозировании нескольких классов.
  • Когда выполняется предположение о независимости, наивный байесовский классификатор работает лучше по сравнению с другими моделями, такими как логистическая регрессия, и вам нужно меньше данных для обучения.
  • Он хорошо работает в случае категориальных входных переменных по сравнению с числовыми переменными. Для числовых переменных предполагается нормальное распределение (кривая колокола, что является сильным предположением).

Минусы

  • Если категориальная переменная имеет категорию (в наборе тестовых данных), которая не наблюдалась в наборе обучающих данных, то модель присвоит вероятность 0 (ноль) и не сможет сделать прогноз. Это часто называют «нулевой частотой». Чтобы решить эту проблему, мы можем использовать технику сглаживания. Один из простейших методов сглаживания называется оценкой Лапласа.

Заключение

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

Вы можете связаться со мной по адресу:

LinkedIn: https://www.linkedin.com/in/manmohan-dogra-4a6655169/

GitHub: https://github.com/immohann

Twitter: https://twitter.com/immohann