日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【机器学习】线性回归——最小二乘法(理论+图解+公式推导)

發布時間:2023/12/29 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【机器学习】线性回归——最小二乘法(理论+图解+公式推导) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

🌠 『精品學習專欄導航帖』

  • 🐳最適合入門的100個深度學習實戰項目🐳
  • 🐙【PyTorch深度學習項目實戰100例目錄】項目詳解 + 數據集 + 完整源碼🐙
  • 🐶【機器學習入門項目10例目錄】項目詳解 + 數據集 + 完整源碼🐶
  • 🦜【機器學習項目實戰10例目錄】項目詳解 + 數據集 + 完整源碼🦜
  • 🐌Java經典編程100例🐌
  • 🦋Python經典編程100例🦋
  • 🦄藍橋杯歷屆真題題目+解析+代碼+答案🦄
  • 🐯【2023王道數據結構目錄】課后算法設計題C、C++代碼實現完整版大全🐯

文章目錄

  • 一、概述
  • 二、最小二乘估計


2021人工智能領域新星創作者,帶你從入門到精通,該博客每天更新,逐漸完善機器學習各個知識體系的文章,幫助大家更高效學習。


一、概述

在生活實際中經常遇到一些情況,比如根據公司內部一些人的工資待遇去預測一個將從事相同工作人的工資,我們需要根據已有數據來對未來的數據進行推測。

在高中時候我們學過最小二乘法就是求 a?和b?a^*和b^*a?b? 去擬合一條直線,來最大程度的是我們的樣本點落在該直線上。

由上圖,顯然我們希望的是找到一條直線使所以的樣本點盡可能靠近該直線,即每個樣本點到直線的距離最短,其實這么說還不太對,它不是到直線的距離最短,而是到與該樣本點相同x點的y值的距離最短,如果是到直線的距離最短沒有幾何意義,如果是豎直距離,它可以表示我們預測值和真實值之間的一種離散程度,顯然這個差值越小越好。

二、最小二乘估計

根據上面的理解這就引出了我們的損失函數,也就是最小二乘估計:

在給出公式之前,我們先給出一些約定,為了下面敘述方便:

  • xix_ixi?:每個樣本為列向量,形狀為(n,1)
  • X:樣本矩陣,為(m,n)

注意:
X=[x1Tx2T...xmT]=[x11x12?x1nx21x22?x2n????xm1xm2?xmn]X=\begin{bmatrix}x_1^T\\x_2^T\\...\\x_m^T\end{bmatrix}\\=\begin{bmatrix}{x_{11}}&{x_{12}}&{\cdots}&{x_{1n}}\\{x_{21}}&{x_{22}}&{\cdots}&{x_{2n}}\\{\vdots}&{\vdots}&{\ddots}&{\vdots}\\{x_{m1}}&{x_{m2}}&{\cdots}&{x_{mn}}\\\end{bmatrix} X=?????x1T?x2T?...xmT???????=??????x11?x21??xm1??x12?x22??xm2???????x1n?x2n??xmn????????

  • w:為列向量,形狀為(n,1)

我們下面公式推導的時候沒有b,只是用了 y=XWy=XWy=XW ,這只是為了方便,其實可以把b放在X中和W向量中一起計算也可以,這樣就變成了:
X=[x11x12?x1n1x21x22?x2n1????xm1xm2?xmn1]X=\begin{bmatrix}{x_{11}}&{x_{12}}&{\cdots}&{x_{1n}}&1\\{x_{21}}&{x_{22}}&{\cdots}&{x_{2n}}&1\\{\vdots}&{\vdots}&{\ddots}&{\vdots}\\{x_{m1}}&{x_{m2}}&{\cdots}&{x_{mn}}&1\\\end{bmatrix} X=??????x11?x21??xm1??x12?x22??xm2???????x1n?x2n??xmn??111???????

W=[w1w2?wnw0]W=\begin{bmatrix}w_1\\w_2\\\vdots\\w_n\\w0\end{bmatrix} W=????????w1?w2??wn?w0?????????

