Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МНа Экзамен Ответы_окончательно.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
950.78 Кб
Скачать
  1. Застосування наївного Баєсівського класифікатору для класифікації текст док-ів;

Мы рассматриваем выборку Х, которая состоит из учебных примеров (в данном случае - текстовых документов). Дана также целевая функция f(x), область значений которой, - конечная область V. Нам нужно по этим учебным примерам научиться предугадывать целевое значение некоторого множества текстовых документов. Значение, по которому классифицируем, - например, тематика текстового документа. В этом случае будем руководствоваться ключевыми словами (не обязательно ключевые), - это значения атрибутов.

Пример: We want to classify this text.

a1 a2 a3 a4 a5 a6

И нужно определить его к классу "нравится"/"не нравится". Нумеруем слова, определяя их положение (позицию) в документе. А значение атрибута - само слово. Необходимо определить классификатор наивного Байеса:

Априорные знания: вероятности безусловные классов like и dislike:

p(dislike)=0.7 p(like)=0.3

При прихождении нового примера, воспользуемся формулой:

argmax - значит, что нужно найти класс, для которого вероятность является максимальной:

Vj - конкретное значение целевого атрибута.

( вместо 111 – 6)

= argmax P(Vj) P(a1="We"|Vj) * ... * P(a6="text"|Vj)

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

Делаем допущение: каждое слово встречается в документе независимо от остальных! Это, конечно, неверно. Но, скажем, если у нас будет абзац со 111-ти слов и два значения целевого аттрибута и в английском языке 50000 слов, то нам придётся вычислять около 10 млн различных операций.

Также допущение, что каждое слово может встретиться в любом месте текста:

wk - какое-то слово из словаря.

P(ai=wk|Vj)=P(am=wk|Vj)

Также нам нужно решить, как мы будем вычислять вероятности для каждого слова в документе:

nk - сколько раз мы встретили классифицируемое слово.

n - общее кол-во слов в текстах всех документов. P=(nk + 1)/(n + |Vocabulary|)

|Vocabulary| - кол-во разных слов в документах.

Алгоритм ОБУЧЕНИЯ по Наивному Байесу:

1. Выбираем все слова, пунктуацию, другие эл-ты текстов-примеров.

Формируем словарь, в который пойдут РАЗНЫЕ слова и др. эл-ты, которые будут важны для классификации.

2. Вычисляем необходимые априорные вероятности принадлежности к определённому классу: P(Vj); а также вероятность встречи каждого слова, независимо от его положения для этого класса документов: P(wk|Vj).

Для каждого значения целевого атрибута, вычисляем подмножество документов из нашей учебной выборки, для примеров которой значение целевой ф-и является Vj.

Вычисляем априорную вероятность целевого значения:

docsj - подвыборка документов текущего класса

Examples - вся учебная выборка

P(Vj)=|docsj|/|Examples|

Берём один документ textj, который будет являться сцеплением всех документов из docsj.

n = общее число слов в этом объединённом документе (мощность textj).

Для каждого слова wk из нашего словаря Vocabulary, нужно вычислить nk - это кол-во раз, когда мы встретили это слово в textj.

Считаем условную вероятность слов:

P(wk|Vj)=(nk+1)/(n+|Vocabulary|)

Алгоритм КЛАССИФИКАЦИИ Наивного Байеса:

1. После того, как получили какой-то новый документ для классификации, вычисляем позиции слов в этом доке.

Необходимо возвратить наиболее вероятную классификацию по формуле с argmax (*), только теперь в произведении у нас i изменяется от 1 до кол-ва позиций классифицируемого документа.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]