Научная статья на тему 'Об одном подходе к решению проблемы переобучения классификатора'

Об одном подходе к решению проблемы переобучения классификатора Текст научной статьи по специальности «Математика»

CC BY
229
45
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Auditorium
Область наук
Ключевые слова
КЛАССИФИКАЦИЯ / МАШИННОЕ ОБУЧЕНИЕ / ТРИАНГУЛЯЦИЯ ДЕЛОНЕ / ПЕРЕОБУЧЕНИЕ / ГИПЕРПОВЕРХНОСТЬ / ГИПЕРПЛОСКОСТЬ / СРЕДИННАЯ ОСЬ / СГЛАЖИВАНИЕ ЛАПЛАСА / ВЫБРОСЫ

Аннотация научной статьи по математике, автор научной работы — Дорошенко А. Ю., Довгаль В. М.

В статье рассматривается ранее предложенная модель классификации, основанная на методе построения гиперповерхности, разделяющей классы в пространстве исходных признаков. Для её построения используется многомерная триангуляция Делоне. Предложен способ применения алгоритма сглаживания Лапласа для избегания проблемы переобучения. Также описывается способ анализа выбросов в исходной обучающей выборке.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Об одном подходе к решению проблемы переобучения классификатора»

УДК 004.93

ОБ ОДНОМ ПОДХОДЕ К РЕШЕНИЮ ПРОБЛЕМЫ ПЕРЕОБУЧЕНИЯ КЛАССИФИКАТОРА

© 2017 А. Ю. Дорошенко1, В. М. Довгаль2

1 аспирант кафедры программного обеспечения и администрирования информационных систем e-mail: [email protected], 2докт. техн. наук, профессор кафедры программного обеспечения и администрирования информационных систем e-mail: vmdovgala,yandex.ru

Курский государственный университет

В статье рассматривается ранее предложенная модель классификации, основанная на методе построения гиперповерхности, разделяющей классы в пространстве исходных признаков. Для её построения используется многомерная триангуляция Делоне. Предложен способ применения алгоритма сглаживания Лапласа для избегания проблемы переобучения. Также описывается способ анализа выбросов в исходной обучающей выборке.

Ключевые слова: классификация, машинное обучение, триангуляция Делоне, переобучение, гиперповерхность, гиперплоскость, срединная ось, сглаживание Лапласа, выбросы.

Проблема выбора математической модели для приемлемого описания некоторой зависимости по известной части её распределения является одной из основных в теории распознавания образов (машинного обучения). Актуальность проведения исследований и разработки новых алгоритмов в этой области, несмотря на эффективность и развитость существующей методологии [Marsland 2009; Shalev-Shwartz, Ben-David 2014], обусловливается разнообразием и высокой практической значимостью задач, формулируемых в указанном виде или сводимых к нему. К таковым можно отнести, например, диагностику раковых заболеваний [Kourou, Exarchos, Exarchos, Karamouzis, Fotiadis 2015], категоризацию различных текстов [Guzella, Caminhas 2009; Almomani, Gupta, Atawneh, Meulenberg, Almomani 2013], формирование контекстной рекламы [Dalessandro, Provost, Raeder, Perlich, Stitelman 2013].

Данная статья представляет собой по существу продолжение работы, в которой был описан метод построения гиперповерхности в пространстве признаков с использованием триангуляции Делоне и способ определения положения относительно нее произвольной точки, что в совокупности и составляет алгоритм классификации [Довгаль, Дорошенко 2016]. Одним из его существенных недостатков является тенденция к переобучению (overfitting), когда в стремлении уменьшить количество ошибок классификации на обучающем наборе снижается способность к обобщению для распознавания неизвестных объектов. Такая ситуация возникает в результате недостаточной полноты предъявленных данных или наличия среди них шумовых элементов. Для повышения устойчивости классификатора по этим критериям предлагается сгладить вычисляемую гиперповерхность (см. рис. 1). При этом, возможно, увеличится количество ошибок на обучающих тестах, но уменьшится их число на всем распределении в соответствии со спецификой решаемых задач и исходных данных.

