В этой статье я объясню основы алгоритма наивного Байеса.

Что такое Наивный алгоритм Байеса?

Наивный Байес — это метод статистической классификации, основанный на теореме Байеса. Классификатор NB — это быстрый, точный и надежный алгоритм. Наивный байесовский классификатор обладает высокой точностью и скоростью работы с большими наборами данных.

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

Где,

· P(h|D): вероятность гипотезы h при данных D.

· P(D|h) – вероятность данных D при условии, что гипотеза h верна.

· P(h) – вероятность того, что гипотеза h верна. Это называется апостериорной вероятностью.

· P(D) – вероятность того, что данные.

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

Первый подход (в случае одной функции)

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

· Шаг 1: Рассчитать априорную вероятность для заданных меток класса.

· Шаг 2: Найдите вероятность правдоподобия для каждого атрибута для каждого класса.

· Шаг 3: Поместите эти значения в формулу Байеса и рассчитайте апостериорную вероятность.

· Шаг 4: Посмотрите, какой класс имеет более высокую вероятность, учитывая, что входные данные принадлежат к более высокому классу вероятности.

Для упрощения расчета априорной и апостериорной вероятности вы можете использовать две таблицы частот и таблицы правдоподобия. Обе эти таблицы помогут вам рассчитать априорную и апостериорную вероятность. Таблица частот содержит вхождение меток для всех признаков. Есть две таблицы вероятности. Таблица правдоподобия 1 показывает априорную вероятность меток, а таблица правдоподобия 2 показывает апостериорную вероятность.

Теперь предположим, что мы хотим вычислить вероятность игры в пасмурную погоду.

Возможность воспроизведения ДА

· P (да | пасмурно) = P (пасмурно | да) * P (да) / P (пасмурно)……………………………… (1)

· Шаг 1: Расчет априорных вероятностей:

- P (пасмурно) = 4 / 14 = 0,29

- Р (Да) = 9/14 = 0,64

· Шаг 2: Расчет апостериорных вероятностей:

- P (пасмурно | да) = 4/9 = 0,44

· Шаг 3: Поместите априорную и апостериорную вероятности в уравнение:

- P (Да | Пасмурно) = 0,44 * 0,64 / 0,29 = 0,97 (Выше)

Аналогичным образом мы можем рассчитать вероятность игры №

· P (Нет | Облачно) = P (Облачно | Нет) * P (Нет) / P (Облачно)……………………………… (2)

· Шаг 1: Расчет априорных вероятностей:

- P (пасмурно) = 4 / 14 = 0,29

- P (No) = 5/14 = 0.35

· Шаг 2: Расчет апостериорных вероятностей:

- P (Облачно | Нет) = 0/5 = 0,0

· Шаг 3: Поместите априорную и апостериорную вероятности в уравнение:

  • P (Нет | Пасмурно) = 0 * 0,35 / 0,29 = 0

Вероятность класса «Да» выше. Таким образом, здесь мы можем определить, будет ли пасмурная погода, чем игроки будут заниматься спортом.

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

Вероятность игры:

· P (Воспроизведение= Да | Погода=Облачно, Температура=Умеренно) = P(Погода=Облачно, Температура=Умеренно | Воспроизведение= Да)P(Воспроизведение=Да)….(1)

· P(Weather=Облачно, Temp=Умеренно | Play= Да)= P(Облачно |Да) P(Умеренно |Да) ………..(2)

· Расчет априорных вероятностей:

· Р(Да)= 9/14 = 0,64

· Расчет апостериорных вероятностей:

· P(пасмурно |да) = 4/9 = 0,44 P(слабо |да) = 4/9 = 0,44

· Поместите апостериорные вероятности в уравнение (2)

· P(Погода=пасмурно, температура=мягкая | игра=да) = 0,44 * 0,44 = 0,1936 (выше)

· Подставьте априорную и апостериорную вероятности в уравнение (1) P(Игра = Да | Погода = Пасмурно, Температура = Мягкая) = 0,1936 * 0,64 = 0,124

Аналогично можно рассчитать вероятность не сыграть:

Вероятность не играть:

· P(Play= Нет | Погода=Облачно, Temp=Умеренно) = P(Weather=Облачно, Temp=Умеренно | Play= Нет)P(Play=Нет) ….(3)

· P(Weather=Облачно, Temp=Умеренно | Play= Нет)= P(Weather=Облачно |Play=Нет) P(Temp=Умеренно | Play=Нет) …..(4)

· Расчет априорных вероятностей:

· P(No)= 5/14 = 0.36

· Расчет апостериорных вероятностей:

· P(Погода=Облачно |Игра=Нет) = 0/9 = 0 P(Температура=Умеренная | Игра=Нет)=2/5=0,4

· Подставить апостериорные вероятности в уравнение (4)

· P(Погода=пасмурно, температура=мягкая | игра=нет) = 0 * 0,4= 0

· Поместите априорную и апостериорную вероятности в уравнение (3)

· P(Play=Нет | Погода=Облачно, Температура=Умеренно) = 0*0,36=0

· Вероятность получения ответа «Да» выше.

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