sklearn不同懲罰項的線性回歸模擬實現

2021-10-23 01:38:43 字數 1200 閱讀 7815

lasso

import numpy as np

from sklearn.linear_model import lasso

from sklearn.linear_model import sgdregressor

x =2

* np.random.rand(

100,1)

y =4+3

* x + np.random.randn(

100,1)

#例項化乙個lasso回歸物件,懲罰項係數為0.15,最大迭代次數為一萬次

lasso_reg = lasso(alpha=

0.15

, max_iter=

10000

)#傳入資料訓練

lasso_reg.fit(x, y)

print

(lasso_reg.predict([[

1.5]])

)#列印**值

print

("w1 = %f"

% lasso_reg.coef_)

#列印權值引數

print

("w0 = %f"

% lasso_reg.intercept_)

#列印偏置項

elastic_net

import numpy as np

from sklearn.linear_model import elasticnet

from sklearn.linear_model import sgdregressor

#模擬生成訓練資料

x =2

* np.random.rand(

100,1)

y =4+3

* x + np.random.randn(

100,1)

#例項化elastic_net物件,阿爾法=0.001,p = 0.15

elastic_net = elasticnet(alpha=

0.0001

, l1_ratio=

0.15

)#fit進資料訓練

elastic_net.fit(x, y)

#列印**值

print

(elastic_net.predict([[

1.5]])

)

sklearn中的線性模型

在skearn中,可以使用sklearn.linear model來建立線性模型 然後用fit函式去訓練 然後用predict去 還可以用score函式去 同時計算 的準確度 import numpy as np import matplotlib.pyplot as plt from sklear...

L1 L2懲罰項降維的原理

通常而言,特徵選擇是指選擇獲得相應模型和演算法最好效能的特徵集,工程上常用的方法有以下 1.計算每乙個特徵與響應變數的相關性 工程上常用的手段有計算皮爾遜係數和互資訊係數,皮爾遜係數只能衡量線性相關性而互資訊係數能夠很好地度量各種相關性,但是計算相對複雜一些,好在很多toolkit裡邊都包含了這個工...

Unity 選擇具有不同概率的項

假設權重分別為3,2,5 隨機乙個0 10之間的數 math.random 10 0,10 區間開閉看實際情況 數字落在 0,3 3,5 5,10 哪個區間就對應選擇誰 判斷落在哪個區間可以通過依次減去區間長度後是否有餘 例如隨機數為7.856 7.856 3 4.856 說明屬於後面的區間則繼續 ...