用線性回歸演算法擬合正弦函式
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
#生成200個[-2pi,2pi]之間的正弦函式上的點,並加上隨機雜訊
n_dots=
200x=np.linspace(-2
*np.pi,
2*np.pi,n_dots)
y=np.sin(x)
+0.2
*np.random.rand(n_dots)
-0.1
x=x.reshape(-1
,1)y=y.reshape(-1
,1)#樣本資料視覺化
分別用2,3,5,10階多項式擬合資料集
from sklearn.metrics import mean_squared_error
degrees=[1
,3,5
,10]results=
for d in degrees:
model=polynomial_model(degree=d)
model.fit(x,y)
train_secore=model.score(x,y)
mse=mean_squared_error(y,model.predict(x)))
for r in results:
print
('degree:{};train secore:{};mean_squared_error:{}'
.format
(r['degree'
],r[
'train secore'
],r[
'mean_squared_error'])
)
degree:1;train secore:0.1586555318661097;mean_squared_error:0.41478299058611784
degree:3;train secore:0.28176715534936847;mean_squared_error:0.3540889356557277
degree:5;train secore:0.9019670856582411;mean_squared_error:0.048330246321981546
degree:10;train secore:0.9936763322832942;mean_squared_error:0.003117569445515962
由結果可得,階數越高,擬合準確率越高,均方誤差越小
線性回歸練習
1 極大似然估計原理 它是建立在極大似然原理的基礎上的乙個統計方法,極大似然原理的直觀想法是,乙個隨機試驗如有若干個可能的結果a,b,c,若在一次試驗中,結果a出現了,那麼可以認為實驗條件對a的出現有利,也即出現的概率p a 較大。極大似然原理的直觀想法我們用下面例子說明。設甲箱中有99個白球,1個...
線性回歸練習
excel做回歸分析,主要分析資料意義 multiple r x和y的相關係數r,一般在 1 1之間,絕對值越靠近1則相關性越強,越靠近0則相關性越弱 r square x和y的相關係數r的平方,表達自變數x解釋因變數y變差的程度,以測定量y的擬合效果 adjusted r square 調整後的r...
Regularization線性回歸練習
監督機器學習問題無非就是在規則化引數的同時最小化誤差。最小化誤差是為了讓我們的模型擬合我們的訓練數 據,而規則化引數是防止我們的模型過分擬合我們的訓練資料。因為引數太多,會導致我們的模型複雜度上公升,容易 過擬合,也就是我們的訓練誤差會很小。但訓練誤差小並不是我們的最終目標,我們的目標是希望模型的測...