Support vector machines: случай линейно разделимых данных

advertisement
ÑÅÌÈÍÀÐ 5
Ìàøèíû îïîðíûõ âåêòîðîâ.
Support vector machines: ñëó÷àé ëèíåéíî ðàçäåëèìûõ äàííûõ (hard
margin). Ðàññìîòðèì â IRn çàäà÷ó äâóõêëàññîâîé êëàññèôèêàöèè ñ Y = {−1, +1},
ïðè÷åì äàííûå ïîäâûáîðîê X0 = {xk : yk = −1, k ∈ NL } è X1 = {xk : y = 1, k ∈ NL }
èç äâóõ êëàññîâ, ðàçäåëèìû íåêîòîðîé ãèïåðïëîñêîñòüþ, ãäå NL = {1, . . . , L}, à yk
êëàññîâàÿ ìåòêà îáúåêòà ñ ïðèçíàêîâûì îïèñàíèåì xk .  ýòîì ñëó÷àå ìåòîä îïòèìàëüíîé ðàçäåëÿþùåé ãèïåðïëîñêîñòè èùåò òàêîé ëèíåéíûé êëàññèôèêàòîð
!
p
X
f (x) = sign
wi x·i − b ,
i=1
äàþùèé +1 íà îáúåêòàõ èç X1 è −1 íà îáúåêòàõ ìíîæåñòâà X0 , ÷òî
min
k∈NL
yk ((w, xk ) − b)
→ max .
w,b
kwk
(1)
Èíûìè ñëîâàìè, ñðåäè ðàçäåëÿþùèõ ìíîæåñòâà X0 è X1 ãèïåðïëîñêîñòåé èùåòñÿ
òàêàÿ, ÷òî çàçîð (margin), ò.å. ðàññòîÿíèå îò ãèïåðïëîñêîñòè äî áëèæàéøåé ê íåé
òî÷êè èç X0 ∪ X1 , ÿâëÿåòñÿ ìàêñèìàëüíûì. Óìíîæåíèåì íà ïîëîæèòåëüíûé ñêàëÿð
ìîæíî äîáèòüñÿ òîãî, ÷òî min yk ((w, xk ) − b) = 1, ò.å. ðàâåíñòâî âûðàæåíèÿ, ñòîÿk∈NL
ùåãî ïîä ìèíèìóìîì, åäèíèöå áóäåò âûïîëíÿòüñÿ äëÿ áëèæàéøèõ ê ãèïåðïëîñêîñòè
(w, x) = b òî÷åê èç X0 ∪ X1 , òîãäà êàê äëÿ îñòàëüíûõ òî÷åê ýòîãî ìíîæåñòâà áóäåò ñïðàâåäëèâî ñòðîãîå íåðàâåíñòâî > 1. Ïðè òàêîì ìàñøòàáèðîâàíèè óðàâíåíèå
(w, x) = b íàçûâàåòñÿ êàíîíè÷åñêèì óðàâíåíèåì ðàçäåëÿþùåé ãèïåðïëîñêîñòè. Ïðè
ýòîì ðàññòîÿíèÿ îò ðàçäåëÿþùåé ãèïåðïëîñêîñòè äî òî÷åê èç X0 ∪ X1 , î÷åâèäíî, íå
ïîìåíÿþòñÿ, îäíàêî âåëè÷èíà îïòèìèçèðóåìîãî êðèòåðèÿ òåïåðü âûãëÿäèò íàèáîëåå
ïðîñòî. Â ðåçóëüòàòå ïîèñê îïòèìàëüíîé ðàçäåëÿþùåé ãèïåðïëîñêîñòè ñâîäèòñÿ ê
çàäà÷å, èñõîäíîé çàäà÷å:
1
kwk2 → min
2
(2)
yk ((w, xk ) − b) ≥ 1, k ∈ NL .
ãäå
1
kwk
→ max çàìåíåíî íà min 12 kwk2 . Äîïóñòèìûìè äëÿ ýòîé çàäà÷è ÿâëÿþòñÿ
w,b
íå òîëüêî âåêòîðû (w, b), çàäàþùèå êàíîíè÷åñêîå óðàâíåíèå ðàçäåëÿþùåé ãèïåðïëîñêîñòè, òîãäà êàê îïòèìàëüíûé âåêòîð îáÿçàòåëüíî áóäåò çàäàâàòü êàíîíè÷åñêîå
óðàâíåíèå. Áëèæàéøèå ê îïòèìàëüíîé ðàçäåëÿþùåé ãèïåðïëîñêîñòè òî÷êè âûáîðêè
X0 ∪ X1 íàçûâàþòñÿ îïîðíûìè âåêòîðàìè. Î÷åâèäíî, èìååòñÿ ïî êðàéíåé ìåðå äâà
îïîðíûõ âåêòîðà: ïî îäíîé áëèæàéøåé ê ãèïåðïëîñêîñòè òî÷êå èç êàæäîé âûáîðêè
X0 è X1 .
 äàëüíåéøåì, ïðåäúÿâëÿåìûé
