Другими словами, вы пытаетесь рассчитать вероятность того, что электронное письмо – спам, опираясь на слова, содержащиеся в строке темы, (w1, w2, w3, …). Если эта вероятность превышает вероятность того, что письмо спамом не является, мы отмечаем его как спам. Эти конкурирующие вероятности записываются с помощью следующей нотации:

– Вероятность того, что электронное письмо является спамом = P(спам | w1, w2, w3, …).

– Вероятность того, что электронное письмо не является спамом = P(не спам | w1, w2, w3, …).

Прежде чем двигаться дальше, давайте изучим данные в табл. 11.4. Нам известна вероятность, с которой каждое из слов встречается в спам (и не спам) письмах. Слово «бесплатно» присутствовало в трех из четырех спам-сообщений, поэтому вероятность встретить данное слово при условии, что письмо является спамом, составляет P(бесплатно | спам) = 0,75. Выполнив аналогичные расчеты для слов «долг» и «мама», мы получим: P(долг | спам) = 0,25, P(мама | не спам) = 1 и так далее.

Что нам это дает? Мы хотим знать вероятность того, что то или иное электронное письмо – спам при условии наличия в нем определенных слов. При этом нам известна вероятность встретить то или иное слово в письме при условии того, что оно является спамом. Эти две вероятности не одинаковы, но они связаны теоремой Байеса (см. главу 6). Как вы помните, основная идея данной теоремы – поменять условные вероятности местами. Таким образом, вместо P(спам | w1, w2, w3, …) мы можем использовать P(w1, w2, w3, … | спам). Благодаря дополнительным расчетам (которые мы опускаем для краткости[119]) принятие решения относительно классификации нового электронного письма как спам-сообщения сводится к выяснению того, какое из двух значений выше:

1. Оценка «спам» = P(спам) × P(w1 | спам) × P(w2 | спам) × P(w3 | спам).

2. Оценка «не спам» = P(не спам) × P(w1 | не спам) × P(w2 | не спам) × P(w3 | не спам).

Вся эта информация содержится в табл. 11.4. Вероятности P(спам) и P(не спам) отражают долю спама и не спама в обучающих данных – 80 % и 20 % соответственно. Другими словами, если бы вы хотели делать предположения, не глядя на строку темы, вы бы предполагали, что письмо – «спам», потому что такие письма составляют класс большинства в обучающих данных.

Чтобы прийти к приведенным выше формулам, наивный байесовский алгоритм совершил то, что обычно считается вопиющей ошибкой при работе с вероятностями, а именно – допустил отсутствие зависимости между событиями. Вероятность встретить в спам-сообщении оба слова «бесплатно» и «Виагра», обозначаемая как P(бесплатно, виагра | спам), зависит от того, насколько часто эти слова встречаются в одном и том же письме, однако это значительно усложняет вычисления. «Наивность» наивного байесовского алгоритма выражается в предположении независимости всех вероятностей: P(бесплатно, виагра | спам) = P(бесплатно | спам) × P(виагра | спам).

Перейти на страницу:

Все книги серии Мировой компьютерный бестселлер

Похожие книги