1. 程式人生 > 程式設計 >sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

線性邏輯迴歸

本文用程式碼實現怎麼利用sklearn來進行線性邏輯迴歸的計算,下面先來看看用到的資料。

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

這是有兩行特徵的資料,然後第三行是資料的標籤。

python程式碼

首先匯入包和載入資料

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

寫一個畫圖的函式,把這些資料表示出來:

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

然後我們呼叫這個函式得到下面的影象:

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

接下來開始建立模型並擬合,然後呼叫sklearn裡面的邏輯迴歸方法,裡面的函式可以自動幫算出權值和偏置值,非常簡單,接著畫出影象。

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

最後我們可以來看看評估值:
sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

可以看到,正確率、召回率、F1值都達到了95%。

非線性邏輯迴歸

非線性邏輯迴歸意味著決策邊界是曲線,和線性邏輯迴歸的原理是差不多的,這裡用到的資料是datasets自動生成的,

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

接下來要把資料進行多項式處理,簡單地說就是增加資料的特徵,

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

然後規定好影象的座標值,並生成一個網格矩陣,

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

定義一個等高線的高,

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

結果一目瞭然,很好的分成了兩類:

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

看一下準確率,98%,說明算比較成功,準確率很高。

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

sklearn線性邏輯迴歸和非線性邏輯迴歸的實現

線性邏輯迴歸和非線性邏輯迴歸用到的代價函式都是一樣的,原理相同,只不過是預估函式的複雜度不一樣,非線性邏輯迴歸要對資料進行多項式處理,增加資料的特徵量。

到此這篇關於sklearn線性邏輯迴歸和非線性邏輯迴歸的實現的文章就介紹到這了,更多相關sklearn線性邏輯迴歸和非線性邏輯迴歸內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!