Оптимизация выбора параметров SVM-классификатора с ядром RBF для задач классификации текстовых документов

М. Л. Ямшанов

ОПТИМИЗАЦИЯ ВЫБОРА ПАРАМЕТРОВ SVM-КЛАССИФИКАТОРА С ЯДРОМ RBF ДЛЯ ЗАДАЧ КЛАССИФИКАЦИИ ТЕКСТОВЫХ ДОКУМЕНТОВ

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

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

Мы будем далее рассматривать задачу классификации текстов как задачу отнесения входного документа к одной или нескольким тематическим рубрикам заранее созданного рубрикатора. В данном контексте понятия «классификация» и «рубрикация» будут идентичны.

Одним из достаточно активно развиваемых в последнее время методов классификации является SVM (Support Vector Machines) - «машины опорных векторов» [3, 4, 5, 10].

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

В основе SVM лежит построение гиперплоскости в евклидовом пространстве RN, разделяющей обучающее множество X векторов признаков на два класса. Применительно к задаче рубрикации элементами векторов-признаков являются термины, наилучшим образом отражающие тематику документа (рубрику классификатора) и веса этих терминов в рассматриваемом наборе документов, представленные в соответствии с векторной моделью документа [1].

У метода опорных векторов выделяется две стадии: стадия обучения и стадия классификации. На стадии обучения строится разделяющая гиперплоскость на основе обучающих данных. В задаче рубрикации обучающими данными являются документы-образцы, заранее отнесенные экспертами к своим тематическим рубрикам. На стадии классификации алгоритм по любому вход-

ЯМШАНОВ Михаил Львович - зам. директора по научной работе НИИ средств вычислительной техники

© Ямшанов М. Л., 2006

ному документу решает, с какой рубрикой этот документ следует соотнести.

В общем виде пространство исходных признаков X может быть разделено на два класса как линейной гиперплоскостью, так и нелинейной В свою очередь по степени разделимости данных линейной гиперплоскостью выделяют SVM с жесткой и мягкой границей.

На практике выделяются три основных случая: линейно разделимый случай с жесткой границей, линейно неразделимый случай с мягкой границей, нелинейная классификация.

Рассмотрим линейно-разделимую обучающую выборку