äëÿ ðàñïîçíàâàíèÿ
îáúåêò x îòíîñèòñÿ ê êëàññó ñ
p
P ∗
ìåòêîé +1, åñëè f (x) = sign
wi x·i − b∗ > 0, è ê êëàññó ñ ìåòêîé −1 ïðè f (x) < 0,
i=1
ãäå (w∗ , b∗ ) ðåøåíèå çàäà÷è (2).
Çàäà÷à 1. Ãåîìåòðèÿ SVM. Ïîêàçàòü, ÷òî îïòèìàëüíàÿ ðàçäåëÿþùàÿ ãèïåðïëîñêîñòü ïðîõîäèò ÷åðåç ñåðåäèíó îòðåçêà, ñîåäèíÿþùåãî äâå íàèáîëåå áëèçêèå òî÷êè
èç âûïóêëûõ îáîëî÷åê Z0 = conv X0 è Z1 = conv X1 , ïåðïåíäèêóëÿðíî åìó.
Ðåøåíèå. Èç íåïðåðûâíîñòè ôóíêöèè åâêëèäîâà ðàññòîÿíèÿ, çàäàííîé íà ïàðàõ
òî÷åê èç Z0 × Z1 , ñëåäóåò, ÷òî íàéäóòñÿ òàêèå äâå ðàçëè÷íûå òî÷êè z0 ∈ Z0 è z1 ∈ Z1 ,
÷òî kz0 − z1 k2 = ρ = min{kz − z 0 k2 : z ∈ Z0 , z 0 ∈ Z1 }. Òîãäà
(z1 − z0 , z − z0 ) ≤ 0
äëÿ ëþáîãî z ∈ Z0 : èíà÷å íà îòðåçêå [z, z0 ] èìåëñÿ áû ýëåìåíò, ðàñïîëîæåííûé áëèæå
0
0
ê z1 , ÷åì ýëåìåíò z0 . Êðîìå
òîãî, (z0 − z1 , z − z1 ) ≤ 0 äëÿ ëþáîãî z ∈ Z1 . Ïîëîæèì
z0 +z1
. Èìååì, ÷òî (w, z) ≤ (w, z0 ) < b äëÿ âñåõ z ∈ Z0 . Ñ äðóãîé
w = z1 − z0 è b = w, 2
0
ñòîðîíû, (w, z ) ≥ (w, z1 ) > b ïðè ëþáîì z 0 ∈ Z1 , ò.å. ãèïåðïëîñêîñòü (w, x) = b ñòðîãî
ðàçäåëÿåò X0 è X1 .
Ïîêàæåì åå îïòèìàëüíîñòü. Ïîêàæåì, ÷òî äëÿ âñÿêîãî k ∈ NL
yk ((w, xk ) − b) ≥
kwk2
.
2
Äåéñòâèòåëüíî, íàïðèìåð, äëÿ ñëó÷àÿ yk = 1, èìååì, ÷òî (w, xk )−b ≥ (w, z1 )−b =
Ñòàëî áûòü
kwk
ρ
yk ((w, xk ) − b)
min
≥
= .
xk ∈X0 ∪X1
kwk
2
2
kwk
.
2
Ïîñêîëüêó ãèïåðïëîñêîñòü (w, x) = (w, z0 ) ïðîõîäèò ÷åðåç òî÷êó z0 , ïðè ýòîì âûïóêëàÿ îáîëî÷êà Z0 íàõîäèòñÿ îòíîñèòåëüíî íåå ïî îäíó ñòîðîíó (òàê íàçûâàåìàÿ
îïîðíàÿ ãèïåðïëîñêîñòü), òî îíà ïðîõîäèò ÷åðåç íåêîòîðóþ òî÷êó x ∈ X0 . Àíàëîãè÷íî, ãèïåðïëîñêîñòü (w, x) = (w, z1 ) ïðîõîäèò ÷åðåç íåêîòîðóþ òî÷êó x0 ∈ X1 . Çíà÷èò,
min
xk ∈X0 ∪X1
ρ
yk ((w, xk ) − b)
= .
kwk
2
Âñÿêàÿ äðóãàÿ ðàçäåëÿþùàÿ Z1 è Z2 ãèïåðïëîñêîñòü ïðîõîäèò ÷åðåç îòðåçîê [z1 , z2 ].
Ïðè ýòîì ðàññòîÿíèå îò íåå äî îäíîé èç òî÷åê z0 èëè z1 ñòðîãî ìåíüøå, ÷åì ρ2 . Çíà÷èò,
ýòî ðàññòîÿíèå ìåíüøå ρ2 è äëÿ îäíîé èç òî÷åê ìíîæåñòâà X0 ∪ X1 .
Èç çàäà÷è 1 è óñëîâèÿ êàíîíè÷íîñòè óðàâíåíèÿ ðàçäåëÿþùåé ãèïåðïëîñêîñòè âûòåêàåò, ÷òî ðåøåíèå çàäà÷è (2) åäèíñòâåííî. Äåéñòâèòåëüíî, åñëè âåêòîð (w∗ , b∗ ) ðåøåíèå çàäà÷è (2), òî âåêòîð (−w∗ , −b∗ ), î÷åâèäíî, íå áóäåò òàêîâûì ââèäó îãðàíè÷åíèé ýòîé çàäà÷è.
Ìåòîä ìíîæèòåëåé Ëàãðàíæà. Ðàññìîòðèì çàäà÷ó óñëîâíîé îïòèìèçàöèè ñ
îãðàíè÷åíèåì-óðàâíåíèåì:
f (x) → max
g(x) = 0, x ∈ IRp .
(3)
Ïî òåîðåìå î íåÿâíîé ôóíêöèè êàñàòåëüíàÿ ãèïåðïëîñêîñòü ê äîñòàòî÷íî ãëàäêîé
ïîâåðõíîñòè, îïðåäåëÿåìîé óðàâíåíèåì (3), íàòÿíóòà íà p-ìåðíûå âåêòîðû
!
∂g(x)
∂x·i
0, . . . , 0, 1, 0, . . . , 0, − ∂g(x)
∂x·p
,
ãäå 1 ðàñïîëîæåíà íà i-é ïîçèöèè, i = 1, . . . , p−1. Ñëåäîâàòåëüíî, ýòà ãèïåðïëîñêîñòü
îðòîãîíàëüíà ãðàäèåíòó ∇g(x) äëÿ ëþáîãî x ∈ IRp . Åñëè ∇f (x) íåêîëëèíåàðåí ∇g(x),
òî ñäâèíóâøèñü îò äîïóñòèìîãî x (ò.å. g(x) = 0) ïî ïîâåðõíîñòè (3) âäîëü íåêîòîðîãî
íàïðàâëåíèÿ, ëåæàùåãî â êàñàòåëüíîé ãèïåðïëîñêîñòè, ïîëó÷èì áîëüøåå çíà÷åíèå
ôóíêöèè f. Ñëåäîâàòåëüíî, â òî÷êå óñëîâíîãî ìàêñèìóìà x∗ ïðè íåêîòîðîì λ∗ ∈ IR
âûïîëíåíû íåîáõîäèìûå óñëîâèÿ:
∇f (x∗ ) + λ∗ ∇g(x∗ ) = 0
(4)
g(x∗ ) = 0, x ∈ IRp .
Ââåäåì ôóíêöèþ Ëàãðàíæà L(x, λ) = f (x) + λg(x). Òîãäà ýòè óðàâíåíèÿ çàäàþò åå
ñòàöèîíàðíóþ òî÷êó, óäîâëåòâîðÿþùóþ îãðàíè÷åíèþ (3) :
(
∂L(x,λ)
= ∇f (x) + λ∇g(x) = 0
∂x
(5)
∂L(x,λ)
=
g(x)
=
0.
∂λ
Òåîðåìà 1. Åñëè x∗ ñòàöèîíàðíàÿ òî÷êà ôóíêöèè Ëàãðàíæà, ïðè ýòîì âòîðîé
äèôôåðåíöèàë d2 L â ýòîé òî÷êå ÿâëÿåòñÿ ïîëîæèòåëüíî (îòðèöàòåëüíî) îïðåäåëåíp
P
∂g(x)
dx·i = 0,
íîé ôîðìîé âåêòîðà ïåðåìåííûõ dx, óäîâëåòâîðÿþùåãî óðàâíåíèþ
∂x·i
i=1
òî x∗ òî÷êà ëîêàëüíîãî óñëîâíîãî ìèíèìóìà (ìàêñèìóìà). (Ñ. 110 [1])
Çàäà÷à 2. Íàéòè îïòèìàëüíûé âåêòîð äëÿ çàäà÷è:
1 − x2 − y 2 → max
x + y = 1.
(6)
Ðåøåíèå. Âûïèøåì ôóíêöèþ Ëàãðàíæà
L(x, y, λ) = 1 − x2 − y 2 + λ(x + y − 1).
Óñëîâèÿ ðàâåíñòâà íóëþ åå ïðîèçâîäíîé:

 −2x + λ = 0,
−2y + λ = 0,

x + y = 1.
(7)
Èìååì x = y = 21 è λ = 1. Òàê êàê ãåññèàí ôóíêöèè Ëàãðàíæà (ïî x è y) ÿâëÿåòñÿ
îòðèöàòåëüíî îïðåäåëåííîé ìàòðèöåé
−2
0
,
0 −2
òî òî÷êà 12 , 12 ÿâëÿåòñÿ òî÷êîé óñëîâíîãî ìàêñèìóìà.
Óñëîâèÿ Êàðóøà-Êóíà-Òàêêåðà. Ðàññìîòðèì òåïåðü ñëó÷àé çàäà÷è óñëîâíîé
îïòèìèçàöèè ñ îãðàíè÷åíèåì-íåðàâåíñòâîì:
f (x) → max
(8)
g(x) ≥ 0, x ∈ IRp .
Âîçìîæíî äâà ñëó÷àÿ: ëèáî îïòèìàëüíàÿ òî÷êà x∗ ëåæèò â îáëàñòè g(x) > 0, ëèáî
îíà ëåæèò íà ïîâåðõíîñòè g(x) = 0.  ïåðâîì ñëó÷àå îãðàíè÷åíèå çàäà÷è (8) íàçûâàåòñÿ íåàêòèâíûì è ∇f (x∗ ) = 0 = 0 · ∇g(x∗ ), èíûìè ñëîâàìè âûïîëíåíî óñëîâèå
áåçóñëîâíîãî ìàêñèìóìà. Âî âòîðîì ñëó÷àå, êîãäà îãðàíè÷åíèå çàäà÷è (8) áóäåò àê∗
òèâíûì, ò.å. g(x ) = 0, â îïòèìàëüíîé òî÷êå îáÿçàíî áûòü âûïîëíåííûì óñëîâèå
∇f (x∗ ) + λ∗ ∇g(x∗ ) = 0, ãäå λ∗ > 0.  ïðîòèâíîì ñëó÷àå ìîæíî ñäâèíóòüñÿ îò x∗ ëèáî
ïî êàñàòåëüíîé ê ïîâåðõíîñòè g(x) = 0, ëèáî âíóòðü îáëàñòè g(x) > 0 ñ óâåëè÷åíèåì
çíà÷åíèÿ ôóíêöèè f. Òàêèì îáðàçîì, â òî÷êå x∗ âûïîëíåíû ñëåäóþùèå íåîáõîäèìûå
óñëîâèÿ óñëîâíîãî ìàêñèìóìà:

∇f (x∗ ) + λ∗ ∇g(x∗ ) = 0,


 ∗
λ ≥ 0,
(9)
g(x∗ ) ≥ 0,


 ∗ ∗
λ g(x ) = 0.
Ïîñëåäíåå óñëîâèå, íàçûâàåìîå óñëîâèåì äîïîëíÿþùåé íåæåñòêîñòè, ÿâëÿåòñÿ êðàòêîé çàïèñüþ òîãî, ÷òî ïðè λ∗ > 0 îïòèìóì äîñòèãàåòñÿ íà ãðàíèöå äîïóñòèìîãî
ìíîæåñòâà g(x) ≥ 0; îáðàòíî, åñëè îïòèìàëüíàÿ òî÷êà ëåæèò âíóòðè äîïóñòèìîãî
ìíîæåñòâà, òî λ∗ = 0. Äëÿ çàäà÷è íà ìèíèìóì èçìåíèòñÿ çíàê λ∗ : îíî îáÿçàíî áûòü
íåïîëîæèòåëüíûì.
Òåîðåìà 2. (Êàðóø-Êóí-Òàêêåð). Äëÿ òîãî ÷òîáû âåêòîð x∗ áûë ðåøåíèåì çà-
äà÷è âûïóêëîãî ïðîãðàììèðîâàíèÿ:
f0 (x) → min,
fk (x) ≥ 0, j = 1, . . . , L,
(10)
ãäå fk âîãíóòû è äèôôåðåíöèðóåìû, k = 1, . . . , L, à f0 âûïóêëàÿ äèôôåðåíöèðóåìàÿ ôóíêöèÿ, ïðè÷åì ñóùåñòâóåò òàêîé x0 ∈ IRp , ÷òî fk (x0 ) > 0 ïî âñåì k = 1, . . . , L
(óñëîâèå Ñëåéòåðà), íåîáõîäèìî è äîñòàòî÷íî, ÷òîáû íàøåëñÿ òàêîé âåêòîð λ∗ ∈ IRL ,
÷òî:

L
P

∗

∇f
(x
)
−
λ∗k ∇fk (x∗ ) = 0,



k=1
(11)
fk (x∗ ) ≥ 0, k = 1, . . . , L,

∗

 λ ≥ 0,

 ∗
λk fk (x∗ ) = 0, k = 1, . . . , L.
Çàäà÷à 3. Ðåøåíèå çàäà÷è SVM íà ïëîñêîñòè. Ðàññìîòðèì äâóìåðíóþ çàäà÷ó
êëàññèôèêàöèè ñ äâóìÿ êëàññàìè.  îáó÷àþùåé âûáîðêå 5 òî÷åê: (1, 2), (2, 4) è (0, 3)
èç ïåðâîãî êëàññà, à (3, 2) è (4, 1) èç âòîðîãî êëàññà. Ïîñòðîéòå îïòèìàëüíóþ
ðàçäåëÿþùóþ ïðÿìóþ, âûïèñàâ ñîîòâåòñòâóþùóþ çàäà÷ó îïòèìèçàöèè è ðåøèâ åå ñ
ïîìîùüþ óñëîâèé Êàðóøà-Êóíà-Òàêêåðà. Âîïðîñû:
1. êàêèå èç òî÷åê ÿâëÿþòñÿ îïîðíûìè ?
2. âû÷èñëèòå øèðèíó ðàçäåëÿþùåé ïîëîñû;
3. äîáàâëåíèå êàêèõ òî÷åê ïëîñêîñòè íå èçìåíèëî áû ðåøåíèÿ ? Ìîãóò ëè ñðåäè
íèõ áûòü îïîðíûå òî÷êè ?
4. äîáàâëåíèå êàêèõ òî÷åê (ïðè ñîõðàíåíèè ëèíåéíîé ðàçäåëèìîñòè) ïðèâåëî áû
ê ñìåùåíèþ ðàçäåëÿþùåé ïðÿìîé ?
Ðåøåíèå. Ïóñòü ïåðâîìó êëàññó îòâå÷àåò ìåòêà y = +1, à âòîðîìó y = −1.
Âûïèøåì èñõîäíóþ çàäà÷ó:















1
|w|2
2
→ min,
w1 + 2w2 − b ≥ 1,
2w1 + 4w2 − b ≥ 1,
3w2 − b ≥ 1,
−(3w1 + 2w2 − b) ≥ 1,
−(4w1 + w2 − b) ≥ 1.
(12)
Âûïóêëîñòü öåëåâîé êâàäðàòè÷íîé ôóíêöèè, à òàêæå âîãíóòîñòü ëèíåéíûõ ôóíêöèé â ëåâûõ ÷àñòÿõ îãðàíè÷åíèé î÷åâèäíà. Ââèäó ëèíåéíîé ðàçäåëèìîñòè (îíà èìååò ìåñòî äàæå ïî ïåðâîé êîîðäèíàòå) ýòèõ âûáîðîê âñåãäà ìîæíî âûáðàòü âåêòîð
w = (w1 , w2 ) è êîýôôèöèåíò b, îáðàùàþùèå íåðàâåíñòâà-îãðàíè÷åíèÿ çàäà÷è (12) â
ñòðîãèå. Òåì ñàìûì ïðîâåðåíî óñëîâèå Ñëåéòåðà. Çàïèøåì äëÿ ýòîé çàäà÷è íåîáõîäèìûå è äîñòàòî÷íûå óñëîâèÿ Êàðóøà-Êóíà-Òàêêåðà:

w1 − λ1 − 2λ2 + 3λ4 + 4λ5 = 0,




w2 − 2λ1 − 4λ2 − 3λ3 + 2λ4 + λ5 = 0,




λ1 + λ2 + λ3 − λ4 − λ5 = 0,




λk ≥ 0, k = 1, . . . , 5,




w1 + 2w2 − b ≥ 1,




2w

1 + 4w2 − b ≥ 1,


3w2 − b ≥ 1,
(13)
−(3w1 + 2w2 − b) ≥ 1,




−(4w1 + w2 − b) ≥ 1,




λ1 (w1 + 2w2 − b − 1) = 0,




λ

2 (2w1 + 4w2 − b − 1) = 0,



λ3 (3w2 − b − 1) = 0,




λ4 (−(3w1 + 2w2 − b) − 1) = 0,



λ5 (−(4w1 + w2 − b) − 1) = 0.
Çàäà÷ó ìîæíî ðåøàòü ïåðåáîðîì ïî âñåâîçìîæíûì äâîéêàì è òðîéêàì òî÷åê (ïîäîçðåâàåìûõ íà îïîðíûå, ïðè ýòîì âñå îíè íå ìîãóò ïðèíàäëåæàòü îäíîìó êëàññó):
ðåøàÿ âñåâîçìîæíûå ñèñòåìû äâóõ è òðåõ ëèíåéíûõ óðàâíåíèé è çàòåì ïðîâåðÿÿ
âûïîëíåíèå îñòàëüíûõ óñëîâèé ýòîé ñèñòåìû.
Óïðîñòèì çàäà÷ó çàìåòèâ ãåîìåòðè÷åñêè, ÷òî ëåâàÿ ÷àñòü òðåòüåãî îãðàíè÷åíèÿ
ÿâëÿåòñÿ ëèíåéíîé êîìáèíàöèåé ñ êîýôôèöèåíòàìè 45 , 12 è 34 ñîîòâåòñòâåííî ëåâûõ ÷àñòåé ïåðâîãî, âòîðîãî è ÷åòâåðòîãî îãðàíè÷åíèé çàäà÷è (12). Ïðè ýòîì ïðàâàÿ ÷àñòü
êîìáèíàöèè îêàçûâàåòñÿ ñòðîãî áîëüøå 1. Çíà÷èò, òî÷êà (0, 3) íå ÿâëÿåòñÿ îïîðíîé.
Ñëåäóÿ àíàëîãè÷íûì ñîîáðàæåíèÿì ìîæíî óñòàíîâèòü, ÷òî òî÷êà (4, 1) òàêæå íå ÿâëÿåòñÿ îïîðíîé. Ñëåäîâàòåëüíî, λ3 = λ5 = 0. Òàêæå ïðåäïîëîæèì, ÷òî âñå îñòàëüíûå
îáúåêòû îïîðíûå, ò.å. ñîîòâåòñòâóþùèå èì îãðàíè÷åíèÿ-íåðàâåíñòâà â çàäà÷å (12)
îáðàòÿòñÿ â ðàâåíñòâà. Ïåðåïèøåì ñèñòåìó óñëîâèé:

w1 − λ1 − 2λ2 + 3λ4 = 0,




w2 − 2λ1 − 4λ2 + 2λ4 = 0,




λ1 + λ2 − λ4 = 0,




λk ≥ 0, k = 1, 2, 4,

w1 + 2w2 − b = 1,


2w

1 + 4w2 − b = 1,



3w2 − b ≥ 1,




−(3w
+
2w

1
2 − b) = 1,


−(4w1 + w2 − b) ≥ 1.
(14)
Åå ðåøåíèå w∗ = −1, 21 , b∗ = −1, à λ∗ = 38 , 41 , 0, 58 , 0 . Øèðèíà ðàçäåëÿþùåé ïîëîñû
2
(ñì. ëåêöèè) è (1) ðàâíà |w|
= √45 .
Äîáàâëåíèå òî÷êè x ñ ìåòêîé êëàññà y, ëåæàùåé â ïîëóïëîñêîñòè
y((w∗ , x) − b∗ ) ≥ 1,
íå èçìåíèò ïîëîæåíèÿ îïòèìàëüíîé ðàçäåëÿþùåé ïðÿìîé. Ïðè ýòîì íå èñêëþ÷àåòñÿ,
÷òî äîáàâëÿåìàÿ òî÷êà ìîæåò ëåæàòü íà ïðÿìîé y((w∗ , x)−b∗ ) = 1, ò.å. áûòü îïîðíîé.
Ê ñìåùåíèþ îïòèìàëüíîé ðàçäåëÿþùåé ïðÿìîé ïðèâåëî áû äîáàâëåíèå òî÷åê
âíóòðè ðàçäåëÿþùåãî ñëîÿ −1 < (w∗ , x) − b∗ < 1 ñ ëþáîé èç äâóõ êëàññîâûõ ìåòîê.
Äâîéñòâåííàÿ çàäà÷à. Îêàçûâàåòñÿ êîýôôèöèåíòû λ∗ , ôèãóðèðóþùèå â óñëî-
âèÿõ Êàðóøà-Êóíà-Òàêêåðà, ÿâëÿþòñÿ ðåøåíèåì òàê íàçûâàåìîé äâîéñòâåííîé çàäà÷è, êîòîðàÿ ïîëó÷àåòñÿ èç èñõîäíîé çàäà÷è ñ ïîìîùüþ ôóíêöèè Ëàãðàíæà:
L(x, λ) = f0 (x) −
L
X
λk fk (x),
k=1
ãäå λ ∈ IRL+ . Êàê áûëî äîêàçàíî íà ëåêöèÿõ èñõîäíàÿ çàäà÷à
f0 (x) → min,
fk (x) ≥ 0, k ∈ NL ,
ìîæåò áûòü ïðåäñòàâëåíà â ôîðìå
n
min max L(x, λ).
x
λ≥0
Òîãäà äâîéñòâåííàÿ ìîæåò áûòü çàïèñàíà â âèäå:
h(λ) → max,
λ ≥ 0,
(15)
(16)
(17)
ãäå h(λ) = min L(x, λ).
x
Äâîéñòâåííàÿ çàäà÷à äëÿ SVM. Äëÿ ïîëó÷åíèÿ çíà÷åíèé êîýôôèöèåíòîâ ãè-
ïåðïëîñêîñòè, ðàçäåëÿþùåé äàííûå, îáû÷íî ïðîùå ðåøàòü äâîéñòâåííóþ çàäà÷ó,
÷åì èñõîäíóþ (2). Èñõîäíàÿ çàäà÷à (2) ÿâëÿåòñÿ çàäà÷åé âûïóêëîãî êâàäðàòè÷íîãî
ïðîãðàììèðîâàíèÿ ñ äèôôåðåíöèðóåìûìè öåëåâîé ôóíêöèåé è ëèíåéíûìè ôóíêöèÿìè îãðàíè÷åíèé. Òàê êàê L âûïóêëà, òî åå áåçóñëîâíûé ãëîáàëüíûé ìèíèìóì
ìîæíî íàéòè ïðèðàâíèâàÿ ê íóëþ åå ãðàäèåíò ïî x.
Äâîéñòâåííàÿ çàäà÷à â ñëó÷àå ëèíåéíî ðàçäåëèìûõ äàííûõ çàïèøåòñÿ â âèäå:
 L
L
L P
P
P

1

λ
−
yk yl (xk , xl )λk λl → max

k
2

 k=1
k=1 l=1
λk ≥ 0, k ∈ NL ,
(18)

L

P



yk λk = 0.
k=1
Çàïèøåì óñëîâèÿ Êàðóøà-Êóíà-Òàêêåðà (ñì. ëåêöèè):

L
P


w
=
λk yk xk ,



k=1:λ
>0
k

 L

 P
yk λk = 0,
k=1

 y ((w, x ) − b) ≥ 1, k ∈ N ,

k
k
L




λ
≥
0,
k
∈
N
,
L

 k
λk (yk ((w, xk ) − b) − 1) = 0, k ∈ NL .
(19)
 ÷àñòíîñòè, ñâîáîäíûé êîýôôèöèåíò b∗ ðàçäåëÿþùåé ãèïåðïëîñêîñòè èùåòñÿ èç
óñëîâèé äîïîëíÿþùåé íåæåñòêîñòè, à èìåííî áåðóòñÿ äâà íîìåðà k è l òàêèå, ÷òî
yk = 1, yl = −1, λ∗k > 0 è λ∗l > 0, òîãäà b∗ = 21 (w∗ , xk + xl ). Ïîëó÷àåì, ÷òî îïîðíûé âåêòîð ýòî âåêòîð xk èç X0 ∪ X1 , êîòîðîìó ñîîòâåòñòâóåò íåêîòîðîå ðåøåíèå
äâîéñòâåííîé çàäà÷è λ∗ ñ êîìïîíåíòîé λ∗k > 0. Çàìåòèì, ÷òî âåêòîð íîðìàëè ðàçäåëÿþùåé ãèïåðïëîñêîñòè w∗ ïðåäñòàâëÿåò èç ñåáÿ ëèíåéíóþ êîìáèíàöèþ îïîðíûõ
âåêòîðîâ, ÷èñëî êîòîðûõ íå áîëüøå, ÷åì L.
Èç óñëîâèé Êàðóøà-Êóíà-Òàêêåðà òàêæå âûòåêàåò, ÷òî â îïòèìàëüíûõ ðåøåíèÿõ
∗ ∗
(w , b ) è λ∗ èñõîäíîé è äâîéñòâåííîé çàäà÷ ñîîòâåòñòâåííî èìååò ìåñòî ðàâåíñòâî
èõ öåëåâûõ ôóíêöèé:
L
1 ∗ 2 1X ∗
kw k =
λk .
2
2
k=1
Çàìåòèì, ÷òî ïðè áîëüøîì ÷èñëå îáúåêòîâ ãåññèàí ýòîé çàäà÷è áóäåò áëèçîê âûðîæäåííîìó.
Çàäà÷à 4. Ïðèâåñòè ïðèìåð, êîãäà ðåøåíèå äâîéñòâåííîé çàäà÷è (18) èìååò
íååäèíñòâåííîå ðåøåíèå, õîòÿ ïðè ýòîì îïòèìàëüíàÿ ðàçäåëÿþùàÿ ãèïåðïëîñêîñòü
îïðåäåëÿåòñÿ åäèíñòâåííûì îáðàçîì.
Ðåøåíèå. Ïðèâåäåì ïðèìåð íà ïëîñêîñòè. Âîçüìåì äâà îòðåçêà Z0 è Z1 íà ïðî-
òèâîïîëîæíûõ ñòîðîíàõ êâàäðàòà. Êîíöû ïåðâîãî îòðåçêà ñîñòàâëÿþò âûáîðêó èç
ïåðâîãî êëàññà, êîíöû âòîðîãî âûáîðêó èç âòîðîãî êëàññà. Âåêòîð íîðìàëè îïòèìàëüíîé ðàçäåëÿþùåé ïðÿìîé ìîæåò áûòü ïðåäñòàâëåí êàê ðàçíîñòü ëþáîé òî÷êè
z ∈ Z0 è åå ïðîåêöèè z 0 (z) ∈ Z1 íà îòðåçîê Z1 . Òî÷êà z ïðåäñòàâëÿåò èç ñåáÿ âûïóêëóþ
êîìáèíàöèþ êîíöîâ îòðåçêà Z0 ; òîæå ñàìîå äëÿ z 0 . ×åòûðå íåîòðèöàòåëüíûõ êîýôôèöèåíòà â ýòèõ êîìáèíàöèÿõ, óìíîæåííûõ íà íåêîòîðûé ïîëîæèòåëüíûé êîýôôèöèåíò, ñîñòàâÿò ðåøåíèå äâîéñòâåííîé çàäà÷è (18), ÷òî ëåãêî âûâåñòè, íàïðèìåð, èç
çàäà÷è 1 è óñëîâèé Êàðóøà-Êóíà-Òàêêåðà (19).
Support vector machines: ñëó÷àé ëèíåéíî íåðàçäåëèìûõ äàííûõ (soft
margin). Åñëè âûïóêëûå îáîëî÷êè ðàçäåëÿåìûõ ïîäâûáîðîê èç äâóõ êëàññîâ X0 è
X1 èìåþò íåïóñòîå ïåðåñå÷åíèå, òî ñòðîãî ðàçäåëÿþùåé ýòè äâà ìíîæåñòâà ãèïåðïëîñêîñòè íå ñóùåñòâóåò. Îáîáùåíèåì íà ýòîò ñëó÷àé çàäà÷è (2) ÿâëÿåòñÿ ñëåäóþùàÿ
çàäà÷à:

L
P


ξk → min
 12 kwk2 + C
k=1
(20)
yk ((w, xk ) − b) ≥ 1 − ξk , k ∈ NL ,



ξk ≥ 0, k ∈ NL .
Îòëè÷èå ñîñòîèò â íàëè÷èè íåîòðèöàòåëüíûõ êîýôôèöèåíòîâ ξk . Çàäà÷à (2) â êàêîìòî ñìûñëå ðåëàêñèðóåòñÿ, à ïîðîæäàåìûé åå ðåøåíèåì ëèíåéíûé êëàññèôèêàòîð
!
p
X
wi x·i − b
f (x) = sign
i=1
ìîæåò ñîâåðøàòü îøèáêè íà îáó÷àþùåé âûáîðêå, èëè, èíûìè ñëîâàìè, îïðåäåëÿåìàÿ ðåøåíèåì (w, b) ãèïåðïëîñêîñòü (w, x) = b ñòðîãî ðàçäåëÿåò ëèøü íåêîòîðûå
ïîäìíîæåñòâà âî ìíîæåñòâàõ X0 è X1 .
Ìîæíî òàêæå ñ÷èòàòü, ÷òî äëÿ äîïóñòèìûõ ξk∗ âûïîëíåíî óñëîâèå
ξk∗ = (1 − yk ((w∗ , xk ) − b∗ ))+ ,
ãäå z+ = max{0, z}. Äåéñòâèòåëüíî, â ñëó÷àå ñòðîãîãî íåðàâåíñòâà
ξk∗ > 1 − yk ((w∗ , xk ) − b∗ ) ≥ 0
ìîæíî ïåðåéòè ê äðóãîìó íàáîðó çíà÷åíèé ïåðåìåííûõ ξk0 = 1 − yk ((w∗ , xk ) − b∗ ) < ξk∗
äëÿ âñåõ k ∈ NL ñ óìåíüøåíèåì çíà÷åíèÿ öåëåâîé ôóíêöèè. Òàêèì îáðàçîì, ξk â
çàäà÷å (20) èìåþò ñìûñë ïîëîæèòåëüíûõ íåâÿçîê.
Êàê ëåãêî çàìåòèòü, öåëåâàÿ ôóíêöèÿ ñîñòîèò èç äâóõ ñëàãàåìûõ ñëàãàåìîãî, îáðàòíî ïðîïîðöèîíàëüíîãî òîëùèíå ðàçäåëÿþùåãî ñëîÿ, è ñëàãàåìîãî, èçìåðÿþùåãî îøèáêó íà âûáîðêàõ X0 è X1 : êîýôôèöèåíò C èãðàåò ðîëü øòðàôà çà
íåïðàâèëüíóþ êëàññèôèêàöèþ. Î÷åâèäíî, äîëæåí ñîáëþäàòüñÿ áàëàíñ ìåæäó ýòèìè
äâóìÿ ñëàãàåìûìè: ñ îäíîé ñòîðîíû, C íå äîëæåí áûòü ñëèøêîì áîëüøèì, ò.ê. ýòî
ïðèâåäåò ê ñìåùåíèþ ðàçäåëÿþùåé ãèïåðïëîñêîñòè â ñòîðîíó øóìîâûõ îáúåêòîâ. Ñ
äðóãîé ñòîðîíû, C äîëæíî áûòü äîñòàòî÷íî âåëèêî, ÷òîáû êëàññèôèêàòîð ñîâåðøàë
íåìíîãî îøèáîê. Ïîýòîìó âûáîð íàèëó÷øåãî ïàðàìåòðà C îáû÷íî îñóùåñòâëÿþò ìèíèìèçèðóÿ îøèáêó íà ñêîëüçÿùåì êîíòðîëå. Îòìåòèì, ÷òî, âîîáùå ãîâîðÿ, êîíñòàíòà
C ìîæåò çàâèñåòü îò äëèíû îáó÷àþùåé âûáîðêè (èíîãäà â èñõîäíîé è äâîéñòâåííîé
çàäà÷àõ åå çàìåíÿþò íà CL ). Îäíàêî ïîäáîð ýòîé êîíñòàíòû ïî ñêîëüçÿùåìó êîíòðîëþ
îáû÷íî ÿâëÿåòñÿ óäîâëåòâîðèòåëüíûì.
Óñëîâèÿ Êàðóøà-Êóíà-Òàêêåðà çàïèøóòñÿ òàê:

L
P


w
=
λk yk xk ,



k=1:λk >0


L

P



yk λk = 0,
k=1
(21)

yk ((w, xk ) − b) ≥ 1 − ξk , k ∈ NL ,




0 ≤ λk ≤ C, k ∈ NL ,




λ (y ((w, xk ) − b) − 1 + ξk ) = 0, k ∈ NL ,

 k k
ξk (C − λk ) = 0, k ∈ NL .
Ñîîòâåòñòâóþùàÿ äâîéñòâåííàÿ çàäà÷à âûãëÿäèò òàê:
 L
L
L P
P
P

1

λ
−
yk yl (xk , xl )λk λl → max,

k
2

 k=1
k=1 l=1
0 ≤ λk ≤ C, k = 1, . . . , L,

L

P



yk λk = 0.
(22)
k=1
Ýòî îòëè÷àåòñÿ îò äâîéñòâåííîé çàäà÷è (18) íàëè÷èåì âåðõíåé ãðàíèöû íà âåêòîð λ.
Ñâîáîäíûé êîýôôèöèåíò b∗ ðàçäåëÿþùåé ãèïåðïëîñêîñòè èùåòñÿ èç óñëîâèé äîïîëíÿþùåé íåæåñòêîñòè â ñèñòåìå (21). Ïî-ïðåæíåìó áåðóòñÿ äâà íîìåðà k è l òàêèå,
÷òî yk = 1, yl = −1, 0 < λ∗k < C è 0 < λ∗l < C, òîãäà b∗ = 12 (w∗ , xk + xl ). Ìû âèäèì ñêðûòûé ñìûñë øòðàôíîãî êîýôôèöèåíòà C : ýòî âåðõíÿÿ ãðàíèöà íà âêëàä â
âåêòîð íîðìàëè w∗ (âîçìîæíî øóìîâûõ) îáúåêòîâ âûáîðêè.
Òàêæå â îïòèìàëüíûõ ðåøåíèÿõ (w∗ , b∗ , ξ1∗ , . . . , ξL∗ ) è λ∗ = (λ∗1 , . . . , λ∗L ) èñõîäíîé è
äâîéñòâåííîé çàäà÷ âûïîëíÿþòñÿ ñîîòíîøåíèÿ äâîéñòâåííîñòè, ðàâåíñòâî öåëåâûõ
ôóíêöèé:
L
L
X
X
1
1 ∗ 2
λ∗k − kw∗ k2 ,
ξk∗ =
kw k + C
2
2
k=1
k=1
èëè
∗ 2
kw k + C
L
X
ξk∗
=
L
X
λ∗ .
k=1
k=1
Çàäà÷à 5. Ê êàêîé çàäà÷å ñòàíîâèòñÿ áëèçêîé ïðèâåäåííàÿ äâîéñòâåííàÿ çàäà÷à
ïî ìåðå ðîñòà C. Ïîëüçóÿñü äåìîíñòðàöèîííûì ïðèëîæåíèåì äëÿ SV M èññëåäîâàòü
ïîâåäåíèå îïòèìàëüíîé ðàçäåëÿþùåé ãèïåðïëîñêîñòè äëÿ C = 0.5, 10 è 1010 äëÿ
ñëåäóþùèõ äâóìåðíûõ ëèíåéíî íå ðàçäåëèìûõ äàííûõ:


1
1 −1
 3
3
1 


 1

3
1


 3
1 −1 


 2 2.5 1  ,


 3 2.5 −1 


 4

3
−1


 1.5 1.5 1 
1
2 −1
ãäå ïîñëåäíèé ñòîëáåö îçíà÷àåò êëàññîâóþ ìåòêó. Ñì. ôàéë svm.m.
Ðåøåíèå. Ïî ìåðå ðîñòà C âåðõíèå îãðàíè÷åíèÿ íà λ îñëàáëÿþòñÿ è çàäà÷à (20)
äëÿ ëèíåéíî íåðàçäåëèìûõ äàííûõ ñòàíîâèòñÿ âñå áîëåå ïîõîæåé íà ÿâëÿþùóþñÿ
íåñîáñòâåííîé (öåëåâàÿ ôóíêöèÿ íåîãðàíè÷åíà) çàäà÷ó (18) äëÿ ëèíåéíî ðàçäåëèìûõ
äàííûõ. Èç ñîîòíîøåíèé äâîéñòâåííîñòè
∗ 2
kw k + C
L
X
k=1
ξk∗
=
L
X
k=1
λ∗ .
Ïðîãðàììà âûäàåò kwk2 è
L
P
λ∗ . ×òîáû ïîäñ÷èòàòü îøèáêó:
k=1
L
X
k=1
L
P
ξk∗ =
λ∗ − kw∗ k2
k=1
C
.
2
Âèäíî, ÷òî ïðè ðîñòå C òîëùèíà ðàçäåëÿþùåãî ñëîÿ kwk
óìåíüøàåòñÿ êàê è âåëè÷èíà
îøèáêè. Òåì ñàìûì ïîäòâåðæäàåòñÿ, ÷òî öåëåâàÿ ôóíêöèÿ çàäà÷è (20) ïðåäñòàâëÿåò èç ñåáÿ ñóììó äâóõ ðàçíîíàïðàâëåííûõ êðèòåðèåâ: âåëè÷èíû, îáðàòíî ïðîïîðöèîíàëüíîé òîëùèíå ðàçäåëÿþùåãî ñëîÿ, è ñóììû âåëè÷èí îøèáîê íà îáó÷àþùåé
âûáîðêå.
Çàäà÷à 6. Ãåîìåòðèÿ SV M. Ïîëüçóÿñü óñëîâèÿìè Êàðóøà-Êóíà-Òàêêåðà (21),
ïðèâåñòè ïðèìåðû, êîãäà äëÿ êîýôôèöèåíòîâ äâîéñòâåííîé çàäà÷è âûïîëíåíû ñëåäóþùèå óñëîâèÿ:
1. λ∗k = 0;
2. 0 < λ∗k < C;
3. λ∗k = C.
Ðåøåíèå. Èç óñëîâèé (21) ñëåäóåò, ÷òî ïðè yk ((w ∗ , xk ) − b∗ ) > 1, ò.å. â ñëó÷àå, êî-
ãäà xk ëåæèò âíóòðè îáëàñòè, îòíîñèìîé êëàññèôèêàòîðîì f (x) = sign ((w∗ , x) − b∗ )
ê êëàññó yk , è ïðè ýòîì íàõîäèòñÿ âíå ðàçäåëÿþùåãî ñëîÿ |(w∗ , x) − b∗ | ≤ 1, èìååì èç
óñëîâèÿ
λ∗k (yk ((w∗ , xk ) − b∗ ) − 1 + ξk∗ ) = 0,
÷òî λ∗k = 0, ïðè ýòîì èç óñëîâèÿ ξk∗ (C − λ∗k ) = 0 âûòåêàåò, ÷òî ξk∗ = 0.
Åñëè 0 < λ∗k < C, òî ξk∗ = 0 è yk ((w∗ , xk ) − b∗ ) = 1, ò.å. îáúåêò xk ëåæèò íà ãðàíèöå
ðàçäåëÿþùåãî ñëîÿ.
Åñëè ξk∗ > 0, ò.å. êîãäà îáúåêò xk ëåæèò âíå îáëàñòè yk ((w∗ , xk ) − b∗ ) ≥ 1, èìååì
λ∗k = C. Ñþäà, â ÷àñòíîñòè, âõîäÿò íåïðàâèëüíî êëàññèôèöèðóåìûå îáúåêòû îáó÷àþùåé âûáîðêè, ò.å. îáúåêòû ñ yk ((w∗ , xk ) − b) < 0, à òàêæå îáúåêòû âíóòðè ðàçäåëÿþùåãî ñëîÿ |(w∗ , x) − b∗ | ≤ 1.
[1] Ë.Ä. Êóäðÿâöåâ Êóðñ ìàòåìàòè÷åñêîãî àíàëèçà Ò.2 Ñ.110. 1981
Âîïðîñ: ïðèâåäèòå íà ïëîñêîñòè ïðèìåð çàäà÷è SV M äëÿ ëèíåéíî ðàçäåëèìûõ
äàííûõ, êîãäà äîáàâëåíèå îäíîé òî÷êè, íàõîäÿùåéñÿ â ñòîðîíå îò îñíîâíîé ìàññû òî÷åê ñâîåãî êëàññà (øóìîâîãî îáúåêòà), ïðèâîäèò ê ñèëüíîìó ñìåùåíèþ îïòèìàëüíîé
ðàçäåëÿþùåé ïðÿìîé.
Download