一.監督學習(supervised learning):
輸入中的每個元素都給定了明確的類型,包含:
迴歸問題:給定訓練集,預測輸出爲一些連續值。
分類問題:給定訓練集,預測輸出爲一些離散值。
二.無監督學習(unsupervised learning):
輸入中的每個元素都沒有指定明確類型,使用聚類算法,按照數據的結構將其分爲多個聚類。
cocktail party算法: 對一個屋子中的兩個音源,在不同的位置放置兩個麥克風,通過兩個音源在不同位置麥克風中混合結果不一樣,將兩個音源分開。
三.單變量線性迴歸:
1.評估函數:
評估擬合函數的優劣性,使用公式:
J(θ0,θ1)=(1/2m)*∑i(i=1~m) (hθ(x(i))−y(i))21
hθ(x)爲擬合函數
2.梯度下降:
假設擬合函數爲hθ(x)=θ0+θ1x,建立三維座標系,θ0爲x軸,θ1爲y軸,J(θ0,θ1)爲z軸,建立曲面後,曲面的最低點即爲擬合效果最好的函數,爲尋找這一點,可以一直沿曲面倒數的相反方向移動θ0,θ1,直到收斂。
repeat until convergence:
θj:=θj−α[Slope of tangent aka derivative]
對評估函數求導,該迭代過程變爲:
這些每一次迭代都需要遍歷整個訓練集的算法稱爲batch gradient descent
四.線性代數基礎
向量指的是N*1的矩陣,又稱n維向量
將batch gradient descent中對整個訓練集的計算改爲一次矩陣乘法
假設訓練集中有x=123,234,345,456,預測函數爲h(x)=-40+0.25x
那麼計算∑i(i=1~m)h(xi)的矩陣乘法爲:
|1 , 123|
|1 , 234| * |-40|
|1 , 345| |0.25|
|1 , 456|
得到的4維向量就是答案