Алгоритм Кора́ (комбинаторного распознавания) — алгоритм классификации (взвешенного голосования правил), предложенный М. Вайнцвайгом и М. Бонгардом в 1973 г.[1] (основы были заложены в одноимённой программе, разработка которой началась в 1961 г.) Применяется для классификации множества
, характеризующегося вектором бинарных признаков
, чаще всего, для задач с двумя непересекающимися классами. Данный алгоритм строит набор конъюнктивных закономерностей и доказал свою эффективность при решении практических задач.
Описание
В таблице
, задающей объекты с известной классовой принадлежностью, пусть
,
. Просматриваем все тройки признаков
(число таких троек, очевидно, равно
и анализируем часть таблицы информационных векторов
из обучающей выборки, составленную из столбцов
:
Среди первых
строк выделяем и фиксируем все тройки, не совпадающие ни с одной из троек в строках
. Формируем множество таких троек
. Аналогично выделяем все тройки
, не совпадающие ни с одной из первых
троек. Множества
назовем, соответственно, характеристиками классов
. Такие характеристики формируем для всех троек
.
Пусть задан для распознавания объект
. Сравниваем все
характеристики всех троек для
с соответствующими тройками в распознаваемом объекте
. Число совпадений
обозначаем
— число голосов, поданных для S за класс
. Аналогично формируем величину
— число совпадений
. Вводим пороговый параметр
. Если
, относим
классу
, при
— в класс
. В остальных случаях алгоритм отказывается от классификации. На практике часто полагают
.
Литература
Примечания
- ↑ Вайнцвайг М. Н. Алгоритм обучения распознаванию образов "кора" // Алгоритмы обучения распознаванию образов / Под ред. В. Н. Вапник. М.: Советское радио, 1973. С. 110–116.