R方公式
在機器學習中,首先定義一個樣本\((x_i,y_i)\),預測的y為\(\hat{y_i}\)
則有:
- 名詞解釋
\(SS_{tot}\) 其中tot表示 total sum of squares ,總的平方和,總的平方和表示真實值的一個離散程度。
\(SS_{reg}\) 其中reg表示 regression sum of squares, also called the explained sum of squares,回歸平方和,又稱 顯示平方和;表示預測值與真實平均值之間的一個離散程度。
\(SS_{res}\) 其中res表示The sum of squares of residuals, also called the residual sum of squares,殘差平方和;表示真實值與預測值之間的一個離散程度。
R方解釋
R方是Coefficient of Determination,也叫R Squared,一般地,在機器學習中我們用R Squared評價我們訓練模型的合理性,大白話講就是模型 模型參數啥的都搞出來了,但是這個模型到底好不好呢?
我們先選擇一個簡單的模型,然后讓我們的訓練的模型和這個簡單的模型比較,如果,我們費了好大力訓練的模型比這簡單模型效果都差,那這個我們這個模型本選擇就不好,否則,這模型可能還不錯吧。舉例來說,我們根據一些特征去預測房價,我們不妨直接把這些房子的平均值作為預測值(這個平均值稱為 均值模型,容易得到),然后我們利用一個復雜機器學習的算法
去預測房價(訓練的模型)。根據R方的公式,\(SS_{res}\)表示我們的訓練的模型的一個偏離真實值得情況,\(SS_{tot}\)表示均值模型(我們隨便選的一個簡單模型)偏離真實值得情況,如果\(SS_{res}\) 比上\(SS_{tot}\)比1還要大很多,說明我們訓練的模型垃圾,比隨便搞的一個均值模型效果都差,那還費力氣圖個啥,這個訓練的模型本身就不合適當前的問題,若\(SS_{res}\) 比上\(SS_{tot}\) 在(0,1)之間,恩,說明我們模型至少比隨便選的模型效果好,還不錯。
R方含義
經過以上R方的解釋,不難得到以下結論:
- 等於1。理想狀況,該模型對所有的真值預測准確,沒有偏差。潑個冷水,如果某篇文章里出現了R方=1,要么是問題過於簡單沒有研究價值,要么是模型過於復雜,對數據進行了過度擬合。
- 小於1大於0。這是常見狀況,表明該模型的擬合水平比均值模型好。
- 等於0。該模型的擬合水平接近於均值模型。該模型沒有價值。
- 小於0。該模型的擬合水平不如均值模型。同樣,該模型更沒有價值。
參考文獻
[1] https://en.wikipedia.org/wiki/Coefficient_of_determination
[2] https://zhuanlan.zhihu.com/p/159000427
[3]https://www.zhihu.com/question/32021302/answer/739464752 (參考 當我沉默的時候 用戶的回答)