* ж X

: ¡ft* , "ч

• л . » •»• • и >Л

•с : V- - \ • ]

• • • • .г ••J

• •• • * Л • • - *

• .. . г.: v •t- ..*.<•

• •• . _ ч *•• •

•/.•*• • " . • • •• ..

. » . •. . . < . • • • f «• • • ■

Рис. 1. Пример разделяющих контрольные выборки элементов двух классов поверхностей НБ с (черная линия) и без (серая линия) сглаживания в двумерном случае

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

Т! = {(*!,У1).....(хп,yj] С X!хГ!,

f (!)

где Xi = (х( ),

XDh

1)

., xf ') - упорядоченный набор значений (кортеж, вектор, точка) D-мерного пространства признаков Х° = Хгх ...xXD,

yt = y(xi) - условное обозначение класса из пространства ответов Y! = (1,..., Q), которому принадлежит xt. Отображение /: X ^ Y, при котором количество ошибок минимально на всем распределении, будет целевым. Подразумевается, что пространство признаков является Евклидовым ED, а сами признаки уже нормированы с учетом их значимости.

Далее по тексту будут использоваться понятия симплекса, выпуклой оболочки и триангуляции Делоне, канонические определения которых приведены в предыдущей работе и здесь, для краткости, опущены. Также полагается, что термины «полигон», «плоскость», «поверхность» используются в смысле их многомерных обобщений (кроме оговоренных отдельно случаев), то есть они отождествлены с понятиями «D-полигон» («гиперполигон»), «D-плоскость» («гиперплоскость») и «D-поверхность» («гиперповерхность»), характерными для произвольного D-мерного пространства [Довгаль, Дорошенко 2016].

Исходный алгоритм

Рассматриваемый алгоритм реализует вычисление поверхности, обозначаемой HS, равноудаленной от внешних границ классов, оцениваемых в результате анализа симплексов многомерной триангуляции Делоне DT(Tn) точек обучающей выборки Тп. Отметим, что предельное число симплексов триангуляции [Seidel 1995]

О

("lfl).

2)

В рамках описываемого подхода интерес представляют только так называемые виртуальные1 симплексы, среди вершин которых содержатся точки разных классов, поскольку, очевидно, искомая разделяющая поверхность, будет их пересекать. Границы класса / £ У! представляются совокупностью всех граней виртуальных симплексов, вершины которых принадлежат классу /. Детальность такого представления зависит от расстояния между классами, и чем оно больше, тем ближе форма граничных поверхностей будет к выпуклой (см. рис. 2).

1 Используется терминология, определяемая в работах, посвященных построению срединной оси (скелетона), например: [Jones, Bundy, Ware 1995].

Рис. 2. Виртуальные симплексы триангуляции Делоне для двух классов при их различном взаимном расположении

Рассмотрим понятие срединной оси (medial axis) - для некоторой фигуры это множество точек, имеющих более одной ближайшей точки на её границе. Если представить граничные поверхности классов как незамкнутую фигуру, то, исходя из определения, её срединная ось будет не линией, а в общем случае D-поверхностью. Из последнего следует, что такая структура разграничивает выборки классов и, в силу равноудаленного от них расположения, обеспечивает наиболее уверенное разделение. Поэтому для вычисления целевой поверхности HS адаптирован алгоритм построения срединной оси [Kimmel, Shaked, Kiryati, Bruckstein 1995; Zou, Chang, Yan 1999]. Получаемая таким способом структура является приближенной к действительной срединной оси фигуры и задается совокупностью из т сегментов ...,Sm, где т соответствует количеству виртуальных симплексов, вида

т

HS

=U

3)

1=1

Каждый сегмент поверхности определяется пересечением плоскости а0, в которой он лежит, и полупространств, ограниченных плоскостями а1,..., ак, где число к оценивается как 2

ф + 1)2

D < к <

4 ' 4)

где [и] - целая часть и. Все эти плоскости задаются линейными функциями вида

/а;0) = Щ ■ * + Ъ1, 5)

где / = 0,..., к,

