lr 與svm
不同
1.logistic regression適合需要得到乙個分類概率的場景,svm則沒有分類概率
2.lr其實同樣可以使用kernel,但是lr沒有support vector在計算複雜度上會高出很多。如果樣本量很大並且需要的是乙個複雜模型,那麼建議svm
3. 如果樣本比較少,模型又比較複雜。那麼建議svm,它有一套比較好的解構風險最小化理論的保障,比如large margin和soft margin
相同
1. 由於hinge loss和entropy loss很接近,因此得出來的兩個分類面是非常接近的
2. 都是在兩個loss上做了乙個regularization
lr 與svm
在andrew ng的課裡講到過:
1. 如果feature的數量很大,跟樣本數量差不多,這時候選用lr或者是linear kernel的svm
2. 如果feature的數量比較小,樣本數量一般,不算大也不算小,選用svm+gaussian kernel
3. 如果feature的數量比較小,而樣本數量很多,需要手工新增一些feature變成第一種情況
仔細想想,為什麼是這樣?
首先,我們來分析下邏輯回歸(logistic regression),它是解決工業規模問題最流行的演算法,儘管與其他技術相比,其在效率和演算法實現的易用性方面並不出眾。
除此之外,邏輯回歸演算法對於資料中小雜訊的魯棒性很好,並且不會受到輕微的多重共線性的特別影響。嚴重的多重共線性則可以使用邏輯回歸結合l2正則化來解決,不過如果要得到乙個簡約模型,l2正則化並不是最好的選擇,因為它建立的模型涵蓋了全部的特徵。
當你的特徵數目很大並且還丟失了大部分資料時,邏輯回歸就會表現得力不從心。同時,太多的類別變數對邏輯回歸來說也是乙個問題。邏輯回歸的另乙個爭議點是它使用整個資料來得到它的概率分數。雖然這並不是乙個問題,但是當你嘗試畫一條分離曲線的時候,邏輯回歸可能會認為那些位於分數兩端「明顯的」資料點不應該被關注。有些人可能認為,在理想情況下,邏輯回歸應該依賴這些邊界點。同時,如果某些特徵是非線性的,那麼你必須依靠轉換,然而當你特徵空間的維數增加時,這也會變成另乙個難題。所以,對於邏輯回歸,我們根據討論的內容總結了一些突出的優點和缺點。
logistic回歸分析的優點:
1.適合需要得到乙個分類概率的場景
2.實現效率較高
3.對邏輯回歸而言,多重共線性並不是問題,它可以結合l2正則化來解決;
4.邏輯回歸廣泛的應用於工業問題上
邏輯回歸的缺點:
1.當特徵空間很大時,邏輯回歸的效能不是很好;
2.不能很好地處理大量多類特徵或變數;
4.對於非線性特徵,需要進行轉換;
5.依賴於全部的資料特徵,當特徵有缺失的時候表現效果不好
決策樹
決策樹固有的特性是它對單向變換或非線性特徵並不關心[這不同於**器當中的非線性相關性》,因為它們簡單地在特徵空間中插入矩形[或是(超)長方體],這些形狀可以適應任何單調製換。當決策樹被設計用來處理**器的離散資料或是類別時,任何數量的分類變數對決策樹來說都不是真正的問題。使用決策樹訓練得到的模型相當直觀,在業務上也非常容易解釋。決策樹並不是以概率分數作為直接結果,但是你可以使用類概率反過來分配給終端節點。這也就讓我們看到了與決策樹相關的最大問題,即它們屬於高度偏見型模型。你可以在訓練集上構建決策樹模型,而且其在訓練集上的結果可能優於其它演算法,但你的測試集最終會證明它是乙個差的**器。你必須對樹進行剪枝,同時結合交叉驗證才能得到乙個沒有過擬合的決策樹模型。
隨機森林在很大程度上克服了過擬合這一缺陷,其本身並沒有什麼特別之處,但它卻是決策樹乙個非常優秀的擴充套件。隨機森林同時也剝奪了商業規則的易解釋性,因為現在你有上千棵這樣的樹,而且它們使用的多數投票規則會使得模型變得更加複雜。同時,決策樹變數之間也存在相互作用,如果你的大多數變數之間沒有相互作用關係或者非常弱,那麼會使得結果非常低效。此外,這種設計也使得它們更不易受多重共線性的影響。
決策樹總結如下:
決策樹的優點:
1.直觀的決策規則
2.可以處理非線性特徵
3.考慮了變數之間的相互作用
決策樹的缺點:
1.訓練集上的效果高度優於測試集,即過擬合[隨機森林克服了此缺點]
2.沒有將排名分數作為直接結果
支援向量機
現在來討論下支援向量機(svm, support vector machine)。支援向量機的特點是它依靠邊界樣本來建立需要的分離曲線。正如我們 之間看到的那樣,它可以處理非線性決策邊界。對邊界的依賴,也使得它們有能力處理缺失資料中「明顯的」樣本例項。支援向量機能夠處理大的特徵空間,也因此成為文字分析中最受歡迎的演算法之一,由於文字資料幾乎總是產生大量的特徵,所以在這種情況下邏輯回歸並不是乙個非常好的選擇。
對於乙個行外人來說,svm的結果並不像決策樹那樣直觀。同時使用非線性核,使得支援向量機在大型資料上的訓練非常耗時。總之:
svm的優點:
1.能夠處理大型特徵空間
2.能夠處理非線性特徵之間的相互作用
3.無需依賴整個資料
svm的缺點:
1.當觀測樣本很多時,效率並不是很高
2.有時候很難找到乙個合適的核函式
為此,我試著編寫乙個簡單的工作流,決定應該何時選擇這三種演算法,流程如下:
首當其衝應該選擇的就是邏輯回歸,如果它的效果不怎麼樣,那麼可以將它的結果作為基準來參考;
然後試試決策樹(隨機森林)是否可以大幅度提公升模型效能。即使你並沒有把它當做最終模型,你也可以使用隨機森林來移除雜訊變數;
如果特徵的數量和觀測樣本特別多,那麼當資源和時間充足時,使用svm不失為一種選擇。
最後,大家請記住,在任何時候好的資料總要勝過任何乙個演算法。時常思考下,看看是否可以使用你的領域知識來設計乙個好的特徵。在使用建立的特徵做實驗時,可以嘗試下各種不同的想法。此外,你還可以嘗試下多種模型的組合。這些我們將在下回討論,所以,整裝待發吧!
邏輯斯蒂回歸
邏輯斯蒂回歸首先研究的是分類問題,所以我們這裡引入的激勵函式是sigmoid函式,所以邏輯斯蒂回歸也叫sigmoid回歸。當然也叫對數機率回歸。邏輯斯蒂回歸是直接對資料的分類的可能性進行建模,而不是假設資料的分布,這就避免了假設資料分布時不均勻所帶來的問題,所以邏輯斯蒂回歸不但可以 類別,還可以得出...
邏輯斯蒂回歸原理
邏輯斯蒂回歸是針對線性可分問題的一種易於實現而且效能優異的分類模型,是使用最為廣泛的分類模型之一。假設某件事發生的概率為p,那麼這件事不發生的概率為 1 p 我們稱p 1 p 為這件事情發生的機率。取這件事情發生機率的對數,定義為logit p 所以logit p 為 因為logit函式的輸入取值範...
決策樹(二)決策樹回歸
回歸 決策樹也可以用於執行回歸任務。我們首先用sk learn的decisiontreeregressor類構造一顆回歸決策樹,並在乙個帶雜訊的二次方資料集上進行訓練,指定max depth 2 import numpy as np quadratic training set noise np.r...