從平面線性擬合談起
我們知道,線性回歸是最簡單的一種資料擬合,說的直白點,我們舉平面上的例子來看,平面上有若干個樣本點,我們的目標就是去畫一條直線去擬合這些樣本點。如果你對擬合這兩個字還不是吃得很透,我們下面慢慢來介紹。
高斯雜訊是如何和最小二乘估計聯絡起來的?也就是換句話說,我們如何從概率的視角去審視最小二乘估計?下面我們來重點介紹這個話題。
我們思考乙個問題,通過線性擬合,我們能否讓直線精確無誤的通過每乙個樣本點,使得擬合出來的直線的誤差為 0?
這種理想的情況在現實當中顯然是不可能的,因為樣本資料本身是帶有雜訊的,帶有隨機性的,這個直觀點說,我們看上面那幅圖,所有的樣本點都圍繞著直線上下,在直線附近上下夾雜著這種隨機的雜訊。那麼我們可以這麼理解:擬合出來的直線代表了樣本資料的確定性,而擬合值和真實值之間的誤差,也可以稱之為是雜訊,則代表了隨機性。
那麼好,這個隨機性的雜訊我們是不是就可以用符合某個分布的隨機變數來描述,沒錯,這就是我們一開始講的高斯雜訊。
到此處已經豁然開朗,最終我們不就到達了最小二乘法的定義式了嗎?二者是不謀而合。因此,從概率的角度來說,最小二乘估計其中隱含了樣本雜訊服從 0 均值高斯分布的假設。
**最終,我們來快速看一下 python 當中做線性回歸的實現方法,我們借助 sklearn 工具包,實現起來是相當容易的:
from sklearn import datasets
from sklearn import linear_model
from sklearn.metrics import r2_score
from sklearn.datasets import load_boston
boston = load_boston(
)from sklearn.model_selection import train_test_split
#獲取波士頓房價資料集(506*13)
boston = datasets.load_boston(
)#選取一半的資料做訓練資料,一半做測試資料
x_train,x_test,y_train,y_test = \
train_test_split(boston.data,boston.target,test_size=
0.5,random_state=33)
#使用最小二乘線性回歸進行擬合,匯入相應的模組
lr = linear_model.linearregression(
)lr.fit(x_train, y_train)
#進行線性擬合
y_pred = lr.predict(x_test)
#得到**值集合y_pred
w = lr.coef_ #獲得該回該方程的回歸係數與截距
w0 = lr.intercept_
print
("估計係數w={}:"
.format
(w))
print
("估計截距w0={}:"
.format
(w0)
)#利用評價指標 r2_score,來評價模型的擬合優度,越接近 1 擬合情況越好
print
("擬合優度r2_score={}"
.format
(r2_score(y_test, y_pred)
))
執行結果:
估計係數 w=[-
1.13886467e-01
5.57751443e-02
3.19967368e-02
4.83656552e+00
-1.73802992e+01
3.81631385e+00
8.77697010e-03
-1.48553776e+00
3.16012600e-01
-1.14998706e-02
-8.54089583e-01
8.31673898e-03
-6.00625497e-01
]:估計截距w0=
34.525556152532474:
擬合優度r2_score=
0.7206754178645804
結合注釋,我們會發現利用 sklearn 的工具做最小二乘法的線性擬合還是相當容易的,最終如我們所願,樣本資料有 13 維特徵。 機器學習中的數學
從大學到現在,課堂上學的和自學的數學其實不算少了,可是在研究的過程中總是發現需要補充新的數學知識。learning和vision都是很多種數學的交匯場。看著不同的理論體系的交匯,對於乙個researcher來說,往往是非常exciting的enjoyable的事情。不過,這也代表著要充分了解這個領域...
機器學習中的數學
二 第二課時 1 極限 通俗語言 函式f在 x 0 處的極限是l 數學符號 lim f x l 無窮如何比較大小呢?如x趨近0的時候,sin x 和 tan x 同樣都趨近0,哪個趨近0的速度更快呢?我們可以採用求商的極限來求解 lim sin x tan x lim cos x 1 所以是同樣級別...
機器學習 數學 機器學習涉及的數學知識
簡單總結 機器學習涉及的數學知識有 線性代數,概率論和統計學,多變數微積分,演算法和複雜優化,以及其他等。原文 在過去幾個月裡,有幾個人聯絡過我,說他們渴望進軍資料科學領域,使用機器學習 ml 技術探索統計規律,並打造資料驅動的完美產品。但是,據我觀察,一些人缺乏必要的數學直覺和框架,無法獲得有用的...