腾讯自然语言处理实习岗面经

人生第一次面BAT,记录一下,为明年找工作赞经验,毕竟网上很少自然语言处理相关的面经。

先来点干货!
面试流程
1. 自我介绍
2. 谈谈项目
3. 上黑板写代码

按照上述流程分为三块,如下。

简单的自我介绍了一下


我:我做的项目是关于自然语言生成,…

面试官1:为什么不用生成式的方法来做呢?

我:我尝试了char-rnn和seq2seq的方法,…

面试官1:rnn是怎么运行的你能说一下吗?

我:巴拉巴拉…

面试官1:什么是char-rnn,你能画一下rnn的结构图吗?

我:OK,(开始画画画,画完解释了一通)

扫描二维码关注公众号,回复: 1372878 查看本文章

面试官2:那如果是seq2seq的结构是什么样的你能画一下吗?

我:OK,(继续画,此时我给自己挖了一个坑)这是不加attention的seq2seq,加上attention,encoder后的编码向量就不是固定的了(此刻的我觉得自己回答的还蛮好)。

面试官1:那你能画一下attention的结构吗?是怎么做的?

我:我有点忘记了,能翻下笔记本吗?(思考了一下,大脑一片空白,想想前两周每天都在研究attention啊,年纪大了记性不好,出来翻了下笔记,这么熟悉的attention啊,那一刻怎么就不记得了!!!)

面试官1:没事,那来道代码题吧。


面试官2出题,一个struct含有start,end属性,现在有一个这样结构的数据集,统计这个数据集中具有相同start和end的数据有多少个?【 简化一下就是统计{[0,2),[0,2),[2,4)…}中[0,2)、[2,4)…分别有多少个?】

解题思路:输入格式为一个存放string的list

data = ["0 2", "2 4", "3 6", "0 2", "2 4", "2 4"]

ret = dict()

for d in data:
    if d in ret:
        ret[d] = ret[d] + 1
    else:
        ret[d] = 1

for d in ret:
    print(d+":"+str(ret[d]))

当时跟面试官应该没沟通彻底,隐约感觉他想要的输入是struct类型。
然后就结束了。

基于本次面试,未来需要做的准备:
1)准备一个完美的自我介绍
2)刷LeetCode
3)熟记主流框架公式
4)项目深入了解

猜你喜欢

转载自blog.csdn.net/qq_23142123/article/details/78876177