感知機、超平面


1.感知機
感知機是一種二分類的線性分類模型,輸入為實例的特征向量,輸出為實例的類別{+1,-1}。感知機要求數據集是線性可分的。
按照統計學習三要素模型、策略、算法的順序來介紹。

2.感知機模型
由輸入空間到輸出空間的如下函數:
f(x)=sign(ω⋅x+b)
f(x)=sign(ω⋅x+b)

其中ω,bω,b 為模型參數,ω⊂Rnω⊂Rn叫權值(weight)或權值向量(weight vector),b⊂Rb⊂R叫偏置。
感知機模型的假設空間是定義在特征空間中的所有線性分類模型(linear classification model)或線性分類器(linear classifier),即函數集合{f|f(x)=ω⋅x+b}{f|f(x)=ω⋅x+b}.
2.1感知機模型的幾何解釋
線性方程ω⋅x+bω⋅x+b對應於特征空間的一個超平面S,ωω代表超平面的法向量,bb代表截距。這個超平面將特征空間分為兩個部分,位於兩部分的點(特征向量)被划分為正負兩類,所以超平面S被稱為分離超平面(separating hyperplane)。

                   


在看幾何模型這里有幾點疑惑:
1.超平面是什么
2.原點到超平面的距離−b∥ω∥−b‖ω‖(純屬高數忘的差不多了)

2.1.1超平面
百度百科給出的定義:超平面是n維歐式空間中余維度等於一的線性子空間(也就是說超平面的維度為n-1)。這是平面中的直線、空間中的平面之推廣。

似乎並沒有起到什么幫助理解的作用!這個東西為什么要叫超平面也是很迷!刨除這個蜜汁叫法,還是試圖從公式上進行理解吧。

百度到資料一:給定RnRn空間中的一點pp和非零向量n⃗ n→,滿足
n⃗ ⋅(x−p)=0
n→⋅(x−p)=0
的點集xx稱為經過點pp的超平面。向量n⃗ n→為該超平面的法向量。按照這個定義,一條直線是R2R2空間的超平面,一個平面是R3R3空間的超平面。

老學長解惑:在RnRn空間中的超平面為:
ω⃗ T⋅x⃗ +b=0
ω→T⋅x→+b=0

在幾維空間中,向量ω⃗ ,x⃗ ω→,x→就是幾維的。當然,ω⃗ ,x⃗ ω→,x→屬於該空間。在二維空間下,該方程表示一條直線,直線是平面的超平面。三維空間下,該方程表示一個平面,平面是空間的超平面。
老學長這個解釋,我還是比較能接受的。

2.1.2點到超平面的距離
寫到這里,我已決心要重看一遍高數。
向量的投影:給定兩個向量u⃗ ,v⃗ u→,v→,求u⃗ u→在v⃗ v→上的投影長度,向量間的夾角為cosθcos⁡θ。

            


算不上推導的推導:
d=|u|⋅cosθ
d=|u|⋅cos⁡θ

cosθ=u⋅v|u||v|
cos⁡θ=u⋅v|u||v|

綜上,
d=u⋅v|v|
d=u⋅v|v|

點到超平面的距離:假設x⃗ 0x→0是超平面ω⃗ T⋅x⃗ +b=0ω→T⋅x→+b=0上任意一點,則點xx到超平面的距離為x⃗ −x⃗ 0x→−x→0在超平面法向量ω⃗ ω→上的投影長度:
d=|ω⃗ T(x⃗ −x⃗ 0)|∥ω⃗ ∥=|ω⃗ T⋅x⃗ +b−ω⃗ T⋅x⃗ 0−b|∥ω⃗ ∥=|ω⃗ T⋅x+b|∥ω⃗ ∥
d=|ω→T(x→−x→0)|‖ω→‖=|ω→T⋅x→+b−ω→T⋅x→0−b|‖ω→‖=|ω→T⋅x+b|‖ω→‖
2.1.3超平面的正反面
一個超平面可以將該空間分成兩部分,和法向量同向規定為正面,和法向量反向稱為反面。x⃗ 0x→0是超平面上的一點,x⃗ −x⃗ 0x→−x→0與ω⃗ ω→的夾角小於90。90。時該點位於超平面正面,即
ω⃗ T⋅(x⃗ −x⃗ 0)>0
ω→T⋅(x→−x→0)>0

ω⃗ T⋅x⃗ +b>0
ω→T⋅x→+b>0
3.感知機學習策略
3.1損失函數
誤分類集M,對於xi∈Mxi∈M,有−yi(ω⋅xi+b)>0−yi(ω⋅xi+b)>0,感知機損失函數與誤分類點到超平面的距離有關。所有誤分類點到超平面的距離和為
−1∥ω∥∑xi∈Myi(ω⋅xi+b)
−1‖ω‖∑xi∈Myi(ω⋅xi+b)