и • V - операция скалярного произведения некоторых векторов и и V, № и Ъ - вектор весовых значений и смещение, соответственно. Для всех точек х сегмента 5, как следствие их используемого представления, должно быть верно, что

т}п(/а1 (*)' - ' fak(x)) ^ 6)

то есть они должны быть корректно ориентированы. В процессе построения поверхности, если какая-либо функция не удовлетворяет условию (6), её коэффициенты меняются на противоположные.

2 Рассмотрим виртуальный симплекс Д-мерного пространства с вершинами рх,..., р!+1, п из которых являются виртуальными. Число виртуальных ребер будет оцениваться как к = п * (В + 1 — п). При этом

. ! + 1 . + о + , . О+А (С + 1)2

максимум к достигается в точке п =- и равен ктах(-) =-[и + 1--1 =-, а минимум, с

2 2 2 V 2 / 4

учетом ограничения на п вида 0 < п < О + 1, следующего из того, что симплекс виртаульный, соответственно, ктЫ( 1) = кт1пф) = В. ■

Для определения положения произвольной точки р относительно поверхности производится подсчет числа пересечений её сегментов с отрезком прямой линии с вершинами в р и какой-нибудь точкой q с заранее известным положением (берется из обучающей выборки). При четном количестве пересечений точка р будет находиться с той же стороны относительно поверхности HS, что и q, при нечетном - с разных. Такой способ является адаптацией метода трассировки луча (even-odd rule). Определение пересечения отрезка и сегмента сводится к определению точки пересечения отрезка с плоскостью а0 и проверке для неё условия (6). Отрезок поворачивается на малый угол в случае, если он проходит через границу сегмента.

Алгоритм сглаживания

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

Одним из возможных способов снижения зависимости классификатора от полноты обучающей выборки и, следовательно, улучшения его способности к обобщению является выполнение сглаживания решающей поверхности. Учитывая её используемое представление, разумно применять методы так называемого локального сглаживания, широко применяемые в двух и трех измерениях. Согласно таким алгоритмам, используя информацию только о смежных с вершинами точках, выполняются многократные последовательные корректировки их положения, в результате чего форма поверхности в целом становится более гладкой. Для применения в произвольном D-мерном пространстве рассматривается метод Лапласа3 (Laplacian smoothing), подробно описанный, например, в работах [Buell, Bush 1973; Vollmer, Mencl, Müller 1972].

Рассмотрим некоторую поверхность, о которой известно множество V её п вершин и набор множеств смежных с каждой вершиной точек {Nq\q G V, Nq Ç V}. Определим вектор расстояния до геометрического центра - среднего арифметического смежных точек («оператор зонта» - «umbrella operator» [Kobbelt, Campagna, Vorsatz, Seidel 1998]), в виде

U(p) = щ!qeNp(q - Р), 7)

где |и| - количество элементов множества и. Тогда, многократно

последовательно сдвигая точки р G V на t/(p) с малым коэффициентом (весом) ß > 0, получим метод сглаживания Лапласа, где новое положение точки на итерациях i = 1,..., R рассчитывается как

