前言
记录美团NLP算法实习生的面试。该职位主要从事如下方向:语义理解;基础能力建设;依存句法分析;知识图谱等,在美团大搜下面。
一面
合并两个有序链表
Bert 预训练过程中使用了哪些 <code>embedding</code>?
如下图所示:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsISPrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdsATOfd3bkFGazxCMx8VesATMfhHLlN3XnxCMwEzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsYTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cmbw5COxADOyUzN2kDZ4MmM5QGOwUjN4kDZyI2YlBTNmVDOm9CX3AzLclDMxIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjL3M3Lc9CX6MHc0RHaiojIsJye.png)
关于这三个embedding具体做什么任务,可以参考我的博客。
在做分类任务时,如果某些类别比较少该怎么处理?
我给出的方法有:(1)数据增强;(2)训练trick,如不同的类别损失加权重,采样等等
残差网络的本质是什么?
其表达式是<code>ouput = layer(x) + x</code>,其中<code>layer(x)</code>是某层网络,x是输入。设计残差网络的根本目的是为了避免梯度消失。
你熟悉哪些预训练模型?
这个只说了<code>roberta</code>,对于其它的则不是很熟悉。
【给我的印象就是:需要把这些底层代码都弄的很清楚才行,比如bert预训练的任务,Embedding的设置,损失的设置等等,不仅涉及到深度学习,也和编程能力有着很大的关联!】
二面
因为其他原因,二面提前终止了。