提綱:
線性模型的基本形式
多元線性回歸的損失函式
最小二乘法求多元線性回歸的引數
最小二乘法和隨機梯度下降的區別
疑問學習和參考資料
1.線性模型的基本形式
線性模型是一種形式簡單,易於建模,且可解釋性很強的模型,它通過乙個屬性的線性組合來進行**,其基本的形式為:
式(1)
轉換成向量形式之後寫成:
式(2)
為什麼說其解釋性很強呢,是因為模型的權值向量十分直觀地表達了樣本中每乙個屬性在**中的重要度,打個比方,要**今天是否會下雨,並且已經基於歷史資料學習到了模型中的權重向量和截距b,則可以綜合考慮各個屬性來判斷今天是否會下雨:
式(3)
2.多元線性回歸的損失函式
在多元線性回歸任務中,均方誤差是比較常用的乙個損失函式,學習的任務就是要基於均方誤差最小化來對模型的引數進行求解,損失函式的形式為:
式(4)
其中,m為樣本的數量,yi為樣本的真實值,f(x)為**值。
將式(4)中的截距b合併到w,使得新的權重向量增加多了一維,即:w=(w;b)(以下所有的w均是這種形式),相應的每個樣本xi也增加了一維,變為xi=(x11,x12,x13···x1d,1)
於是損失函式可以寫成以下形式:
式(5)
其中y是樣本的標記向量,y=(y1,y2,y3···ym),x為樣本矩陣。
3.最小二乘法求多元線性回歸的引數
在學習模型的任務中,我們要做到的是讓**值盡量逼近真實值,做到誤差最小,而均方誤差就是表達這種誤差的一種,所以我們要求解多元線性回歸模型,就是要求解使均方誤差最小化時所對應的引數:
式(6)
其中w*為模型對應的解,即使得均方誤差函式最小化時的權重向量。
那麼,我們應該如何求w*呢?在這裡,我們可以用最小二乘法對模型的引數進行估計,具體做法是:損失函式對需要求解的引數進行求導,並且令其導數為0,求得相應的引數。
在這裡,我們需要讓式(5)對w求導,在求導之前,我們來看一下兩個求導公式:
式(7)
式(8)
下圖為詳細的求導過程(字跡潦草~~請勿介意)
損失函式對引數進行求導之後,可以求得:
式(9)
令式(9)為零可得:
式(10)
以上即為引數w最優解的閉式解,但我們可以發現w*的計算涉及矩陣的求逆,這樣的話就有一些限制了,只有在x^t*x為滿秩矩陣或者正定矩陣時,才可以使用以上式子計算。但在現實任務中,x^t*x往往不是滿秩矩陣,這樣的話就會導致有多個解,並且這多個解都能使均方誤差最小化,但並不是所有的解都適合於做**任務,因為某些解可能會產生過擬合的問題。
4.最小二乘法和隨機梯度下降的區別
最小二乘法是最小化均方誤差,當x^t*x為滿秩矩陣時,可以直接求引數的閉式解,而隨機梯度下降需要不斷地迭代對引數進行更新,並且所求到的解不一定是全域性最優解。
但寫部落格的時候去逛了逛知乎, 其中使用者夏之晨的答案讓我茅塞頓開······
5.疑問
線性模型可以依靠權重來判斷特徵的重要程度,但這個判斷究竟有多準確?特徵之間的共線性使得特徵相互之間會共享一些資訊,又怎麼判斷某個特徵的重要程度不是其他特徵共享給它的呢?
6.學習和參考資料
周志華老師的《機器學習》
線性模型 1 多元線性回歸
提綱 線性模型的基本形式 多元線性回歸的損失函式 最小二乘法求多元線性回歸的引數 最小二乘法和隨機梯度下降的區別 疑問學習和參考資料 1.線性模型的基本形式 線性模型是一種形式簡單,易於建模,且可解釋性很強的模型,它通過乙個屬性的線性組合來進行 其基本的形式為 式 1 轉換成向量形式之後寫成 式 2...
多元線性回歸
多元線性回歸的基本原理和基本計算過程與一元線性回歸相同,但由於自變數個數多,計算相當麻煩,一般在實際中應用時都要借助統計軟體。介紹多元線性回歸的一些基本問題。但由於各個自變數的單位可能不一樣,比如說乙個消費水平的關係式中,工資水平 受教育程度 職業 地區 家庭負擔等等因素都會影響到消費水平,而這些影...
多元線性回歸
from numpy import genfromtxt 用來讀取資料轉化為矩陣 from sklearn import linear model 含有回歸的模型 datapath r c users qaq desktop delivery dummy.csv 路徑 deliverydata ge...