р( i +1 = р( о + ßu(p( 0). 8)

3 В англоязычной литературе существуют понятия «Laplacian smoothing», характеризующее геометрическое сглаживание поверхностей, и «Laplace smoothing» («adaptive smoothing»), использующееся в статистике. Перевод терминов на русский язык идентичен - «сглаживание Лапласа», но в настоящей статье используется именно в первом значении.

Теоретически чем меньше Р и больше й, тем лучшего сглаживания можно достичь, но на практике обычно достаточно 2-10 итераций. Рассуждения о поиске параметров приводятся ниже.

Чем дальше точка находится от геометрического центра, тем, соответственно, больше величина сдвига (7), что при многократном повторении итерации (8) для всех точек V приводит к выравниванию формы поверхности, то есть устранению излишней детальности её пространственной конфигурации (см. рис. 3). Также если исходные вершины находятся с почти равной вероятностью «над» или «под» желаемой поверхностью, то после сглаживания исходная поверхность гарантированно к ней приблизится. Формулы (7) и (8) не зависят от количества измерений Б и могут быть применены в произвольном .О-мерном пространстве.

Рис. 3. Визуализация выполнения трех итераций алгоритма сглаживания Лапласа в двух измерениях

Рассмотрим теперь поверхность НБ, заданную в виде (3) в О-мерном пространстве. Её сегменты, согласно (4), могут содержать больше Б вершин. Изменив в результате сглаживания позицию какой-то из них, они, скорее всего, не будут лежать в одной плоскости, и вычисление функций, определяющих ее плоскости (5), приведет к неоднозначности. Решением здесь может являться разбиение таких сегментов на полигоны с (Р — 1) вершиной, что значительно усложнит классификатор. Гораздо проще сгладить внешние границы классов, что приведет к тому, что вычисленная после разделяющая поверхность НБ также будет более гладкой.

Требуемые для сглаживания вершины поверхности явно не представляются в рассмотренном подходе, но могут быть легко определены одновременно со смежными с ними вершинами с линейной сложностью 0(т), где т - количество виртуальных симплексов. Формальное описание соответствующего алгоритма отражено на рисунке 4 со следующими обозначениями:

УБ - множество виртуальных симплексов; 5(/) - / вершина симплекса 5; у (и) - класс, которому принадлежит точка и; V ^ и - добавление элемента и во множество V.

1. для всех виртуальных симплексов 5 £

2. для всех I = 1,..., О + 1

; I = 1,..., Б + 1

для всех ] = I + 1,..., О + 1

если (у(з( 0) = у(50)) то если (Ы = й) то

3.

4.

5.

6. 7.

если (Л/!С/) = 0) то V ^

если уЦ) £

8

9.

10. 11.

N„0) ^ v(j) Нуд) ^ КО

Рис. 4. Алгоритм поиска вершин внешних граничных поверхностей классов и их соседей

Тестирование предложенного алгоритма проводилось на модельных данных в сравнении с оригинальным алгоритмом, эффективность которого в сопоставлении с существующими аналогами обсуждалась нами ранее [Довгаль, Дорошенко 2016]. Основной целью проведенных экспериментов являлась оценка параметров сглаживания Р и Я в формуле (8). Как следствие выбора некорректных параметров, может быть получен классификатор хуже исходного, что приводит к проблеме излишнего сглаживания. В ходе экспериментов для поиска наилучшей модели осуществлялось построение нескольких классификаторов с небольшим шагом изменения параметра @ (около 0.1) и фиксированным Я (2, 5,10, 30, 50). При нахождении минимума ошибок с выбранной точностью поиск проводился в окрестности найденного значения Р.

Наилучшие результаты классификации элементов контрольной выборки достигались при выполнении всего 2 — 10 итераций сглаживания, при Р £ [0.001,... ,1], что отражено в таблице 1. Размер обучающей выборки во всех экспериментах равнялся 2000 элементов, контрольной - 600.

Таблица 1

D ß R Количество ошибок Выигрыш, %

без сглаживания, % со сглаживанием, %

2 0.28 2 2.83 2.5 0.33

2 0.11 2 1.83 1.33 0.5

2 0.34 2 3 2 1

3 0.16 5 8.5 7.6 0.9

3 0.094 5 7 5.5 1.5

3 0.109 5 7.17 4.83 2.34

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

4 0.065 5 32.17 27.3 4.87

4 0.156 2 35.5 31.5 4

4 0.124 5 39 35 4

5 0.016 2 31.8 28.3 3.5

5 0.002 10 33.67 30.5 3.17

5 0.004 2 33.17 29.17 4

При недостаточном объеме обучающей выборки возникающая разреженность в расположении векторов в пространстве признаков сказывается на адекватности оценки граничных поверхностей классов, что приводит к характерной для метрических классификаторов проблеме, называемой «проклятье размерности» [Bellman 1957]. Сглаживание поверхности улучшает эффективность классификации, при этом величина коэффициента ß выбирается на порядок меньше, что можно увидеть в таблице 1, применительно для пяти измерений.

