412>РазложениеЗадано разделение обеспечивается подмножества, переменные значения d , каждый из которых соответствует одному из этих подмножеств. Каждая переменная как конъюнкция получается чис , принадлежащие подмножество. Рекурсивное применение теоремы Байеса приводит к:
Условная независимость гипотезы позволяют дальнейшие упрощения. Гипотеза условной независимости для модели определен выбор некоторой переменной среди чисел, входящие в соединение , маркировка как соединение этих выбранных чисел и установка:
Затем получаем:
Такое упрощенное совместное распределение как продукт более простого распределения называется декомпозицией, полученной с использованием цепного правила .
Это гарантирует, что каждая другая переменная появляется не более одного раза слева от полосы кондиционирования, что необходимо и достаточным условием для написания математически верных разложений.
Формы
Каждое распределение , появляющееся в продукте, затем ассоциируется либо с параметрической формой (т. е. функция ) или вопрос по другой байесовской программе .
Когда это форма , как правило, - векторные параметры, которые могут зависеть от или или и то, и другое. Обучение происходит, когда некоторые из этих параметров вычисляются с использованием набора данных .
Важной особенностью байесовского программирования является способность использовать в качестве других байесовских программам в компонентах новую байесовскую программу. получается с помощью некоторых выводов, сделанных другой байесовской программой, определенной спецификациями и данных . Это похоже на вызов подпрограммы в классическом программировании и обеспечивает простой способ построения иерархических моделей.
Вопрос
Учитывая описание (т. Е. ), вопрос получается разделением на три набора: искомые переменные, известные переменные и свободные переменные.
3 переменные , и выбор как совокупность, принадлежащих этим множествам.
Вопрос определяется как набор распределений:
последовательность из множества «конкретных вопросов» как кардинал , каждый конкретный вопрос представляет собой распределение:
Вывод
Учитывая совместное распределение , всегда можно вычислить любой возможный вопрос, используя следующий общий вывод:
где первое равенство следует из правил маргинализации, второе - из теоремы Байеса а третье соответствует второму применению маргинализации. Знаменатель выглядит как нормализационный член и может быть заменен константой .
Теоретически это позволяет решить любую проблему байесовского вывода. Однако на практике стоимости исчерпывающих и точных вычислений почти во всех случаях слишком велико.
Заменяя совместное распределение его разложением, получаем:
, которое является гораздо более простым выражением для вычислений, поскольку размер задачи обычно увеличивается при разложении на распределение более низкой размерности.
Пример
Байесовское обнаружение спама
Целью байесовской фильтрации спама устранение нежелательных сообщений электронной почты.
Задачу очень легко сформулировать. Электронные сообщения следует классифицировать по одной из двух категорий: не спам и спам. Единственная доступная информация для электронной классификации писем - это их содержание: набор слов. Использование этих слов без учета порядка обычно называется моделью набора слов.
. Кроме того, классификатор должен уметь адаптироваться к своему пользователю и учиться на опыте. Новый стандартный стандартный режим, классификатор должен изменить свои внутренние параметры. Таким образом, он будет адаптироваться к критериям пользователя, чтобы различать спам и не спам. Это улучшит свои результаты, поскольку он сталкивается со всеми более засекреченными электронными письмами.
Переменные
Переменные, необходимые для написания этой программы, следующие:
- : двоичная переменная, ложь, если электронная почта не Не будет спамом, и в противном случае будет потеряна правда.
- : двоичные переменные. истинно, если слово словаря присутствует в тексте.
Эти двоичныепеременные суммируют всю информацию об электронном письме.
Разложение
Исходя из совместного распределения и рекурсивно применяя теорему Байеса, получаем:
Это это точное математическое выражение.
Его можно значительно упростить, если предположить, что вероятность появления слова, зная характер текста (спам или нет), не зависит от других появления слов. Это наивное байесовское допущение, и это делает этот спам-фильтр наивной байесовской моделью.
Например, программист может предположить, что:
, чтобы в итоге получить:
Такое предположение известно как наивное предположение Байеса. Это «наивно» в том смысле, что независимость между словами явно не совсем верна. Например, он полностью игнорирует то, что появление пар слов может иметь большее значение, чем отдельные проявления. Однако программист может принять эту гипотезу и разработать модель и связанные с ней выводы, чтобы проверить, насколько она надежна и эффективна.
теперь Параметрические формы
иметь возможность вычислить совместное распределение, программист должен указать появляющиеся распределения в разложении:
- заранее определено, например,
- Каждая из формирует можно указать с помощью правил следовать Лапласа (это псевдосчет -основанный метод сглаживания для решения проблемы нулевой частоты слов, ранее не встречавшихся):
где обозначает количество появлений слова в электронных письмах, не являющиеся спамом, а обозначает общее количество электронных писем, не являющихся спамом. Аналогично, обозначает количество появлений слово в спам-сообщениях, а обозначает общее количество спам-сообщений.
Идентификация
формирует еще не решено полностью, потому что параметры , , и не имеют значений пока что.
Идентификация этих параметров может быть выполнена либо путем пакетной обработки серии классифицированных сообщений электронной почты, либо через посредство обновления параметров с использованием пользовательских сообщений электронной почты по мере их поступления.
Метод может начать с начальных стандартных значений этих параметров, полученных из общих баз данных, количество инкрементного обучения настраивает классификатор каждого отдельного пользователя.
Вопрос
Вопрос, задаваемый программой: «какова вероятность того, что данный текст будет спамом, зная, какие слова появляются, а какие нет в этом тексте?» Его можно формализовать следующим образом:
который может быть вычислен следующим образом: