案例分析
正規方程、梯度下降、嶺回歸
from sklearn.datasets import load_boston
from sklearn.linear_model import linearregression, sgdregressor, ridge
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import standardscaler
from sklearn.metrics import mean_squared_error
deflin()
:# 載入資料
lb = load_boston(
)# 分割資料
x_train, x_test, y_train, y_test = train_test_split(lb.data, lb.target, test_size=
0.25
)# 標準化處理,例項化兩個標準化api
std_x = standardscaler(
) x_train = std_x.fit_transform(x_train)
x_test = std_x.transform(x_test)
std_y = standardscaler(
) y_train = std_y.fit_transform(y_train.reshape(-1
,1))
y_test = std_y.transform(y_test.reshape(-1
,1))
# 正規方程求解
lr = linearregression(
) lr.fit(x_train, y_train)
print
(lr.coef_)
# 這個顯示回歸係數
y_lr_predict = std_y.inverse_transform(lr.predict(x_test)
)print
('**的房價是'
, y_lr_predict)
print
('正規方程均方誤差:'
, mean_squared_error(std_y.inverse_transform(y_test)
, y_lr_predict)
)# 梯度下降**(這裡資料太少,效果貌似很不好,建議大於10萬樣本)
sgd = sgdregressor(
) sgd.fit(x_train, y_train)
print
(sgd.coef_)
y_sgd_predict = std_y.inverse_transform(sgd.predict(x_test)
)print
('**的房價是'
, y_sgd_predict)
print
('梯度下降均方誤差:'
, mean_squared_error(std_y.inverse_transform(y_test)
, y_sgd_predict)
)if __name__ ==
'__main__'
: lin(
)
使用條件
過擬合和欠擬合
欠擬合一般為模型過於簡單
過擬合 overfitting
原始特徵過多,存在一些嘈雜特徵, 模型過於複雜是因為模型嘗試去兼顧各個測試資料點
過擬合的解決辦法
正則化,嶺回歸
from sklearn.datasets import load_boston
from sklearn.linear_model import linearregression, sgdregressor, ridge
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import standardscaler
from sklearn.metrics import mean_squared_error
deflin()
:# 嶺回歸
rd = ridge(alpha=1)
rd.fit(x_train, y_train)
print
(rd.coef_)
y_rd_predict = std_y.inverse_transform(rd.predict(x_test)
)print
('**的房價是'
, y_rd_predict)
print
('梯度下降均方誤差:'
, mean_squared_error(std_y.inverse_transform(y_test)
, y_rd_predict)
)return
none
機器學習 線性回歸
可以說基本上是機器學習中最簡單的模型了,但是實際上其地位很重要 計算簡單 效果不錯,在很多其他演算法中也可以看到用lr作為一部分 先來看乙個小例子,給乙個 線性回歸是什麼 的概念。圖來自 2 假設有乙個房屋銷售的資料如下 面積 m 2 銷售價錢 萬元 123 250 150 320 87 160 1...
機器學習(線性回歸)
在機器學習中,回歸 分類和標註共同構成了監督學習技術。監督學習 supervised learning 是機器學習在工業界應用最廣的乙個領域分支。在學術界中也是研究最多的領域之一。大家都知道的資料探勘十大經典演算法中,監督學習技術佔據6席。方法 自變數 特徵 因變數 結果 關係 回歸演算法是試圖採用...
機器學習 線性回歸
line fitter linearregression 建立模型 line fitter.fit temperature,sales 傳入引數 sales predict line fitter.predict temperature 模型 直線 直線上會有loss 計算loss時 要使用平方距離...