УДК 005
ОБ АЛГОРИТМЕ ПОСТРОЕНИЯ РАЗДЕЛЯЮЩЕЙ ГИПЕРПОВЕРХНОСТИ ДЛЯ РЕШЕНИЯ ЗАДАЧИ КЛАССИФИКАЦИИ ПРИ ЛИНЕЙНОЙ НЕРАЗДЕЛИМОСТИ КЛАССОВ ОБРАЗОВ
© 2016 В. М. Довгаль1, А. Ю. Дорошенко2
1докт. техн. наук, профессор кафедры программного обеспечения и администрирования информационных систем
e-mail: vmdovgal@yandex. ru 2аспирант кафедры программного обеспечения и администрирования информационных систем e-mail: doroshenkoay@hk.ru,
Курский государственный университет
В настоящей работе представлен алгоритм классификации линейно неразделимых классов объектов в произвольном d-мерном пространстве признаков Ed. Подход заключается в построении d-мерной гиперповерхности, располагающейся между классами и равноудаленной от них. Распознавание нового объекта сводится к определению его положения относительно неё. Проведенное сравнение реализации алгоритма с существующими аналогами показало его эффективность при классификации линейно неразделимых данных.
Ключевые слова: классификация, триангуляция Делоне, оптимальная гиперповерхность, d-поверхность, d-полигон, d-плоскость, медианная ось, метод трассировки луча.
В настоящей работе представлен подход к решению задачи классификации, основанный на построении оптимальной разделяющей гиперповерхности. Его разработка мотивировалась стремлением минимизировать эмпирический риск [Vapnik 1999] при классификации сложных линейно неразделимых данных. Актуальность работы объясняется широтой применения подобных алгоритмов на практике, где от точности полученных результатов зависят степень доверия к системе, и, соответственно, экономическое предпочтение, например в экономическом прогнозировании [Cao 2003; Gestel 2001], категоризации текстов [Pang, Lee 2002], [Li, Yang 2003], медицинской диагностике [Lee, Mangasarian, Wolberg 2003]. Разработка новых методов и алгоритмов распознавания образов является приоритетным направлением исследований согласно действующей стратегии развития отрасли информационных технологий в Российской Федерации. Цель данной статьи заключается в повышении качества распознавания путем разработки метода построения разделяющей гиперповерхности, использующего многомерную триангуляцию Делоне, и реализующего его алгоритма.
Общий принцип работы систем распознавания сводится к отнесению нового объекта к одному из заданных классов с помощью некоторой решающей функции (правила). Её вычисление производится на этапе предварительной обработки, называемом обучением, из данных предъявленной обучающей выборки, информация о принадлежности элементов которой к исходным классам достоверно известна. Обычно
построение решающей функции осуществляется на основании некоторых эвристических предположений о возможной области значений неизвестных объектов классов, сводящих количество ошибок распознавания к минимуму. В предлагаемом подходе для распознавания используется равноудаленная от классов разделяющая гиперповерхность, обозначаемая далее по тексту HS, для построения которой применяются алгоритмы вычислительной геометрии. Решающая функция при этом определяет положение нового объекта относительно гиперповерхности.
В дальнейшем изложении используются следующие понятия вычислительной геометрии:
выпуклая оболочка. Для множества кортежей (точек) S £ Ed выпуклой оболочкой называется минимальное выпуклое множество, содержащее все точки S [Ласло 1997];
d-плоскость (гиперплоскость). d-плоскостью в d-мерном пространстве Ed называется подпространство размерности d — 1 (2-плоскостью является прямая линия при d = 2);
d-полигон (гиперполигон). Под d-полигоном в d-мерном пространстве Ed понимается d-плоскость, ограниченная набором замкнутых ребер, представленных (d-1) -плоскостями;
срединная ось. Срединной осью (скелетом) фигуры называется множество точек, имеющих более одной ближайшей до границы фигуры точки [Blum 1967];
d-симплекс. d-симплексом в пространстве Ed называется выпуклая оболочка для d + 1 аффинно-независимых точек, то есть не лежащих в одной (d — 1)-плоскости;
триангуляция Делоне. Для множества кортежей (точек) S £ Ed триангуляцией (графом) Делоне DT(S) называется набор d-симплексов с вершинами в точках S, если описанная вокруг каждого симплекса гиперсфера не содержит точек из S. В d-мерном пространстве она может быть получена из (d + 1)-мерной выпуклой оболочки [Barber, Dobkin, Huhdanpaa 1996];
компланарные точки. Точки (кортежи) рг,..., pn G Ed называются компланарными, если лежат в одной (d - 1)-плоскости, п > d.
Предлагаемый алгоритм
Метод для упрощения изложения идеи изначально рассматривается относительно двух классов, а после описывается способ его расширения на их произвольное количество.
Пусть в d-мерном Евклидовом пространстве Ed определены два класса А и Ъ как множества упорядоченных наборов из г и s точек соответственно. Каждое измерение иг,..., ud пространства Ed соответствует некоторому отличительному признаку. Обычно заранее неизвестны все возможные элементы распознаваемых классов и для построения (обучения) системы предъявляется некоторая их часть, называемая обучающей выборкой, в виде наборов УЛ с ^ с £d и с "В с Ed из г' < г и s' < s точек. Очевидным способом разделения точек обучающей выборки является построение d-мерной гиперповерхности HS (d-поверхности) такой, что все точки Vji лежат с одной её стороны, а все точки - с другой. Для решения многих задач оптимальной будет равноудаленная от точек обоих наборов d-поверхность. Такое предпочтение в равной мере для обоих классов учитывает возможную удаленность их объектов в пространстве Ed от заданных объектов обучающей выборки. Формально это можно записать в виде следующего определения: для двух наборов точек А и В оптимальной d-поверхностъю, разделяющей их, является множество точек, имеющих не менее двух ближайших точек р и q таких, что р Е А, а q Е В.
Довгаль В. М., Дорошенко А. Ю. Об алгоритме построения разделяющей гиперповерхности для решения задачи классификации
при линейной неразделимости классов образов
Рассматривая ближайшие к оптимальной ¿/-поверхности точки наборов Уд и как вершины незамкнутой фигуры F £ Ed, называемой далее виртуальной, d-поверхность можно определить как срединную ось этой фигуры, к вычислению которой и сводится решаемая задача.
Реализация предлагаемого подхода основана на обобщенном для произвольной размерности алгоритме построения срединной оси [Kimmel, Shaked, Kiryati, Bruckstein 1995] и в [Zou, Chang, Yan 1999], использующем триангуляцию Делоне. Фактически получаемая в результате ¿/-поверхность является приближенной, аппроксимированной ¿/-плоскостями срединной осью, и для пространств невысокой размерности (d < 3) определены методы, дающие более точный результат.
Рассмотрим триангуляцию Делоне DT(Vji U в пространстве Ed для точек заданных наборов и обучающей выборки. Пусть с Е БТ(уЛ U - симплекс с вершинами vlt...,vn, причем среди его вершин существуют две v>i и Vj такие, что ViEVji, a Vj Е Уъ. Описанная вокруг симплекса окружность, по определению триангуляции Делоне, не содержит точек обучающей выборки, и вершины симплекса являются ближайшими к её центру. Совокупность всех таких симплексов, называемых далее виртуальными, полностью определяют виртуальную фигуру F = U"=1 с,-. На рисунке 1 показана триангуляция Делоне для двух наборов данных, элементы которых изображены черными и белыми кругами. Для наглядности для некоторых симплексов-треугольников показано, что описанная вокруг них окружность не содержит точек, кроме их вершин. Отмеченные симплексы с1,...,с6 определяют виртуальную фигуру. Пунктирной линией изображена оптимальная разделяющая 2-поверхность - ломаная прямая линия.
Рис. 1. Триангуляция Делоне для двух наборов данных
Если р и (¡1 - концевые точки ребра е (р, ц) и они принадлежат к разным классам, то есть р £ <А, ц Е Ъ или р £ <А, ц Е Ъ, то ребро е(р, ц) будет называться виртуальным, иначе - объектным. Каждому виртуальному симплексу сопоставляется часть поверхности - сегмент, являющийся ¿/-полигоном, с вершинами в серединах виртуальных ребер. Соответственно, если е1,...,ек - виртуальные ребра симплекса, причем р1 и qi концевые точки ребра е^, то вершины г>1,..., г^ сегмента определяются
,£.....-Jr " 1 \
\
_ ■
\ о
V .У
Введя дополнительный параметр t, данную запись можно переписать:
vi = (Pi — 4i)xt, i = 1, —, 0 < t < 1.
В такой формулировке при t 0.5 d-поверхность будет ближе к одному из двух классов, что может использоваться при наличии какой-либо дополнительной информации о заданной обучающей выборке или при применении других предпочтений при построении системы.
Сегмент ^-поверхности однозначно определяется набором d-плоскостей а0, а1,..., ак, где а0 - некоторая базовая d-плоскость, содержащая сегмент, а а1,..., ак -d-плоскости, её ограничивающие. В качестве ограничивающих d-плоскостей а1,..., ак используются плоскости, проходящие через грани симплекса. Любое сочетание по d вершин р1,..., pd d-мерного симплекса определяет вершины одной из его сторон. d-плоскость будет описываться как
где А1,..., Ап - коэффициенты, полученные при разложении матрицы (1) по первому столбцу. Полученные граничные плоскости ориентируются так, чтобы внутренняя часть сегмента разделяющей ^-поверхности располагалась под ними. Ориентация сводится к изменению знака коэффициентов А1,..., Ап функции ё-плоскости, если её значение для произвольной точки не удовлетворяет принятому соглашению (больше или меньше нуля). Для произвольного симплекса 5 с вершинами ух,..., Уа+1 в ^-мерном пространстве Е! вершины граней сегмента определяются как совокупности по с1 его вершин, причем грань е£ не включает вершину у^. Так как вершина у^ будет находиться с той же стороны, что и внутренняя часть сегмента, то относительно нее определяется ориентация сегмента.
Для определения коэффициентов базовой плоскости а0 в Е! точки выбираются из числа вершин сегмента разделяющей ё-поверхности. Поскольку при числе измерений d > 3 сегмент имеет больше с1 вершин (рис. 2), то произвольно выбранные d точек могут быть компланарными. Например, рассмотрим 4-симплекс с вершинами (у1, у2, У3, у4, Уз] в 4-мерном пространстве. На рисунке 2(в) изображено его отображение в 3-мерное пространство. Шесть ребер е(ух, у2), е(х>\, у!), у3) е(у2, У5), е(У3, У4), е(у4, у5) симплекса являются виртуальными, соответственно сегмент поверхности будет иметь шесть вершин о, р, ц, г, 5, ^ Для определения базовой 4-плоскости, необходимо с1 точек, а, как видно из рисунка, некоторые грани сегмента имеют по четыре вершины, которые, очевидно, компланарные (лежат в одной 3-плоскости).
- Uj(Pi) Щ(р2) - Wi(Pi) ■■■ щ(Рй) - "i(Pi) а(х) = Щ(.х)- и2Ы Щ(.Р2)- ^(Pi) ... u2(pd) - иг(рг) ,
ud(x) - "d(Pi) ud(p2) - иа(рг) ... ud(pd) - и^р!)
(1)
или в линейном виде:
(2)
Довгаль В. М., Дорошенко А. Ю. Об алгоритме построения разделяющей гиперповерхности для решения задачи классификации
Рис. 2. Сегменты разделяющей поверхности в двух, трех и четырехмерном пространстве (используется трехмерное отображение)
Вычисление коэффициентов базовой плоскости заключается в поиске ненулевой комбинации коэффициентов для функции (2). Общее число возможных сочетаний из п вершин по d оценивается как
п!
d\(n-d)\'
причем проверка одной комбинации точек на компланарность в Ed сводится к вычислению d определителей матриц с рангом d — 1.
Для корректной классификации важно ориентировать базовую ¿/-плоскость так, чтобы расположение точек распознаваемых классов относительно сегмента было известно. В настоящей работе подразумевается, что значение функции ¿/-плоскости для точек класса <А должно быть положительным, а для Ъ - отрицательным. При этом считается, что точки, для которых значение функции d-плоскости положительно находятся под ¿/-плоскостью, иначе - над. Для проверки используется произвольная вершина р симплекса сегмента, и коэффициенты плоскости а заменяются противоположными, если р £ <А и а(р) < 0 или если р £ Ъ и а(р) > 0.
Алгоритм классификации
Классификация нового произвольного объекта сводится к определению его положения относительно построенной ¿/-поверхности HS в ¿/-мерном пространстве признаков. Для решения такой задачи адаптирован метод трассировки луча.
Метод трассировки луча [Ласло 1997] («even-odd ride») предназначен для определения принадлежности точки к полигону.
Рис. 3. Метод трассировки луча
Он заключается в подсчете количества пересечений с ребрами полигона произвольно направленного из тестируемой точки луча. При нечетном числе пересечений точка принадлежит внутренней части полигона, иначе - лежит снаружи. Например, на рисунке 3 луч с началом в точке р, направленный горизонтально, имеет три пересечения с границами многоугольника, и, следовательно, точка р находится внутри многоугольника. Такой алгоритм также применим для определения принадлежности точки произвольному многограннику в ¿/-мерном пространстве £'сг. Применительно к настоящей работе подсчет количества пересечений произвольного луча с ¿/-поверхностью НБ неинформативен.
В предлагаемом подходе такой метод реализуется с использованием некоторого отрезка М(р, ц) вместо луча, где р - тестируемая точка, а ц - дополнительная точка, расположение которой известно. Тогда при четном количестве пересечений точка р находится с той же стороны относительно Я5, что и вспомогательная точка q, иначе -с разных сторон.
Для проверки наличия пересечения в ¿/-мерном пространстве ЕА произвольного отрезка М(р,ц) и сегмента 5, заданного плоскостями а0,аг, ...,аа+1, первоначально требуется найти точку и/ пересечения, если она вообще существует, базовой плоскости а0 и отрезка. При отсутствии такого пересечения нет пересечения и отрезка с сегментом. Если же точка и/ существует, то далее определяется её положение относительно граничных плоскостей. Если и/ находится над какой-либо из них, то делается вывод, что пересечение отсутствует:
М(р,ц) Пя ф 0, если м/ = М(р,ц) П а0 ф 0 и «¿(и/) > 0, / = 1,..., й + 1.
Отрезок М(р, ц) может проходить через границу двух или более (//) сегментов 51(..., 5п (см. рис. 4). Пересечение учитывается один раз, если концевая точкар отрезка находится под хотя бы одним из сегментов 51( ...,зп, и, возможно еще один раз, если она находится хотя бы над одним из этих сегментов. То есть при этом счетчик числа пересечений может увеличиться единожды - пересечение есть, или дважды -пересечения нет. Подобный подход позволяет обрабатывать любые граничные случаи в пространстве произвольной мерности. Например, на рисунке 4(а) и 4(в) видно, что точка р находится с разных сторон относительно сегментов, и считается, что пересечения с поверхностью нет. На рисунке 4(6) пересечение есть, поскольку точка р находится с одной стороны для обоих сегментов.
Рис. 4. Некоторые граничные случаи пересечения отрезка с сегментами поверхности Классификация более двух классов
Для распознавания объектов п классов <АЛ,..., Лп по с1 признакам предлагается построить классификатор как набор из п — 1 ¿/-поверхностей 11SI,...,таких, что отделяет класс с/^ от классов ...,<Ап. Тогда при распознавании нового
Довгаль В. М., Дорошенко А. Ю. Об алгоритме построения разделяющей гиперповерхности для решения задачи классификации
при линейной неразделимости классов образов
объекта w последовательно определяется его положение относительно построенных поверхностей, и,
если w находится под HSt, то есть HSt(w) > 0, то w Е <At;
если Е!!"]1 HSi (w) < 0, то w е Лп.
Подразумевается, что ^-поверхности ориентированы таким способом, что точки класса <Ai находятся под поверхностью HSt.
Для построения такого классификатора первоначально требуется вычислить триангуляцию Делоне для точек заданной обучающей выборки и определить все виртуальные симплексы. Каждая d-поверхность HSt (i = 1,..., п — 1) вычисляется согласно описанному выше алгоритму из тех виртуальных симплексов, которые имеют среди своих вершин точку р такую, что р £ <Ai. При указанной реализации достигается баланс между сложностью построения и оптимальностью полученного результата, выраженного в меньшем количестве сегментов полученной d-поверхности.
Сравнение реализации предлагаемого алгоритма с аналогами
Для проведения всестороннего тестирования представленного алгоритма разработана его программная реализация на языке Java, использующая программу Qhull [Barber, Dobkin, Huhdanpaa 1996] для вычисления триангуляции Делоне. Ставилась цель определения эффективности классификации для линейно разделимых и линейно неразделимых данных в условиях разного количества распознаваемых классов, размера выборки данных и используемых признаков. Все эксперименты проводились на ПЭВМ на базе процессора Intel Core i5-4210H 2.9 Ггц. В качестве аналогов применялись известные реализации NeuroPH [Sevarac, Goloskokovic, Tait, Morgan, Carter-Greaves 2010], JavaML [Abeel, Van de Peer, Saeys 2009] и LIBSVM [Chang, Lin 2011] нейронных сетей (персептрон [Rozenblatt 1960]), метода k-ближайших соседей (k-nearest neighbors (k-NN) и метода опорных векторов (Support Vector Machine (SVM)) [Boser, Guyon, Vapnik 1992].
Линейно разделимые данные
Проведенный анализ показал, что предлагаемый метод успешно решает задачу классификации линейно разделимых классов объектов. Измерялись затрачиваемое классификаторами на обучение и распознавание время, количество допускаемых ошибок. Обучающая и тестовая выборки для каждого класса представляли наборы точек, находящиеся внутри сферы.
Для двух классов существующие специализированные методы (использовались персептрон, метод k-ближайших соседей (по трем ближайшим точкам) и метод опорных векторов с линейным ядром) быстрее обучаются и классифицируют отдельные объекты. Это обусловливается тем, что предлагаемый подход имеет сложное, сегментированное представление разделяющей гиперповерхности, в то время как для однозначной классификации в этом случае достаточно единственной гиперплоскости. Ошибки классификации отсутствовали для данного теста. Результаты отражены в таблице 1.
Таблица 1
Кол-во Время обучения, мс Время распознавания, мс
элементов выборки HS Персе-птрон k-NN SVM HS Персе-птрон k-NN SVM
5хЕ3 185,88 2,10 2,10 30,92 9,08 0,13 1263,23 0,30
1хЕ4 270,30 2,71 1,93 57,37 20,74 0,24 5177,66 0,56
1,5х£4 359,48 3,69 3,23 95,52 33,28 0, 36 11796,58 0,86
2хЕ4 460,91 3,96 2, 76 236,97 51,27 0,47 21447,51 1,24
2,5хЕ4 557,91 4,92 3, 37 185,89 65,20 0, 58 33799,61 5,52
3хЯ4 645,83 7,40 4,09 257,04 94,41 0, 79 47943,03 1,71
3,5хЯ4 805,96 7,13 4,63 309,08 119,00 0,82 66110,89 1,98
4хЯ4 856,29 7,99 5,29 324,18 118,92 1,01 83013,46 2,49
4,5хЯ4 966,50 10,50 6,26 357,62 154,42 1, 37 105103,50 2,72
5хЕ5 1090,64 11,12 8, 78 420,96 165,76 1,21 142022,25 2,88
При увеличении множества альтернатив (больше 20 классов) при классификации по двум признакам, из-за меньшего, чем у аналогов, прироста времени распознавания, предлагаемый метод быстрее выполняет классификацию тестовой выборки (табл. 2). При увеличении количества используемых признаков преимущество терялось (табл. 3).
Несмотря на приемлемые результаты по количеству ошибок классификации линейно разделимых данных применение предлагаемого алгоритма нельзя назвать в этой ситуации целесообразным, поскольку его использование ориентировано в первую очередь на работу с линейно неразделимыми данными.
Таблица 2
Коли- Время обучения, мс Время распознавания, мс Количество ошибок, %
чество классов HS k-NN SVM HS k-NN SVM HS k-NN SVM
4 543,83 5, 76 461,71 36,80 5107,06 1,42 0 0 0
6 730,07 3,88 926,26 39,98 5116,72 3,44 0 0 0
8 906,30 2,55 1829,93 39,79 5101,49 5,40 0 0 0
10 1228,57 1,96 2685,05 38,56 5149,74 9,91 0 0 0
12 1413,53 2,27 3952,04 38,21 5165,15 13, 04 0 0 0
14 1724,60 1,64 5338,23 40,05 5115,06 17, 89 0 0 0
16 1917,53 1, 51 7064,49 35,71 5166,64 25, 54 0 0 0
18 2257,62 1,84 8758,04 40,37 5124,23 33, 87 0 0 0
20 2342,86 1,87 10843,64 41,41 5147,21 43,89 0 0 0
22 3057,27 1,69 13062,68 40, 63 5137,49 55,89 0 0 0
24 3266,42 1,86 16553,74 39,13 5089,70 66,15 0 0 0
Довгаль В. М., Дорошенко А. Ю. Об алгоритме построения разделяющей гиперповерхности для решения задачи классификации
при линейной неразделимости классов образов
Таблица 3
Количество классов Время обучения, мс Время распознавания, мс Количество ошибок, %
Ш к-т 8УМ Ш к-Ш 8УМ Ш к-Ш 8УМ
4 15572,25 9,55 1037,30 16378,07 10560,37 3, 73 0 0 0
6 24621,23 9,06 2417,34 20969,58 9683,56 7, 30 0 0 0
8 35419,81 6,80 3577,95 22022,47 9278,48 14, 31 0 0 0
10 45287,05 3,03 6306,90 24607,20 9192,03 28, 84 0 0 0
12 56133,77 6,33 8647,70 26145,34 9277,32 39, 37 0 0 0
14 63809,09 4,68 13492,56 24708,55 8961,82 108,64 0 0 0
16 74866,62 4,80 17682,28 26030,84 9333,63 85, 22 0 0 0
18 86435,79 3,18 21004,72 23480,92 8899,72 87, 76 0 0 0
20 99664,29 2,23 19628,27 21870,42 8500,30 107,83 0,28 0 0
22 94591,30 2,70 23685,06 23555,89 7746,05 114,09 0,48 0 0
24 103774,29 2,25 28542,92 22033,37 7642,84 152,93 0,36 0 0
Линейно неразделимые данные
Для анализа поведения предлагаемого алгоритма при классификации линейно неразделимых данных в качестве аналогов использовались методы ^-ближайших соседей и опорных векторов с радиальной функцией Гаусса в качестве ядра. Моделировались случаи с разной сложностью классификации. Для генерации координат точек обучающей выборки в ^-мерном пространстве Е! с признаками и1,..., иа использовались псевдослучайные числа, причем точка р относилась к классу Л, если зт(ахи1(р) > и2(р) + 8, и к классу Ъ, если зт(ахиг (р)) < и2(р) — 8, где 8 - некоторое малое число (устанавливалось 0,01), задающее минимальное расстояние между классами. В данном случае коэффициент а рассматривался как мера «неразделимости» классов. Примеры полученных выборок в двумерном пространстве с построенными на их основе разделяющими поверхностями изображены на рисунке 5.
а = 2 а = 5
Рис. 5. Обучающие выборки для двух классов с разделяющей поверхностью в двумерном пространстве
Полученные результаты классификации на обучающих и тестовых выборках по 5000 элементов двух классов в двумерном пространстве для разных значений параметра а сведены в следующую таблицу.
Таблица 4
Пара- Количество допущенных ошибок, % Время обучения, мс Время классификации, мс
метр а HS k-NN SVM HS k-NN SVM HS k-NN SVM
2 0,92 1,42 0,20 488,61 5,65 19005,74 55,05 857,14 16, 87
2,5 1,06 1,50 0,30 434,96 5,77 25427,05 59,40 863,54 26,13
3 1,14 1,74 0, 54 387,65 2,47 39538,81 61,84 855,97 37,57
3,5 1,36 2,04 1,20 418,29 2,61 59128,39 70,36 854,43 56,32
4 1,66 2,50 2,42 456,14 2,95 147286,60 76,00 855,07 94,76
4,5 1,64 2,72 5,12 403,24 2,23 375717,38 89,63 860,72 164,67
5 2,16 3,34 15,16 458,19 2,60 571177,39 103,99 852,95 230,16
Из соответствующего графика, построенного на основе полученных данных, изображенного на рисунке 6, видно преимущество предлагаемого алгоритма по средней ошибке классификации.
значение параметра а
Рис. 6. График зависимости процента допущенных ошибок предлагаемого алгоритма, метода к-ближайших соседей и метода опорных объектов при увеличении сложности разделения выборки данных
С ростом размерности пространства указанные зависимости по количеству допускаемых ошибок классификации остаются справедливыми для всех тестируемых методов.
Резюме: основным недостатком предлагаемого метода является его высокая вычислительная и емкостная сложность, увеличивающаяся при расширении множества используемых признаков. Это обусловливается сложностью существующих методов
Довгаль В. М., Дорошенко А. Ю. Об алгоритме построения разделяющей гиперповерхности для решения задачи классификации
при линейной неразделимости классов образов вычисления триангуляции Делоне [Barber, Dob kin, Huhdanpaa 1996], которая лежит в основе настоящего алгоритма. На представленном на рисунке 7 графике видно, что время построения разделяющей гиперповерхности возрастает экспоненциально (обучающая выборка из пяти тысяч элементов, два класса). Поскольку построение классификатора осуществляется один раз для конкретной задачи, то с учетом достижения требуемой точности подобные результаты можно считать приемлемыми.
количество признаков
Рис. 7. График зависимости времени построения разделяющей гиперповерхности от количества используемых признаков (измерений)
Библиографический список
Ласло М. Вычислительная геометрия и компьютерная графика на С++: пер. с англ. М.: БИНОМ, 1997. 304 с.
Abeel Т., Van de Peer Y., Saeys Y. Java-ML: A Machine Learning Library // Journal of Machine Learning Research. (2009). 10. P. 931-934.
Barber C.B., Dobkin, D.P., HuhdanpaaH.T. The Quickhull algorithm for convex hulls // ACM Trans, on Mathematical Software. 1996. 22(4). P. 469-483.
Blum H. A transformation for extracting new descriptors of shape // Models for the Perception of Speech and Visual Forms / W. Walthen Dunn, ed. Cambridge, MA: MIT Press, 1967. P. 362-380.
Boser В. E., Guy on, I. M., Vapnik V. N. A training algorithm for optimal margin classifiers // Proceedings of the fifth annual workshop on Computational learning theory, ser. COLT '92. New York, NY, USA: ACM, 1992. P. 144-152. doi: 10.1145/130385.130401.
Chang C.C., Lin C.H. LIBSVM: a library for support vector machines // ACM Trans. Intell. Syst. Technol. 2, 3, Article 27 (April 2011), 27 p.
Cao L. Support vector machines experts for time series forecasting // Neurocomputing. 2003. Vol. 51. P. 321-339.
Gestel V. T. Financial Time Series Prediction Using Least Squares Support Vector Machines // IEEE Transactions on Neural Networks. 2001. Vol. 12. N 4. July. P. 809-821.
Kimmel R., Shaked I)., Kiryati N., Bruckstein A.M. Skeletonization via distance maps and level sets // Computer Vision and Image Understanding. 1995. 62:3. P. 382-391.
Lee YJ., Mangasarian O. L., Wolberg W. H. Survival-Time Classification of Breast Cancer Patients // Comput. Optim. 2003. Appl. 25. P. 151-166.
Li F., Yang Y. A Loss Function Analysis for Classification Methods in Text Categorization // International Conference on Machine Learning (ICML). 2003. P. 472-479.
Pang B., Lee L., Vaithyanathan S. Thumbs up? Sentiment Classification using Machine Learning Techniques // Proceeding of the ACM Conference on Empirical Methods in Natural Language Processing (EMNLP). 2002. Р. 79-86.
Rozenblatt F. On the Convergence of Reinforcement Procedures in Simple Perceptrons // Cornell Aeronautical Laboratory Report VG-1196-G-4, Buffalo, NY, 1960. Р. 72.
Sevarac Z., Goloskokovic I., Tait J., Morgan A., Carter-Greavec L. Neuroph. Retrieved June 5, 2010. URL:http://neuroph.sourceforge.net/.
Vapnik V.N. An Overview of Statistical Learning Theory // IEEE Transactions on Neural Networks. 1999. 10(5). Sept. Р. 988-999. URL: http://www.recognition.mccme.ru/pub/papers/SLT/Vapnik99overview.pdf (дата обращения: 13.08.2016).
Zou J.J, Chang H.S., Yan H. A new skeletonization algorithm based on constrained Delaunay Triangulation // Proc. 5th ISSPA. Vol. 2. Brisbane, Australia, 1999. P. 927-930.