防止过拟合的一些方法
L1 loss
L2 loss
early stopping
数据增强
- 使用一些数据增强的方法(resize,crop,warp….),增加数据量,增加模型训练结果的泛化能力
dropout
- 在神经网络训练中,随机抑制特定网络层的一些神经元,相当于引入随机性,这可以增加系统的鲁棒性。
集成方法
- 在机器学习中常用,将不同的模型进行融合,bagging,boosting等方法。
batch normalization
- 这个操作主要是为了使所有数据的分布都是
N(0,1)
分布的,减少了
Internal convariate shift
,可以加快训练过程;但是这种方法会导致网络学到的特征被破坏,因此在BN中,又通过学习的方法引入两个参数,对归一化的数据进行变换,得到最终的输出。具体的公式变换如下
μB=1m∑i=1mxiσ2B=1m∑i=1m(xi−μB)2x^i=xi−μBσ2B+ε√yi=γx^i+β=BNγ,β(xi)
参考链接