Наивный байесовский - это тип контролируемого алгоритма обучения, который относится к байесовской классификации. Он использует вероятность для прогнозного анализа.

Доказательство байесовского уравнения:

Если мы рассмотрим два класса A и B, такие что →

Тогда вероятность A при B = P (A | B) =

И вероятность B при A = P (B | A) =

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

Области применения наивного байесовского классификатора: →

  1. Категоризация новостей (спорт, здравоохранение, СМИ, развлечения и т. Д.)
  2. Фильтрация спама (отнесение писем к спаму или спаму)
  3. Распознавание лиц и обнаружение объектов
  4. Медицинский диагноз
  5. Прогноз погоды

Как работает наивный байесовский алгоритм: →

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

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

Итак, различные вероятности, которые мы получаем из следующей таблицы: -

  • P (Даллас | Да) = 2/4 и P (Даллас | Нет) = 2/4
  • P (Нью-Йорк | Да) = 1/4 и P (Нью-Йорк | Нет) = 3/4.
  • P (Даллас) = 4/8 и P (Нью-Йорк) = 4/8
  • P (Да) = 3/8 и P (Нет) = 5/8

Таким образом, вероятность наличия сердечного заболевания указана, город - «Даллас» = P (Да | Даллас) = (P (Да) * P (Даллас | Да)) / P (Даллас) = ( (3/8) * (2/4)) / (4/8) = 0,375 [ Формула, полученная из байесовского уравнения ]

Аналогично, P (Нет | Даллас) = 0,625, P (Да | Нью-Йорк) = 0,18, P (Нет | Город Нью-Йорк) = 0,93

Итак, различные вероятности, которые мы получаем из следующей таблицы: -

  • P (Мужской | Да) = 2/5 и P (Мужской | Нет) = 3/5
  • P (Женский | Да) = 1/3 и P (Женский | Нет) = 2/3
  • P (мужской) = 5/8 и P (женский) = 3/8
  • P (Да) = 3/8 и P (Нет) = 5/8

Таким образом, вероятность наличия сердечного заболевания указывается в городе «Мужской» = P (Да | Мужской) = (P (Да) * P (Мужской | Да)) / P (Мужской) = ( (3/8) * (2/5)) / (5/8) = 0,24 [ Формула, полученная из байесовского уравнения ]

Аналогично, P (Нет | Мужской) = 0,6, P (Да | Женский) = 0,33, P (Нет | Женский) = 1,11.

Для тех столбцов, которые не являются категориальными, как столбец «Доход», мы будем использовать формулу Среднее, Стандартное отклонение и Нормальное распределение для расчета вероятности наличия у пациента сердечного заболевания. или не . Формулы имеют следующий вид: →

Для расчета вероятности любого нового значения X, по которому мы будем прогнозировать, есть ли у пациента заболевание сердца или нет, мы сначала вычислим значения среднее и стд. отклонение для столбца доходов в зависимости от наличия сердечного заболевания или не для соответствующего дохода человека. ** Затем мы рассчитаем вероятность того, что человек страдает сердечным заболеванием, или, не используя формулу нормального распределения, используя значение дохода для этого человека, мы должны спрогнозировать болезнь. ** [важно]

Теперь мы готовы к прогнозированию нового тестового набора данных. Итак, если нам нужно предсказать для этого следующее: →

Сначала мы рассчитаем вероятность, значение болезни 100000:

Вероятность того, что человек болен, равна → P (Доход = 10000 | Болезнь = Да) = (1 / (42397,5 * (2,506))) * (2,718) ^ - ((100000 –68386,66) ² / (2 * 42397,5²)) = 0,00000712789

Вероятность того, что человек не болеет, равна → P (Доход = 10000 | Болезнь = Нет) = (1 / (28972,49 * (2,506))) * (2,718) ^ - (( 100000 –79571,8) ² / (2 * 28972,49²)) = 0,0000107421

Прогноз: →

для: X = (Город = Даллас, Пол = Женский, Доход = 100 тыс.)

  • P (X | Класс = Нет) = P (Город = Даллас | Класс = Нет) * P (Пол = Женский | Класс = Нет) * P (Доход = 100K | Класс = Нет) = 2 / 4 * 2/3 * 0,00000712789 = 0,00000237596
  • P (X | Класс = Да) = P (Город = Даллас | Класс = Да) * P (Пол = Женский | Класс = Да) * P (Доход = 100K | Класс = Да) = 2 / 4 * 1/3 * 0,0000107421 = 0,000001790

** [Поскольку P (X | Нет) * P (Нет) ›P (X | Да) * P (Да)] **. Следовательно, [P (Нет | X)› P (Да | X)] = › Класс = Нет [Важно]. В качестве результата алгоритм выдаст Нет, а для этого тестового набора данных мы будем считать, что у пациента нет болезни сердца.

Самое важное, на что следует обратить внимание: →

** Если в нашем наборе данных есть только категориальные столбцы **, например столбцы «Город» и «Пол». Затем в этом случае мы выполняем следующие шаги: →

для: X = (Город = Даллас, Пол = Женский)

  • P (Класс = Нет | X) = P (Класс = Нет | Город = Даллас) * P (Класс = Нет | Пол = Женский) = 0,625 * 1,11 = 0,69375
  • P (Класс = Да | X) = P (Класс = Да | Город = Даллас) * P (Класс = Да | Пол = Женский) = 0,375 * 0,33 = 0,12375
  • Следовательно, P (Нет) = 0,69375 / (0,69375 + 0,12375) = 0,84862385321 & P (Да) = 0,12375 / (0,69375 + 0,12375) = 0,15137614678.

Поскольку P (Class = No | X)P (Class = Yes | X) и, следовательно, [P (No) P (Да)] = ›Class = No [Важно]. Аналогичным образом алгоритм выдаст Нет как вывод и для этого состояния также и мы будем считать, что у пациента не будет болезни сердца.

Так работает наивный байесовский алгоритм. Надеюсь, вам понравилось читать этот блог. Если у вас есть какие-либо вопросы, комментарии или проблемы, дайте мне знать в разделе комментариев. А пока наслаждайтесь обучением.