1.4 - logistic迴歸

橘子葡萄火龙果發表於2024-04-03

1. 模型理念

  對於求解二分類問題,尋找一個決策邊界,使得不同類別的點在邊界的兩側,並用點到決策邊界的 距離 表示該點屬於某個類別的 機率。點到決策面的距離 d 直接將點代入決策面公式即可;距離到機率的對映函式需要符合機率的公理化定義,選用Sigmoid函式,(多分類問題選用 Softmax函式)。

2. 模型構建

2.1 損失函式

  根據上述模型理念,當 y = 1 時,設其機率為 P(y=1|x) = h(x),則 y = 0 時,機率為 P(y=0|x) = 1 - h(x)。其中,h(x)=Sigmoid( d(x) )。然後將 y=1和y=0 兩種情況時的機率公式綜合為一個機率公式,這樣,我們就得到了任意一個樣本的分類機率結果。對於分類問題的資料集,根據 極大似然估計 理論,我們認為之所以會出現資料集中呈現的分類結果,是因為在這個問題中這樣分類得到的機率最大,又因為已知每個樣本的機率函式以及樣本資料的獨立同分布,可以得到極大似然函式 => 化簡取負值 =》logistic迴歸的損失函式:交叉熵函式

2.2 最佳化方法

  得到交叉熵損失函式之後,對函式求模型超參的偏導數函式,透過令偏導函式為0的方式求取解析解比較困難。但是已知偏導函式,透過梯度下降的方式求取 一般解 還是比較容易的。

3. 引發過擬合和欠擬合的因素以及改進措施

3.1 欠擬合

  欠擬合是因為:模型複雜度不夠,可以調大多項式擴充套件的 degree 值。

3.2 過擬合

  過擬合是因為:模型過於複雜導致學習到了很多無效特徵,如:噪音。不同的ML模型降低過擬合的方式不同。Logistic迴歸降低過擬合的方式是:

    【分析業務去掉不相關的特徵 / 逐步迴歸 / 引入正則項(sklearn中預設L2,可以關掉,最後沒辦法時再開啟)】

4. 適用場景

  線性二分類問題。

4.1 二分類解決多分類問題

  1)OvR:one - v - rest,訓練會用到所有的資料集,現在大多用這種。

  2)OvO:one - v - one,訓練不會用到所有的資料集,適合在小資料集上效果比較好的二分類模型,如:SVM。

5. 可執行程式碼

相關文章