這學期打算把機器學習和深度學習
什麼是迴歸算法
- 迴歸算法是一種有監督算法(有一個x和y的對應關係)
- 迴歸算法是一種比較常用的機器學習算法,用來建立“解釋”變量(自變量X)和觀
測值(因變量Y)之間的關係;從機器學習的角度來講,用於構建一個算法模型(函
數)來做屬性(X)與標籤(Y)之間的映射關係,在算法的學習過程中,試圖尋找一個 函數
使得參數之間的關係擬合性最好。 - 迴歸算法中算法(函數)的最終結果是一個連續的數據值,輸入值(屬性值)是一個d 維度的屬性/數值向量**
通俗的理解就是:根據已經有的數據,這些數據可能是構造的線性函數可能是一維,可能是二維,可能是多維。用這些數據構造函數,最終求出函數的係數。
用一個例子說明線性迴歸解決的問題:
房價的預測
一、函數的假設
先給出一個圖,房屋面積和租賃價格有如下的關係。
假設,房屋的面積和租賃價格滿足一元一次函數y=ax+b(當然根據因變量決定),房屋面積爲x,預測的房價是y,如果我們能求出a和b就能得出這個一次函數,我們最終的目的是求這個函數的係數。
從圖中可看出,我們要找的是紅色的先,而實際值分佈在實現的兩側,規定:實際值(藍色點)和紅色虛線的距離就是誤差。
假如房屋的租賃價格同時受到房屋面積和房間數量的影響,我們可以假設h(x)=a+bx1+cx2;這是我們所求的就是一個平面,實際值分佈在這個平面的兩側,實際值和平面的距離即爲誤差。
如下面圖所示:
下面我們假設由多個因素影響租賃價格,假設函數爲:
我們最終目的是計算出值。
三、似然函數
上式可寫成,
誤差是獨立同分布的,服從均值爲0,方差爲某定值的高斯分佈。
原因是:中心極限定理
實際問題中,很多隨機現象可以看做衆多因素的獨立影響的綜合反映,往往服從正太分佈。
由於:服從標準正太分佈,所以可寫成如下形式:
對數似然、目標函數及最小二乘
損失函數的求解過程
分析上邊的最小二乘法結果,發現等式中有矩陣求逆是,必須保證矩陣的行列式大於零。在我們得到的等式中不能保證這一點,所以對結果進行進一步分析。
最小二乘法的使用要求矩陣 是可逆的;爲了防止不可逆或者過擬合的問題
存在,可以增加額外數據影響,導致最終的矩陣是可逆的:
至此,線性迴歸的理論推導完畢。
函數代碼
見文件。