忽略1∥ω∥1‖ω‖,就得到了損失函數:
L(ω,b)=−∑xi∈Myi(ω⋅xi+b)
L(ω,b)=−∑xi∈Myi(ω⋅xi+b)
4.感知機學習算法
感知機學習問題轉換為求解使損失函數L(ω,b)L(ω,b)最小的最優化問題,采用隨機梯度下降法(stochastic gradient descent)。
∇ωL(ω,b)=−∑xi∈Myixi
∇ωL(ω,b)=−∑xi∈Myixi

∇bL(ω,b)=−∑xi∈Myi
∇bL(ω,b)=−∑xi∈Myi

其中M是誤分類集
(1)ω=ω0,b=b0ω=ω0,b=b0,學習速率ηη
(2)選擇xi∈Mxi∈M,更新ω,bω,b
ωk=ωk−1+ηyixi
ωk=ωk−1+ηyixi

bk=bk−1+ηyi
bk=bk−1+ηyi

(3)轉至(2),直到不存在誤分類點。
4.1感知機學習算法的收斂性
4.1.1定理
為了便於敘述,令ω^=(ωT,b),x^=(xT,1)Tω^=(ωT,b),x^=(xT,1)T,顯然ω^⋅x^=ω⋅x+bω^⋅x^=ω⋅x+b.
假設訓練集是線性可分的,則
(1)存在∥ω^opt∥=1‖ω^opt‖=1的超平面,使
yi(ω^opt⋅x^i)≥γ
yi(ω^opt⋅x^i)≥γ

(2)R=max1≤i≤n∥x^i∥R=max1≤i≤n‖x^i‖,則誤分類次數k滿足
k≤(Rγ)2
k≤(Rγ)2
4.1.2證明
(1)由於訓練數據集是線性可分的,所以存在超平面可以將訓練數據集完全正確的分開。取此超平面為ω^opt⋅x^i=0,使∥ω^opt∥=1ω^opt⋅x^i=0,使‖ω^opt‖=1.對於數據集中所有的xixi都有
yi(ω^opt⋅x^i)>0
yi(ω^opt⋅x^i)>0

存在
γ=min{yi(ω^opt⋅x^i)}
γ=min{yi(ω^opt⋅x^i)}

使
yi(ω^opt⋅x^i)≥γ
yi(ω^opt⋅x^i)≥γ

(2)ω^k−1ω^k−1是第k次誤分類前的權重向量,x^ix^i是使其誤分類的點,則有
ω^k=ω^k−1+ηyix^i
ω^k=ω^k−1+ηyix^i

ω^k⋅ω^opt=ω^k−1ω^opt+ηyiω^optx^i≥ω^k−1ω^opt+ηγ≥ω^k−2ω^opt+2ηγ≥⋯≥ω0+kηγ
ω^k⋅ω^opt=ω^k−1ω^opt+ηyiω^optx^i≥ω^k−1ω^opt+ηγ≥ω^k−2ω^opt+2ηγ≥⋯≥ω0+kηγ

∥ω^k∥2=∥ω^k−1∥2+2ηyiω^k−1x^i+η2y2i∥x^i∥2
‖ω^k‖2=‖ω^k−1‖2+2ηyiω^k−1x^i+η2yi2‖x^i‖2

由於x^ix^i被ω^k−1ω^k−1誤分類,所以yiω^k−1x^i<0,y2i=1yiω^k−1x^i<0,yi2=1,所以
∥ω^k∥2≤∥ω^k−1∥2+η2R2≤∥ω^k−2∥2+2η2R2≤⋯≤∥ω^0∥2+kη2R2
‖ω^k‖2≤‖ω^k−1‖2+η2R2≤‖ω^k−2‖2+2η2R2≤⋯≤‖ω^0‖2+kη2R2

當ω^0=0ω^0=0時,
ω^k⋅ω^opt≥kηγ
ω^k⋅ω^opt≥kηγ

∥ω^k∥≤k−−√ηR
‖ω^k‖≤kηR

kηγ≤ω^k⋅ω^opt≤∥ω^k∥⋅∥ω^opt∥⋅cosθ≤∥ω^k∥⋅∥ω^opt∥≤∥ω^k∥≤k−−√ηR
kηγ≤ω^k⋅ω^opt≤‖ω^k‖⋅‖ω^opt‖⋅cos⁡θ≤‖ω^k‖⋅‖ω^opt‖≤‖ω^k‖≤kηR

k2γ2≤kR2
k2γ2≤kR2

k≤(Rγ)2
k≤(Rγ)2

注意到初始條件為0時,迭代次數k與學習速率ηη無關。
5.感知機的對偶形式
感知機的對偶形式是初始值為0條件下的一種變形,似乎能起到減少每一次迭代的計算量的作用,有待驗證。
————————————————
版權聲明:本文為CSDN博主「K_Albert」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/K_Albert/article/details/78172230


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM