當前位置:
首頁 > 知識 > 大白話解釋模型產生過擬合的原因!

大白話解釋模型產生過擬合的原因!

大白話解釋模型產生過擬合的原因!



今天郭江師兄在實驗室講解了全體機器學習會第一章的知識,大家討論了一下過擬合的知識,這裡我根據自己的理解,整理了一下原因,力求同最通俗的語言來描述,可能不是太嚴謹,但是總體思想能保證正確!


一、過擬合的概念?


首先我們來解釋一下過擬合的概念?

過擬合就是訓練出來的模型在訓練集上表現很好,但是在測試集上表現較差的一種現象!下圖給出例子:

大白話解釋模型產生過擬合的原因!



我們將上圖第三個模型解釋為出現了過擬合現象,過度的擬合了訓練數據,而沒有考慮到泛化能力。在訓練集上的準確率和在開發集上的準確率畫在一個圖上如下

大白話解釋模型產生過擬合的原因!



從圖中我們能夠看出,模型在訓練集上表現很好,但是在交叉驗證集上表現先好後差。這也正是過擬合的特徵!


二、模型出現過擬合現象的原因


發生過擬合的主要原因可以有以下三點:


數據有雜訊

訓練數據不足,有限的訓練數據


訓練模型過度導致模型非常複雜


下面我將分別解釋這三種情況(這裡按自己的理解解釋,歡迎大家交流):


(1)數據有雜訊


為什麼數據有雜訊,就可能導致模型出現過擬合現象呢?


所有的機器學習過程都是一個 search 假設空間的過程!我們是在模型參數空間搜索一組參數,使得我們的損失函數最小,也就是不斷的接近我們的真實假設模型,而真實模型只有知道了所有的數據分布,才能得到。


往往我們的模型是在訓練數據有限的情況下,找出使損失函數最小的最優模型,然後將該模型泛化於所有數據的其它部分。這是機器學習的本質!


那好,假設我們的總體數據如下圖所示:

大白話解釋模型產生過擬合的原因!


(我這裡就假設總體數據分布滿足一個線性模型 y = kx+b, 現實中肯定不會這麼簡單,數據量也不會這麼少,至少也是多少億級別,但是不影響解釋。反正總體數據滿足模型 y)


此時我們得到的部分數據,還有雜訊的話,如圖所示:

大白話解釋模型產生過擬合的原因!



(紅色數據點為雜訊)


那麼由上面訓練數據點訓練出來的模型肯定不是線性模型(總體數據分布下滿足的標準模型),比如訓練出來的模型如下:

大白話解釋模型產生過擬合的原因!



那麼我拿著這個有雜訊訓練的模型,在訓練集合上通過不斷訓練,可以做到損失函數值為 0,但是拿著這個模型,到真實總體數據分布中(滿足線性模型)去泛化,效果會非常差,因為你拿著一個非線性模型去預測線性模型的真實分布,顯而易得效果是非常差的,也就產生了過擬合現象!


(2)訓練數據不足,有限的訓練數據

當我們訓練數據不足的時候,即使得到的訓練數據沒有雜訊,訓練出來的模型也可能產生過擬合現象,解釋如下:


假設我們的總體數據分布如下:

大白話解釋模型產生過擬合的原因!



(為了容易理解,假設我們的總體數據分布滿足的模型是一個二次函數模型)


我們得到的訓練數據由於是有限的,比如是下面這個:

大白話解釋模型產生過擬合的原因!



(我只得到了 A,B 兩個訓練數據)


那麼由這個訓練數據,我得到的模型是一個線性模型,通過訓練較多的次數,我可以得到在訓練數據使得損失函數為 0 的線性模型,拿這個模型我去泛化真實的總體分布數據(實際上是滿足二次函數模型),很顯然,泛化能力是非常差的,也就出現了過擬合現象!

(3)訓練模型過度導致模型非常複雜


訓練模型過度導致模型非常複雜,也會導致過擬合現象!這點和第一點倆點原因結合起來其實非常好理解,當我們在訓練數據訓練的時候,如果訓練過度,導致完全擬合了訓練數據的話,得到的模型不一定是可靠的。


比如說,在有雜訊的訓練數據中,我們要是訓練過度,會讓模型學習到雜訊的特徵,無疑是會造成在沒有雜訊的真實測試集上準確率下降!


好了,到這裡本文要講的內容已經講完了,我根據自己的理解,試圖通俗的講解產生過擬合的原因,希望能夠讓更多的人有一個直觀的理解~ 真心希望對大家有幫助,歡迎大家指錯交流~


註:本文原作者憶臻,原載於作者的知乎專欄


研習社特供福利ID:OKweiwu


開發者專場 | 英偉達深度學習學院現場授課


英偉達 DLI 高級工程師現場指導,理論結合實踐,一舉入門深度學習!


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 唯物 的精彩文章:

如何看待 Kotlin 成為 Android 官方支持的開發語言?一線開發者這樣說
入門深度學習必知的知識點:視覺的深度學習與網路
請問,你真的了解區塊鏈應用?

TAG:唯物 |

您可能感興趣

脊髓病變產生的原因?
解答這個大家困惑已久的問題!為什麼心、腦容易產生血栓?
閉口產生的原因 六大因素你都了解嗎
什麼導致腹脹?氣體產生過多和氣脹的原因?導致打嗝的原因?什麼原因引起脹氣?
解讀:緬甸果敢問題是怎麼產生的?
腎病醫生:了解蛋白產生的3大原因,到底有什麼好處?
廣島事件:原子彈爆炸後竟產生大量黑影?真相讓人細思極恐
科普:颶風是如何產生的?它是颶風產生的最根本原因!
信解合一,就產生智慧
腸易激綜合征,真煩惱?產生的原因?21種「預防和緩解」的方法
和獅子座產生矛盾,應該如何化解?
這種化合物很「調皮」,服用劑量越少,其產生的毒性越大
離心風機雜訊產生的原因是什麼?
幫你認識腎臟的功能,了解腎病產生的原因——基礎篇
可解釋的人工智慧:讓機器解釋自己,減少演算法產生的偏見
科普怎麼扎丸子頭好看 避免產生髮型問題
引力的本質是什麼?是引力子產生的還是空間彎曲產生的?
解答酸性皮膚的產生原因 讓你促進身體健康
文化是怎樣產生的?
為什麼人類天生會對屍體產生恐懼心理?專家是這麼解釋的