線性回歸是利用數理統計中回歸分析,來確定兩種或兩種以上變數間相互依賴的定量關係的一種統計分析方法,運用十分廣泛。其表達形式為y = w'x+e,e為誤差服從均值為0的正態分佈。
回歸分析中,只包括乙個自變數和乙個因變數,且二者的關係可用一條直線近似表示,這種回歸分析稱為一元線性回歸分析。如果回歸分析中包括兩個或兩個以上的自變數,且因變數和自變數之間是線性關係,則稱為多元線性回歸分析。
線性回歸演算法是機器學習中的基礎演算法,所以對於想要學習機器學習的讀者來說,最好完全理解該演算法。
假設,在銀行中申請行用卡的額度與如下兩個引數有關,即年齡和工資,有一申請人的資料如下圖,那麼知道乙個人的年齡和工資該如何**出他所能申請信用卡的額度呢?
對於乙個線性關係,我們使用y=ax+b表示,但在這種關係中y只受乙個x的影響,二者的關係可用一條直線近似表示,這種關係也叫一元線性回歸。而在本例中,設額度為h,工資和年齡分別為x1和x2,則可以表示成下式,
,在這種關係中結果收到多個變數的影響,稱為多元線性回歸分析。
我們將上式中的θ和x分別表示成兩個一維矩陣[θ0 θ1 θ2]和[x0 x1 x2],則可將上式化為
(令x0=1)。
而實際結果不可能完全符合我們的計算結果,所以兩者之間必定存在誤差,假設對於第i個樣本,存在如下關係,
,其中為真實誤差。
誤差獨立並且具有相同的分布(通常認為是均值為0的高斯分布)。
所以可以得到下式:
那麼,如果存在大量的樣本,我們就可以通過
和做關於θ的引數估計,
求似然函式如下:
對上式求對數:
對上式求導,使其值為0,便可求得θ的最大似然估計。
在上式中,被標記的兩部分都是常數,前一部分求導後為零,後一部分為乙個因數,不會影響最終結果。所以,對於最終結果,只需讓未被標記的部分求導後為0。所以使:
,將上式化簡,並對θ求偏導:
將求導的結果設值為0,便可求得θ的最大似然估計(最小二乘法),
得到θ後,我們即通過樣本訓練出了乙個線性回歸模型,便可使用
對結果未知的資料進行**。
ps: 讀者只需理解改演算法的推導過程即可,對於資料的計算,程式設計解決即可,無需手動計算(對於多維矩陣的計算量相當大,而且很容易算錯 ( ̄▽ ̄)")。
機器學習演算法 線性回歸
線性回歸應該算機器學習演算法裡面最基礎的演算法了,分別用作回歸 y值為連續值 和分類 y值為離散 在學習線性回歸的過程中,有很多機器學習的概念和方法是在這時候提出的。在現實中變數之間的關係,是有確定的和非確定的。確定關係指的是變數之間可以使用函式關係式表示,非確定的部分我們可以用概率分布來表示,如乙...
機器學習演算法 線性回歸
樣本特徵只有乙個的線性回歸問題,為簡單線性回歸。樣本特徵有多個的線性回歸問題,為多元線性回歸。兩個變數之間的關係是一次函式關係的 圖象是直線,這樣的兩個變數之間的關係就是 線性關係 如果不是一次函式關係的 圖象不是直線,就是 非線性關係 線性回歸演算法將無數的訓練集資料放在乙個座標系中,以座標系的乙...
機器學習演算法 線性模型 線性回歸
線性回歸 是試圖學得乙個線性模型盡可能準確地 實值輸出標記。西瓜書 個人通俗理解就是簡單線性回歸找到一條直線盡可能到給出的樣本點距離要小,多維則變成找乙個超平面。如上圖 3.1 3.2 均方誤差最小的直線,均方誤差即學習器到真實值的距離的平方和,來刻畫擬合直線到樣本點的差距 一元回歸不需要用到矩陣求...