2021 年 7 月中旬,腾讯 PGB,NLP 算法面试题 6 道!

文末免费送电子书:七月在线干货组最新 升级的《名企AI面试100题》免费送!

问题1:SVM 的 优化函数公式怎么写,代价函数是什么?

线性可分支持向量机的最优化问题函数公式:
在这里插入图片描述
引入拉格朗日乘子,由拉格朗日对偶性可得代价函数如下:
在这里插入图片描述


问题2:随机森林是怎么回事,为什么树模型好用,为什么要发明随机森林?

随机森林是一种重要的基于Bagging,进一步在决策树的训练过程中引入随机属性选择的集成学习方法,可以用来做分类、回归等问题。

随机森林的构建过程大致如下:

  • 从原始训练集中使用Bootstraping方法随机有放回采样选出m个样本,共进行n_tree次采样,生成n_tree个训练集;
  • 对于n_tree个训练集,我们分别训练n_tree个决策树模型;
  • 对于单个决策树模型,假设训练样本特征的个数为n,那么每次分裂时根据信息增益/信息增益比/基尼指数选择最好的特征进行分裂;
  • 每棵树都一直这样分裂下去,直到该节点的所有训练样例都属于同一类。在决策树的分裂过程中不需要剪枝;
  • 将生成的多棵决策树组成随机森林。对于分类问题,按多棵树分类器投票决定最终分类结果;对于回归问题,由多棵树预测值的均值决定最终预测结果。

随机森林的优点:

  1. 具有极高的准确率;
  2. 随机性的引入,使得随机森林不容易过拟合;
  3. 随机性的引入,使得随机森林有很好的抗噪声能力;
  4. 能处理很高维度的数据,并且不用做特征选择;
  5. 既能处理离散型数据,也能处理连续型数据,数据集无需规范化;
  6. 训练速度快,可以得到变量重要性排序;
  7. 容易实现并行化。

随机森林的缺点:

  1. 当随机森林中的决策树个数很多时,训练时需要的空间和时间会较大;
  2. 随机森林模型还有许多不好解释的地方,有点算个黑盒模型。

问题3:XGBOOST相对于GDBT最大的优势是什么,XGBOOST求二阶导数的好处都有什么?

优势:加入了正则化和二阶导数。

XGBOOST求二阶导数的好处:

  • xgboost是在MSE基础上推导出来的,在MSE的情况下,xgboost的目标函数展开就是一阶项+二阶项的形式,而其他类似logloss这样的目标函数不能表示成这种形式。为了后续推导的统一,所以将目标函数进行二阶泰勒展开,就可以直接自定义损失函数了,只要损失函数是二阶可导的即可,增强了模型的扩展性。
  • 二阶信息能够让梯度收敛的更快。一阶信息描述梯度变化方向,二阶信息可以描述梯度变化方向是如何变化的。

问题4:BERT是怎么分词的?

BERT主要是基于Wordpiece进行分词的,其思想是选择能够提升语言模型概率最大的相邻子词加入词表。

BERT 源码中 tokenization.py 就是预处理进行分词的程序,主要有两个分词器:BasicTokenizerWordpieceTokenizer,另外一个 FullTokenizer 是这两个的结合:先进行 BasicTokenizer 得到一个分得比较粗的 token 列表,然后再对每个 token 进行一次 WordpieceTokenizer,得到最终的分词结果。

其中BasicTokenizer完成: 转unicode )-> 去除空字符、替换字符、控制字符和空白字符等奇怪字符 -> 中文分词 -> 空格分词 -> 小写、去掉变音符号、标点分词;

WordpieceTokenizer 大致分词思路是按照从左到右的顺序,将一个词拆分成多个子词,每个子词尽可能长。按照源码中的说法,该方法称之为 greedy longest-match-first algorithm,贪婪最长优先匹配算法。

对于中文来说,一句话概括:BERT 采取的是「分字」,即每一个汉字都切开。




问题5:Word2Vec的训练方式有哪两种?(指的是分层softmax和负采样),CBOW和SkipGram各自的优缺点都是什么?(一个计算量小,一个慢但是细致)

Word2Vec的训练方式有分层softmax和负采样。

Skip-Gram和CBOW相比,多了一层循环(2c次),所以的确是计算量大约为CBOW的2c倍。

鉴于skip-gram学习的词向量更细致,但语料库中有大量低频词时,使用skip-gram学习比较合适。

Skip-Gram模型相当于是“家教学习模式”,即一个学生请了多个家教对其进行一对一辅导。表现为每个输入的中心词(学生)从多个上下文词标签(家教老师)那里获得知识。

CBOW模型则相当于“大班教学模式”,即多个学生在一个大班老师那里上课学习,表现为每个输入的多个上下文词(多个学生)从中心词标签(大班老师)那里获得知识。

问题6:评估模型的指标都有什么,AUC和ROC具体是什么,代表了什么属性?

评估模型的指标:准确率(accuracy),召回率(Recall),AUC等。

ROC曲线是基于样本的真实类别和预测概率来画的,具体来说,ROC曲线的x轴是伪阳性率(false positive rate),y轴是真阳性率(true positive rate)。

其中:真阳性率=(真阳性的数量)/(真阳性的数量+伪阴性的数量)

伪阳性率=(伪阳性的数量)/(伪阳性的数量+真阴性的数量)

AUC是ROC曲线下面的面积,AUC可以解读为从所有正例中随机选取一个样本A,再从所有负例中随机选取一个样本B,分类器将A判为正例的概率比将B判为正例的概率大的可能性。AUC反映的是分类器对样本的排序能力。AUC越大,自然排序能力越好,即分类器将越多的正例排在负例之前。

更多请看七月在线题库里的这题:https://www.julyedu.com/question/big/kp_id/23/ques_id/1052


帮助数千人成功上岸的《名企AI面试100题》书,电子版,限时免费送,评论区回复“100题”领取!

本书涵盖计算机语⾔基础、算法和⼤数据、机器学习、深度学习、应⽤⽅向 (CV、NLP、推荐 、⾦融风控)等五⼤章节,每⼀段代码、每⼀道题⽬的解析都经过了反复审查或review,但不排除可能仍有部分题⽬存在问题,如您发现,敬请通过官⽹/APP七月在线 - 国内领先的AI职业教育平台 (julyedu.com)对应的题⽬页⾯留⾔指出。

为了照顾⼤家去官⽹对应的题⽬页⾯参与讨论,故本⼿册各个章节的题⽬顺序和官⽹/APP题库内的题⽬展⽰顺序 保持⼀致。 只有100题,但实际笔试⾯试不⼀定局限于本100题,故更多烦请⼤家移步七⽉在线官⽹或 七⽉在线APP,上⾯还有近4000道名企AI笔试⾯试题等着⼤家,刷题愉快。
在这里插入图片描述


本文地址:https://www.6aiq.com/article/1630347207779
本文版权归作者和AIQ共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出