如何避免Overfitting

Overfitting是在执行任何模型的时候我们都要注意的问题,今天就来聊聊overfitting是什麽

Overfitting vs. underfitting

任何资料都同时包含着"signal"和"noise",我们想建立一个模型来找出"signal"并预测目标,但如果模型过度复杂,就会把"noise"当成"signal",产生overfitting的问题。这里可以想像成当我们在学习新的东西的时候,如果吸收理解就可以举一反三(理想模型),但如果完全硬背,虽然可以根据记下的内容去正确的回答问题,但会无法应用在其他地方(overfitting)。

Underfitting则发生在当我们建立的模型过於简单,模型无法透过所知来预测(也可以想成学得太少根本无法应用)。ML中有一个词语叫做“bias-variance tradeoff”,其实就是在描述overfitting和underfitting的对比:当今天模型过度简单(想像基本的linear regression),那预测出来的结果会很单一,导致bias大以及variance小;反之若模型过度复杂,那预测的结果bias小以及variance大。
https://ithelp.ithome.com.tw/upload/images/20210928/20142004FErAwce5mj.png

如何避免Overfitting

  1. cross validation
  2. remove features
  3. more data!
  4. early stopping(主要用在deep learning)
  5. regularization
  6. ensembling

references:
https://elitedatascience.com/machine-learning-iteration#micro


<<:  自动化测试,让你上班拥有一杯咖啡的时间 | Day 14 - 取得 ESLint 支援

>>:  D20 - TiDB数据效验

[DAY 30] 未完的终点是下一场的起点 : 总结以及各式好用连结

前言 总算来到第30天啦 XDDDD 用废文开始就用废文结束吧 : 不知不觉已经来到了最後一章啦,这...

【Day00】系列文概述 & 目录

连载动机 藉由 30 天笔记, 将学习 React 相关的知识整理起来, 以便日後回头参照。 主要参...

Day 14 并非是一成不变的!

很多事决非一成不变的,相反地,正如天空和海面,因风浪而起变化一样,最终也会因情况和时间的不同而产生变...

Day04 指定插件所支援的平台

指定插件所支援的平台 插件可以通过向pubspec.yaml中的platformsmap 添加key...

Alpine Linux Porting (一点七?)

缓慢的进展似乎有了成效。 在修正 musl port的 arch/riscv32/bits/sysc...