線性可分的數據集下,感知機模型是否是凸優化問題?
線性可分的數據集下,感知機演算法是可以收斂的,但是李航的統計學習方法上說感知機演算法存在很多解且依賴於初始值的選擇和選擇順序。但是如果感知機模型是凸優化問題那麼其一定存在一個最優解,我根據感知機模型的優化問題進行分析推導發現其優化函數是線性函數,那麼這說明感知機模型是凸優化問題,那麼其應該存在最優解,和李航的書中出現矛盾,請大家幫忙解答 !
我覺得題主疑惑的原因在於沒有意識到logistic regression和perceptron演算法的不同點。
logistic regression演算法做的事情是最小化這個目標函數(negative log-likelihood):
與此不同的是,perceptron演算法規定了w的更新步驟,它的最顯著的後果是導致w不能取到中的任意值,而只能取各個數據向量的整係數線性組合。這個限制使得perceptron往往會錯過最優解。另外,perceptron演算法的終止條件是所有數據均正確分類,並不是最小化L(w),所以它只會找到一個可行解,而不是使得L(w)最小的最優解。
====下面是題外話====
其實更有意思的是,「線性可分」這個條件對logistic regression演算法和perceptron演算法的影響是截然相反的。對於perceptron演算法來說,「線性可分」是演算法能夠結束的充要條件,是件好事。但對於logistic regression來說,「線性可分」卻是件壞事,它意味著目標函數沒有極小值——沒錯,目標函數是凸的,但存在一個方向,沿著這個方向走下去,目標函數是單調減小的(但有界)。感性認識就是,既然線性可分,那我們就希望那個S型曲面儘可能陡峭,而陡峭是沒有限度的(如下圖)。所以,在線性可分的數據集上做logistic regression,就必須加regularization以保證演算法收斂。
評論中有人讓我用圖來說明「線性可分」對logistic regression來說是件壞事。如圖,五根紅線和五根藍線表示了一個二維的線性可分的數據集。注意數據是二維的,即只有x1、x2坐標,我把它畫成立體的只是為了觀察方便。紅色數據點的x1坐標均為正,藍色數據點的x1坐標均為負。
我覺得感知機模型的優化求解並不是一個凸優化問題。
其問題在於它的目標函數----- 不是固定 -----的!它的目標函數是說對錯誤分類點的損失最小化,而錯誤分類點在優化過程中是不斷變化的,那麼它的目標函數其實也是在發生一些不可預測的變化的,這能算凸優化嗎?不能嗎?能嗎?(若要使用來計算的點不變,需要加入indicate fucntion或者sign function這樣的非凸函數,所以答案很明顯了)
而題主之所以推導出來,可能是因為把錯誤分類點固定下來不變,來推導了吧?謝邀。題主對凸函數的理解可能和我有點偏差。
一元線性函數y關於x的函數對於某個誤分類的樣本點 ,其類標籤
必然與判別平面的符號相反,
在感知機中,你選擇不同的初始值進行迭代,在迭代中選擇誤分類點的順序不同,都可能導致其解的不同。如果你需要得到唯一的超平面,則需要對分離的超平面增加約束條件(如SVM里對間隔進行約束)從而使問題變為凸優化問題,具有唯一解。
在線性可分的情況下,最naive的感知機演算法就是凸的,題主可以想想max(0,f(x))在f(x)為凸的情況下是否為凸,這邊我就直接給出結論了。希望對您有幫助,謝謝。

補充:
關於存在多個最優解的情況,凸優化問題沒有說只存在唯一解,只有嚴格凸的問題才是存在唯一解的,這個可以參考boyd老師的《convex optimization》一書。
您好,請教一個問題可好?請問 誤分類點到分類平面的距離: 這個公式是如何得到的呢?如何理解呢?
推薦閱讀:
※「過擬合」的嚴格定義是什麼?
※在利用支持向量機進行分類的時候怎麼選擇合適的核函數?
※除了 arxiv.org, 機器學習與數據挖掘相關在哪可以閱讀比較專業的文獻?
※如何有效的區分和理解RNN循環神經網路與遞歸神經網路?
※人工神經網路與人類神經網路有關係嗎?
TAG:機器學習 |
