Академический Документы
Профессиональный Документы
Культура Документы
Сергей Николенко
Random facts:
• 17 мая (23 день третьего месяца) — праздник Мацу, Великой Матушки Поднебесной; во
время одной из медитаций юная Мацу спасла попавших в шторм отца и братьев, и в
результате стала богиней моря и покровительницей рыбаков
• 17 мая 28 года до н.э. астрономы династии Хань наблюдали пятна на солнце
• 17 мая 1857 г. сипаи в гарнизоне города Мирут осознали, что патроны, которые им
нужно было скусывать, пропитаны смесью говяжьего и свиного жира — тут-то
смешанный состав индусов и мусульман и смог договориться
• 17 мая 1922 г. США аннексировали риф Кингмен (Kingman Reef), ныне
неинкорпорированную неорганизованную территорию США; постоянного населения
нет, зато есть военно-морская база и огромное количество гигантских моллюсков
SVM и задача
линейной классификации
Постановка задачи
3
Постановка задачи
4
Пример
5
Выпуклые оболочки
при условии ∑ 𝛼𝑖 = ∑ 𝛼𝑖 = 1, 𝛼𝑖 ≥ 0.
𝑦𝑖 =1 𝑦𝑖 =−1
6
Пример
7
Максимизация зазора
8
Максимизация зазора
𝑡𝑛 𝑦(x𝑛 )
arg maxw,𝑤 min =
0 𝑛 ‖w‖
1
= arg maxw,𝑤 { min [𝑡 (w⊤ x𝑛 + 𝑤0 )]} .
0 ‖w‖ 𝑛 𝑛
8
Максимизация зазора
1
• arg maxw,𝑤 { ‖w‖ min𝑛 [𝑡𝑛 (w⊤ x𝑛 + 𝑤0 )]} . Сложно.
0
8
Пример
9
Максимизация зазора
1
min { ||w||2 } при условии 𝑡𝑛 (w⊤ x𝑛 + 𝑤0 ) ≥ 1.
𝑤,𝑏
⃗ 2
10
Результаты
11
Пример
12
Дуальные задачи
13
Дуальные задачи
13
Дуальные задачи
≤ 𝑓(𝑥)̄ + 𝜆̄ ⊤ ℎ(𝑥)̄ + 𝜇⊤
̄ 𝑔(𝑥)̄ ≤ 𝑓(𝑥).
̄
13
Дуальные задачи
𝜆⊤ 𝑏, если 𝑐⊤ − 𝜆⊤ 𝐴 ≥ 0,
={
−∞ в противном случае.
13
Дуальные задачи
• Дуальная задача:
13
Дуальные задачи
1
min { 𝑥⊤ 𝑄𝑥 + 𝑐⊤ 𝑥} при условии 𝐴𝑥 ≤ 𝑏,
2
1 1
max { 𝜇⊤ 𝐷𝜇 + 𝜇⊤ 𝑑 − 𝑐⊤ 𝑄−1 𝑐} при условии 𝑐 ≥ 0,
2 2
13
Дуальная задача к SVM
1
𝐿(w, 𝑤0 , 𝛼) = ‖w‖2 − ∑ 𝛼𝑛 [𝑡𝑛 (w⊤ x𝑛 + 𝑤0 ) − 1] , 𝛼𝑛 ≥ 0.
2 𝑛
w = ∑ 𝛼𝑛 𝑡𝑛 x𝑛 ,
𝑛
0 = ∑ 𝛼𝑛 𝑡𝑛 .
𝑛
14
Дуальная задача к SVM
1
𝐿(𝛼) = ∑ 𝛼𝑛 − ∑ ∑ 𝛼 𝛼 𝑡 𝑡 (x⊤ x )
𝑛
2 𝑛 𝑚 𝑛 𝑚 𝑛 𝑚 𝑛 𝑚
при условии 𝛼𝑛 ≥ 0, ∑ 𝛼𝑛 𝑡𝑛 = 0.
𝑛
14
Предсказание и KKT
𝑁
𝑦(x) = ∑ 𝛼𝑛 𝑡𝑛 x⊤ x𝑛 + 𝑤0 .
𝑛=1
15
Предсказание и KKT
𝛼𝑛 ≥ 0,
𝑡𝑛 𝑦(x𝑛 ) − 1 ≥ 0,
𝛼𝑛 (𝑡𝑛 𝑦(x𝑛 ) − 1) = 0.
15
Постановка задачи
16
Редуцированные выпуклые оболочки
𝑐 = ∑ 𝛼𝑖 𝑥𝑖 , 0 ≤ 𝛼𝑖 ≤ 𝐷.
𝑦𝑖 =1
17
Пример
18
Для метода опорных векторов
19
Для метода опорных векторов
𝑚
⃗ 2 + 𝐶 ∑ 𝑧𝑖 }
min {||𝑤||
𝑤,𝑤
⃗ 0
𝑖=1
19
Пример
20
Дуальная переформулировка
1 𝑛 𝑚 𝑚
min { ∑ ∑ 𝑡𝑖 𝑡𝑗 𝛼𝑖 𝛼𝑗 (𝑥𝑖⃗ ⋅ 𝑥𝑗⃗ ) − ∑ 𝛼𝑖 ,
𝛼 2 𝑖=1 𝑗=1 𝑖=1
𝑚
где ∑ 𝑡𝑖 𝛼𝑖 = 0, 0 ≤ 𝛼𝑖 ≤ 𝐶.}
𝑖=1
21
Итого
22
SVM и эмпирический риск
∑ [𝑦𝑖 ≠ 𝑡𝑖 ] → min .
w
𝑛
∑ [𝑡𝑖 (x⊤
𝑛 w − 𝑤0 ) < 0] → min .
w
𝑛
23
SVM и эмпирический риск
1
∑ [𝑀𝑖 < 0] ≤ ∑ (1 − 𝑀𝑖 ) + ‖w‖2 → min .
𝑛 𝑛
2𝐶 w
23
SVM и разделение нелинейными
функциями
Введение
25
Пример
26
Введение
27
Пример
29
Основная идея и схема работы SVM
30
Основная идея и схема работы SVM
31
Постановка задачи
1 𝑛 𝑚 𝑚
min { ∑ ∑ 𝑦𝑖 𝑦𝑗 𝛼𝑖 𝛼𝑗 (𝑥𝑖⃗ ⋅ 𝑥𝑗⃗ ) − ∑ 𝛼𝑖 ,
𝛼 2 𝑖=1 𝑗=1 𝑖=1
𝑚
где ∑ 𝑦𝑖 𝛼𝑖 = 0, 0 ≤ 𝛼𝑖 ≤ 𝐶.}
𝑖=1
32
Постановка задачи
1 𝑛 𝑚 𝑚
min { ∑ ∑ 𝑦𝑖 𝑦𝑗 𝛼𝑖 𝛼𝑗 (𝜃(𝑥𝑖⃗ ) ⋅ 𝜃(𝑥𝑗⃗ )) − ∑ 𝛼𝑖 ,
𝛼 2 𝑖=1 𝑗=1 𝑖=1
𝑚
где ∑ 𝑦𝑖 𝛼𝑖 = 0, 0 ≤ 𝛼𝑖 ≤ 𝐶.}
𝑖=1
32
Теория Гильберта--Шмидта--Мерсера
33
Теория Гильберта--Шмидта--Мерсера
∫ 𝑘(𝑢,⃗ 𝑣)𝜃
⃗ 𝑖 (𝑢)d
⃗ 𝑢⃗ = 𝜆𝑖 𝜃𝑖 (𝑣).
⃗
33
Теория Гильберта--Шмидта--Мерсера
∫ ∫ 𝑘(𝑢,⃗ 𝑣)𝑔(
⃗ 𝑢)𝑔(
⃗ 𝑣)d
⃗ 𝑢d
⃗ 𝑣⃗ > 0
33
Теория Гильберта--Шмидта--Мерсера
1 𝑛 𝑚 𝑚
min { ∑ ∑ 𝑦𝑖 𝑦𝑗 𝛼𝑖 𝛼𝑗 𝑘(𝑥𝑖⃗ , 𝑥𝑗⃗ ) − ∑ 𝛼𝑖 ,
𝛼 2 𝑖=1 𝑗=1 𝑖=1
𝑚
где ∑ 𝑦𝑖 𝛼𝑖 = 0, 0 ≤ 𝛼𝑖 ≤ 𝐶.}
𝑖=1
33
Примеры ядер
• Рассмотрим ядро
𝑘(𝑢,⃗ 𝑣)⃗ = (𝑢⃗ ⋅ 𝑣)⃗ 2 .
34
Примеры ядер
34
Примеры ядер
34
Примеры ядер
34
Примеры ядер
где 𝑜 — сигмоид.
34
Пример
35
Резюме
36
𝜈-SVM
1
𝐿(a) = − ∑ ∑ 𝑎𝑛 𝑎𝑚 𝑡𝑛 𝑡𝑚 𝑘 (x𝑛 , x𝑚 )
2 𝑛 𝑚
с ограничениями
1
0 ≤ 𝑎𝑛 ≤ , ∑ 𝑎 𝑡 = 0, ∑ 𝑎𝑛 ≥ 𝜈.
𝑁 𝑛 𝑛 𝑛 𝑛
37
SVM для классификации
38
Связь с логистической регрессией
𝑁
1
𝐶 ∑ 𝜉𝑛 + ‖w‖2 .
𝑛=1
2
𝑁
∑ 𝐸𝑆𝑉 (𝑦𝑛 𝑡𝑛 ) + 𝜆‖w‖2 .
𝑛=1
39
Связь с логистической регрессией
𝑁
∑ 𝐸𝐿𝑅 (𝑦𝑛 𝑡𝑛 ) + 𝜆‖w‖2 ,
𝑛=1
39
Связь с логистической регрессией
39
SVM с несколькими классами
40
SVM с одним классом
41
SVM с одним классом
41
SVM для регрессии
1 𝑁 2 𝜆
∑ (𝑦 − 𝑡𝑛 ) + ‖w‖2 .
2 𝑛=1 𝑛 2
42
SVM для регрессии
0, |𝑦(x) − 𝑡| < 𝜖,
𝐸𝜖 (𝑦(x) − 𝑡) = {
|𝑦(x) − 𝑡| − 𝜖 иначе.
𝑁
𝜆
𝐶 ∑ 𝐸𝜖 (𝑦(x𝑛 ) − 𝑡𝑛 ) + ‖w‖2 .
𝑛=1
2
42
SVM для регрессии
𝑦(x𝑛 ) − 𝜖 ≤ 𝑡𝑛 ≤ 𝑦(x𝑛 ) + 𝜖
превращается в
𝑡𝑛 ≤ 𝑦(x𝑛 ) + 𝜖 + 𝜉𝑛 ,
𝑡𝑛 ≥ 𝑦(x𝑛 ) − 𝜖 − 𝜉𝑛̂ ,
и мы оптимизируем
𝑁
𝜆
𝐶 ∑ 𝐸𝜖 (𝜉𝑛 + 𝜉𝑛̂ ) + ‖w‖2 .
𝑛=1
2
42
SVM для регрессии
1
𝐿(a, a)̂ = − ∑ ∑ (𝑎𝑛 − 𝑎𝑛̂ ) (𝑎𝑚 − 𝑎𝑚
̂ ) 𝑘 (x𝑛 , x𝑚 ) −
2 𝑛 𝑚
𝑛 𝑁
− 𝜖 ∑ (𝑎𝑛 + 𝑎𝑛̂ ) + ∑ (𝑎𝑛 − 𝑎𝑛̂ ) 𝑡𝑛 ,
𝑛=1 𝑛=1
0 ≤ 𝑎𝑛 ≤ 𝐶,
0 ≤ 𝑎𝑛̂ ≤ 𝐶,
𝑁
∑ (𝑎𝑛 − 𝑎𝑛̂ ) = 0.
𝑛=1
42
SVM для регрессии
𝑏 = 𝑡𝑛 − 𝜖 − w⊤ 𝜙(x𝑛 ) =
𝑁
= 𝑡𝑛 − 𝜖 − ∑ (𝑎𝑚 − 𝑎𝑚
̂ ) 𝑘(x𝑛 , x𝑚 ).
𝑚=1
42
SVM для регрессии
𝑎𝑛 (𝜖 + 𝜉𝑛 + 𝑦(x𝑛 ) − 𝑡𝑛 ) = 0,
𝑎𝑛̂ (𝜖 + 𝜉𝑛̂ − 𝑦(x𝑛 ) + 𝑡𝑛 ) = 0,
(𝐶 − 𝑎𝑛 )𝜉𝑛 = 0,
(𝐶 − 𝑎𝑛̂ )𝜉𝑛̂ = 0.
42
SVM для регрессии
𝑁
1
𝐿(a) = − ∑ ∑ (𝑎𝑛 − 𝑎𝑛̂ ) (𝑎𝑚 − 𝑎𝑚
̂ ) 𝑘 (x𝑛 , x𝑚 )+∑ (𝑎𝑛 − 𝑎𝑛̂ ) 𝑡𝑛
2 𝑛 𝑚 𝑛=1
при условиях
𝐶 𝑁
0 ≤ 𝑎𝑛 ≤ 𝑁, ∑𝑛=1 (𝑎𝑛 − 𝑎𝑛̂ ) = 0,
𝐶 𝑁
0 ≤ 𝑎𝑛̂ ≤ 𝑁, ∑𝑛=1 (𝑎𝑛 + 𝑎𝑛̂ ) ≤ 𝜈𝐶.
42
SVM для регрессии
43
Практика
• На практике:
• маленький 𝐶 – гладкая разделяющая поверхность, мало
опорных векторов;
• большой 𝐶 – сложная разделяющая поверхность, много
опорных векторов.
• Для RBF ядра:
• маленькое 𝛾 – опорные векторы влияют далеко, модель более
простая;
• большое 𝛾 – опорные векторы влияют только
непосредственно рядом, модель более сложная.
44
RVM
Постановка задачи
46
RVM для регрессии
𝑀
𝑦(x) = ∑ 𝑤𝑖 𝜙𝑖 (x) = w⊤ 𝜙(x).
𝑖=1
47
RVM для регрессии
47
RVM для регрессии
𝑁
𝑝(t ∣ X, w, 𝛽) = ∏ 𝑝(𝑡𝑛 ∣ x𝑛 , w, 𝛽 −1 ).
𝑛=1
𝑀
𝑝(w ∣ 𝛼) = ∏ 𝒩(𝑤𝑖 ∣ 0, 𝛼−1
𝑖 ).
𝑖=1
47
RVM для регрессии
• Отдельные гиперпараметры:
𝑀
𝑝(w ∣ 𝛼) = ∏ 𝒩(𝑤𝑖 ∣ 0, 𝛼−1
𝑖 ).
𝑖=1
47
RVM для регрессии
⊤
m = 𝛽ΣΦ t,
⊤ −1
Σ = (A + 𝛽Φ Φ) ,
47
RVM для регрессии
ln 𝑝(t ∣ X, 𝛼, 𝛽) = ln 𝒩(t ∣ 0, C) =
1 ⊤
= − [𝑁 ln(2𝜋) + ln |C| + t⊤ C−1 t] , где C = 𝛽 −1 I + ΦA−1 Φ .
2
• Как это оптимизировать?
47
RVM для регрессии
где 𝛾𝑖 = 1 − 𝛼𝑖 Σ𝑖𝑖 .
• Теперь можно просто итеративно пересчитывать 𝛼, 𝛽 из m, Σ,
потом наоборот, потом опять наоборот, и до сходимости.
47
RVM для регрессии
47
RVM для регрессии
48
RVM для классификации
𝑀
𝑝(w ∣ 𝛼) = ∏ 𝒩(𝑤𝑖 ∣ 0, 𝛼−1
𝑖 ).
𝑖=1
49
RVM для классификации
• Апостериорное распределение:
⊤
∇ ln 𝑝(w ∣ t, 𝛼) = Φ (t − y) − Aw,
⊤
∇∇ ln 𝑝(w ∣ t, 𝛼) = − (Φ BΦ + A) ,
49
RVM для классификации
⊤
w∗ = A−1 Φ (t − y) ,
⊤ −1
Σ = (Φ BΦ + A) ,
49
RVM для классификации
49
Было: SVM
50
Стало: RVM
51
Стало: RVM
52
RVM для нескольких классов
53
Сравнение SVM и RVM
54
Спасибо!
Спасибо за внимание!
55
Быстрый алгоритм обучения RVM
ln 𝑝(t ∣ X, 𝛼, 𝛽) = ln 𝒩(t ∣ 0, C) =
1 ⊤
= − [𝑁 ln(2𝜋) + ln |C| + t⊤ C−1 t] , где C = 𝛽 −1 I + ΦA−1 Φ .
2
56
Быстрый алгоритм обучения RVM
C = 𝛽 −1 I + ∑ 𝛼−1 ⊤ −1 ⊤
𝑗 𝜑𝑗 𝜑𝑗 + 𝛼𝑖 𝜑𝑖 𝜑𝑖 =
𝑗≠𝑖
= C−𝑖 + 𝛼−1 ⊤
𝑖 𝜑𝑖 𝜑𝑖 ,
56
Быстрый алгоритм обучения RVM
• C = C−𝑖 + 𝛼−1 ⊤
𝑖 𝜑𝑖 𝜑𝑖 .
56
Быстрый алгоритм обучения RVM
1 𝑞𝑖2
𝜆(𝛼𝑖 ) = [ln 𝛼𝑖 − ln(𝛼𝑖 + 𝑠𝑖 ) + ].
2 𝛼𝑖 + 𝑠𝑖
• Здесь
𝑠𝑖 = 𝜑⊤ C−1 𝜑
𝑖 −𝑖 𝑖
sparsity 𝜑𝑖
𝑞𝑖 ⊤ −1
= 𝜑𝑖 C−𝑖 t quality 𝜑𝑖 .
56
Быстрый алгоритм обучения RVM
• 𝑠𝑖 = 𝜑⊤ C−1 𝜑 , 𝑞 = 𝜑⊤
𝑖 −𝑖 𝑖 𝑖
C−1 t.
𝑖 −𝑖
• Sparsity – то, насколько 𝜑𝑖 перекрывается с остальными
векторами модели.
• Quality – то, насколько 𝜑𝑖 сонаправлен с ошибкой между t и
y−𝑖 (ошибкой модели без 𝜑𝑖 ).
• Чем больше sparsity и чем меньше quality, тем более
вероятно, что этот базисный вектор из модели исключат (т.е.
𝛼𝑖 → ∞).
56
Быстрый алгоритм обучения RVM
1 𝑞𝑖2
• 𝜆(𝛼𝑖 ) = 2 [ln 𝛼𝑖 − ln(𝛼𝑖 + 𝑠𝑖 ) + 𝛼𝑖 +𝑠𝑖 ] .
• Как мы и ожидали.
56
Быстрый алгоритм обучения RVM
56
Спасибо!
Спасибо за внимание!
57