В этой статье мы узнаем о работе другого традиционного алгоритма машинного обучения под названием «Наивный Байесовский».
Вступление
Наивный алгоритм Байеса - это метод классификации, основанный на теореме Байеса с допущением независимости между предикторами. Теорема Байеса утверждает, что:
Используя теорему Байеса, мы можем найти вероятность того, что произойдет 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