「過擬合」的嚴格定義是什麼?
「過擬合「的嚴格的數學定義是什麼(如果有的話)?我們如何客觀地判斷一個模型是不是「過擬合」了?形如"An overfitted model is a statistical model that contains more parameters than can be justified by the data."的解釋不甚令人滿意。
在Tom M. Mitchell maching learning 一書中,給出了這樣一個overfit定義,雖然不是嚴格的數學定義,供參考。
Definition: Given a hypothesis space , a hypothesis is said to overfit the training data if there exists some alternative hypothesis , such that has smaller error than over the training examples, but has a smaller error than over the entire distribution of instances.
這學期正好在學Learning Theory,這是上課給出的定義。課件在Introduction to Statistical Learning Theory這裡面。
嚴格定義目前應該還沒有。
你想,顧名思義,「過擬合」現象出現的原因在於「過度」地擬合,其反面可以歸結為「稀疏」(sparsity)。換句話說,避免「過擬合」和實現「稀疏」表達語義上看是等價的。而目前,人們在統計理論上對於稀疏性、特別是高維數據中的稀疏性了解的還不夠多。在近十幾二十年中,理論上找到了稀疏性的一些充要條件,但這些充要條件看上去過於複雜且不自然(理想情況是找到足夠簡潔且具有解釋性的條件)。
通俗地來說,過擬合或者稀疏性是大數據時代帶來的獨有的問題,而目前人們對其還沒有足夠深刻的認知,就如同物理學進入量子時代,未來應該還有更成熟的理解。
作用系統的誤差項可分解為殘差項與隨機誤差項,隨著迭代次數的增加使得殘差項趨於0的演算法稱為發生了過擬合。
(本人定義,以前還思考過其中的統計與分布性質,歡迎批評指正)
我不知道你所謂的嚴格的數學定義指的是什麼。你可能想要一種通過形式化的語言描述的定義。那麼 @Shenk 的答案里就提供了一種。
實際上有很多機器學習的問題可以從不同的領域來研究,而在不同的領域對於某個東西的定義都可能不太一樣。因此你可能會碰到很多不同的嚴格的數學定義。其實這個問題簡單在網上簡單一搜就能夠找到很多信息。
例如
https://www.douban.com/note/325443925/www.douban.com過擬合(原因、解決方案、原理) - 雪倫的專欄 - CSDN博客blog.csdn.net用簡單易懂的語言描述「過擬合 overfitting」?www.zhihu.com最後談談我的理解。
我不是很贊同從過多或者過少的參數的角度來描述過擬合。所謂擬合指的是你的模型學習了特徵和標註之間的某種關係,比附y=sin(x)。過擬合最直觀的理解是你的模型所學到的關係在測試集里不存在。一般來說這是因為你的模型學習了訓練集裡面的雜訊。
這個問題跟參數數量的關係是這樣的。對於一類模型,我們一般認為增加參數可以增強模型的學習能力。所以說參數越多,越有能力學習到雜訊。但這並不是說,參數多就一定會學習到雜訊。同時,模型的學習能力也不會無限增強。總的來說,並不是增加參數就會導致過擬合。
其他的回答都還是挺好的。我就舉個簡單的empirical例子好了。
你有一個線性「真模型」,然後往裡扔點簡單的噪音,用一個線性的模型就可以解釋沒有問題了。可是如果你非不滿意,非要fit出來一個完美貼合所有點的模型,得,咱拿個n-1度的polynomial就可以了。但是問題是高維度polynomial fit出來有一個大問題,他的預測能力差。你畫出來就知道了。如果你用同樣的model再generate幾個點出來,polynomial model的predict能力遠低於簡單的線性model. 這個如果用數學語言來說的話,就是polynomial的model variance太大,預測能力差。
很多時候好的model並不准求極高的sample準確率。建立模型的時候都要考慮這個bias(誤差)和variance(波動性,與預測能力反比)的tradeoff。火的不得了的Lasso其實是有誤差的,並不recover真實的參數,但是variance小,預測能力強。而且其實跟真實parameter的差距並不大,所以你拿一個很小的誤差換來了很大的預測能力,所以好使。這就是為什麼近來robust 這麼火,這就是另外一個話題了。
要是真的想讀懂這個東西的理論意義,上面已經有人給出了一個相對來說很漂亮的理論定義了。
這個恐怕沒有標準的數學定義。就好比概論論里的p值,最多出一個公認的0.05顯著性水平,但實際上是人為的產物,無法從概論的其它公理中推導出來。一般來說,評價是不是過擬合主要看測試集的的誤差大小。選擇測試集誤差最小的模型,此時對應了一個訓練集的誤差,如果另一個模型B包含了更多的參數,更小的訓練集誤差,但測試集誤差大於最優值,那就可以認為模型B是過擬合了。
想的太多 主觀貝葉斯 蠢笨的AI的初級自我意識 然後堆疊更多的層
推薦閱讀:
※在利用支持向量機進行分類的時候怎麼選擇合適的核函數?
※除了 arxiv.org, 機器學習與數據挖掘相關在哪可以閱讀比較專業的文獻?
※如何有效的區分和理解RNN循環神經網路與遞歸神經網路?
※人工神經網路與人類神經網路有關係嗎?
※ICCV2017有什麼令人關注的文章?