T = ((x^ уЛ ..., (x„> yjh

где x. - вектор обучающей выборки (размерности n), y. - признак класса (±1).

В линейно разделимом случае алгоритм SVM ищет среди всех разделяющих гиперплоскостей одну, с наибольшей приграничной полосой для уменьшения риска неправильного попадания точек в классы. Для этого все обучающие данные должны удовлетворять следующим условиям: w • x. + b $ +1 для y. = +1 w • x. + b # -1 для y. = -1, где w - вектор весов, b - порог (смещение).

Или, в скомбинированном виде:

yi (w • xi + b) - 1 $ 0 V/.

Уравнение разделяющей гиперплоскости f(x) можно представить в виде:

N

f(x,w,b) = (w,x) + b = wT-x + b = ^w,. -xt+b= 0,

w

а SVM-классификатор определяется как [10]: d(x) = s/gn (f(x)).

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

. 1 г

при условии: yi [wTx. + b] $ 1, / = 1, ..., N.

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

Ширина мягкой полосы управляется соответствующим штрафным параметром С. Алгоритм нахождения оптимальной приграничной полосы

для задач с перекрытием модифицируется вводом неотрицательной ослабляющей переменной >{(г = 1, Ы) в формулировку оптимизационной задачи, которая определяет допустимое нарушение ширины границы. Существуют два основных алгоритма с мягкой границей, различающиеся способом минимизации >: с 1- и 2-нормой.

В формулировку целевой функции добавляется штрафной параметр С.

{ N

1 г

шш >1>+С

2

V ¡=1 У

для алгоритма с 1-нормой,

1

гшп — \/м>+С 2

( N

\

2Х2

V ¡=1 У

N

для алгоритма с 2-нормой при условии: у. [юТх. + Ь] > 1 - I = 1, > 0, /= 1, ..., N.

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

На пространстве исходных признаков X фиксируется функция от двух переменных К : X х X 6 Для обучающего набора Т =

и пространство-образ считается пространством вторичных признаков Х'(Т) (оно зависит от обучающего набора). На пространстве-образе обучается линейный классификатор. Каждый вектор признаков х переходит в вектор вторичных признаков. Весовой вектор также перейдет в вектор большей размерности.

Обученный линейный классификатор будет иметь вид:

Ну

/(*) = (ы, Ф(*))й + Ъ = £ ,х) + Ь,

¡=1

Функция К называется ядром. Класс ядер достаточно широк, так как, по теореме Мерсера, функция К должна быть симметричной и неотрицательно определенной. Наиболее часто используются такие ядра, как полиномиальная функция степени й, гауссовская функция (радиальная базисная функция ИБР), сигмоидальная функция. Подбор ядра в каждом конкретном случае является нетривиальной задачей.

Среди представленных функций в задачах текстовой рубрикации представляется наиболее целесообразным использовать ИБР-ядро:

К(х1,х]) = ехр(-]\х,-х) ||2 На2).

Как показано в [8], линейное ядро с большим штрафным параметром С имеет те же результаты, что и ИБР-ядро. Сигмоидальное ядро при определенных параметрах является недопустимым, так как не приводит к вычислению скалярного произведения векторов признаков. Количество параметров у полиномиального ядра значительно больше ИБР-ядра, что влияет на сложность выбора модели. При использовании ИБР возникает меньше численных задач, в отличие от полиномиального ядра, где значения ядра могут приближаться к бесконечности или нулю. Теория и практика использования ИБР-ядра показали, что обучение на опорных векторах происходит быстрее при достаточно высокой точности классификации данных. Все это приводит к выбору ИБР-ядра в качестве функции преобразования пространства исходных признаков.

В работах В. Вапника [3, 10] было показано, что обучение БУМ-классификатора требует решения следующей двойственной квадратичной задачи оптимизации:

1 ^

при условии:

2>Л= о,

0<а,. < С, / = !,...,#.

Здесь N - количество обучающих примеров, а - вектор N переменных, представляющих собой множители Лагранжа, где каждый компонент а, соответствует обучающему примеру (х,, у,). В сумму (4) с ненулевыми коэффициентами а , входят только те вектора, для которых

(у,((и>,;сг) + 6)1) = 0, т. е. опорные.

Решением задачи (4) является вектор а*, для которого (4) максимизируется при выполнении ограничений (5).

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

ванные на декомпозиции [5, 6, 7, 9]. Однако для всех этих методов характерна одна проблема: правильный выбор параметра С в ограничивающих условиях (5) и параметров ядра. В случае RBF таким параметром является о.

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

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

Ситуация недооценки означает, что особых закономерностей в данных не было обнаружено и либо их нет вообще, либо необходимо выбрать иной метод их обнаружения.

В работе [8] проанализированы ошибки работы SVM-классификатора с RBF-ядром в зависимости от параметров C и о. Если значение о ^ 0 (при постоянном С), то каждая обучающая точка становится центром RBF (т. е. опорным вектором). При этом SVM переоценивает обучающие данные. Если о ^ 4 (при постоянном С), то граница принятия решения не сможет смоделировать требуемую решающую границу и возникает ситуация недооценки. Аналогичная ситуация наблюдается и в случае, когда С ^ 0 при постоянном о.

Для получения качественных результатов классификации SVM-классификатор должен быть обучен в некотором интервале значений С и о, после чего могут быть выбраны те значения, которые минимизируют оценку ошибки обобщения. Ошибка обобщения определяется посредством проверочного множества с помощью метода перекрестной проверки (cross-validation). Для этого весь набор обучающих данных разделяется на n подмножеств одинакового размера. Одно из подмножеств является тестирующим при проверке классификато-

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

Для определения параметров C и о применяется «поиск по сетке» с использованием перекрестной проверки. В каждом цикле сначала параметр С фиксируется в некотором нижнем значении и проводится проверка для различных значений о. Затем С увеличивается на один шаг и снова проводится проверка по значениям о. Пара значений (С, о) с лучшими результатами перекрестной проверки выбирается для окончательного обучения классификатора уже на полном обучающем наборе. В качестве шага приращения параметров применяется экспоненциальная подстановка возрастающих последовательностей С и о (например, С = 10-2, 10-1, ..., 104, о = 10-6, 10-5, ..., 10).

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

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

и н2

.

Нами было проведено тестирование данной методики для задач текстовой рубрикации на тестовой коллекции документов Reuters. Точность классификации, которая может быть получена в данном случае, составляет в среднем 86%. В то же время точность классификации, получаемая с помощью подбора параметров полным перебором обоих параметров С и о, составляет 93,2%. Нами были продолжены экспериментальные исследования различных способов вычисления о, и в результате была предложена формула на основе меры косинуса угла между векторами документов из обучающего набора:

.

Косинус угла между векторами вычисляется по следующей формуле:

V ¿=1 *=1

где и - размерность вектора обучающей выборки.

Результаты тестирования показали, что средняя точность классификации текстовых документов при таком способе вычисления параметра о составляет 92,54%, т. е. практически такая же, как и при полном переборе параметров методом перекрестной проверки.

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

Примечания

1. Солтон, Дж. Динамические библиотечно-инфор-мационные системы. М.: Мир, 1979.

2. Burbridge, R. Adaptive Kernels for Support Vector Classification, Burbidge (2002).

3. Boser, B. E., Guyon, I. M., Vapnik, V. A Training Algorithm for Optimal Margin Classifiers, Fifth Annual Workshop on Computational Learning Theory, ACM, (1992).

4. Cortes C. and Vapnik V. Support vector networks. Machine Learning, 20:273-297, 1995.

5. Cristianini N, Shawe-Taylor J. An Introduction to Support Vector Machines and other kernel-based learning methods. Cambridge University Press, 2000.

6. Joachims, T. (1999). Making Large-scale SVM learning practical. Advances in Kernel Methods - Support Vector Learning. B. Scholkopf, Smola, A. J., and Burges,C. J. C.Cambridge,M.A., MIT Press: 169-184.

7. Platt, J. Fast training of SVMs using Sequential Minimal Optimization. Advances in Kernel Methods Support Vector Machine, p. 185-208, MIT Press, Cambridge, 1999.

8. Keerthi, S. S. and Lin, C.-J. (2003). Asymptotic behaviors of support vector machines with Gaussian kernel. Neural Computation 15 (7), 1667-1689.

9. Osuna, E., Freund, R., Giro si, F. Improved Training Algorithm for Support Vector Machines, Proc. IEEE NNSP '97, (1997).

10. Vapnik, V. Statistical Learning Theory. John Wiley & Sons, 1998.

НОВЫЕ КНИГИ

Актуальные проблемы регионального экологического

мониторинга: научный и образовательный аспекты

[Текст] : сборник материалов

Всероссийской научной школы

(г. Киров, 28-30 ноября 2006 г.). -

Киров: Изд-во ВятГГУ, 2006. - 453 с.

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

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