如果把兩個矩陣這樣寫,其實是和 XW+b=YXW+b=YXW+b=Y 是等價的。
L(w)=∑i=1m∣∣wTxi?yi∣∣2=∑i=1m(wTxi?yi)2=[wTx1?y1wTx2?y2...wTxm?ym][wTx1?y1wTx2?y2...wTxm?ym]=[WTXT?YT][XW?Y]=WTXTXW?YTXW?WTXTY+YTY=WTXTXW?2WTXTY+YTYL(w)=\sum_{i=1}^m||w^Tx_i-y_i||^2\\=\sum_{i=1}^m(w^Tx_i-y_i)^2\\=\begin{bmatrix}w^Tx_1-y_1&&w^Tx_2-y_2&&...&&w^Tx_m-y_m\end{bmatrix}\begin{bmatrix}w^Tx_1-y_1\\w^Tx_2-y_2\\...\\w^Tx_m-y_m\end{bmatrix}\\=[W^TX^T-Y^T][XW-Y]\\=W^TX^TXW-Y^TXW-W^TX^TY+Y^TY\\=W^TX^TXW-2W^TX^TY+Y^TY L(w)=i=1m?wTxi??yi?2=i=1m?(wTxi??yi?)2=[wTx1??y1???wTx2??y2???...??wTxm??ym??]?????wTx1??y1?wTx2??y2?...wTxm??ym???????=[WTXT?YT][XW?Y]=WTXTXW?YTXW?WTXTY+YTY=WTXTXW?2WTXTY+YTY
因為我們采用的是最小二乘估計,所以我們希望我們的損失函數最小,所以我們求取函數導數為0的點,就是我們的最優解,有人可能有疑問,導數為0的點不一定是最值點,這里說明一下,因為我們的損失函數為凸函數,有因為凸函數是可優化的,所以該函數導數為0的點一定是最值點。

你可以想象二次函數 y=x2y=x^2y=x2 ,他就是一個凸函數,顯然它的導數為0的點一定是我們的最小值點,這里的損失函數為什么是最小值不予證明。

所以我們的最優解就為:
w?=argminwL(w)w^*=argmin_wL(w) w?=argminw?L(w)
此時就需要對函數進行求導,令其導數為0
?L(w)?w=2XTXW?2XTY=0\frac{\partial L(w)}{\partial w}=2X^TXW-2X^TY=0 ?w?L(w)?=2XTXW?2XTY=0
這里可能有人不會進行矩陣求導,我來講兩種方式,第一種就是損失函數不采用矩陣方式進行表達,用求和符號將其變成每個樣本的損失然后求和,針對于每個樣本對其求導,然后講每個樣本的導數相加,這樣就避免了矩陣的求導。

我采用的是第二種方式:

我們講原矩陣寫成微分的形式:
dL(w)=tr(?L?wTd(w))=d(WTXTXW?YTXW?WTXTY+YTY=WTXTXW?2WTXTY+YTY)=d(WT)XTXW+WTXTXd(W)?2d(WT)XTY=XTXWd(WT)+WTXTXd(W)?2XTYd(WT)dL(w)=tr(\frac{\partial L}{\partial w}^Td(w))=d(W^TX^TXW-Y^TXW-W^TX^TY+Y^TY\\=W^TX^TXW-2W^TX^TY+Y^TY)\\=d(W^T)X^TXW+W^TX^TXd(W)-2d(W^T)X^TY\\=X^TXWd(W^T)+W^TX^TXd(W)-2X^TYd(W^T) dL(w)=tr(?w?L?Td(w))=d(WTXTXW?YTXW?WTXTY+YTY=WTXTXW?2WTXTY+YTY)=d(WT)XTXW+WTXTXd(W)?2d(WT)XTY=XTXWd(WT)+WTXTXd(W)?2XTYd(WT)
所以
?L(w)?w=2XTXW?2XTY=0\frac{\partial L(w)}{\partial w}=2X^TXW-2X^TY=0 ?w?L(w)?=2XTXW?2XTY=0
這樣我們就求出了最優解w:
w?=(XTX)?1XTYw^*=(X^TX)^{-1}X^TY w?=(XTX)?1XTY
然后我們就可以構造決策函數:
f(x)=(w?)Txf(x)=(w^*)^Tx f(x)=(w?)Tx
使用該函數就可以擬合我們的每一個樣本點。

寫在最后

?????大家好,我是阿光,覺得文章還不錯的話,記得“一鍵三連”哦!!!

總結

以上是生活随笔為你收集整理的【机器学习】线性回归——最小二乘法(理论+图解+公式推导)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。