首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
提纳里
第一拖拉机制造厂拖拉机学院 C++
发布于山西
关注
已关注
取消关注
@羽峰码字:
【深度学习面试八股文】-- 1-5
最近会更新一个深度学习面试中常见问题,及相应的答案,希望对找工作的朋友有所帮助,总结不易,欢迎持续关注。后续精彩,敬请关注,公众号:羽峰码字,获取最新更新信息。 目录 1.如何处理样本不均衡问题 2.数据增强方法 3.过拟合的解决办法 4. 正则化 5. 激活函数 6.梯度爆炸,梯度消失,梯度弥散是什么,为什么会出现这种情况以及处理办法 1.如何处理样本不均衡问题 a. 样本的过采样和欠采样 欠采样 :随机删除观测数量足够多的类,使得两个类别间的相对比例是显著的。虽然这种方法使用起来非常简单,但很有可能被我们删除了的数据包含着预测类的重要信息。 过采样 :对于不平衡的类别,我们使用拷贝现有样本的方法随机增加观测数量。理想情况下这种方法给了我们足够的样本数,但过采样可能导致过拟合训练数据。 过采样和欠采样结合 合成采样( SMOTE ): 1. 基于距离度量的方式计算两个或者多个稀有样本之间的相似性 2. 选择其中一个样本作为基础样本 3. 再在邻居样本中随机选取一定数量的样本对那个基础样本的一个属性进行噪声,每次处理一个属性。通过这样的方式产生新数据。 b. 使用多分类器进行分类 方法一中介绍的过采样,欠采样,都存在相应的问题。 过采样:可能会存在过拟合问题。(可以使用SMOTE算法,增加随机的噪声的方式来改善这个问题) 欠采样:可能会存在信息减少的问题。因为只是利用了一部分数据,所以模型只是学习到了一部分模型。 有以下两种方法可以解决欠采样所带来的问题。 方法一:模型融合 (bagging的思想 ) 思路:从丰富类样本中随机的选取(有放回的选取)和稀有类等量样本的数据。和稀有类样本组合成新的训练集。这样我们就产生了多个训练集,并且是互相独立的,然后训练得到多个分类器。 若是分类问题,就把多个分类器投票的结果(少数服从多数)作为分类结果。 若是回归问题,就将均值作为最后结果。 方法二:增量模型 (boosting的思想) 思路:使用全部的样本作为训练集,得到分类器L1 从L1正确分类的样本中和错误分类的样本中各抽取50%的数据,即循环的一边采样一个。此时训练样本是平衡的。训练得到的分类器作为L2. 从L1和L2分类结果中,选取结果不一致的样本作为训练集得到分类器L3. 最后投票L1,L2,L3结果得到最后的分类结果。 c. 将二分类问题转成其他问题 可以将不平衡的二分类问题转换成异常点检测,或者一分类问题(可使用one-class svm建模) d.改变正负样本在模型中的权重 使用代价函数学习得到每个类的权值,大类的权值小,小类的权值大。刚开始,可以设置每个类别的权值与样本个数比例的倒数,然后可以使用过采样进行调优。 不平衡类别会造成问题有两个主要原因: 1.对于不平衡类别,我们不能得到实时的最优结果,因为模型/算法从来没有充分地考察隐含类。 2.它对验证和测试样本的获取造成了一个问题,因为在一些类观测极少的情况下,很难在类中有代表性。 不平衡问题的评价指标 准确度这个评价指标在类别不均衡的分类任务中并不能work。几个比传统的准确度更有效的评价指标: 混淆矩阵(Confusion Matrix):使用一个表格对分类器所预测的类别与其真实的类别的样本统计,分别为:TP、FN、FP与TN。 精确度(Precision) 召回率(Recall) F1得分(F1 Score):精确度与找召回率的加权平均。 特别是: Kappa (Cohen kappa) ROC曲线(ROC Curves):见Assessing and Comparing Classifier Performance with ROC Curves 此问题引用于:https://www.cnblogs.com/lyr2015/p/8711120.html 2.数据增强方法 几何变换:翻转,旋转,裁剪,变形,缩放 颜色变换:噪声、模糊、颜色变换、擦除、填充 其他:SMOTE,SamplePairing,mixup,mixup,上下采样,增加不同惩罚 3.过拟合的解决办法 什么是过拟合 过拟合(overfitting)是指在模型参数拟合过程中的问题,由于训练数据包含抽样误差,训练时,复杂的模型将抽样误差也考虑在内,将抽样误差也进行了很好的拟合。 产生过拟合根本原因: 观察值与真实值存在偏差, 训练数据不足,数据太少,导致无法描述问题的真实分布, 数据有噪声, 训练模型过度,导致模型非常复杂 什么是欠拟合:训练的模型在训练集上面的表现很差,在验证集上面的表现也很差 原因:训练的模型太简单,最通用的特征模型都没有学习到 解决办法: 1、正则化 2、剪枝处理 3、提前终止迭代(Early stopping) 4、权值共享 5、增加噪声 6、Batch Normalization 7、Bagging和Boosting 8、Dropout 4. 正则化 正则化的原理:在损失函数上加上某些规则(限制),缩小解空间,从而减少求出过拟合解的可能性。 机器学习中几乎都可以看到损失函数后面会添加一个额外项,常用的额外项一般有两种,一般英文称作 l1-norm 和l2-norm,中文称作 L1正则化 和 L2正则化,或者 L1范数 和 L2范数。 1. L0、L1、L2正则化 L0 范数:向量中非0元素的个数。 L1 范数 (Lasso Regularization):向量中各个元素绝对值的和。 L2 范数(Ridge Regression):向量中各元素平方和再求平方根。 2. L1、L2正则化区别,为什么稀疏的解好? L1会趋向于产生少量的特征,而其他的特征都是0,而L2会选择更多的特征,这些特征都会接近于0。 实现参数的稀疏有什么好处吗? 一个好处是可以简化模型,避免过拟合。另一个好处是参数变少可以使整个模型获得更好的可解释性。 3.L1正则化和L2正则化的作用 L1正则化可以产生稀疏权值矩阵,即产生一个稀疏模型,可以用于特征选择。 L2正则化可以防止模型过拟合(overfitting);一定程度上,L1也可以防止过拟合。 4.正则化有哪几种,分别有什么作用? L0 范数和 L1 范数都能够达到使参数稀疏的目的,但 L0 范数更难优化求解,L1 范数是 L0 范数的最优凸近似,而且它比 L0 范数要容易优化求解。 L2 范数不但可以防止过拟合,提高模型的泛化能力,还可以让我们的优化求解变得稳定和快速。L2 范数对大数和 outlier 更敏感。 L1、L2范数,L1趋向于0,但L2不会,为什么? L1范数更容易产生稀疏的权重,L2范数更容易产生分散的权重 5. 激活函数 在多层神经网络中,上层节点的输出和下层节点的输入之间具有一个函数关系,这个函数称为激活函数(又称激励函数)。 a. 激活函数的意义如下: ①模拟生物神经元特性,接受输入后通过一个阈值模拟神经元的激活和兴奋并产生输出;②为神经网络引入非线性,增强神经网络的表达能力;③导出神经网络最后的结果(在输出层时)。 b. 激活函数至少应该满足以下几点: 可微性:因为优化方法是基于梯度的,这个性质是必须的 单调性:当激活函数是单调的时候,能够保证单层网络是凸函数 输出值的范围:激活函数的输出值的范围可以有限也可以无限。当输出值是有限的时候,基于梯度的优化方***更加稳定,因为特征的表示受有限权值的影响更加显著;当输出值是无限的时候,模型的训练会更加高效,不过在这种情况下,一般需要更小的learning rate c. 常用的激活函数: sigmoid,tanh,ReLU, leaky ReLU, PReLU, ELU,random ReLU,Swish, SoftPlus, Maxout等。 d. sigmoid和relu的优缺点 Relu优点:(1)relu函数在大于0的部分梯度为常数,所以不会产生梯度弥散现象.。而对于sigmod函数,在正负饱和区的梯度都接近于0,可能会导致梯度消失现象。(2)Relu函数的导数计算更快,所以使用梯度下降时比Sigmod收敛起来要快很多。 Relu缺点:Relu死亡问题。当 x 是小于 0 的时候,那么从此所以流过这个神经元的梯度将都变成 0;这个时候这个 ReLU 单元在训练中将死亡(也就是参数无法更新),这也导致了数据多样化的丢失(因为数据一旦使得梯度为 0,也就说明这些数据已不起作用)。 Sigmod优点:具有很好的解释性,将线性函数的组合输出为0,1之间的概率。 Sigmodu缺点:(1)激活函数计算量大,反向传播求梯度时,求导涉及除法。(2)反向传播时,在饱和区两边导数容易为0,即容易出现梯度消失的情况,从而无法完成深层网络的训练。 e. softmax和sigmoid在多分类任务中的优劣 多个sigmoid与一个softmax都可以进行多分类.如果多个类别之间是互斥的,就应该使用softmax,即这个东西只可能是几个类别中的一种。如果多个类别之间不是互斥的,使用多个sigmoid。 6.梯度爆炸,梯度消失,梯度弥散是什么,为什么会出现这种情况以及处理办法 一、梯度弥散 1.1 什么是梯度弥散? 梯度弥散就是梯度消失,导数为0 1.2 梯度弥散造成的问题 靠近输出层的隐藏层梯度大,参数更新快,所以很快就会收敛; 靠近输入层的隐藏层梯度小,参数更新慢,几乎就和初始状态一样,随机分布。 由于神经网络前几层的权重更新过慢,或者没有更新,从而导致了整个网络 的学习性能下降,达不到训练的标准。 1.3 梯度弥散造成的原因 激活函数的"饱和"。 样本中的奇异样本引起模型无法收敛。 使用反向传播算法传播梯度的时候,随着网络传播深度的增加, 梯度的幅度会急剧减小,会导致浅层神经元的权重更新非常缓慢。 不能有效学习。 从数学的角度看,是因为梯度连乘的问题,是梯度消失问题的所在。 学习率过大而导致模型震荡无法收敛。 1.4 梯度弥散的解决办法 使用ReLU,Leaky_ Relu等 激活函数替代Sigmoid。 网络层中的数据进行 batch normalization(批量标准化)。 数据归一化、数据清洗。 使用更好的网络,比如ResNet。 降低学习率。 二、梯度爆炸 1.1 什么是梯度爆炸? 梯度的衰减是有连续乘法导致的,如果在连续乘法中出现一个非常大的值,最后计算出的梯度就会很大,就想当优化到断崖处时,会获得一个很大的梯度值, 如果以这个梯度值进行更新,那么这次迭代的步长就很大,可能会一下子飞出了合理的区域。 1.2 梯度爆炸造成的问题 ● 前面网络层的梯度通过训练变大,后面网络层的梯度指数级增大。 ● 神经网络模型无法收敛,达不到训练结果。 1.3 梯度爆炸造成的原因 神经网络初始化的权值过大,每层网络反向求导的结果都大于1, 这样梯度相乘就会变得更大。 学习率非常大而导致梯度爆炸 1.4 梯度爆炸的解决方式 重设初始化权值(指定正态分布采样) 学习率调小 持续更新中,敬请期待。。。 公众号:羽峰码字,欢迎关注
点赞 12
评论 0
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
昨天 20:40
门头沟学院 测试工程师
软通动力 自动化测试 面经
如题,这是社招1、开局经典自我介绍2、会用什么技术、框架3、你在工作中linux常用命令;动态查看日志、过滤关键字的命令是什么4、连表查询5、python数据类型、列表元组的区别、查询的话是列表、字典、元组谁快,为什么;两个列表相加的方法6、正则7、字典转换成字符串的方法8、多线程9、工作中发现的高价值bug10、测试应该具备哪些技能11、其他的一些对本人基本情况的了解
查看10道真题和解析
点赞
评论
收藏
分享
01-21 15:35
门头沟学院 Java
实习不做“工具人”!这3个隐藏技巧,让你的产出翻倍
很多实习生都有过这样的困惑:每天埋头写CRUD、改bug,看似忙忙碌碌,可实习结束回头一看,除了一份实习证明,啥硬核收获都没有。其实不是实习没价值,而是你没找对“挖干货”的方式。结合我两段实习的踩坑与总结,分享3个能快速提升产出的技巧,尤其适合技术岗同学,帮你从“打杂仔”变身“有料人”一、啃透官方文档:比自己瞎练10个小项目更有用刚实习时我总沉迷自己写小demo,觉得“动手才是王道”,直到偶然翻了公司的项目架构文档,才发现自己写的都是“小卡拉米项目”——没有复杂场景的解决方案,更没有工业级的技术考量。公司沉淀的文档(架构文档、方案文档、技术栈文档),全是前辈踩坑无数总结的实战精华。比如架构文档...
实习教会我的事
点赞
评论
收藏
分享
2025-12-05 19:43
已编辑
滴滴_网约车_后端研发实习生(实习员工)
专升本等于坐过牢
27界专升本➕大龄研究生,投了一个月的实习了,一个面试也没有,学校朋友都是实习offer拿到手软,真的后悔当初高中没有好好学习,可惜世上没有后悔药,真的不知道下一步怎么搞了。
菜鸡oider:
你把专升本给删掉,只写硕士经历
点赞
评论
收藏
分享
2025-12-13 20:26
浙江大学 Java
27大三9本求帮忙看简历
27届求帮忙看看简历,还能怎么改,谢谢大家。
淬月星辉:
把浙大的校名加大加粗,把校徽再贴出来,就OK了
点赞
评论
收藏
分享
01-26 15:44
正浩创新EcoFlow_电力电子软件工程师(准入职员工)
正浩创新内推,正浩创新内推码
26届女硬件工程师丨正浩创新面经及流程9.1一面1.自我介绍2.有无相关电源设计项目或经历,并浅谈3.DCDC拓扑手撕(但是我当时没带纸笔所以口头描述),BUCK和BOOST,同步异步的区别和优缺点,同步电路的控制方式(施加什么PWM波形,如何控制MOS通断)4.项目中最有挑战性的部分,怎么解决的,然后会深挖这一部分再提问(这个问题出现的根本原因,下次如何避免)5.面试官说我专业其实不是很对口,不是电气工程专业,所以问的比较浅,大家仅供参考9.2收到笔试链接,非笔试,为性格测试9.5收到二面短信9.8 二面,没有技术问题,主要问了在校做过什么项目,调试遇到什么问题,除此之外有没有做过电源相关项...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
J人永远闲不下来于是去提前实习
1993
2
...
牛客吐槽大会 | 有槽不吐,留着过年?吐完领现金红包,痛快!
1971
3
...
拥抱AI,程序员的最后出路
1558
4
...
mentor视角下的优秀实习生
1540
5
...
真正会被取代的,是你心里面的幻觉
1515
6
...
大厂提前实习对AI开发的新感悟
1254
7
...
努力挣钱的意义具象化了
1242
8
...
马斯克最新炸裂采访,AI会带走一半工作岗位,普通人将何去何从?
1194
9
...
去独角兽做龙头还是去大厂做凤尾
1128
10
...
我身材再曼妙,也没有我的工资好笑!
1050
创作者周榜
更多
正在热议
更多
#
牛客吐槽大会
#
2302次浏览
56人参与
#
机械人你知道哪些单休企业
#
83001次浏览
413人参与
#
今年春招是金一银二嘛?
#
7518次浏览
93人参与
#
参加完秋招的机械人,还参加春招吗?
#
103525次浏览
682人参与
#
1月小结:你过的开心吗?
#
1711次浏览
50人参与
#
抛开难度不谈,你最想去哪家公司?
#
3831次浏览
103人参与
#
为什么有人零实习也能进大厂?
#
4689次浏览
114人参与
#
AI时代的工作 VS 传统时代的工作,有哪些不同?
#
7904次浏览
191人参与
#
没关系,至少我的__很曼妙
#
3589次浏览
63人参与
#
赚钱的意义在这一刻具象化
#
3761次浏览
92人参与
#
你的第一家实习公司是什么档次?
#
3945次浏览
67人参与
#
当你问AI“你会取代我的工作吗”,它说_?
#
3471次浏览
122人参与
#
你的landing期是如何度过的?
#
8082次浏览
150人参与
#
机械人春招想让哪家公司来捞你?
#
379153次浏览
3139人参与
#
AI求职实录
#
2971次浏览
92人参与
#
除了Java,最推荐学什么技术?
#
5451次浏览
140人参与
#
一人一道大厂面试题
#
114077次浏览
1263人参与
#
设计人如何选offer
#
187070次浏览
864人参与
#
你在职场上见过哪些“水货”同事
#
30704次浏览
167人参与
#
简历中的项目经历要怎么写?
#
287732次浏览
3801人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务