1. 程式人生 > 其它 >【K8s生產環境】使用 kubeadm 引導集群系列 -- 3.使用 kubeadm 定製控制平面配置

【K8s生產環境】使用 kubeadm 引導集群系列 -- 3.使用 kubeadm 定製控制平面配置

感知器演算法是一種可以直接得到線性判別函式的線性分類方法,由於它是基於樣本線性可分的要求下使用的,所以先來了解下什麼是線性可分

  1. 線性可分與線性不可分

假設有一個包含個樣本的樣本集合, 其中. 我們想要找到一個線性判別函式

將兩類樣本分開,其中,如圖1所示:

圖 1

為了討論方便,我們將樣本增加了一維常數,得到增廣樣本向量,則個樣本的集合表示為,增廣權矢量表示為,我們得到新的判別函式

對應的決策規則就變為:,則決策為第一類;決策為第二類.

那什麼是線性可分?什麼是線性不可分?

假設有一組樣本,如果存在這樣一個權向量,使得任何一個樣本滿足“屬於第一類,;屬於第二類,”這樣一個條件,那麼我們就說這一組樣本是線性可分

的,即在樣本特徵空間中,至少會存在一個決策面可以將兩類樣本正確無誤的分開,反之找不到一個決策面來區分的話,就說樣本是線性不可分的。

對於感知器,我們要求樣本必須是線性可分的,因為它作為一種最最簡單的學習機器,目前還無法很好的解決線性不可分的情況(當然,有了解決不可分的演算法),即便是不可分的情況,人們也更加傾向於使用其他演算法,這也是感知器無法應用到更多實踐場合的原因。

2. 感知器演算法

感知器演算法採用最直觀的準則,即最小錯分樣本數。將錯分樣本到判別介面距離之和作為準則,稱為感知器準則,表示如下:

為了求解感知器的準則函式,就是找到一個權向量,使得懲罰函式最小化。我們使用機器學習中常用的梯度下降方法

來迭代。懲罰函式對權向量的梯度公式為:

利用梯度下降,我們有:

其中是學習率(或步長)。

我們得到下列感知器演算法批量調整版本):

當然,我們都知道這種對所有錯分樣本放到一起進行修正的做法是不妥當的,更妥當的辦法是對每一個錯分樣本都單獨修正,且每次都使用同一個固定步長,假如設步長為1,得到單樣本調整版本的感知器演算法:

感知器演算法特點

  • 當樣本線性可分情況下,學習率合適時,演算法具有收斂性
  • 收斂速度較慢
  • 當樣本線性不可分情況下,演算法不收斂,且無法判斷樣本是否線性可分