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

欠拟合

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

解决欠拟合的方法

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

过拟合

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

如何判断过拟合

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

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

  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 湖北

相关推荐

压力很大,面试官全程高压,问的问题不难,但是没有任何反馈,很慌张,也无算法。实习问了20分钟,一直问我你们做的有什么用,总时长一小时1.学校都有什么课程2.spring的ioc原理以及优点3.除了解耦还知道什么?4.springboot与spring区别,二者的源码看过没?Tomcat了解嘛?有没有具体看过5.spring的bean,面试官一直在重复一个思想问我懂不懂,完全没听过6.mybatis是干什么的?ibatis用过没?平常怎么写SQL?完全不写嘛?7.设计一个分布式双十一秒杀系统(前端,网关,缓存,数据库防超卖全设计)8.怎么做限流9.缓存与数据库一致性,你做异步要用户等你嘛?10.负载均衡怎么做11.多数据中心还是单数据中心,如果出现没卖完怎么做(到这完全不会了,面试官直接说换个话题吧)12.平常读书吗?13.上过哲学课嘛?14.兴趣爱好有没有15.对ai的看法16.来深圳有问题嘛?17.为什么不考研18.上大学带给了你什么?你提升在哪里,有没有具体的例子?反问:1.现在手机都有应用市场,应用宝怎么盈利?除了手机应用市场还是有人用,现在在做跨端,微软都有合作,之后会进军mac,主要做游戏,腾讯本身就是游戏大户。2.面试表现?整体评价一下会给到反馈。面完直接变HR面,今天HR面后,已经转为录用评估了,来牛客许个愿,暑期现在还没什么面试,希望能拿个offer之后再考虑要不要留在手子吧。
nunuking:三面压力这么大吗,面试的会议约了多长时间呀
面试问题记录
点赞 评论 收藏
分享
零零幺零零幺:至少再做一个项目,然后猛投小厂,不然有点难
点赞 评论 收藏
分享
评论
4
19
分享

创作者周榜

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