(轉)機器學習:偏差處理(2)
下面是處理偏差和方差問題最簡單的形式:
如果具有較高的可避免偏差,那麼加大模型的規模(例如通過新增層/神經元數量來增加神經網路的大小)。
如果具有較高的方差,那麼向訓練集增加資料。
如果你可以加大神經網路的規模且無限制地增加訓練集資料,那麼在很多學習問題上都可以做的很好。
實際上,加大網路的模型規模終將導致你遇到計算力問題,因為訓練大的模型很慢。另外你也有可能會耗盡獲取更多訓練資料的能力。(即使在網上,也只有有限數量的貓圖片)
不同的模型架構(例如不同的神經網路架構)對於你的問題將有不同的偏差/方差值。近期不少深度學習研究已經開發出很多新的模型架構。所以,如果你在使用神經網路,學術文獻可能會是一個很好的靈感來源,在 Github 上也有很多較好的開源實現。但嘗試新架構的結果要比簡單地加大模型規模和新增資料的形式更難以預測。
加大模型的規模通常可以減少偏差,但也可能會增加方差和過擬合的風險。然而這種過擬合問題通常只在你不使用正則化技術的時候出現。如果你的演算法含有了一個精心設計的正則化方法,通常可以安全地加大模型的規模,而不會增加過擬合風險。
假設你正在應用深度學習,使用了 L2 正則化和 dropout 技術,並且設定了在開發集上表現最好的正則化引數。如果你加大模型規模,演算法的表現往往會保持不變或提升;它不太可能明顯地變差。避免使用更大模型的唯一原因就是這將使得計算代價變大。
如果你的學習演算法存在著很高的可避免偏差,你可能會嘗試下面的技術:
加大模型規模(例如神經元/層的數量):這項技術能夠使演算法更好地擬合訓練集,從而減少偏差。當你發現這樣做會增大方差時,加入正則化,這可以抵消方差的增加。
根據誤差分析結果修改輸入特徵:假設誤差分析的結果鼓勵你建立額外的特徵,從而幫助演算法消除某個特定類別的誤差。(我們會在接下來的章節深入討論這個話題。)這些新的特徵對處理偏差和方差都有所幫助。理論上,新增更多的特徵將增大方差;然而當你發現這種情況時,加入正則化,這可以抵消方差的增加。
減少或者去除正則化(L2 正則化,L1 正則化,dropout):這將減少可避免偏差,但會增大方差。
修改模型架構(比如神經網路架構)使之更適用於你的問題:這項技術將同時影響偏差和方差。
有一種方法並不能奏效:
新增更多的訓練資料:這項技術可以幫助解決方差問題,但它對於偏差通常沒有明顯的影響。
相關文章
- 機器學習之分類:預測偏差機器學習
- 機器學習 第2篇:資料預處理(缺失值)機器學習
- 【火爐煉AI】機器學習015-如何處理樣本數偏差較大的資料集AI機器學習
- 吳恩達機器學習系列14:偏差與方差吳恩達機器學習
- Delphi資料壓縮處理(2) (轉)
- 機器學習一:資料預處理機器學習
- 機器學習中偏差bias和方差variance區別機器學習
- 一文讀懂機器學習中的模型偏差機器學習模型
- 機器學習筆記---資料預處理機器學習筆記
- 幾種機器學習演算法的偏差以及防範機器學習演算法
- 機器學習導圖系列(1):資料處理機器學習
- 機器學習工作坊 - 自然語言處理機器學習自然語言處理
- 異常處理2
- 機器學習《Machine Learning》筆記--偏差(Bias)和方差(Variance)機器學習Mac筆記
- webgl 影像處理2---影像畫素處理Web
- 使用AD+處理崩潰和掛起(2) (轉)
- C與C++中的異常處理2(part2) (轉)C++
- 機器學習 第3篇:資料預處理(使用插補法處理缺失值)機器學習
- 異常處理 (轉)
- 機器學習中資料缺失的處理及建模方法機器學習
- 機器學習:探索資料和資料預處理機器學習
- 你真的理解機器學習中偏差 - 方差之間的權衡嗎?機器學習
- 海量資料處理2
- Mysql故障處理2則MySql
- 大學書信選2(關於自然語言處理) (轉)自然語言處理
- 機器學習處理流程、特徵工程,模型設計例項機器學習特徵工程模型
- 非平衡資料集的機器學習常用處理方法機器學習
- 海量資料處理 (轉)
- 異常處理方法 (轉)
- 【轉】Oracle 異常處理Oracle
- JSP Session處理 (轉)JSSession
- mysql事務處理(轉)MySql
- c++ 異常處理(2)C++
- Oracle Scheduler(2)呼叫批處理Oracle
- SP2-0618和_SP2-0611錯誤處理(轉)
- 如何用機器學習處理二元分類任務?機器學習
- [譯]如何處理機器學習中的不平衡類別機器學習
- 玩轉 SpringBoot2.x 之整合 thumbnailator 圖片處理Spring BootAI