Оценка результатов классификации. Р-мера.

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

Для вычисления мер качества в задачах анализа информации необходимо для каждого класса q составить таблицу категорий принятых решений по множеству документов с/, (табл. 4.2):

Таблица 4.2. Таблица категорий

Эксперт решил Классификатор решил

di e q

di ? Cj

di е q

TP

FP

di ? Cj

Fn

TN

Здесь Тр — количество истинно-положительных решений, т. е. и эксперт и классификатор отнесли эти документы к классу q; 7дг — количество истинно-отрицательных решений; FP — количество ложно-положительных решений; jFдг— количество ложно-отрицательных решений.

В простейшем случае параметром, характеризующим классификатор, может быть доля документов, по которым классификатор принял правильное решение (Аккуратность или Accuracy):

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

Однако эта мера присваивает всем документам одинаковый вес, что может быть не корректно в случае, если распределение документов в обучающей выборке сильно смещено в сторону какого-то одного или нескольких классов. В этом случае у классификатора есть больше информации по этим классам и соответственно в рамках этих классов он будет принимать более адекватные решения. На практике это приводит к тому, можно иметь А =80%, но при этом в рамках какого-то конкретного класса классификатор работает из рук вон плохо, не определяя правильно даже треть документов. При наличии небольших классов, то есть классов, доля документов которых меньше 10%, высокой правильности можно достичь, всегда отвечая «не принадлежит». Например, если относительная частота класса коллекции составляет 1%, то классификатор по принципу «всегда не принадлежит» даст правильность 99%.

Для более точных оценок используются такие параметры как точность (precision) — доля документов, действительно принадлежащих данному классу, относительно всех документов, которые система отнесла к этому классу

и полнота (recall) — доля найденных классификатором документов, принадлежащих классу, относительно всех документов этого класса в тестовой выборке

Рассмотрим пример. Допустим, имеется тестовая выборка, в которой 10 сообщений, из них 4 — спам. Обработав все сообщения, классификатор пометил 2 сообщения как спам, причем одно действительно является спамом, а второе было помечено в тестовой выборке как нормальное. Мы имеем одно истино-положительное решение, три ложно-отрицательных и одно ложно-положительное. Тогда для класса «СПАМ» точность классификатора составляет 1/2 (50% положительных решений правильные), а полнота — 1/4 (классификатор нашел 25% всех спам-сообщений).

На практике значения точности и полноты гораздо удобней рассчитывать с использованием матрицы неточностей (сюп}1ыоп таЫх). Матрица неточностей — это матрица размера Л/на где N— это количество классов. Столбцы этой матрицы резервируются за экспертными решениями, а строки за решениями классификатора. При классификации очередного документа из тестовой выборки увеличивается на единицу число, стоящее на пересечении строки класса, который вернул классификатор, и столбца класса, к которому действительно относится документ.

На рис. 4.8. показан пример матрицы неточностей для 24 классов. Как видно, большинство документов классификатор определяет верно. Диагональные элементы матрицы явно выражены. Тем не менее, в рамках некоторых классов (3, 5, 8, 22) классификатор показывает низкую точность.

Матрица неточностей

Рис. 4.8. Матрица неточностей

Имея такую матрицу, просто рассчитать точность и полноту для каждого класса. Точность равняется отношению соответствующего диагонального элемента матрицы и суммы всей строки класса. Полнота — отношению диагонального элемента матрицы и суммы всего столбца класса. Формально:

Полнота и точность — меры, противоречащие друг другу в том смысле, что 100%-ую полноту легко достичь, просто поместив все документы в класс С] (точность будет мала), и наоборот 100%-ую точность можно достичь, строго отбрасывая документы, помещая в класс с) малое число документов (полнота будет мала).

Показатель, позволяющий найти баланс между полнотой и точность, называют Рр-мерой, которая вычисляется как взвешенное среднее гармоническое:

где ае [0;1], Р е [0; ос]. При Р >1 предпочтение отдаётся полноте, при Р <1 — точности. На практике чаще применяют сбалансированный вариант Fp- меры — Ромеру, т. е. Р =1, а =0,5:

Сравнение Fp-мep с разными Р показано на рис. 4.9.

Рр-меры

Рис. 4.9. Рр-меры: сбалансированная р =1 (а), с приоритетом точности р2 =1/4 (б), с

Для обобщения мер качества для всех классов применяют следующие подходы к усреднению:

  • а) макроусреднение — обобщение на уровне классов;
  • б) микроусреднение — обобщение на уровне документов.

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

Макроусреднение приписывает равные веса решениям классификатора для каждого класса, а микроусреднение — равные веса решениям классификатора для каждого документа. Классы с большим числом документов (и решений по ним) вносят больший вклад в микроусреднение. Таким образом, результат микроусреднения в большей степени оценивают качество классификатора для крупных классов коллекции документов. Чтобы оценить его на малых классах следует применять макроусреднение.

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ ОРИГИНАЛ   След >