邏輯迴歸求解二分類問題以及SPSS的實現

卢宇博發表於2024-07-03

分類問題就是給出物質的屬性,判斷其屬於什麼成分,本文將講述邏輯迴歸求解二分類問題
本文著重於模型的實現,對於推導只是概括性的敘述

目錄
  • 一、問題提出
  • 二、邏輯迴歸函式logistic
    • 1.線性線性機率模型
    • 2.sigmod函式
    • 3.求解方法————極大似然估計
    • 4.分類原則
  • 三、SPSS實現————以水果二分類資料為例
    • 1.資料處理
    • 2.進行二分類邏輯迴歸
      • (1)輸入方法
      • (2)定義分類變數
    • 3.檢視結果
      • (1)塊1:分類表
      • (2)邏輯迴歸係數表
      • (3)預測結果解讀
  • 四、迴歸結果差————如何選擇合適的迴歸模型?
    • 1.加入平方項的實現方法
    • 2.無腦加入平方項的後果————過擬合
    • 3.如何確定合適的模型?————訓練與測試

一、問題提出

二、邏輯迴歸函式logistic

1.線性線性機率模型

既然是迴歸問題,線性性是最簡單的一種關係,在邏輯迴歸中,也是以線性機率模型作為基礎進行迴歸。
此處的迴歸函式與多元線性迴歸一樣,即y_hat=β0+β1x1+β2x2+.....
但也同樣因為是2分類問題,y的值只能取0或者1。(在函式中體現為取0到1)
既然y只能取0或1那麼就可以和已經非常成熟的模型————伯努利分佈聯絡在一起,形成一個條件機率,這就是所謂的線性機率模型

2.sigmod函式

由於由於後者有解析表示式(而標準正態分佈的cdf沒有),所以計算logistic模型比probit模型更為方便。

3.求解方法————極大似然估計

4.分類原則

y_hat>=0.5,則認為y取1;否則認為y取0

三、SPSS實現————以水果二分類資料為例

1.資料處理

此處的資料處理部分就是把用中文表示的名詞“蘋果”改成數值型變數0-1,用excel容易做到,此處我們講解用SPSS形成虛擬變數的方法

此處的“根名稱”就是虛擬變數的名詞,SPSS不知道哪個是0,哪個是1,於是會創造3組虛擬變數,我們只需要保留我們需要的那一組即可。此處我們保留“蘋果”是1的變數

2.進行二分類邏輯迴歸

按圖片設定好即可;需要儲存機率組成員

接下來我們來解釋一下具體的引數調整

(1)輸入方法

此處的輸入方法就是指如何輸入自變數的方法;
輸入:把自變數全部輸入
向前:先輸入一個自變數,看其是否顯著。如果顯著則保留,不顯著的去除;然後再輸入另一個自變數。不同方法使用的統計量不同
向後:把自變數全部輸入,觀察所有的變數是否顯著。把最不顯著的去除,然後再次進行檢驗,直到把全都顯著的自變數保留。不同方法使用的統計量不同
一般採用向後的方法

(2)定義分類變數

自變數是分類形式的(如性別)需要單獨定義分類變數;參考類別為第一個,則把第一個設定為1。參考類別的設定對結果影響不大

3.檢視結果

(1)塊1:分類表

如圖所示,此表是一個預測與實測數目的二元表,對角線上的個數為分類正確的個數。並且給出了分類正確率

(2)邏輯迴歸係數表

(3)預測結果解讀

SPSS會在資料中給出新的兩列,分別為按邏輯函式計算出來的機率值和邏輯迴歸後的0-1變數

四、迴歸結果差————如何選擇合適的迴歸模型?

上面的方法正確率只有75%左右,顯然是正確率較低的,那如何提高正確率呢?
我們的模型是以線性模型作為基礎,想要提高正確率,可以提高模型的複雜度,線上性迴歸模型中體現為增加平方項與互動項

1.加入平方項的實現方法

在SPSS中的計算變數功能可實現

2.無腦加入平方項的後果————過擬合

在我們把所有的自變數都加入平方項後,得到結果如圖所示:

可以看到,雖然預測正確率為100%,但是所有的係數都不顯著了,這就導致的模型的過擬合

3.如何確定合適的模型?————訓練與測試

相關文章