Наивный Байес и классификация текстов

NLP
Наивный Байес и классификация текстов

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

1. Наивный Байес

1.1 Формула Байеса

Учитывая выборку, мы используем X для представления характеристик выборки и Y для представления категории выборки, мы можем сначала вычислить совместную вероятность P (X, Y) X и Y:

Из совместной вероятности P(X,Y) можно вывести формулу Байеса:

где P(Y) называется априорной вероятностью, а P(Y|X) называется апостериорной вероятностью.

Для задачи бинарной классификации, если P(Y = 0|X) > P(Y = 1|X), метка класса выборки X считается равной Y = 0. Поскольку P(X) фиксировано для любого X, нам нужно только сравнить величины P(X|Y = 0)P(Y = 0) с P(X|Y = 1)P(Y = 1), т.е. можно узнать, к какому классу принадлежит X.

P(Y = 0) и P(Y = 1) можно рассчитать по следующим формулам, где D представляет весь набор данных, D0 представляет все данные, принадлежащие классу 0, а D1 представляет все данные, принадлежащие классу 1:

Однако P(X|Y = 0) и P(X|Y = 1), как правило, нелегко вычислить, поэтому Наивный Байес используетДопущение условной независимости, что упрощает вычисление P(X|Y), а также повышает надежность.

1.2 Допущение условной независимости

Предполагая, что функция X имеет N измерений, X = [X1, X2, ..., XN], формула Байеса может быть выражена как

И P(X|Y = 0) и P(X|Y = 1) могут быть выражены как:

Наивный Байес использует предположение об условной независимости для расчета приведенной выше формулы.Предположение об условной независимости относится к тому, независимы ли друг от друга внешний вид признаков выборки X.

Вероятность P(Xi = x|Y = y) рассчитывается по-разному для разных данных и задач.

D(Xi=x,Y=y) представляет все данные в наборе данных, метка класса которого равна y, а значение i-го атрибута равно x, а |D| представляет количество данных в наборе данных D. С помощью описанного выше метода мы можем вычислить P(Y) и P(X|Y), а затем использовать его для сравнения размера P(Y|X), чтобы узнать класс, к которому принадлежит образец.

2. Наивные байесовские методы оптимизации

2.1 Добавляйте логарифмы вместо умножения вероятностей

В предположении условной независимости мы преобразуем P(X|Y) в умножение вероятности для каждого признака. Поскольку вероятность числа меньше 1, число после многократного умножения может быть очень маленьким, а время операции умножения относительно велико, поэтому его обычно используют.логарифмировать, а затем добавить.

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

2.2 Преобразование в добавление веса объекта

Мы хотим сравнить P(Y = 0|X) с P(Y = 1|X), что эквивалентно сравнению log P(Y = 0|X) с log P(Y = 1|X), если log P (Y = 1|X) = 0|X) - log P(Y = 1|X) > 0, тогда X с большей вероятностью принадлежит Y=0.

который в конечном итоге может быть преобразован в:

Мы можем сохранить веса всех опций xi i-го признака в хеш-таблице, искать их при использовании и ускорить алгоритм.

2.3 Сглаживание

Исходный P(X|Y) рассчитывается как:

Используя приведенную выше формулу для расчета вероятности P(X|Y), возможно, что вероятность равна 0, а значение апостериорной вероятности P(Y|X) становится равным 0. Поэтому в реальных условиях обычно выполняется сглаживание.

Предполагая, что i-й признак Xi имеет k возможных значений, для сглаживания можно использовать следующую формулу.

3. Текстовая классификация

Мы классифицируемся как пример, чтобы учиться на примере применения Simue Bayes в текстовой классификации.

3.1 Спам

Наш образец — электронная почта, функция X образца — это содержимое электронной почты, а метка класса Y указывает, является ли электронная почта спамом. X = контент, такой как «последняя акция была заработана, добавьте WeChat, чтобы получить больше информации об акциях» Y = категория, например "спам", "обычная почта"

затем дали электронное письмо«Я получил прибыль от последней акции, добавьте WeChat, чтобы получить больше информации об акциях», вероятность того, что это письмо является спамом, можно рассчитать по формуле Байеса.

3.2 Сегментация слов и удаление стоп-слов

Статистика непосредственно в наборе данныхP("В прошлый раз я получил прибыль, добавьте WeChat, чтобы получить больше информации об акциях"|"Спам")Это не практично, потому что содержание каждого электронного письма отличается, в следующий раз содержимое электронного письма изменено на «Я заработал последний запас, добавить QQ, чтобы получить больше информации», - вероятность получения - это 0.

Поэтому обычно необходимо выполнить обработку сегментации слов и удалить стоп-слова.Стоп-слова относятся к некоторым словам, которые не помогают нашей классификации, обычно к очень нейтральным словам, таким как «le» и «me».

Причастие:«Последний раз», «Из», «Акции», «Заработать», «Панель», «Добавить», «WeChat», «Получить», «Еще», «Акции», «Информация»Удалить стоп-слова:«Последний раз», «Акции», «Заработать», «WeChat», «Получить», «Еще», «Акции», «Информация»

затем в конце концовP("В прошлый раз я получил прибыль, добавьте WeChat, чтобы получить больше информации об акциях"|"Спам")может быть преобразован в

В соответствии с предположением об условной независимости, в конечном итоге оно принимает вид:

После вышеуказанных шагов мы можем вычислить вероятность P(Y="спам"|X) и P(Y="нормальная почта"|X) и, наконец, решить, является ли почта X спамом.

4. Резюме

Наивный байесовский алгоритм — это относительно простой алгоритм с хорошей надежностью.

Наивный Байес в основном используетбайесовская формулаиДопущение условной независимости.

Наивный байесовский классификатор текста на самом деле является моделью мешка слов, то есть он рассматривает текст как мешочек, содержащий множество слов, независимо от порядка слов в тексте. Таким образом, предложения «Мне нравится слушать, как поет Джеки Ченг» и «Джеки Ченг нравится слушать, как я пою» неотличимы от Наивного Байеса.

5. Ссылки

Ли Ханг "Статистические методы обучения"