機器學習-線性迴歸
1.線性迴歸如何產生
有一堆離散的數據,它們是描述的是同一類問題。對這些數據我們用函數來擬合這些數據。並且該函數能讓誤差達到一個最小值。這時,我們便稱該函數爲一個模型,使用該模型,我們可以輸入未知的參數然後得到一個預測值,一般來說這些值都比較接近真實值。很明顯,我們的任務就是求出該函數
2.求解線性迴歸
2.1似然函數
1.假設已存在該函數
2.該數據集的真實數據可表示爲
ε表示誤差,一般來說,我們認爲如果一個這些誤差服從高斯分佈,那麼該模型就是一個比較不錯的模型。
至於爲什麼,看看高斯分佈就明白了
3.高斯分佈公式爲
4.將2帶入3
5.此時引入一個似然函數的概念,即
如何理解這個似然函數呢,開頭我們就說了,我們只是假設該模型已存在即θ值已確定做的推導,我們最終要解決的問題還是確定這個θ值。
似然函數公式上的理解:高斯分佈表示的是我們誤差分佈的概率,我們力求誤差爲0,概率最大爲1。所以我們力求總和最大,來保證誤差最小。很簡單。
似然函數更普遍的理解:目前,θ值不確定,我們關於ε的高斯模型也是一個不確定的。所以我們需要選擇一個高斯模型,使得在該模型下,我們的預測結果是正確結果的可能性最大。那麼我們便將所有的預測概率做一個連乘,求目標函數的最大值。
關於這個似然函數的作用,撿一個例子舉一下。對於對於一個正反均勻的硬幣,連續擲10次這個問題,我們可以問它連續10次都是正面的概率是多少。而對於一枚硬幣連續擲10次都是正面,我們求它正反均勻的概率是多少。
似然函數便是解決這個問題。
2.2目標函數
1.原始似然函數不方便求解,因爲是連成形式,觀察函數原型,變量處於exp,所以我們可以直接取對數進行轉換。
2.目標函數求最小值
根據矩陣的一些變換公式化簡求導。不想寫latex表達式,太麻煩了。
最終得到
能夠直接給出θ的值
所以線性迴歸是迴歸算法中很特殊的一種。