一. 前言

本文繼續《機器學習(一)——單變數線性迴歸》的例子,介紹多維特徵中的線性迴歸問題,並通過矩陣計算的方法優化機器學習的計算效率。

二. 模型表示

現在我們對房價預測模型增加更多的特徵值,如房間數、樓層、房屋年限等,構成一個多變數的模型,模型中的特徵為(x1,x2,...,xn)。
(說明: 在現實機器學習的問題中往往具有幾百甚至上萬維的特徵值的模型)

這裡寫圖片描述

2.1 變數定義

下面我們引入新的變數(其餘變數與單變數線性迴歸相同):
- n 代表特徵的數量
- x(i)代表第 i 個訓練例項,是特徵矩陣中的第 i 行,是一個向量(vertor)。如上圖的
x(2)=14163240
- x(i)j代表特徵矩陣中第 i 行的第 j 個特徵,也就是第 i 個訓練例項的第 j 個特徵。如上圖中x(2)3=2

2.2 模型定義

2.2.1 假設函式

多變數的假設函式hθ(x)表示為:

hθ(x)=θ0+θ1x1+θ2x2+...+θnxn(1)

此公式中有n+1個引數和n個變數,為公式簡潔化,引入x0=1,同時定義兩個向量:
x=x0x1x2...xnθ=θ0θ1θ2...θn

則公式可轉化為:hθ(x)=θTx,其中上標T表示矩陣的轉置。

2.2.2 代價函式

與單變數線性迴歸類似,多變數線性迴歸中代價函式表示為:

J(θ0,θ1,...,θn)=12mi=1m(hθ(x(i))y(i))2(2)

其中:hθ(x)=θTx=θ0x0+θ1x1+θ2x2+...+θnxn

三. 演算法訓練

3.1公式推導

與單變數線性迴歸問題一樣,我們需要找到使得代價函式最小的一系列引數。同樣我們可以使用梯度遞降法來最小化代價函式:

Rep}eat{θj:=θjαθjJ(θ0,θ1,...,θn)(3)

即: