算法岗常见面试题(三):欠拟合和过拟合

欠拟合

欠拟合是指模型不能在训练集上获得足够低的误差,即,模型在训练集上表现很差,没有学习到数据背后的规律。

解决欠拟合的方法

  • 添加新特征,挖掘“上下文特征”、“组合特征”
  • 增加模型复杂度
  • 减少正则化系数

过拟合

训练误差和测试误差之间的差距太大,即,模型在训练集上表现很好,但在测试集上表现很差,模型泛化能力差。

如何判断过拟合

可以通过查看训练集误差和验证集误差的方式查看过拟合,如果训练集误差和验证集误差差距大,训练集误差在下降,而验证集误差在上升,则可能是过拟合了。

解决过拟合的方法(大华一面)

  1. 交叉验证,通过交叉验证得到较优的模型参数
  2. 特征选择,减少特征数或者使用较少的特征组合,对于按区间离散化的特征,增大划分区间。(当样本特征数很多,而样本数很少的时候,很容易陷入过拟合。可以以多元方程式为例,样本少时,如果方程式中的参数越多,越容易过拟合。)
  3. 正则化,常用的有L1、L2正则。而且L1正则化可以自动进行特征选择;如果有正则项可以考虑增大正则项参数lambda。
  4. 增加训练数据可以有效的避免过拟合。减少了噪声的影响。
  5. bagging,将多个弱分类器bagging一下效果会更好,比如随机森林等。
  6. 随机森林:由多个决策树组成,每个决策树不相同。
  7. 随机:
  8. 样本随机 - 构建决策树时使用重采样;
  9. 特征随机 - 不会使用数据的全部特征。
  10. 优点:善于处理特征遗失数据、不平衡数据、高维数据
  11. 降低模型复杂度。

正则化为什么可以解决过拟合

主要原理是通过引入权重参数来限制模型复杂度,从而提高模型的泛化能力。正则化可理解为是一种“罚函数法”,即对不希望得到的结果施以惩罚,从而使得优化过程趋向于希望目标。

为什么提前停止可以解决过拟合问题

【AI学习之深度学习系列---提前终止_laojiangseu的博客-CSDN博客_提前终止算法】

提前终止是指:在测试误差开始上升之前,就停止训练,即使此时训练尚未收敛(即训练误差未达到最小值)。

#算法面经#
全部评论
你大华是啥时候面试的
点赞 回复 分享
发布于 2023-03-26 12:18 湖北
楼主你应该就是做算法岗的吧
点赞 回复 分享
发布于 2023-03-26 12:42 浙江

相关推荐

找不到工作死了算了:没事的,雨英,hr肯主动告知结果已经超越大部分hr了
点赞 评论 收藏
分享
和蔼:在竞争中脱颖而出,厉害! 但是有一个小问题:谁问你了?😡我的意思是,谁在意?我告诉你,根本没人问你,在我们之中0人问了你,我把所有问你的人都请来 party 了,到场人数是0个人,誰问你了?WHO ASKED?谁问汝矣?誰があなたに聞きましたか?누가 물어봤어?我爬上了珠穆朗玛峰也没找到谁问你了,我刚刚潜入了世界上最大的射电望远镜也没开到那个问你的人的盒,在找到谁问你之前我连癌症的解药都发明了出来,我开了最大距离渲染也没找到谁问你了我活在这个被辐射蹂躏了多年的破碎世界的坟墓里目睹全球核战争把人类文明毁灭也没见到谁问你了
点赞 评论 收藏
分享
3 16 评论
分享
牛客网
牛客企业服务