当前位置 博文首页 > 文章内容

    面试题汇总2(吐血整理):GFDGFHSDS的博客

    作者:shunshunshun18 栏目:未分类 时间:2021-10-27 20:20:24

    本站于2023年9月4日。收到“大连君*****咨询有限公司”通知
    说我们IIS7站长博客,有一篇博文用了他们的图片。
    要求我们给他们一张图片6000元。要不然法院告我们

    为避免不必要的麻烦,IIS7站长博客,全站内容图片下架、并积极应诉
    博文内容全部不再显示,请需要相关资讯的站长朋友到必应搜索。谢谢!

    另祝:版权碰瓷诈骗团伙,早日弃暗投明。

    相关新闻:借版权之名、行诈骗之实,周某因犯诈骗罪被判处有期徒刑十一年六个月

    叹!百花齐放的时代,渐行渐远!



    推荐 IIS7批量FTP管理工具 IIS7批量FTP管理
    IIS7批量FTP管理功能说明:
    1、可批量导入,导出FTP信息
    2、其他ftp工具有的功能,我们也有
    3、特色功能:可以定时上传下载
    4、数据信息列表化、一眼就能知道那个是那个
    5、批量连接 标签页式切换 方便快捷
    6、7大连接模式 更多好的兼容
    7、内嵌编辑器 有效解决普通txt记事本乱码
    8、锁屏功能 当程序有规定时间内没人操作,则自动锁程序。输入密码才可以正常操作

    本产品适用于:懒得记录FTP信息和有批量定时备份,上传下载的运维或站长。

    图:


    IIS7批量FTP管理

    2021届校招算法岗知识点总结:

    机器学习基础

    统计学习 方法(LR,SVM,EM,最大篇,集成学习等),值得反复看好几遍,每一遍都会加深理解;尤其是学习理论:贝叶斯决策理论/假设空间概念/经验风险,结构风险/各类损失函数之间的区别与联系/极大似然估计,最大后验估计,贝叶斯估计的区别与联系。

    ·树模型系列论文深入理解,gbdt,xgboost,lightgbm;

    ·深度学习基础:过拟合解决方法,dropout,bn,In等;学习器,各种optimizer原理及对比;BP原理;各种激活函数等,最好用numpy手写一遍MLP,包括rain+infer。

    ·概率图模型:LDA,ELBO,KL散度(e.g,最小化KL散度和极大似然法联系),变分推断,吉布斯采样等。

    ·评估体系:Precision,Recall,F1,AUC(实现+内在含义,多种角度理解,如正负样本偏序关系角度),还包括交叉验证等。

    可在牛客网刷,尤其是链表、树、动规。

    如何使用transformer,需提前下载,但是龟速。后面解决。

    import torch
    from transformers import BertModel, BertTokenizer
    # 这里我们调用bert-base模型,同时模型的词典经过小写处理
    model_name = 'bert-base-uncased'
    # 读取模型对应的tokenizer
    tokenizer = BertTokenizer.from_pretrained(model_name)
    # 载入模型
    model = BertModel.from_pretrained(model_name)
    # 输入文本
    input_text = "Here is some text to encode"
    # 通过tokenizer把文本变成 token_id
    input_ids = tokenizer.encode(input_text, add_special_tokens=True)
    # input_ids: [101, 2182, 2003, 2070, 3793, 2000, 4372, 16044, 102]
    input_ids = torch.tensor([input_ids])
    # 获得BERT模型最后一个隐层结果
    # 对文本的每一个token生成768维的向量,如果是二分类任务,我们接下来
    # 就可以把第一个token也就是[CLS]的768维向量,接一个linear层,预测出分类的logits,或者根据标签进行训练。
    with torch.no_grad():
        last_hidden_states = model(input_ids)[0]  # Models outputs are now tuples
    
    """ tensor([[[-0.0549,  0.1053, -0.1065,  ..., -0.3550,  0.0686,  0.6506],
             [-0.5759, -0.3650, -0.1383,  ..., -0.6782,  0.2092, -0.1639],
             [-0.1641, -0.5597,  0.0150,  ..., -0.1603, -0.1346,  0.6216],
             ...,
             [ 0.2448,  0.1254,  0.1587,  ..., -0.2749, -0.1163,  0.8809],
             [ 0.0481,  0.4950, -0.2827,  ..., -0.6097, -0.1212,  0.2527],
             [ 0.9046,  0.2137, -0.5897,  ...,  0.3040, -0.6172, -0.1950]]]) 
    	shape: (1, 9, 768)     
    """
    

    1.三次握手与四次挥手

    所谓三次握手(Three-way Handshake),是指建立一个 TCP 连接时,需要客户端和服务器总共发送3个包。

    三次握手的目的是连接服务器指定端口,建立 TCP 连接,并同步连接双方的序列号和确认号,交换 TCP 窗口大小信息。在 socket 编程中,客户端执行 connect() 时。将触发三次握手。

    • 第一次握手(SYN=1, seq=x):

      客户端发送一个 TCP 的 SYN 标志位置1的包,指明客户端打算连接的服务器的端口,以及初始序号 X,保存在包头的序列号(Sequence Number)字段里。

      发送完毕后,客户端进入 SYN_SEND 状态。

    • 第二次握手(SYN=1, ACK=1, seq=y, ACKnum=x+1):

      服务器发回确认包(ACK)应答。即 SYN 标志位和 ACK 标志位均为1。服务器端选择自己 ISN 序列号,放到 Seq 域里,同时将确认序号(Acknowledgement Number)设置为客户的 ISN 加1,即X+1。 发送完毕后,服务器端进入 SYN_RCVD 状态。

    • 第三次握手(ACK=1,ACKnum=y+1)

      客户端再次发送确认包(ACK),SYN 标志位为0,ACK 标志位为1,并且把服务器发来 ACK 的序号字段+1,放在确定字段中发送给对方,并且在数据段放写ISN的+1

      发送完毕后,客户端进入 ESTABLISHED 状态,当服务器端接收到这个包时,也进入 ESTABLISHED 状态,TCP 握手结束。

    三次握手的过程的示意图如下:

    three-way-handshake

    TCP 的连接的拆除需要发送四个包,因此称为四次挥手(Four-way handshake),也叫做改进的三次握手。客户端或服务器均可主动发起挥手动作,在 socket 编程中,任何一方执行 close() 操作即可产生挥手操作。

    • 第一次挥手(FIN=1,seq=x)

      假设客户端想要关闭连接,客户端发送一个 FIN 标志位置为1的包,表示自己已经没有数据可以发送了,但是仍然可以接受数据。

      发送完毕后,客户端进入 FIN_WAIT_1 状态。

    • 第二次挥手(ACK=1,ACKnum=x+1)

      服务器端确认客户端的 FIN 包,发送一个确认包,表明自己接受到了客户端关闭连接的请求,但还没有准备好关闭连接。

      发送完毕后,服务器端进入 CLOSE_WAIT 状态,客户端接收到这个确认包之后,进入 FIN_WAIT_2 状态,等待服务器端关闭连接。

    • 第三次挥手(FIN=1,seq=y)

      服务器端准备好关闭连接时,向客户端发送结束连接请求,FIN 置为1。

      发送完毕后,服务器端进入 LAST_ACK 状态,等待来自客户端的最后一个ACK。

    • 第四次挥手(ACK=1,ACKnum=y+1)

      客户端接收到来自服务器端的关闭请求,发送一个确认包,并进入 TIME_WAIT状态,等待可能出现的要求重传的 ACK 包。

      服务器端接收到这个确认包之后,关闭连接,进入 CLOSED 状态。

      客户端等待了某个固定时间(两个最大段生命周期,2MSL,2 Maximum Segment Lifetime)之后,没有收到服务器端的 ACK ,认为服务器端已经正常关闭连接,于是自己也关闭连接,进入 CLOSED 状态。

    四次挥手的示意图如下:

    four-way-handshake

    0.随机森林的随机体现在哪里

    随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个别树输出的类别的众数而定。**随机森林的随机性体现在每颗树的训练样本是随机的,树中每个节点的分裂属性集合也是随机选择确定的。**有了这2个随机的保证,随机森林就不会产生过拟合的现象了。

    随机森林是用一种随机的方式建立的一个森林,森林是由很多棵决策树组成的,每棵树所分配的训练样本是随机的,树中每个节点的分裂属性集合也是随机选择确定的。

    简述xgboost的推导过程
    lstm和rnn的区别
    对nlp的理解是多少
    手撕代码(1)反转链表 (2)快速排序 (3)用神经网络搭建一个LR
    对pytorch和keras了解多少

    1.比较Boosting和Bagging的异同

    二者都是集成学习算法,都是将多个弱学习器组合成强学习器的方法。

    Bagging:从原始数据集中每一轮有放回地抽取训练集,训练得到k个弱学习器,将这k个弱学习器以投票的方式得到最终的分类结果。

    Boosting:每一轮根据上一轮的分类结果动态调整每个样本在分类器中的权重,训练得到k个弱分类器,他们都有各自的权重,通过加权组合的方式得到最终的分类结果。

    2.无监督学习中存在过拟合吗?

    存在。我们可以使用无监督学习的某些指标或人为地去评估模型性能,以此来判断是否过拟合。

    3.什么是k折交叉验证?

    将原始数据集划分为k个子集,将其中一个子集作为验证集,其余k-1个子集作为训练集,如此训练和验证一轮称为一次交叉验证。交叉验证重复k次,每个子集都做一次验证集,得到k个模型,加权平均k个模型的结果作为评估整体模型的依据。

    4.关于k折交叉验证,需要注意什么?

    k越大,不一定效果越好,而且越大的k会加大训练时间;在选择k时,需要考虑最小化数据集之间的方差,比如对于2分类任务,采用2折交叉验证,即将原始数据集对半分,若此时训练集中都是A类别,验证集中都是B类别,则交叉验证效果会非常差。

    5.对于一个二分类问题,我们定义超过阈值t的判定为正例,否则判定为负例。现在若将t增大,则准确率和召回率会如何变化?

    准确率 = TP / (TP + FP),召回率 = TP / (TP + FN),其中TP表示将正例正确分类为正例的数量,FP表示将负例错误分类为正例的数量,FN表示将正例错误分类为负例的数量。

    准确率可以理解为在所有分类为正例的样品中,分类正确的样本所占比例;召回率可以理解为在所有原始数据集中的正例样品中,正确挑出的正例样本的比例。

    因此若增大阈值t,更多不确定(分类概率较小)的样本将会被分为负例,剩余确定(分类概率较大)的样本所占比例将会增大(或不变),即准确率会增大(或不变);若增大阈值t,则可能将部分不确定(分类概率较小)的正例样品误分类为负例,即召回率会减小(或不变)。

    6.以下关于神经网络的说法中,正确的是( )?

    A.增加网络层数,总能减小训练集错误率

    B.减小网络层数,总能减小测试集错误率

    C.增加网络层数,可能增加测试集错误率

    C。增加神经网络层数,确实可能提高模型的泛化性能,但不能绝对地说更深的网络能带来更小的错误率,还是要根据实际应用来判断,比如会导致过拟合等问题,因此只能选C。

    7.说明Lp范数间的区别

    L1范数:向量中各个元素绝对值之和

    L2范数:向量中各个元素平方和的开二次方根

    Lp范数:向量中各个元素绝对值的p次方和的开p次方根

    8.用梯度下降训练神经网络的参数,为什么参数有时会被训练为nan值?

    输入数据本身存在nan值,或者梯度爆炸了(可以降低学习率、或者设置梯度的阈值)

    9.卷积神经网络CNN中池化层有什么作用?

    减小图像尺寸即数据降维,缓解过拟合,保持一定程度的旋转和平移不变性。

    10.请列举几种常见的激活函数。激活函数有什么作用?

    sigmoid,relu,tanh,非线性化

    11.神经网络中Dropout的作用?具体是怎么实现的?

    防止过拟合。每次训练,都对每个神经网络单元,按一定概率临时丢弃。

    12.利用梯度下降法训练神经网络,发现模型loss不变,可能有哪些问题?怎么解决?

    很有可能是梯度消失了,它表示神经网络迭代更新时,有些权值不更新的现象。

    改变激活函数,改变权值的初始化等。

    13.如何解决不平衡数据集的分类问题?

    可以扩充数据集,对数据重新采样,改变评价指标等。

    14.残差网络为什么能做到很深层?

    神经网络在反向传播过程中要不断地传播梯度,而当网络层数加深时,梯度在逐层传播过程中会逐渐衰减,导致无法对前面网络层的权重进行有效的调整。 残差网络中, 加入了short connections 为梯度带来了一个直接向前面层的传播通道,缓解了梯度的减小问题。

    15.相比sigmoid激活函数ReLU激活函数有什么优势?

    (1) 防止梯度消失 ( sigmoid的导数只有在0附近的时候有比较好的激活性,在正负饱和区的梯度都接近于0)

    (2) ReLU的输出具有稀疏性

    (3) ReLU函数简单计算速度快

    16.卷积神经网络中空洞卷积的作用是什么?

    空洞卷积也叫扩张卷积,在保持参数个数不变的情况下增大了卷积核的感受野,同时它可以保证输出的特征映射(feature map)的大小保持不变。一个扩张率为2的3×3卷积核,感受野与5×5的卷积核相同,但参数数量仅为9个。

    17.解释下卷积神经网络中感受野的概念?

    在卷积神经网络中,感受野 (receptive field)的定义是 卷积神经网络每一层输出的特征图(feature map)上的像素点在原始图像上映射的区域大小。

    18.模型欠拟合什么情况下会出现?有什么解决方案?

    模型复杂度过低,不能很好的拟合所有的数据

    增加模型复杂度,如采用高阶模型(预测)或者引入更多特征(分类)等

    19. 适用于移动端部署的网络结构都有哪些?

    Mobilenet(https://arxiv.org/abs/1704.04861)

    Shufflenet(https://arxiv.org/abs/1707.01083)

    Xception(https://arxiv.org/abs/1610.02357)

    20. 卷积神经网络中im2col是如何实现的?

    使用im2col的方法将划窗卷积转为两个大的矩阵相乘,见下图:

    img

    21.多任务学习中标签缺失如何处理?

    一般做法是将缺失的标签设置特殊标志,在计算梯度的时候忽略。

    22.梯度爆炸的解决方法?

    针对梯度爆炸问题,解决方案是引入Gradient Clipping(梯度裁剪)。通过Gradient Clipping,将梯度约束在一个范围内,这样不会使得梯度过大。

    23.深度学习模型参数初始化都有哪些方法?

    (1)Gaussian 满足mean=0,std=1的高斯分布x∼N(mean, [公式] )

    (2)Xavier 满足x∼U(−a,+a)x∼U(−a,+a)的均匀分布, 其中 a = sqrt(3/n)

    (3)MSRA 满足x∼N(0, [公式] )x∼N(0,[公式])的高斯分布,其中σ = sqrt(2/n)

    (4)Uniform 满足min=0,max=1的均匀分布。x∼U(min,max)x∼U(min,max)

    等等

    24.注意力机制在深度学习中的作用是什么?有哪些场景会使用?

    深度学习中的注意力机制从本质上讲和人类的选择性视觉注意力机制类似,核心目标是从大量信息中有选择地筛选出少量重要信息并聚焦到这些重要信息上,忽略大多不重要的信息。目前在神经机器翻译(Neural Machine Translation)、图像理解(Image caption)等场景都有广泛应用。

    25.卷积神经网络为什么会具有平移不变性?

    MaxPooling能保证卷积神经网络在一定范围内平移特征能得到同样的激励,具有平移不变形。

    26.神经网络参数共享(parameter sharing)是指什么?

    所谓的权值共享就是说,用一个卷积核去卷积一张图,这张图每个位置是被同样数值的卷积核操作的,权重是一样的,也就是参数共享。

    27.如何提高小型网络的精度?

    (1)模型蒸馏技术(https://arxiv.org/abs/1503.02531)

    (2)利用AutoML进行网络结构的优化,可将网络计算复杂度作为约束条件之一,得到更优的结构。(https://arxiv.org/abs/1807.11626)

    28.什么是神经网络的梯度消失问题,为什么会有梯度消失问题?有什么办法能缓解梯度消失问题?

    在反向传播算法计算每一层的误差项的时候,需要乘以本层激活函数的导数值,如果导数值接近于0,则多次乘积之后误差项会趋向于0,而参数的梯度值通过误差项计算,这会导致参数的梯度值接近于0,无法用梯度下降法来有效的更新参数的值。

    改进激活函数,选用更不容易饱和的函数,如ReLU函数。

    29.列举你所知道的神经网络中使用的损失函数

    欧氏距离,交叉熵,对比损失,合页损失

    30.对于多分类问题,为什么神经网络一般使用交叉熵而不用欧氏距离损失?

    交叉熵在一般情况下更容易收敛到一个更好的解。

    31.1x1卷积有什么用途?

    通道降维,保证卷积神经网络可以接受任何尺寸的输入数据

    32.随机梯度下降法,在每次迭代时能保证目标函数值一定下降吗?为什么?

    不能,每次迭代时目标函数不一样

    33.梯度下降法,为什么需要设置一个学习率?

    使得迭代之后的值在上次值的邻域内,保证可以忽略泰勒展开中的二次及二次以上的项

    34.解释梯度下降法中动量项的作用

    利用之前迭代时的梯度值,减小震荡

    35.为什么现在倾向于用小尺寸的卷积核?

    用多个小卷积核串联可以有大卷积核同样的能力,而且参数更少,另外有更多次的激活函数作用,增强非线性

    36.解释GoogLeNet的Inception模块的原理

    对输入图像用多个不同尺寸的卷积核、池化操作进行同时处理,然后将输出结果按照通道拼接起来

    37.解释反卷积的原理和用途

    反卷积即转置卷积,正向传播时乘以卷积核的转置矩阵,反向传播时乘以卷积核矩阵

    由卷积输出结果近似重构输入数据,上采样

    38.解释批量归一化的原理

    在数据送入神经网络的某一层进行处理之前,对数据做归一化。按照训练样本的批量进行处理,先减掉这批样本的均值,然后除以标准差,然后进行缩放和平移。缩放和平移参数同训练得到。预测时使用训练时确定的这些值来计算

    39.解释SVM核函数的原理

    核函数将数据映射到更高维的空间后处理,但不用做这种显式映射,而是先对两个样本向量做内积,然后用核函数映射。这等价于先进行映射,然后再做内积。

    40.什么是过拟合,过拟合产生的原因是什么?有什么方法能减轻过拟合?

    过拟合指在训练集上表现的很好,但在测试集上表现很差,推广泛化能力差。产生过拟合的原因是训练样本的抽样误差,训练时拟合了这种误差。增加训练样本,尤其是样本的代表性;正则化

    41.什么样的函数可以用作激活函数?

    非线性,几乎处处可到,单调

    42.什么是鞍点问题?

    梯度为0,Hessian矩阵不定的点,不是极值点

    43.在训练深度神经网络的过程中,遇到过哪些问题,怎么解决的?

    不收敛,收敛太慢,泛化能力差。调整网络结构,调整样本,调整学习率,调整参数初始化策略

    44. SVM如何解决多分类问题

    多个二分类器组合。1对1方案,1对剩余方案,多类损失函数

    45.列举你知道的聚类算法

    层次聚类,k均值算法,DBSCAN算法,OPTICS算法,谱聚类

    46.K均值算法中,初始类中心怎么确定

    随机选择K个样本作为类中心,将样本随机划分成K个子集然后计算类中心

    47.简述EM算法的原理

    EM算法用于求解带有隐变量的最大似然估计问题。由于有隐变量的存在,无法直接用最大似然估计求得对数似然函数极大值的公式解。此时通过jensen不等式构造对数似然函数的下界函数,然后优化下界函数,再用估计出的参数值构造新的下界函数,反复迭代直至收敛到局部极小值点

    48网易互娱 - ailab - 人工智能研究工程师

    一面50分钟

    1. 自我介绍
    2. 介绍腾讯实习内容
    3. Attention机制的原理
    4. 介绍艾耕实习内容
    5. Fasttext原理,相比于word2vec有什么优势
    6. 文本分类除了CNN和RNN还知道哪些方法?
    7. BILSTM + CRF模型的原理
    8. 多任务学习和对抗网络了解不
    9. 给定两个命名实体识别任务,一个任务数据量足够,另外一个数据量很少,可以怎么做
    10. 隐马尔可夫模型了解吗,和CRF的区别
    11. word2vec是有监督的还是无监督的?
    12. 思考题:有A(红)B(蓝)两瓶墨水,从A中取一勺倒到B中,混匀后,再从B中取等量墨水,倒到A中。问,是A中蓝墨水多还是B中红墨水多?

    二面55分钟

    1. 自我介绍
    2. 摘要抽取怎么做的
    3. 命名实体的应用场景,泛化能力怎么样
    4. CRF模型说一下,优化目标是什么,怎么训练的?
    5. CRF和HMM的区别
    6. HMM做了哪些独立性假设
    7. HMM的训练方法
    8. CRF的预测方法,维特比算法的过程
    9. 画Transformer的结构图,讲一下原理,为什么self-attention可以替代seq2seq
    10. 机器翻译的Attention机制,里面的q,k,v分别代表什么
    11. Fasttext原理,cbow和skipgram的区别,分层softmax和負采样,負采样的采样原理,为什么要这样采样,Fasttext哈希规则,怎么把语义相近的词哈希到一个桶里。
    12. 讲一下腾讯的实习
    13. 模型怎么实现的,有没有优化矩阵的运算
    14. 为什么要用Fasttext做文本分类,是因为训练快还是预测快
    15. 推导lr
    16. 智力题:蓄水池采样

    49网易云音乐 - nlp算法工程师

    一面50分钟

    1. 自我介绍
    2. 讲一下随机森林,GBDT,XGBoost
    3. XGBoost相比于GBDT有哪些改进
    4. Adaboost和XGBoost的区别
    5. Adaboost和XGBoost是怎么进行预测的
    6. 讲一下Textcnn的运算过程
    7. 文本分类的评价指标
    8. 讲一下AUC
    9. 过拟合的解决方法
    10. 稳定和非稳定的排序算法有哪些
    11. 二分查找递归和非递归的时间和空间复杂度
    12. 手写冒泡排序,写完问这个程序要上线还需要考虑哪些东西

    二面30分钟

    劝退

    49.拼多多 - 算法工程师

    一面75分钟

    1. 全程讲实习
    2. LDA的词表示和word2vec的词表示有什么区别;
    3. Fasttext 原理,为什么用skipgram不用cbow,負采样怎么做到,公式是什么?
    4. 画Transformer结构图
    5. 代码题:给定字符串 s ,求与 s 编辑距离为2的字符串集合。

    二面45分钟

    1. 全程讲实习…
    2. 代码题:一个圆被分成M个扇形,一共有N种颜色,相邻扇形不同色,一共有几种涂法?

    三面hr

    1. 还在面哪些公司
    2. 有offer了吗
    3. 最理想的公司是哪?
    4. 选择offer最看重哪些因素
    5. 我们公司加班很多,你怎么看
    6. 女朋友去哪?(并没问是否单身就直接问了这个问题)
    7. 期望薪资多少?

    50.追一科技 - 自然语言处理工程师

    一面50分钟

    1. 讲实习
    2. 为什么Attention的结果和TextCNN的结果相差不大(不太明白什么意思,就讲了下两者对信息提取范围大小的区别)
    3. Fasttext和word2vec的区别
    4. Fasttext怎么做分类的
    5. 词向量用什么训练的,维度多大
    6. XGBoost和随机森林的区别
    7. XGBoost相对于GBDT的区别
    8. XGBoost工程方面的改进有哪些?
    9. XGBoost和随机森林的特征重要性是怎么计算的?
    10. 输入补全可以用哪个数据结构来做?(字典树)
    11. 假如有10亿条搜索请求,怎么找出最热的前10条?
    12. 问问题得到的信息:上海那边的部门主要是做金融保险业的定制化的智能客服,偏工程方向。主要工作内容有客服系统开发、知识图谱搭建、三元组抽取等,基本上会用到所有的NLP知识。。。
    13. 补充:梯度消失和梯度爆炸的原因,为什么rnn比cnn和全连接层神经网络更容易发生梯度消失或爆炸
    14. 补充:怎么判断过拟合,怎么防止过拟合,说一下dropout

    二面30分钟

    聊实习

    51.百度 - 算法工程师

    一面60分钟

    1. 讲项目
    2. 如果再给一次机会,你觉得这个项目还有什么可以改进的点?
    3. 代码题:二分查找
    4. 代码题:旋转数组的二分查找
    5. 代码题:给定长度为n的数组,求所有可能长度为m的排列组合的情况

    二面60分钟

    1. 讲项目
    2. 讲fasttext,词向量,文本分类原理
    3. 文本分类CNN,LSTM和Attention的区别
    4. 代码题:有n枚硬币,每次从左边或右边拿一枚,一共拿m次,求能拿到的最高价值

    三面60分钟

    经理面

    1. 讲项目
    2. 讲比赛,现在来看有什么可以改进的点
    3. 智力题:圆盘涂色问题
    4. 一些hr题

    52.英语流利说

    一面20分钟

    1. 实验室方向
    2. 详细讲一下Transformer模型;transformer中句子的encoder表示是什么;怎么加入词序信息的。
    3. 讲一下BLEU;
    4. 怎么用数据处理的trick提升了NER的表现
    5. 摘要抽取可读性问题怎么回事?

    二面60分钟

    1. 手撕代码:二叉搜索树转有序双向链表,要求不能创建新的节点
    2. 做过的nlp任务中,哪个任务最难?你觉得有哪些可以改进的点,怎么改进?
    3. 摘要生成怎么做的?
    4. 讲一下SVM
    5. 概率图模型,有向图模型和无向图模型分别作了哪些假设?CRF的训练目标是什么?
    6. BILSTM+CRF的训练目标?状态转移矩阵是joint learn的吗?维度是多少?
    7. 维特比算法的时间复杂度
    8. LSTM相比于传统RNN解决了什么问题?怎么解决的?
    9. Attention模型和CNN 的区别?

    53.欢聚时代

    一面40分钟

    1. 讲一下tag提取怎么做的,讲一下LDA,讲一下隐狄利克雷分布,里面有个辛普森采样了解吗
    2. 讲事件分类。数据有多少,样本不平衡怎么解决的,CNN用在文本里和用在图像里有什么区别,用在文本里时卷积核的宽度代表什么,你怎么选的,为什么要这么选?CNN和LSTM都可以用于分类,两者用于分类有什么区别?说一下Attention,Attention有哪些变种,为什么Attention模型的F指标还比不上作为baseline的textCNN?最后为什么选择Attention模型?词向量用什么训练的,数据量有多少,怎么评价词向量的质量的?词向量的维度是多少,为什么要选这个维度?文本分类中的多义词问题可以怎么解决?
    3. 讲讲CRF。CRF和HMM的区别,从有向无向图的角度呢?从其他角度呢?。CRF和深度学习的结合还知道哪些?
    4. 讲讲python的垃圾回收机制,讲讲装饰器

    54. ROC是什么?

    • 阳性 (P, positive)
    • 阴性 (N, Negative)
    • 真阳性 (TP, true positive) 正确的肯定。又称:命中 (hit)
    • 真阴性 (TN, true negative) 正确的否定。又称:正确拒绝 (correct rejection)
    • 伪阳性 (FP, false positive) 错误的肯定,又称:假警报 (false alarm),第一型错误
    • 伪阴性 (FN, false negative) 错误的否定,又称:未命中 (miss),第二型错误
    • 真阳性率 (TPR, true positive rate) 又称:命中率 (hit rate)、敏感度(sensitivity)
      TPR = TP / P = TP / (TP+FN)
    • 伪阳性率(FPR, false positive rate) 又称:错误命中率,假警报率 (false alarm rate) FPR = FP / N = FP / (FP + TN)
    • 准确度 (ACC, accuracy) ACC = (TP + TN) / (P + N) 即:(真阳性+真阴性) / 总样本数
    • 真阴性率 (TNR) 又称:特异度 (SPC, specificity) SPC = TN / N = TN / (FP + TN) = 1 - FPR
    • 阳性预测值 (PPV) PPV = TP / (TP + FP)
    • 阴性预测值 (NPV) NPV = TN / (TN + FN) 假发现率 (FDR) FDR = FP / (FP + TP)

    基本概念

    分类模型(又称分类器,或诊断)将实例映射到特定类。ROC分析的是二元分类模型,也就是输出结果只有两种类别的模型,例如:(阳性/阴性) (有病/没病) (垃圾邮件/非垃圾邮件) (敌军/非敌军)。

    当讯号侦测(或变量测量)的结果是连续值时,类与类的边界必须用阈值来界定。举例来说,用血压值来检测一个人是否有高血压,测出的血压值是连续的实数(从0~200都有可能),以收缩压140/舒张压90为阈值,阈值以上便诊断为有高血压,阈值未满者诊断为无高血压。二元分类模型的个案预测有四种结局:

    真阳性(TP):诊断为有,实际上也有高血压。
    伪阳性(FP):诊断为有,实际却没有高血压。
    真阴性(TN):诊断为没有,实际上也没有高血压。
    伪阴性(FN):诊断为没有,实际却有高血压。

    这四种结局可以画成2 × 2的混淆矩阵

    imgimg

    ROC空间

    ROC空间将伪阳性率(FPR)定义为 X 轴,真阳性率(TPR)定义为 Y 轴。

    给定二元分类模型和它的阈值,就能从所有样本的(阳性/阴性)真实值和预测值计算出(X=FPR, Y=TPR) 座标点。

    从 (0, 0) 到 (1,1) 的对角线将ROC空间划分为左上/右下两个区域,在这条线的以上的点代表了一个好的分类结果(胜过随机分类),而在这条线以下的点代表了差的分类结果(劣于随机分类)。

    完美的预测是在左上角的点,在ROC空间座标 (0,1)点,X=0 代表着没有伪阳性,Y=1 代表着没有伪阴性(所有的阳性都是真阳性);也就是说,不管分类器输出结果是阳性或阴性,都是100%正确。一个随机的预测会得到位于从 (0, 0) 到 (1, 1) 对角线(也叫无识别率线)上的一个点;最直观的随机预测的例子就是抛硬币。

    让我们来看在实际有100个阳性和100个阴性的案例时,四种预测方法(可能是四种分类器,或是同一分类器的四种阈值设定)的结果差异:

    imgimg

    55.京东金融NLP实习面试

    1。自我介绍

    2。然后直接问了下研二实习导师同意了吗

    3。然后让介绍项目,平安车险的一个比赛

    4。对Y值聚类是什么思路具体介绍一下,kmeans了解吗,自己实现的吗,K值取多少怎么确定的,kmeans的特征?(这里其实没太懂,可能是问kmeans用的什么聚类?我说可能是密度聚类,调用的sklearn)

    5。为什么想到用AUC做评价指标,AUC应该是做二分类的吧,讲一下AUC和ROC(前一天晚上准备看,结果忘了,路上太热了也没看)

    6。说一下lightgbm吧,讲一下GBDT,和决策树的区别。

    7。比赛的数据是怎么个方式,线上平台是怎么操作,用什么处理的数据,对数据进行过清洗吗。

    8。我看你简历上写了深度学习,有做过什么项目吗。(讲了一个课程作业)

    9。用了gensim的词向量模型,有一个score函数,说了一下这个函数是干嘛的,他说他印象中没这个东西。然后说了另外一个LSTM的模型,让我把整个数据处理、模型训练、测试、损失函数讲一下。我一开始一会让我讲LSTM,开始画LSTM的图,然后说这个当成个黑盒子就行,你讲一下整个流程。这个作业一共花的时间不到一周,所以有点忘了,也没写到简历里面,顺口说的,讲的不是很好,当时傻了说最后是一个sigmoid,他愣了一下,最后他说最后应该个是softmax吧,我说对对对。

    10。然后问我用keras做的还是tf。然后问还有没有别的项目,没了,做一个算法题。

    11。一个贼他妈简单的归并排序,提醒了我三次,说排序、nlogn的排序、归并排序你学过吗。(考研的时候学过)你写一写吧(我好像忘了)。面试官好像无语了,然后让我就写一个n方的吧。

    12。最后问我有什么想问的,我说那边现在在做什么,实习生平时做什么。他又问了我有没有用c++写过大项目,因为那边目前有个项目要用c++。

    13。然后问了我为啥转专业,我想了想是不是应该说我热爱编程,热爱数学,热爱计算机,还是算了,然后说本科工科很苦逼,深山老林发电厂,计算机钱多。面试官笑了笑,就完了。

    56.八大面经总结

    1. 简历,其实简历很重要,我有同学各种简历挂,连面试的机会都没有。所以要尽量把自己认为重要的东西都写在上面,突出自己想要在面试过程中展现出来的内容。主要就是项目/实习、论文、博客文章之类的。因为个人感觉我的博客还算可以,所以第一部分就写了自己的博客、知乎、github、国奖、论文(如果项目那块不够丰富的话可以把论文当做一个项目经验来写,因为我的论文比较水所以就在这里随便提了一下),所以还是推荐大家在平时学习的过程中写写博客做个记录;第二部分主要写了自己的项目和实习经历,因为正好研究生期间学过的东西可以分为文本分类、对话系统两个大的模块,再加上一个京东的实习,构成了项目部分,这里想说的是不一定非得是具体的项目才能写到这里,只要是你认为自己掌握的还算成体系的东西,在面试过程中可以讲出来的都可以写上去,唯一的缺点就是面试官会认为工程能力偏弱,但是当面试效果很好的时候这些东西是可以被弥补的。第三部分是额外加的,凸显了几个写的不错的文章和github上面的代码,这部分主要是为了过简历筛选,面试过程中很少有面试官会问到。最后就是要找一个还算不错的模板。
    2. 刷题,相比简历更重要的一环,基本上面试的时候如果一道编程题都做不出来的话跟挂了没什么区别。这部分没什么好说的,如果提前有准备的话,建议在研一或者研二开始就坚持刷LeetCode,我找工作的时候刷了200道左右。然后临时抱佛脚的话就是兼职offer了,这本书一定要多看几遍,很多面试过程中遇到的题目就是原题。这部分没什么好的方法,就是要增强自己的基本能力,不过面试的时候一道两道做不出来也没什么,不要着急,可以跟面试官交流一下,他一句话可能就会点醒你,千万不要一直憋着,交流之后写出来代码比憋了半天写不出代码给面试官留下的印象会好很多。而且很多时候代码不一定要写的很精确,大概一个思想正确就好,面试官一般不会抠细节。
    3. 深度学习与NLP基础,这部分怎么说呢,更是要靠平时的积累吧,临时突击无外乎是一些正则化、dropout、BN、LR推导、SVM推导、交叉熵损失函数、softmax求导、BP反向传播、过拟合、BPTT反向传播、梯度爆炸和梯度弥散、ReLu、激活函数、文本分类、对话系统评价指标、word2vec、attention、seq2seq、优化算法、GBDT、Bagging、Boosting等等等等,但是我感觉临时突击这些东西价值不大,主要还是看面试的一个整体效果,这些东西是要临时看看掌握一下,但绝对不是全部,更多的东西是在平时学习过程中积累下来的,而不是这些零散的点。要学会把他们连接起来,融会贯通(请允许装逼),更多可以看我之前写过得博客之类的。对了,还有面试官会让你现场写tf代码,不会很难,所以大家千万不要在github上面找个代码跑一下就算会了,一定要自己写,要懂。这部分我的感觉就是,平时积累很重要,但是在面试之前也一定要把这些基本概念再看一遍,像我一开始面试的时候就完全没有去准备这些知识点,有的时候就会卡壳,会给面试官留下不好的印象。
    4. 面试,这个基本上是按照简历部分进行准备,简历上一定不要写自己不是很懂得东西,不然真的会很尴尬。个人看法要在面试之前按照简历上面的内容自己能够讲一个小故事。3主要体现自己的深度学习的基础知识,这一部分要结合项目经验进行拔高,让面试官看到你的能力和特点。这里要做到面试官不打断的情况下每个项目自己可以说10分钟以上,一充斥整个面试,特别是当你掌握的不是很扎实的时候,把大部分时间留给自己。另外就是学会把面试官引到自己擅长的问题上面,在自己讲的过程中特意流出几个面试官可以问的问题,不要讲得太满,不然面试官问的很可能就是你不会的了。这里就要自己把握了,按照自己的经历,讲一个让面试官满意的故事。

    上面就是我暂时能想到的一些点,也是自己在面试的过程中不断碰壁遇到的一些问题,然后整理下来的。对于基础知识这一块,可能会有很多同学问机器学习和深度学习之间如何权衡,其实我想说的是看你自己想找什么工作,我给自己的定位是深度学习与NLP,所以面试之前只看了SVM,然后在所有面试中也只有个别的面试官会问到机器学习的东西。怎么说呢,我的看法是,要学,要懂,但是次要,你只需要在整个面试过程中不断地展现自己在深度学习上的造诣,不给面试官留下时间去问机器学习就好。当然,如果你有足够的时间去准备,看看是最好的,毕竟你所有的准备都可能在面试中给自己增光添彩,按照自己的时间精力去分配就好。

    面经&&跪经

    这部分会按照面试时间的先后顺序大概说一下,先大体上说一下,拿到的offer有竹简智能-对话方向、阿里小蜜-对话方向、阿里新零售-NLP算法、滴滴AILab-对话方向、美团点评AI平台-对话方向、百度NLP部分-NLP算法、百度度秘事业部-对话方向、搜狗-机器翻译。跪了的有微信搜一搜看一看(面到了HR,现在还没给消息,暂时当他是跪了吧)、京东AILab-对话方向(跪的有点不知所措,虽然我也并不想去这里)。微软亚研(上周刚一面,就当是跪了吧,希望是一波毒奶)。怎么说呢,面的公司有点多,整个过程很累,但是由于offer的时间线原因,几个想要去的offer都是到最后才拿到,所以面了比较久。整体上感觉面试还算比较轻松,主要原因是找的实习大部分跟自己做的方向很match,所以整体上能够发挥出自己所学的东西,所以面试的结果也都还挺好的。下面就各自介绍一下:

    一、2018.3.8 竹简智能 算法实习生

    算法题:股票买卖获最大利润

    一面:先简单介绍了一下Memory Network的相关知识,然后结合key-value MemNN模型介绍了一下自己做的基于KB知识库的问答系统,主要讲了以下其模型和工作原理。然后接下来聊了聊seq2seq模型,并主要介绍了一下attention机制,让写了下attention的公式,怎样计算得分和权重,说了下soft attention和hard attention的区别。然后聊了下tensorflow里面seq2seq的借口,吐了吐槽也介绍了自己实现的模型里面的一些细节和方法。

    二面:主要针对我的京东实习和文本分类方面的问题进行提问,先问我都用过那些模型实现文本分类,当时卡克了只说出来了两个,尴尬==****(fasttext TextCNN RCNN HAN DMN EntityNetwork charCNN charRNN)。需要在总结一下各个模型的优缺点****。然后问了我觉得现在文本分类中还有哪些没有解决的问题,我想了会说样本不平衡问题(应该进行下采样来解决,他问我还有什么办法,我说这块没有尝试过只是在网上见到过一些介绍),和多类别分类问题(这里引入了知乎竞赛),多标签分类确实是一个很难的问题,面试官让我写损失函数,我当时由于紧张和时间久远也没有回答上来,算是整个面试过程中唯一回答的不好的问题吧。

    三面:技术总监,到没有聊什么技术,拿着简历随便问了点项目和实习相关的东西,然后主要聊了公司的一些情况之类的,表达了对我很满意想让我留下来然后协调了一下实习时间之类的,算是发了口头offer。后面HR打电话问我的意向的时候拒了。

    二、2018.3.13 阿里智能服务部–阿里小蜜 算法实习生

    一面:面试官很亲和,上来主要是简历面,可以说是面面俱到,基本上简历上的东西都被问了个遍,而且还会眼神的考察一些基础知识,比如说介绍一下某些模型的细节、原理等等,稍微扩展了一下简历之外的东西看看知识的了解情况吧,比如说问了我句子相似度、传统方法做文本分类、SVM、word2vec等几个并没有出现在我简历中的知识点。然后也有几个开放性的问题,比如说我在京东的实习,如果让我采取方案的话我会使用什么方案,fasttext、CNN、RNN的优缺点各是什么等等,也都简单的聊了一下,感觉整体上来讲面试的效果还算可以,基本上问题的回答上来了。面试官也没有深究细节,点到为止。最后问了我关于实习地点在杭州是否可以,可是我还有别的选择吗==#

    二面 2018.3.31 今天终于接到了二面的电话,记得是一个阳光明媚的中午_,面试大概持续了半个小时,先让我讲了一下attention的原理,接着讲了一下seq2seq的缺点,如何改进;如何实现再已知答案的情况下进行答案生成。然后问如何加速预测速度(其实这两个问题我也不是很清楚,只是很模糊的打了一下);接下来聊了一下京东的实习情况,为什么fasttext速度很快,然后问了下如果现在在做会采用什么样的方案;说一说RNN和LSTM的区别和原理;说一下自己的未来规划;感觉整个面试更偏向于理解,而不会是非在意细节,更不会具体到公式,但是还是会比较关注优模型化和性能方面。整体来讲,还不错??

    三面 2018.4.7 一周后接到了三面电话,面试官应该很忙,毕竟清明节面试,而且感觉还有很多个人要面试的样子。面试大概持续了半个小时,上来让我讲一下最近做的对话系统的项目,我已开始说了一下模型的细节,面试官打断了我说相听一下具体的实现细节,不要讲论文的模型,然后我就把自己实现seq2seq时遇到的deepcopy和beam_search两个问题以及解决方案大概讲了一下,面试官到没有提什么问题,只是问了一下最后的真实效果,以及怎么评价之类的问题。然后就问了一下能不能去杭州实习,三面就结束了。

    四面 2018.5.2 有过了快一个月才收到4面电话,直接是HR面,先是自我介绍,然后问了一下基本情况,发论文学习成绩之类的,然后问现在都有什么offer了,如何选择云云,20分钟左右让我等通知。

    2018.5.3,今天有个小蜜部门的工程师加我微信,说我的面试通过了,口头发了offer,说后面会有后续的offer流程。

    三、2018.3.30 阿里零售通 算法实习生

    今天是阿里校招北邮行,貌似可以当场面试,所以就抱着试一试的心态去看看,本来想着去找智能服务部问一下自己简历的情况,结果智能服务部的人没去,却被零售通的人拉过去面试了一会。很轻松,负责人大概聊了一会就让我去二面,貌似是HR,也很随意,主要是他在讲他们部门,我基本上没说什么,然后他就说让他们部门总监给我三面,下午收到电话,面了50分钟左右。整体感觉上他们的算法部门应该是刚成立不久,挺缺人的,主要做推荐和物流这块,面试应该问题不大。但是我还是更想去智能服务部那边,毕竟方向更对口,所以跟他们说需要在考虑靠考虑。

    4.3号又接到了零售通HR的电话,表示他们那边已经同意给我发offer,如果我也接受的话就把阿里小蜜的校招流程停掉转到他们那里去,在接受一轮交叉面试就可以了。我跟HR沟通了一下,说希望在考虑一下(因为我感觉阿里小蜜的人肯定会在清明节给我面试电话,所以想在等一下)。然后面试官就说那就等清明节结束之后让我给他一个回复。

    2018.4.10 虽然小蜜那边的面试还没结束,offer也不一定能拿到,但一狠心还是把零售通的offer给拒了。

    四、2018.3.15 滴滴AILab 自然语言处理实习生(对话方向)

    整个面试过程只有一面,面试官把我接上来之后先让我介绍一下自己之前做过的一个项目,我就说了一下使用seq2seq实现对话系统的模型,接着讲了讲模型的缺点以及使用MMI的改进方案(这里自己当时没说好,感觉自己把自己绕进去了==),然后介绍完整个项目的细节之后,面试官提出了一个问题,说Attention机制的计算细节和公式是怎样的,然后我就介绍了一下公式的计算方法,然后说了一下改进的方案等。面试官就没有再问相关问题,感觉他好像也不是特别懂的样子,然后就说出一道算法题目做做吧。题目是有两个有序的集合,集合的每个元素都是一段范围,求其交集,例如集合{[4,8],[9,13]}和{[6,12]}的交集为{[6,8],[9,12]}。然后我就开始做,先写了个暴力解法,然后面试官让我想想有没有什么改进可以把时间复杂度改善。想了几分钟,说了一下自己的大致思路,其实并没有想到方案==不过交流的过程中得到一个很重要的信息就是这些范围是排序而且互相之间不会重合。所以这里也是给大家提个醒,一定要先把题目搞清楚再开始做题,不然很可能像我这样吧。然后搞清楚之后题目就很简单了,写一个循环就可以了,时间复杂度是O(N+M),然后就结束了,面试官让我问几个问题,然后又问了我关于实习时间的问题,就让我走了。整个面试时间持续了一个小时多一点,算法和编程差不多各占一半吧。

    3.16号收到了offer,后来拒掉了

    五、2018.3.16 腾讯搜一搜看一看 算法岗实习生

    一面是个比较年轻的人,感觉挺厉害的,很关注算法效果、性能等方面,话语之间透露出一种刁刁的味道。上来看了看我的简历,让我讲一讲对话系统方面的工作。照常讲模型推公式,说完之后,面试官问了我关于MMI模型第一个改进目标函数中P(T)是如何计算的,我说每个词的联合概率分布乘积,当时他面露疑问,我还没反应过来是什么意思,到后面有说到这个问题才明白,原来他的意思是P(T)应该是单纯语言模型学习出来的结果,而按照我的说法,P(T)是在输入的基础上进行计算的,不得不说,面试官的水平很好,完全没接触过的东西竟然能一阵见血的指出我的纰漏,这个地方之前确实没怎么注意过,回来查了一下,计算P(T)的时候确实应该直接输入一个全零的初始化状态,这样才是一个语言模型学习到的概率。然后又接着问了文本分类的东西,我主要讲了一下TextCNN,TextRNN的模型,然后接下来讲了一下知乎竞赛的东西,感觉这块介绍的还算可以,然后又聊了下相关的一些问题。对了,这个面试官十分关注数据集的问题,比如我介绍到的movieQA数据集是一个什么形式,有多少QA对等等,还有知乎竞赛用到的数据集有大概多少个文本,数量是多大,但是平时有没有关注过这些问题,所以基本上没有答上来==接下来面试官出了一道K个有序链表的合并问题,手撕代码。

    二面是个年纪比较大的程序员,整体感觉他不是很懂深度学习,机器学习应该是个高段位选手。主要问了我文本分类和论文方面的东西,到没有问出什么很有难度的问题。最后说让我讲一下底层优化方面的知识,我说是优化算法还是类似于tensorflow底层算法优化,他说前者,然后我就吧啦吧啦讲了一堆SGD,动量,AdaGrad,RMS,Adam之类的。然后问我会不会C++,我说不常用但是能读懂程序,他应该是想问我道算法题,但是他又不会java之类的??没搞懂,问了一句之后就说第一个面试官已经问完算法题了是吗,那我就不问了,然后就走了,说去找三面面试官,但是过了一会又说今天面试先结束,不知道是不是挂了还是大家已经下班了==

    两面基本都是持续一个小时多一点,没有特别的压迫感和难度,基本都能答上来。但是我同学也是面的这个部门,说上来就给了5道算法题让做,然后全程面试官各种懂,问各种问题。我,也是一脸懵逼,同一个部门面试差别这么大的嘛,反正先等消息吧还是。

    2018.3.21 二面,前两天收到了复试的通知,貌似是面试委员会面试,后面再有一个HR面试就结束了,然后开开心心去面试。到了之后发现短信和邮件中没有面试官联系方式(因为经过初面之后简历直接交给总部开始走校招流程,所以总部的电话也打不通,总之就是联系不上,也怪我一开始没有注意到联系方式这件事情了),连楼都进不去,无奈之下联系了初面的面试官,跟他说明了情况,最后又被他接到了一面的地方让我等一会他问一下情况,过了一会说要再加一轮技术面,我不知道具体的情况是什么,反正当时心态是崩了的,该参加的面试没参加还要临时再加一轮技术面试什么鬼。

    然后面试官就来了,上来就让推导word2vec反向传播,讲实话我上周刚推完还给实验室的同学讲了一遍,奈何当时的情况下自己一紧张怎么推都感觉是错的,唉很尴尬,卡了很久最后算是勉强退了出来,不过面试官又让我写Embedding矩阵的梯度,这块之前也没在意过,只是知道更新当前单词对应的词向量即可,最后也没写上来其梯度公式,面试官让我回来再想想。然后开始问简历,他可能没接触过问答和对话系统,也没问我相关经历,一直针对文本分类这块再问,虽然也都算答上来了,但总感觉少点什么,一种说不上来的感觉。最后问我要是现在在做京东实习的工作我会怎么做,感觉也答得不是很好,然后问我FastText,CNN,RNN的区别,我感觉说的还不错,但是面试官好像还不是很满意==,最后送我出去的时候说还是要好好把基础打扎实。

    等了很久吧,我一度以为已经挂了,结果4月18号收到了一次面试,貌似是因为之前提前批已经结束了,而我的面试流程也随之终止,所以一直拖到校招才又开始面。先电话面了一轮,很水,基本上就是问简历,然后第二天去HR面,这个过程自己表现得有点嚣张了貌似,具体不详说,反正估计是把HR惹到了,然后应该也是挂了~~

    六、2018.3.20 美团点评 AI平台 算法实习生面试

    一面面试官应该是搞后台开发的吧,深度学习一点不懂,上来就开始专业歧视,问我通信工程的会不会编程==,然后让我自己介绍,我说要讲模型的细节吗,他说不用,我看是讲了你也不懂吧,然后又说,你会数据结构吗,你们通信工程应该不学吧,你补这方面知识了吗?我++,你是猴子派来的逗比吧,然而我已经对他失望了,并不想理他。然后他貌似也不知道问什么了,开始看我的简历,又用电脑看我的专栏文章,说你对这个领域还挺了解的是吗,我说是啊,然后他就问我如果给你一个新的领域你该怎么上手,当时心里就想这个面试官真是没话找话,于是我啪啪啪又是一顿吹比。然后他竟然问,Redis你懂吗,让你学你怎么学,当时我就觉得聊不下去了。随便说了两句,然后他有看了看电脑我以为要出道编程题,结果他就直接走了,走了,了。

    二面是部门老大,基本上不能算是面试吧,大概聊了一下,也没有算法题什么的,然后就互相问了几个问题,然后就结束了,面试官表达了想要我的意愿,说之后应该会有HR联系我之类的。这个人貌似挺厉害的,MSRA+Facebook的工作经历,今年刚回国开始成立美团的这个部门,直接给CEO汇报。

    整个面试刨去等待应该不到40分钟吧,这可能是我面过的最水的一次面试了,可能是因为部门刚成立,二面人也说了,一切都是刚起步。回来之后就接到了offer,但是对这边并无好感,所以就拒了,后来那个leader又给我打电话表达了想让我过去的意愿,顺带diss了一下我面试的其他公司,虽然感觉他很有诚意,我去了之后应该也会被重视,但还是拒绝了,因为实习还是想找一个比较稳定成熟的部门多学点东西。

    七、2018.4.17 百度自然语言处理部算法实习生

    这个是在官网投的简历,到了那才发现自己好像投递错了,投成了校招==捞我简历的组是做query理解的,怎么说呢,整体感觉这个任务比较简单,基本用不上什么深度学习的技术,甚至面试过程中面试官一直在劝退我学深度学习,还是简单说一下面试过程吧。

    一面,日常介绍了一下自己以前的工作,面试官更关注于文本分类这部分的工作,简单问了一下。然后就开始劝退了,说你是遇到什么任务都会使用深度学习模型吗,我说也用过机器学习的方法,