(轉)線性迴歸數學推導(詳細過程)

線性迴歸的公式

從零開始機器學習001-線性迴歸數學推導

線性迴歸的數學推導主要涉及到如下幾個知識點。

1. 利用矩陣的知識對線性公式進行整合

2. 偏差項的分析

3. 似然函數的理解

4. 矩陣求偏導

5. 線性迴歸的最終求解


咱們先來看下這個圖機器學習

姓名 工資(元) 房屋面積(平方米) 可貸款金額(元)
張三 6000 58 30000
李四 9000 77 55010
王五 11000 89 73542
陸永劍 15000 54 63201

這個是近期比較火的現金貸產品的貸款額度。這個表格表示的是可貸款的金額 與 工資 和 房屋面積之間的關係,其中 工資 和 房屋面積 爲 特徵,可貸款金額爲目標函數值。
那麼根據線性函數可獲得如下公式。
從零開始機器學習001-線性迴歸數學推導
上面的這個式子是當一個模型只有兩個特徵(x1,x2)的時候的線性迴歸式子。
正常狀況下,現金貸中可貸款的額度和用戶的不少特徵相關聯,並不僅是簡單的這兩個特徵。因此咱們須要把這個式子進行通用化。
假若有n個特徵的話,那麼式子就會變成下面的樣子
從零開始機器學習001-線性迴歸數學推導
上面的式子是一個多項求和的式子,用機器學習的思想,怎麼把這個式子聚合一下呢?
由於機器學習中基本上都是用矩陣的方式來表示參數的,也就是說咱們須要把這個多項求和的式子用矩陣的方式表達出來,這樣才方便後續的計算。
從零開始機器學習001-線性迴歸數學推導
咱們把權重參數和特徵參數,都當作是1行n列的矩陣(或者是行向量)。那麼就能夠根據矩陣乘法的相關知識,把上述多項求和的式子,轉換成矩陣的乘法的表達式。
由此咱們就把多項求和化簡稱了
從零開始機器學習001-線性迴歸數學推導
這個就是第一步,利用矩陣的知識對線性公式進行整合。
接着咱們來看第二步,偏差項的分析
從零開始機器學習001-線性迴歸數學推導
式子裏面其實並非只有W*X吧? 還有一個參數b。也就是咱們說的偏移量,或者叫作偏差項。
咱們先來看下面的這個圖
從零開始機器學習001-線性迴歸數學推導
圖中的橫座標X1 和 X2 分別表明着 兩個特徵(工資、房屋平米) 。縱座標Y表明目標(可貸款的額度)。其中紅點表明的就是實際的目標值(每一個人可貸款的額度).而平面上和紅點豎向相交的點表明着咱們根據線性迴歸模型獲得的點。也就是說實際獲得的錢和預估的錢之間是有必定偏差的,這個就是偏差項。
由於偏差項是真實值和偏差值之間的一個差距。那麼確定咱們但願偏差項越小越好。
從零開始機器學習001-線性迴歸數學推導
咱們根據實際狀況,假設認爲這個偏差項是知足如下幾個條件的。
從零開始機器學習001-線性迴歸數學推導
1.獨立:張三和李四一塊兒使用這款產品,可貸款額互不影響
2.同分布:張三和李四是使用的是同一款產品
3.高斯分佈:絕大多數的狀況下,在一個的空間內浮動不大
下面是高斯分佈的圖,忘記的同窗們能夠回憶下。
從零開始機器學習001-線性迴歸數學推導ide

第三步. 似然函數的理解
由前面兩步,咱們已經把線性迴歸模型,推導成下面的這個式子了。
從零開始機器學習001-線性迴歸數學推導
第二步,已經知道偏差項是符合高斯分佈的,因此偏差項的機率值就是下面的式子。
從零開始機器學習001-線性迴歸數學推導
再把偏差值帶入到這個式子裏面,就獲得了下面的式子。
從零開始機器學習001-線性迴歸數學推導函數

偏差項確定是越小越好了,那麼接下來要討論的就是什麼樣的參數和特徵的組合可以讓偏差項最小呢? 這裏就引入了似然函數的做用。似然函數的做用就是要根據樣原本求什麼樣的參數和特徵的組成可以最接近真實值。越接近真實值則偏差越小。
從零開始機器學習001-線性迴歸數學推導
似然函數就是求能讓真實值和預測值相等的那個參數的。
從零開始機器學習001-線性迴歸數學推導
上面的式子是多個參數的乘積的形式,很難進行計算,因此咱們又採用了對數的一個小技巧,把多個數相乘,轉化成多個數相加的形式。
從零開始機器學習001-線性迴歸數學推導
根據上面的這種換算關係,咱們就把似然函數的式子換算成下面的這個。
(由於似然函數是越大越好,似然函數的值和對數似然函數的值是成正比的,對值求對數,並不會影響到最後求極限的值。因此纔敢進行對數處理。)
從零開始機器學習001-線性迴歸數學推導
對上面的式子進行整合,獲得
從零開始機器學習001-線性迴歸數學推導
從零開始機器學習001-線性迴歸數學推導
經過上面一系列推導,就把式子轉化爲最小二乘法的相關知識了。
這就是在線性迴歸中使用似然函數的相關知識。
---【若是想了解更多的數學基礎知識,及機器學習的相關課程,請點擊下面連接】
---【從零開始學習機器學習,包含全套的機器學習課程】學習

接着看下一步:矩陣求偏導
怎麼計算最小二乘法的公式的最小值。這裏面就要涉及到導數的相關知識了,
求以前,咱們根據矩陣的知識,把上面的式子再轉換一下。
從零開始機器學習001-線性迴歸數學推導3d

把這個式子求一下偏導。
從零開始機器學習001-線性迴歸數學推導
上面的公式裏面還涉及到矩陣轉置的性質。想了解矩陣轉置的性質,請點擊此連接【機器學習數學基礎】。blog

將打開的式子,根據矩陣求導的三個重要公式
從零開始機器學習001-線性迴歸數學推導
咱們就能夠把偏導的值求出來,
從零開始機器學習001-線性迴歸數學推導
最終獲得結果:
從零開始機器學習001-線性迴歸數學推導get

X和Y都是已知的,那麼獲得了最終的參數值。博客

轉自:
從零開始機器學習001-線性迴歸數學推導-12123258-51CTO博客
http://blog.51cto.com/12133258/2051527數學

相關文章
相關標籤/搜索