过拟合解决方法python_《python深度学习》笔记---4.4、过拟合与欠拟合(解决过拟合常见方法)...
《python深度學習》筆記---4.4、過擬合與欠擬合(解決過擬合常見方法)
一、總結
一句話總結:
減小網絡大小
添加權重正則化
添加 dropout 正則化
1、機器學習的根本問題?
優化和泛化之間的對立:機器學習的根本問題是優化和泛化之間的對立。
2、機器學習的根本問題是優化和泛化之間的對立:優化和泛化分別指什么?
訓練數據最佳性能:優化(optimization)是指調節模型以在訓 練數據上得到最佳性能(即機器學習中的學習)
測試數據性能好壞:泛化(generalization)是指訓練好的模型在 前所未見的數據上的性能好壞。
3、訓練開始時,優化和泛化是相關的?
訓練和測試數據損失都小:訓練數據上的損失越小,測試數據上的損失也越小。 這時的模型是欠擬合(underfit)的,即仍有改進的空間,網絡還沒有對訓練數據中所有相關模式建模。
4、解決過擬合的最好方法?
獲取更多數據:為了防止模型從訓練數據中學到錯誤或無關緊要的模式,最優解決方法是獲取更多的訓練 數據。模型的訓練數據越多,泛化能力自然也越好。
【調節模型允許存儲的信息量、對模型允許存儲的信息加以約束】:如果無法獲取更多數據,次優解決方法是 調節模型允許存儲的信息量,或對模型允許存儲的信息加以約束。
迫使模型學習最重要的模式:如果一個網絡只能記住幾個 模式,那么優化過程會迫使模型集中學習最重要的模式,這樣更可能得到良好的泛化。 這種降低過擬合的方法叫作正則化(regularization)
5、防止過擬合的最簡單的方法就是減小模型大小?
減少模型中可學習參數的個數:防止過擬合的最簡單的方法就是減小模型大小,即減少模型中可學習參數的個數(這由層 數和每層的單元個數決定)。
6、網絡模型的容量 ?
模型中可學習參數的個數:在深度學習中,模型中可學習參數的個數通常被稱為模型的容量 (capacity)。
7、深度學習模型真正的挑戰在于泛化?
泛化就是你和測試數據:深度學習模型通常都很擅長擬合訓練數據,但真正的挑戰在于泛化,而不是擬合。
8、欠擬合和過擬合的資源解釋?
欠擬合:容量不足
過擬合:容量過大
9、越大的網絡是不是越好(不是,要選擇合適的網絡)?
【小網絡過擬合慢,過擬合增長慢】:更小的網絡開始過擬合的時間要晚于參考網絡,而且開始過擬合之后,它的性能變差的速度也更慢。
【大網絡過擬合快,過擬合更嚴重】:更大的網絡只過了一輪就開始過擬合,過擬合也更嚴重。其驗證損失的波動也更大。 ,更大網絡的訓練損失很快就接近于零。 網絡的容量越大,它擬合訓練數據(即得到很小的訓練損失)的速度就越快,但也更容易過擬合 (導致訓練損失和驗證損失有很大差異)。
10、奧卡姆剃刀(Occam’s razor)原理?
簡單即好:如果一件事情有兩種解釋,那么最可能正 確的解釋就是最簡單的那個,即假設更少的那個。
【簡單模型比復雜模型更不容易過擬合】:這個原理也適用于神經網絡學到的模型:給定一些訓練數據和一種網絡架構,很多組權重值(即很多模型)都可以解釋這些數據。簡單模 型比復雜模型更不容易過擬合。
11、權重正則化(降低過擬合)?
熵或參數更少:這里的簡單模型(simple model)是指參數值分布的熵更小的模型(或參數更少的模型,比 如上一節的例子)
【強制讓模型權重只能取較小的值】:因此,一種常見的降低過擬合的方法就是強制讓模型權重只能取較小的值, 從而限制模型的復雜度,這使得權重值的分布更加規則(regular)。這種方法叫作權重正則化 (weight regularization),
l1或l2正則化:這種方法叫作權重正則化 (weight regularization),其實現方法是向網絡損失函數中添加與較大權重值相關的成本(cost)。
12、L1 和 L2 正則化 實例?
L1正則化:regularizers.l1(0.001)
同時做L1 和 L2 正則化:regularizers.l1_l2(l1=0.001, l2=0.001)
13、由于這個懲罰項只在訓練時添加,所以這個網絡的訓練損失會 比測試損失大很多?
【懲罰項只在訓練時添加】:l2(0.001) 的意思是該層權重矩陣的每個系數都會使網絡總損失增加 0.001 * weight_ coefficient_value。注意,由于這個懲罰項只在訓練時添加,所以這個網絡的訓練損失會 比測試損失大很多。
14、Hinton dropout靈感之一來自于銀行的防欺詐機制?
成功欺詐銀行需要相互合作:我去銀行辦理業務。柜員不停地換人,于是我 問其中一人這是為什么。他說他不知道,但他們經常換來換去。我猜想,銀行工作人員要想成 功欺詐銀行,他們之間要互相合作才行。這讓我意識到,在每個樣本中隨機刪除不同的部分神 經元,可以阻止它們的陰謀,因此可以降低過擬合。
15、dropout核心思想?
【在層的輸出值中引入噪聲】:其核心思想是在層的輸出值中引入噪聲, 打破不顯著的偶然模式(Hinton 稱之為陰謀)。
【記住偶然模式】:如果沒有噪聲的話,網絡將會記住這些偶然模式。
二、內容在總結中
博客對應課程的視頻位置:
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的过拟合解决方法python_《python深度学习》笔记---4.4、过拟合与欠拟合(解决过拟合常见方法)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: centos非root用户创建用户_Ce
- 下一篇: python3 idle自动补全_给Py