Отбор информативных признаков в методе опорных векторов Андрющенко Анастасия Михайловна, гр. 522 Санкт-Петербургский государственный университет Математико-механический факультет Кафедра статистического моделирования Научный руководитель: Коробейников А.И. Рецензент: к.ф.-м.н., д. Алексеева Н.П. Санкт-Петербург 2010г. 1/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM Введение Задача отбора информативных признаков в задачах классификации способствует: уменьшению ошибки предсказания; определению значимых признаков; уменьшению размерности данных. В работе используется модификация метода опорных векторов (support vector machines, SVM (Vapnik, 1995)). 2/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM SVM. Задача классификации Данные: X1 ··· Xm (1) ··· x1 .. . ··· (m) xn x1 .. . x1 .. . xn (1) xn Метки: (m) xi ∈ Rm — наблюдения (X1 , . . . , Xm ) — признаки xi → yi ∈ {±1} Задача классификации: построить f : f (xi ) = yi ∀i = 1 . . . m. Задача отбора признаков: (X1 , . . . , Xm ) → (Xi1 , . . . , Xil ) 3/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM SVM. Задача классификации Данные: X1 ··· Xm (1) ··· x1 .. . ··· (m) xn x1 .. . x1 .. . xn (1) xn Метки: (m) xi ∈ Rm — наблюдения (X1 , . . . , Xm ) — признаки xi → yi ∈ {±1} Задача классификации: построить f : f (xi ) = yi ∀i = 1 . . . m. Задача отбора признаков: (X1 , . . . , Xm ) → (Xi1 , . . . , Xil ) 3/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM SVM. Задача классификации Данные: X1 ··· Xm (1) ··· x1 .. . ··· (m) xn x1 .. . x1 .. . xn (1) xn Метки: (m) xi ∈ Rm — наблюдения (X1 , . . . , Xm ) — признаки xi → yi ∈ {±1} Задача классификации: построить f : f (xi ) = yi ∀i = 1 . . . m. Задача отбора признаков: (X1 , . . . , Xm ) → (Xi1 , . . . , Xil ) 3/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM Линейные SVM Целевая функция SVM: fσ (x) = sign (hw, xi − b) . Параметры (w, b) получены решением: n X 1 kwk2 + C ξi −→ min w,b,ξ 2 i=1 yi (hw, xi i − b) > 1 − ξi , ξi > 0, i = 1, . . . , n. Рис.: Гиперплоскость. 4/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM Нелинейные SVM Данные не всегда отделимы в исходном пространстве ⇒ они рассматриваются в спрямляющем: φ : Rm → H 5/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM Нелинейные SVM. Kernel trick Введем ядро: K(xi , xj ) = hφ(xi ), φ(xj )iH . Целевая функция SVM: fσ (x) = sign (hw, φσ (x)iH − b) = sign ns X ! αi yi Kσ (si , x) − b . i=1 Примеры ядер: Линейное: K (xi , xj ) = hxi , xj i. Полиномиальное: Kγ,r,d (xi , xj ) = (γ hxi , xj i + r)d , γ > 0. Экспоненциально-радиальное (RBF — radial basis function): 2 Kγ (xi , xj ) = e−γkxi −xj k . 6/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM SVM. Отбор признаков Рассматриваются ядра: K(x, z) = ` kσ(x − z)k2 = ` m X ! σk2 (xk − zk )2 , k=1 где ` — монотонная функция. Масштабирующие коэффициенты {σk }m k=1 отражают степень влияния признака на результат классификации. Задача: 7/14 1 Реализация алгоритма пересчета масштабирующих коэффициентов (Grandvalet, Canu, 2003) на R. 2 Проверка и исследование на модельных данных. 3 Анализ реальных данных из кардиологии. Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM SVM. Отбор признаков Рассматриваются ядра: K(x, z) = ` kσ(x − z)k2 = ` m X ! σk2 (xk − zk )2 , k=1 где ` — монотонная функция. Масштабирующие коэффициенты {σk }m k=1 отражают степень влияния признака на результат классификации. Задача: 7/14 1 Реализация алгоритма пересчета масштабирующих коэффициентов (Grandvalet, Canu, 2003) на R. 2 Проверка и исследование на модельных данных. 3 Анализ реальных данных из кардиологии. Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM SVM. Отбор признаков Параметры классификатора: C, σ0 . Обучающий критерий: n X 1 kwk2 + C ξi −→ min , σ,w,b,ξ 2 i=1 yi (hw, φσ (xi )iH − b) > 1 − ξi , ξi > 0, m 1 X m 8/14 i = 1, . . . , n, σk2 = σ02 . k=1 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM Подход к решению Вместо сложной задачи итерационно решается несколько более простых: 1 2 Зафиксировать σ и построить SVM. n n P P Метод позволяет получить w, ξi и ∂ ξi /∂σ в виде i=1 i=1 функций от σ: n X 1 ξi . g(σ) = kwk2 + C 2 i=1 g(σ) → min . σ 3 9/14 На шаге l, начиная с σ (l) , вычислить оптимальные (ŵ(σ (l) ), b̂(σ (l) )). σ (l+1) определяется с помощью метода сопряженных градиентов. Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM Модельные данные Данные: 1 Координаты двух спиралей. Значимость признаков одинакова. X2 −0.5 0.0 0.5 Step: 300 Error: 1 Elbow Size: 13 Margin: 2.31 * * * * * ** * * * * * * * * * * * * * ** * ** * * * * * * * * * * * * ** * * * * * ** * * ** * * * * * ** * * * ** * * * ** * * * * ** * ** ** * * ***** * * * * * * ** * * * * * * * −1.0 −0.5 0.0 0.5 1.0 X1 10/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM Модельные данные Данные: 1 2 Координаты двух спиралей. Значимость признаков одинакова. Данные из (Chapelle, Vapnik, 2002). Линейно отделимые данные. 6 признаков из 10 значимы, остальные шум. Линейно не отделимые данные. 2 признака из 10 значимы, остальные шум. Полученные масштабирующие коэффициенты σ соответствуют характеру данных. 10/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM Реальные данные Данные о 422 пациентах, перенесших операцию на открытом сердце. Значимые признаки определялись для следующих задач: бинарная классификация: пациенты с наличием или отсутствием ПКТС; тернарная классификация: ПКТС отсутствует/ранний/ поздний. 50 признаков: 22 количественных, 28 категориальных. 1 2 3 4 11/14 Возр. 67 57 54 57 ИМТ 23 20 37 28 Кардиопл. 13.50 6.30 9.50 13.50 Андрющенко Анастасия Михайловна, гр. 522 ФВ 68 68 64 69 ··· Эозин. 0 1 1 0 Л1 8.70 9.90 14.70 17.20 Л7 7.10 6.70 7.00 10.40 Отбор информативных признаков в SVM Результаты Бинарная задача Всего 34 значимых признака: 14 количественных; 17 категориальных; 3 градации у двух категориальных признаков. Адреналин Возраст Аллергия Анемия Антиког.тер. Переж.аорты Арт.шунт Аутоимунные ИМТ Число шунтов Кардиоплегия Коронарогр. 0.04* 0.22 0.16 0.01* 0.08* 0.14 0.05* 0.01* 0.24 0.09* 0.08* 0.28 Дренир.1 Дренир.2 Дренир.3 Дренир.пот. Дренир.вр. Фр.выброса Эозинофилы СОЭ EuroSCORE EuroSCORE2 ССН Гиперглик. ··· 0.21 0.13 0.09* 0.19 0.05* 0.17 0.24 0.19 0.19 0.09* 0.14 0.16 Тип опер.2 Тип опер.3 Тип опер.4 Тип опер.5 Тип опер.6 Веноз.застой Темп.прайм. МНО Апп.иск.кр. Реперфузия Дыхат.недост. Наруш.ритма 0.11 0.07* 0.02* 0.01* 0.06* 0.13 0.19 0.06* 0.14 0.07* 0.13 0.11 Значимые признаки, * не значимые. 12/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM Результаты Тернарная задача Рассматривались 3 бинарные задачи. Для каждой из них получены масштабирующие коэффициенты. Признак n-el l-ne e-nl Признак n-el l-ne e-nl Адреналин Возраст Переж.аорты ИМТ Число шунтов Кардиоплегия Хрон.серд.нед. Дрен.потери Дренир.вр. Фр.выброса Эозинофилы 0.01* 0.01* 0.01* 3.16 0.01* 0.01* 0.01* 0.01* 3.31 4.64 0.01* 0.68 0.99 0.25 1.02 0.31 0.16 0.04 0.94 0.41 0.97 0.34 0.78 0.98 0.01* 1.18 0.19 0.25 0.21 0.97 0.69 0.71 0.49 СОЭ EuroSCORE EuroSCORE2 Ин.поддержка Лейк.д.1 Лейк.д.7 Мезатон Темп.прайм. МНО Апп.иск.кр. Реперфузия 0.01* 1.77 1.15 0.01* 1.05 2.35 0.01* 0.01* 1.29 3.41 0.01* 0.01* 0.34 0.45 0.01* 0.65 0.63 0.01* 0.49 0.18 0.74 0.27 0.51 0.37 0.61 0.07* 0.68 0.18 0.01* 0.32 0.43 1.01 0.46 Значимые признаки, * не значимые. 13/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM Заключение Итоги: Реализован алгоритм отбора информативных признаков на языке R. Его работа проверена и исследована на модельных данных. Осуществлен анализ реальных данных. Перспективы: Создание приложения. Комбинирование алгоритма с другими методами. 14/14 Андрющенко Анастасия Михайловна, гр. 522 Отбор информативных признаков в SVM