Вестник Воронежского института МВД России №2 / 2015
А.Н. Копылов
АЛГОРИТМ ПОИСКА СТАТИСТИЧЕСКИХ ЗАКОНОМЕРНОСТЕЙ ПРИ РЕШЕНИИ ЗАДАЧ ДВУХКЛАССОВОЙ КЛАССИФИКАЦИИ
THE SEARCH ALGORITHM OF STATISTICAL REGULARITIES IN SOLVING PROBLEMS OF TWO-CLASS CLASSIFICATION
Рассмотрен один из подходов к обнаружению статистических закономерностей при решении задач двухклассовой классификации. Приведен алгоритм поиска закономерностей.
Considered one of the approaches to the discovery of statistical regularities in solving two-class classification. The algorithm of search patterns is given.
Введение
Задача классификации — это одна из наиболее распространенных задач, решаемых при обработке эмпирических данных. Она встречается при оптическом распознавании текста, в социологических исследованиях и психологическом тестировании, в медицинской диагностике и т.п. В общем случае в задачах подобного рода необходимо принять решение, к какому из заранее известных классов следует отнести исследуемый объект.
Постановка задачи
Пусть X — некоторое множество объектов, причем каждому из элементов xt этого множества соответствует элемент yj Е У (где У — конечное множество имен классов), т.е. между элементами X и У имеется некоторая зависимость у: А' —> У. Положим, что элементы множества xtE X описываются вектором признаков (fi.i xi:2 ■■■ xi.n). Кроме того, зависимость у:Х —> У известна только на I объектах обучающей выборки, т.е. известно отображение
Требуется найти решающую функцию f.X —» У и, соответственно, построить алгоритм, способный классифицировать произвольный объект xtE X. Для упрощения изложения материала положим, что все рассматриваемые признаки бинарные (либо могут быть приведены к бинарным), мощность множества У равна двум.
На текущий момент разработано немало алгоритмов решения рассматриваемой задачи: байесовские, метрические, логические и т.п., а также их комбинации. Рассмотрим более подробно логические алгоритмы классификации [1, 2]. При этом будем искать закономерности вида
А1(х)/\А2(х)А ...f\Ak(x) -> BOO, (1)
233
Научные сообщения
где А1(х), А2(/С), ■■■, А к (ж), В (ж) — связанные с соответствующими признаками предикаты, А1(х)АА2(х)А ...ААк(х) — посылка, В (ж) — следствие. Выбор вида предикатов в посылке и следствии формулы (1) в общем случае обусловлен решаемой задачей.
Анализ подходов к решению задачи
В работах [1] и [2] описаны подходы, которые предполагают поэтапное наращивание числа предикатов в условной части (1). Так, например, в работе [1] описана процедура, в которой на первом этапе отбирается фиксированное количество N наиболее информативных (в соответствии с некоторым критерием) закономерностей вида At(x) —» В (ж). На втором и последующем шагах добавляется по одному предикату в посылку с последующим отбором среди новых закономерностей самых информативных. Выполнение описанной процедуры останавливают, когда либо число предикатов в посылке (1) превысит некоторое значение, либо ни одну из найденных закономерностей не удается улучшить. В работе [2] после добавления очередного предиката в условную часть вместо использования критериев информативности предлагают ограничиться проверкой посылки и следствия на независимость при заданном уровне значимости ос, используя точный критерий независимости Фишера [3—5] для таблиц сопряженности 2х2. В частности, таблица сопряженности для формулы (1) будет иметь вид:
В(ж) в(ж)
А1{х)АА2{х)А ...ААк(х) « И «12
А!(ж)А42(ж)Л ...ААк(ж) «21 «22
Кроме того, после каждого этапа добавления предикатов в посылку (1) необходимо
проверять, чтобы отношение --------, соответствующее оценке условной вероятности
«11+«12
р(В(ж) | А1{х)АА2{х)А ...A4te(;t:)), было строго больше аналогичного отношения при исключении любого подмножества элементов из посылки.
Недостатком приведенного в [1] алгоритма является ограничение, накладываемое на ширину поиска N. В случае отсутствия ограничений на N данным алгоритмом, как и приведенным алгоритмом в работе [2], зачастую нет возможности воспользоваться в чистом виде, так как это связано со значительными вычислительными затратами. Кроме того, в работе [2], отмечено, что достаточно редко, но все же бывают ситуации, когда добавление двух предикатов позволяет получить новую закономерность, а добавление каждого из этих предикатов по отдельности не позволяет этого сделать.
Для исключения связанной с данным фактом потери закономерностей можно поступить следующим образом [6]: воспользоваться алгоритмами поиска ассоциативных правил, а затем для обнаруженных вариантов рассчитать реально достигнутый уровень значимости, чтобы принять либо отклонить гипотезу о независимости посылки и следствия формулы (1). Такой подход имеет свои достоинства и недостатки. Очевидным достоинством предложенного способа поиска статистических закономерностей по сравнению c описанными в работах [1, 2] алгоритмами является поиск всех без исключения статистических закономерностей на обучающей выборке. К недостаткам следует отнести отсутствие первоначального этапа отбора статистических закономерностей вида А(х) “* В (ж). Таким образом, значительно возрастает количество перебираемых вариантов для поиска ассоциативных правил. Однако, как было сказано ранее, т.к. возможны ситуации, когда каждая из формул 21* (ж) -» В(ж) и Aj (ж) -» В (ж ) (i ф j) по отдельности не
234
Вестник Воронежского института МВД России №2 / 2015
является статистической закономерностью, а формула At(x)f\Aj(x) —> В(х) будет закономерностью, то приведенный выше недостаток можно не рассматривать. Кроме того, в предложенном подходе при добавлении очередного предиката отпадает необходимость в проверке гипотезы о независимости посылки и следствия. Достаточно будет ограничиться проверкой указанной
А!(х)А4з(х)Л ... ААk(х) -* В(х), для которого отношение
гипотезы при обнаружении нового правила
"и
будет больше некото-
«11 +11-12
рого порога у. Таким образом, дополнительно сокращается объем расчетов. Однако следует отметить, что в процессе обнаружения ассоциативных правил необходимо проверять, не является ли множество предикатов в посылке формулы А1(х)ЛА2(х)Л ...ААк(х) —» В(х) подмножеством предикатов другой посылки с большим числом элементов и тем же (или
близким) по значению отношением
«и
-. В этом случае формулу с большим числом
«11+«12
предикатов следует исключить из дальнейшего рассмотрения.
К настоящему времени разработано достаточно большое количество алгоритмов поиска ассоциативных правил. В общем случае пользоваться этими алгоритмами в чистом виде нецелесообразно, т.к. будет сформировано избыточное количество кандидатов (часто встречающихся наборов признаков), в которых будет отсутствовать предикат В (х), однако при некоторой модификации данных алгоритмов можно заранее исключить из рассмотрения наборы, в которых предикат В (х) отсутствует.
Описание алгоритма поиска статистических закономерностей К общему недостатку описанных в работах [1, 2] алгоритмов поиска закономерностей, а так же алгоритмов на основе нахождения ассоциативных правил является неудовлетворительная работа при зашумленности исходных данных (исключая случаи единичных выбросов). Так, например, одна из причин зашумленности обучающей выборки может быть связанна с тем, что значение какого-либо признака в описании объекта xt определяется путем экспертного оценивания. Уменьшить влияние шума на результаты поиска можно путем рассмотрения закономерностей более общего вида:
А(х,т)-> В(х), (2)
' если не более т предикатов 1, А1(х),А2(х),...,Ак(х)
где А (х, т) = < принимают значение О,
^ 0 в противном случае,
т Е М0, т < к.
Заметим, что формула (1) является частным случаем формулы (2), когда т = 0. Для описания алгоритма поиска закономерностей вида (2) сгруппируем объекты обучающей выборки xt Е X по классам и у2. При этом положим, что
, ч (0, если объектх, из класса Vi,
ВЫ= ' , 1 ^
(1, если объектxt из класса у2.
Если обозначить объекты, соответствующие классу уь через х,1, а соответствующие у2 — через х,2, то взаимосвязь между объектами обучающей выборки и классами У!и у2 можно проиллюстрировать с помощью графа, состоящего из двух деревьев.
Для приведенного графа каждой из вершин правого дерева (кроме корневой), поставлен в соответствие номер признака Wj, если соответствующий предикат Aj(x) принимает значение 1. В противном случае вершина будет отсутствовать (отмечено пе-
235
Научные сообщения
речеркиванием вершины). Для левого дерева по аналогии каждой из вершин (кроме корневой) поставлен в соответствие номер признака, но при этом знак номера признака изменен на противоположный. Вершины графа, соответствующие объектам xt, соединены последовательно в порядке убывания номеров признаков (при проходе от корня до концевой вершины).
Группировка объектов обучающей выборки по классам
В основе алгоритма поиска закономерностей лежит рекурсивная процедура. В качестве аргументов данной процедуры выступают: list. _o_f_p airs — список пар (указатель на концевую вершину в графе, штраф соответствующего объекта xt); set_of_predikates — множество предикатов посылки формулы (2); j — индекс признака. Кроме того, для пояснения работы алгоритма введем следующие обозначения: supportjplus — количество листьев (концевых вершин) с положительным весом; support_minus — количество листьев с отрицательным весом; min_support — минимально допустимое число листьев (и, соответственно, объектов xt обучающей выборки), на которых предикат в условной части формулы (2) равен единице; К — множество допустимых значений количества предикатов в посылке формулы (2).
Не вдаваясь в тонкости программной реализации, рекурсивную процедуру, лежащую в основе рассматриваемого алгоритма поиска закономерностей, можно описать следующим образом:
Процедура search_patterns(list_of_pairs, set_of_predikates,j)
Для ВСЕХ wt (i = j, n) В ПОРЯДКЕ ВОЗРАСТАНИЯ i:
^Подсчитываем supportjplus для листьев, вес которых совпадает с wt либо штраф меньше т, а также подсчитываем support.minus, для листьев, вес которых равен —wt либо штраф меньше ш.
^Проходим в цикле по всем листьям. Если вес листа по абсолютной величине совпадает с wt либо штраф меньше т, то:
236
Вестник Воронежского института МВД России №2 / 2015
a) если supportjninus + supportjplus > min_support формируем новый список list_ofjpabrs jnew следующим образом: если вес листа по абсолютной величине совпадает с то новый указатель будет ссылаться на родительскую для этого листа вершину, штраф остается без изменения, в противном случае значение указателя не меняется, а значение штрафа увеличивается на единицу;
b) для листьев, вес которых по абсолютной величине совпадает с ну, переопределяем первую координату в списке list_of jpabrs, переадресовывая указатель на родительскую для этого листа вершину, вторую координату (штраф) оставляем без изменения.
> Если support minus + supportjplus > min_support и отношение supportjplus / (supportjplus -f supportjminus) больше аналогичного значения для набора из set _ofjpredikates, то:
a) добавляем в set_of_predikates предикат с номером wy
b) если отношение supportjplus/(supportjplus -f supportjninus) больше некоторого порога у, реально достигнутый уровень значимости<0.05 и мощность множества \set_of jpredikates\ Е К, то выводим обновленный набор предикатов set_ofjpredikates на экран;
c) если \set_of jpredikates] Ф max К и i < л, вызываем
searchjpatterns(list_of jpabrsjnew, set_of jpredikates, j -Ь 1).
Процедура поиска закономерностей вида А (х, т)
-» В(х) выглядит аналогично. При этом, незначительно модифицировав приведенный алгоритм, можно обобщить его на случай поиска как закономерностей вида А(х,т) -» £>(х), так и закономерностей
вида А(х, т) —» В(х). Кроме того, в пункте (с) можно исключить вызов процедуры sear chjpatterns(list_of jpabrs jiew, set_of jpredikates, j + 1), если значение
supportjplusf {supportjplus + supportjninus) превысило у, что связано со следующим обстоятельством: с ростом set_of jrrеdikates|, как правило, уменьшается число объектов, на которых предикат А (х, ш) будет равен единице, а, следовательно, уменьшается количество объектов, которые найденная закономерность позволяет классифицировать. В дополнение к вышесказанному следует отметить, что для уменьшения количества перебираемых вариантов при формировании set_of jpredikates в приведенном алгоритме необходимо оптимизировать последовательность перебора весов wt.
Заключение
Предложенный алгоритм позволяет производить поиск статистических закономерностей вида (2). Варьируя параметрами min К и max К (задающими число предикатов в посылке формулы (2)), порогом у и числом т можно подстраивать алгоритм поиска для обнаружения статистических закономерностей с учетом зашумленности обучающей выборки. С ростом т для получения статистически значимых результатов при заданном у необходимо увеличивать max К. С ростом порога у количество обнаруженных статистических закономерностей будет уменьшаться и необходимость в задании min К и max К отпадает.
ЛИТЕРАТУРА
1. Воронцов К.В. Комбинаторная теория надежности обучения по прецедентам: дис. ... д-ра физ.-мат. наук: 05.13.17 / Воронцов Константин Вячеславович. — М., 2010. — 272 с.
2. Обнаружение закономерностей и распознавание аномальных событий в потоке данных сетевого трафика / Е.Е. Витяев [и др.]. — Вестник НГУ. Серия: Информационные технологии. — 2008. — Том 6. — Вып. 2. — С. 57—68.
237
Научные сообщения
3. Флейс Дж. Статистические методы для изучения таблиц долей и пропорций: пер. с англ. / под ред. и с предисл. Ю. Н. Благовещенского. — М.: Финансы и статистика, 1989. — 319 с.
4. Кендалл М., Стьюарт А. Статистические выводы и связи: пер. с англ. / под ред. А.Н. Колмогорова. — М.: Наука, 1973. — 899 с.
5. Аптон Г. Анализ таблиц сопряженности: пер. с англ. и предисл. Ю.П. Адлера.
— М.: Финансы и статистика, 1982. — 143 с.
6. Копылов А.Н. Использование алгоритмов поиска ассоциативных правил для выявления аномальных событий // Общественная безопасность, законность и правопорядок в ТТТ тысячелетии: сборник материалов международной научно-практической конференции.
— Часть 3. — Воронеж: Воронежский институт МВД России, 2014. — С. 78—80.
REFERENCES
1. Vorontsov K.V. Kombinatornaya teoriya nadezhnosti obucheniya po pretsedentam: dis. ... d-ra fiz.-mat. nauk: 05.13.17 / Vorontsov Konstantin Vyacheslavovich. — M., 2010. — 272 s.
2. Obnaruzhenie zakonomernostey i raspoznavanie anomalnyih sobyitiy v potoke dannyih setevogo trafika / E.E. Vityaev [i dr.]. — Vestnik NGU. Seriya: Informatsionnyie tehnologii. — 2008. — Tom 6. — Vyip. 2. — S. 57-68.
3. Fleys Dzh. Statisticheskie metodyi dlya izucheniya tablits doley i proportsiy: per. s angl. / pod red. i s predisl. Yu. N. Blagoveschenskogo. — M.: Finansyi i statika, 1989. — 319 s.
4. Kendall M., Styuart A. Statisticheskie vyivodyi i svyazi: per. s angl. / pod red. A.N. Kolmogorova. — M.: Nauka, 1973. — 899 s.
5. Apton G. Analiz tablits sopryazhennosti: per. s angl. i predisl. Yu.P. Adlera. — M.: Finansyi i statistika, 1982. — 143 s.
6. Kopyilov A.N. Ispolzovanie algoritmov poiska assotsiativnyih pravil dlya vyiyavleniya anomalnyih sobyitiy // Obschestvennaya bezopasnost, zakonnost i pravoporyadok v Ш tyisyache-letii: sbornik materialov mezhdunarodnoy nauchno-prakticheskoy konferentsii. — Chast 3. — Voronezh: Voronezhskiy institut MVD Rossii, 2014. — S. 78—80.
СВЕДЕНИЯ ОБ АВТОРЕ
Копылов Алексей Николаевич. Старший преподаватель кафедры высшей математики. Кандидат технических наук, доцент.
Воронежский институт МВД России.
E-mail: [email protected]
Россия, 394065, Воронеж, проспект Патриотов, 53. Тел. (473) 200-52-14.
Kopylov Alexey Nicolaevich. Senior lecturer of the chair of high mathematics. Candidate of technical sciences, assistant professor.
Voronezh Institute of the Ministry of the Interior of Russia.
E-mail: [email protected]
Work address: Russia, 394065, Voronezh, Prospect Patriotov, 53. Tel. (473) 200-52-14.
Ключевые слова: обнаружение статистических закономерностей, классификация, уровень значимости.
Key words: discovery of statistical regularities, classification, significance level.
УДК 004.852
238