天天看點

目标函數(Objective Function)目标函數(Objective Function)

目标函數(Objective Function)

目标函數(Objective Function)目标函數(Objective Function)

上面三個函數依次為 f 1 ( x ) , f 2 ( x ) , f 3 ( x ) f_1(x),f_2(x),f_3(x) f1​(x),f2​(x),f3​(x),我們想用這三個函數來拟合Price,Price的真實值記為 Y Y Y。

那麼損失函數(loss function) 或者叫 代價函數(cost function) 記作:

L ( Y , f ( X ) ) = ( Y − f ( X ) ) 2 L(Y,f(X))=(Y-f(X))^2 L(Y,f(X))=(Y−f(X))2

損失函數用來表示模型與真實值拟合的程度,損失函數值越小,模型拟合度越好。

風險函數是損失函數的期望, f ( X ) f(X) f(X)關于訓練集的平均損失稱作經驗風險(Empirical Risk),即:

1 N ∑ i = 1 N L ( y i , f ( x i ) ) \frac 1N \sum_{i=1}^N L(y_i, f(x_i)) N1​i=1∑N​L(yi​,f(xi​))

從經驗風險來看,顯然 f 3 ( x ) f_3(x) f3​(x)的經驗風險最小,對曆史資料的拟合最好,但是因為它過度學習曆史資料,導緻它在真正預測時效果會很不好,這種情況稱為過拟合(over-fitting)。

是以引出了結構風險,定義函數 J ( f ) J(f) J(f)表示模型的複雜度,在機器學習中也叫正則化(Regularization),常用的有 L 1 , L 2 L_1,L_2 L1​,L2​範數。

為了使經驗風險和結構風險最小化,于是得到最終的優化函數:

min ⁡ 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) \min \frac 1N \sum_{i=1}^N L(y_i, f(x_i)) + \lambda J(f) minN1​i=1∑N​L(yi​,f(xi​))+λJ(f)

即最小化經驗風險和結構風險,這個函數就被稱為目标函數。

可以看出,圖中 f 1 ( x ) f_1(x) f1​(x)結構風險最小(模型最簡單),但經驗風險最大(對曆史資料拟合最差); f 3 ( x ) f_3(x) f3​(x)經驗風險最小,但結構風險最大(模型最複雜);而 f 2 ( x ) f_2(x) f2​(x)恰好達到了二者的良好平衡,應當是最優解。

繼續閱讀