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

欠拟合

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

解决欠拟合的方法

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

过拟合

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

如何判断过拟合

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

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

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

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

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

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

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

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

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

相关推荐

Sigma429:极兔啊,薪资开的巨低,还在上海,索性不做笔试了
点赞 评论 收藏
分享
点赞 评论 收藏
分享
10-29 16:42
门头沟学院 Java
1.今天什么国标的公司打电话约面试,还得准备ppt,好麻烦,网上查薪资一般,打算拒了,不面了2.字节又复活了,什么安全开发,也不知道怎么样,面一面试试吧,还是挺想去字节的,但好难,随缘吧所以今天没面试
嵌入式的小白:面试前可以好好准备下 1.看看你投递的岗位的岗位描述,分析下是哪个业务线,同使要罗列他们描述中提到的技术点 2.根据1中的两点准备 3.岗位描述中应该还有语言要求,这个刷刷八股,要是对自己语言能力很有把握,那就不用看这点了 4.找下你简历中项目部分,看有没有和岗位描述中技术点重合的,这种在面试提到项目时,是高概率问题 好好准备,祝你面试顺利
我的求职进度条
点赞 评论 收藏
分享
评论
4
19
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务