【-★- 面经 -★-】菜鸡的远古百度NLP面试

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

一晃2020年都到9月份了。
从去年入职一家创业公司的NLP算法岗,现在勉强有一年的NLP经验了,最近强行投了一些简历,百度某部门可能急于用人,我这样的菜鸡都给面试机会了,谢谢百度。


一面

问项目及其细节;
二叉树遍历;旋转数组找最小值
bert的结构,transformer的encoder结构:其中前馈神经网络的结构是怎样的?
layernorm和batchNorm的区别与联系及其适用场景,举例说明二者的区别
attention计算过程中,为什么要除以d k \sqrt{d_k} dk
NER中,CRF的损失函数怎么计算的?最佳路径和所有路径分数如何得到?

二面

pooling(最大池化)层中的梯度是怎样回传的?
面对长文本的分类,数据怎样处理?
都掌握那些NLP相关模型?
既要达到bert模型的效果,又要超低推理时间,如10ms以内,应该怎样做
一个样本需要输出多个分类标签,应该怎样设置模型?

终……

总结

感谢百度两位面试官,目前的我学习策略是补基础,一直在花时间去补充机器学习、深度学习等经典的书籍,我也就此向两位面试官请教经验。
一面面试官强调了要多动手练习课后的练习作业,编码实现那些理论;
二面面试官直言我这样做性价比很低,工作后时间精力极其有限,并且容易看了忘,故而应该去追较新的成果,并多动手实践,你会发现在动手实践最新的成果时,会倒逼自己去慢慢熟悉那些经典的基础理论,效率更高,且理解的更透彻。


反馈

三种多标签文本分类方法

参考:https://zhuanlan.zhihu.com/p/152140983

  1. 改变输出概率(probabilities)的计算方式和交叉熵的计算方式
  • tf.nn.sigmoid_cross_entropy_with_logits() # 测量离散分类任务中的概率误差,其中每个类是独立的而不是互斥的。这适用于多标签分类问题。
  • tf.nn.softmax_cross_entropy_with_logits() # 测量离散分类任务中的概率误差,其中类之间是互斥的(每个条目恰好在一个类中)。这适用多分类问题。

在简单的二进制分类中,sigmoid和softmax没有太大的区别,但是在多分类的情况下,sigmoid允许处理非独占标签(也称为多标签),而softmax处理独占类。

代码参考

  1. 改变输出的全连接层
  • 在输出层设置多个全连接层,每一个全连接层对应一个标签
  • 损失函数为所以标签损失函数的平均值

代码参考

  1. 使用框架:Attention + seq2seq (Beam Search)
  • 上下文语义信息 -> 多标签之间的关系。多标签一般去看下
  • 将多标签当作一个序列(类似一句话)

代码参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值