Резюме: применяя сглаживание Лапласа для разделяющей поверхности, можно улучшить эффективность классификатора, уменьшив на 0.3 — 5% среднее количество ошибок распознавания на контрольной выборке. В связи с отсутствием эвристической стратегии выбора параметров сглаживания требуется осуществлять построение нескольких классификаторов, что существенно замедляет процесс обучения.

Анализ выбросов

Проблематика теории распознавания образов включает задачи анализа качества обучающей выборки, в частности исключения так называемых выбросов (outlier) -элементов, в каком-то смысле отклоняющихся от других, полученных, например, в результате ошибок измерений. Поскольку большинство классификаторов опираются на

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

о о О °

• * . • • . . •

Рис. 5. Построенная разделяющая гиперповерхность для выборки с выбросами

Обзоры существующих подходов к их определению можно найти в работах [Singh, Upadhyaya 2012] и [Bansal, Gaur, Singh 2016].

Выделяют три основных разновидности выбросов:

(i) точечные - единичные элементы выборки, имеющие отклонения относительно всей выборки;

(ii) контекстуальные - элементы, нарушающие структуру выборки;

(iii) коллективные - группа элементов выборки, имеющая отклонения относительно всей выборки в целом.

В данной статье затрагиваются вопросы определения первого (i) и частично третьего (iii) из перечисленных типов.

Идея предлагаемого метода основана на предположении, что минимальное число смежных точек вершин граничных поверхностей классов в D-мерном пространстве не может быть меньше, чем D — 1. Тогда если для какой-то точки это условие не выполняется, то она исключается из выборки как выброс. В пространствах более чем двух измерений, следуя приведенному правилу, из выборки могут быть удалены точки, имеющие смежные, которые в совокупности можно называть коллективными выбросами.

Рассмотрим сегменты граничной поверхности какого-либо класса, составленной из граней виртуальных симплексов, имеющих D вершин. Вершины являются смежными друг другу, и, следовательно, каждая из них имеет не менее, чем D — 1 смежных точек. Отсюда следует, что если точка имеет меньше D — 1 смежных точек, то она не может быть вершиной какой-либо грани поверхности и является выбросом.

Предложенную эвристику можно изменить, удаляя из выборки точки, у которых меньше чем D смежных точек. В таком случае выбросами будут считаться еще и точки, которые являются вершинами только одного сегмента, хотя при этом из выборки могут быть удалены и правильные элементы. Также можно расценивать количество смежных точек как параметр, описывающий порог принятия решения о идентификации точки как выброса, и выбирать различные варианты, в том числе и большие D. В таком случае качество итогового классификатора может ухудшиться при сложных пространственных конфигурациях распределений классов, что приводит к необходимости проведения ряда экспериментов.

Тестирование проводилось на линейно разделимых данных с добавлением шумовых элементов (рис. 5). Обучающая выборка состояла из 2000 элементов (по 1000 каждого класса), среди которых около 10% элементов были выбросами. Тестирование обученных классификаторов проводилось для 600 элементов исходного распределения без шумов. При фильтрации выбросов удалялись элементы, имеющие меньше чем D смежных вершин. Усредненные по трем попыткам результаты отражены в таблице 2.

Таблица 2

Количество ошибок

D

Выигрыш, %

до отсева выбросов, %

после, %

2

3

4

5

5.4 28.7 34.4

8

0.16 0.33 10.5 25.11

7.84% 5.07% 18.2% 9.29%

На рисунке 6 приведен пример тестовой выборки до (слева) и после (справа) фильтрации выбросов с соответствующими им построенными поверхностями НБ (снизу).

Рис. 6. Слева вверху изображена обучающая выборка с 10% шумовых элементов, слева внизу -та же выборка с построенной разделяющей поверхностью HS; справа вверху полученная после фильтрации выбросов выборка, а справа внизу, соответственно, вычисленная для нее разделяющая поверхность HS

Заметим, что, исключив из алгоритма на рисунке 4 строку 4 с условием отбора смежных точек, можно определить для каждой вершины смежные в том числе и среди других классов, что дает возможность анализировать количественные соотношения «своих» и «чужих» точек. Также в том случае, когда классы не могут быть разделены без ошибок, можно удалить все точки, являющиеся вершинами виртуальных симплексов, сделав тем самым некоторый отступ между классами, и обучать классификатор на полученных данных.

