4.損失函數的做用

前言:損失函數是機器學習裏最基礎也是最爲關鍵的一個要素,經過對損失函數的定義、優化,就能夠衍生到咱們如今經常使用的機器學習等算法中算法

損失函數的做用:衡量模型模型預測的好壞。

正文:機器學習

首先咱們假設要預測一個公司某商品的銷售量:函數

X:門店數 Y:銷量工具

咱們會發現銷量隨着門店數上升而上升。因而咱們就想要知道大概門店和銷量的關係是怎麼樣的呢?學習

咱們根據圖上的點描述出一條直線:優化

彷佛這個直線差很少能說明門店數X和Y得關係了:咱們假設直線的方程爲Y=a0+a1X(a爲常數係數)。假設a0=10 a1=3 那麼Y=10+3X(公式1)spa

Xblog

公式Yci

實際Y數學

差值

1

13

13

0

2

16

14

2

3

19

20

-1

4

22

21

1

5

25

25

0

6

28

30

-2

咱們但願咱們預測的公式與實際值差值越小越好,因此就定義了一種衡量模型好壞的方式,即損失函數(用來表現預測與實際數據的差距程度)。因而乎咱們就會想到這個方程的損失函數能夠用絕對損失函數表示:

公式Y-實際Y的絕對值,數學表達式:

上面的案例它的絕對損失函數求和計算求得爲:6

爲後續數學計算方便,咱們一般使用平方損失函數代替絕對損失函數:

公式Y-實際Y的平方,數學表達式:L(Y,f(X))= 

上面的案例它的平方損失函數求和計算求得爲:10

以上爲公式1模型的損失值。

假設咱們再模擬一條新的直線:a0=8,a1=4

X

公式Y

實際Y

差值

1

12

13

-1

2

16

14

2

3

20

20

0

4

24

21

3

5

28

25

3

6

32

30

2

公式對比,學習損失函數的意義

公式2 Y=8+4X

絕對損失函數求和:11 平方損失函數求和:27

公式1 Y=10+3X

絕對損失函數求和:6 平方損失函數求和:10

從損失函數求和中,就能評估出公式1可以更好得預測門店銷售。

統計學習中經常使用的損失函數有如下幾種:

(1) 0-1損失函數(0-1 lossfunction):

(2) 平方損失函數(quadraticloss function)

(3) 絕對損失函數(absoluteloss function)

(4) 對數損失函數(logarithmicloss function)或對數似然損失函數(log-likelihood loss function)

損失函數越小,模型就越好。

總結:

損失函數能夠很好得反映模型與實際數據差距的工具,理解損失函數可以更好得對後續優化工具(梯度降低等)進行分析與理解。不少時候遇到複雜的問題,其實最難的一關是如何寫出損失函數。

相關文章
相關標籤/搜索