什么是过拟合?
为了得到一致假设而使假设变得过度严格称为过拟合。过拟合的模型一般对训练数据表现很好,而对测试数据表现很差。
如何解决过拟合问题?
- early stopping:可以设定一个迭代截断的阈值,到了这个阈值迭代终止;也可以设定两次迭代之间的accuracy提高很小的时候,停止迭代。
- 数据集扩增:从数据源采集更多数据;复制原有数据并增加随机噪声;重采样;根据当前数据集估计数据分布参数,使用该分布产生更多数据。
- L1 L2正则化:使整体cost取较大值,避免某些特征权重过大。L1: 0附近参数趋于0,降低模型复杂度,防止过拟合;0处不可求导,w=0时,用未经正则化的更新方程来更新;L2: 使参数w变小加剧,更小的w意味着更低的模型复杂度。
- Dropout:随机删除一些隐藏层神经元,使这些单元不更新。