Резюме: применяя предложенный алгоритм анализа выбросов, можно значительно улучшить зашумленные исходные данные и получить более эффективный классификатор (в рассматриваемом случае достигнутый выигрыш составлял 5- 18 %). Есть возможность варьировать параметр, при котором точка рассматривается как выброс, что предоставляет возможность поиска практически приемлемого решения, но при этом качество исходной выборки может ухудшиться.

Библиографический список

Довгаль В.М., Дорошенко А.Ю. Об алгоритме построения разделяющей гиперповерхности для решения задачи классификации при линейной неразделимости классов образов // Auditorium. Электронный научный журнал Курского государственного университета. 2016. Вып. №3(7). URL: http://auditorium.kursksu.ru/pdf/012-013.pdf (дата обращения: 23.03.2017).

Almomani A., Gupta B.B., Atawneh S., Meulenberg A., Almomani E. A survey of phishing email filtering techniques, IEEE Communications Surveys & Tutorials, 15 (4), 2013, P.2070-2090.

BansalR., Gaur N., Singh S.N. Outlier Detection: Applications and techniques in Data Mining. In Cloud System and Big Data Engineering (Confluence), 2016 6th International Conference, IEEE, 2016, P. 373-377.

Bellman R Dynamic Programming, Princeton University Press Princeton // New Jersey Google Scholar. 1957.

Buell W.R., Bush B.A. Mesh generation - a survey, Trans. ASME, J. Eng. Ind., 1973, P. 332-338.

Guzella T.S., Caminhas W.M. A review of machine learning approaches to spam filtering, Elsever, Expert System with Applications, 36(7), 2009, P. 10206-10222.

Jones C.B., Bundy G.L., Ware M.J. Map generalization with a triangulated data structure // Cartography and Geographic Information Systems, 1995, 22(4), P. 317-331.

Kimmel R., Shaked D., Kiryati N., Bruckstein A.M. Skeletonization via distance maps and level sets // Computer Vision and Image Understanding. 1995, 62:3, P. 382-391.

Kobbelt L., Campagna S., Vorsatz J., SeidelH.-P. Interactive multiresolution modeling on arbitrary meshes // Computer Graphics (SIGGRAPH 98 Proceedings), 1998, P. 105-114.

Kourou K., Exarchos T.P., Exarchos K.P., Karamouzis M.V., Fotiadis D.I. Machine learning applications in cancer prognosis and prediction // Comput. Struct. Biotechnol. J. 13, 2015. P. 8-17.

MarslandS. Machine learning: an algorithmic perspective, CRC press, 2009, P. 390.

Seidel R. The upper bound theorem for polytopes: an easy proof of its asymptotic version // Computation Geometry, 1995, 5(2), doi:10.1016/0925-7721(95)00013-Y, P. 115116.

Dalessandro B., Provost F., Raeder T., Perlich C., Stitelman O. Machine learning for targeted display advertising: Transfer learning in action // Machine Learning, Special Issue on ML for Science and Society, 2013. URL: http://hdl.handle.net/2451/31829 (дата обращения: 23.03.2017).

Singh K., Upadhyaya S. Outlier detection: applications and techniques // International Journal of Computer Science Issues, 9(1), 2012, P. 307-323.

Shalev-Shwartz S., Ben-David S. Understanding machine learning: From theory to algorithms. Cambridge university press, 2014.

Vollmer J, Mencl R., Müller H. Improved Laplacian Smoothing of Noisy Surface Meshes // Computer graphics forum. Vol. 18. Wiley Online Library, 1999. P. 131-138.

Zou J.J, Chang H.-H., Yan H. A new skeletonization algorithm based on constrained Delaunay Triangulation, in Proc. 5th ISSPA. Vol. 2. Brisbane, Australia, 1999, P. 927-930.

i Надоели баннеры? Вы всегда можете отключить рекламу.