自然语言处理NLP面试问题

本文涉及的产品
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_基础版,每接口每天50万次
NLP自然语言处理_高级版,每接口累计50万次
简介: 自然语言处理NLP面试问题

前言


提前准备总归是好的嘛,为未来做准备!简单的模型对应简单的环境,而复杂的模型对应复杂的环境。由简单模型到复杂模型:LR-SVM-神经网络-深度学习。模型的复杂度源于:模型本身的选择、模型参数的个数、模型的参数空间选择、模型拟合的样本个数。


一、机器学习相关模型


1、朴素贝叶斯


1-1、相关概念介绍


先验概率(边缘概率):某个事件发生的概率,即通过经验来判断事情发生的概率。

条件概率(后验概率):事件A在事件B已经发生条件下的发生概率。

联合概率:两个事件共同发生的概率。


image.png


条件独立


image.png


注意:朴素贝叶斯定理假设特征之间相互独立。


1-2、贝叶斯定理


贝叶斯原理:实际上就是求解后验概率。

贝叶斯公式(根据联合概率求得)


525147f258da4ac1925980563a592f52.png


推导贝叶斯公式


297ceb85a70f41e6b2a1f1c67e439c92.png


根据上边两个条件概率公式即可推导出贝叶斯公式。


1-3、贝叶斯算法的优缺点


优点

1、对小规模数据的表现很好,能处理多分类任务,适合增量式训练。

2、算法简单,训练速度快。

缺点


1、对缺失数据不太敏感。

2、因为朴素贝叶斯模型假设了属性之间相互独立,这在实际应用中往往是不成立的,在属性之间相关性比较大的时候,分类效果并不好。适合属性之间相关性较小的样本。

3、需要首先知道先验概率。如果先验概率是假设的,那么往往预测结果不会那么准确。

4、对于输入数据的表达形式很敏感。


1-4、拓展延伸


1-4-1、MLE(最大似然)


理解:假设数据服从某个分布(模型已知),但是参数未知,这个时候我们希望对这个参数进行估计,而MLE的思想就是找到一个参数值,使得每条样本出现的概率最大。

似然函数

总体X为离散型时:


image.png


那么要优化的目标为:


image.png

总体X为连续型时:

image.png

注意:最大似然估计会寻找关于 θ的最可能的值(即,在所有可能的θ取值中,寻找一个值使这个采样的“可能性”最大化)。


1-4-2、MAP(最大后验概率)


理解:在MLE的基础之上,我们还有一个额外的信息,就是我们知道这个参数也服从某个分布,MAP就是加上这个条件,对我们的参数进行估计。


2、逻辑回归


逻辑回归是一种分类方法,主要用于二分类问题,使用逻辑函数(即Sigmoid函数)。

image.png

原始的条件概率为(w是设定好的向量矩阵,x是特征表示为的向量,b是偏置项。)


image.png


上述两个式子结合,可以将条件概率和逻辑回归联系到一起,则在特征X的条件下,被划分为Y类别的概率是:


image.png

Sigmoid函数如图所示:


c0f446c6eb054909934806f60a5ae971.png

如果是二分类的情况,则有:


image.png

即:

image.png

把y=1和y=0的两个式子合并可以得到:


image.png

2-1、推导目标函数


目的:我们需要最大化目标函数。找出使得目标函数最大的w和b。

引入最大似然


image.png

两边取自然对数可得:


image.png

最大化原函数等价于求最小化函数:


image.png


image.png


2-2、求梯度

2-3、逻辑回归实战

3、SVM

SVM(一般不会手推,说一下最大间隔、KKT,核)

4、k临近

5、决策树


  • 定义:决策树是一种机器学习的方法,比较常用的决策树有ID3、C4.5和CART,CART的分类效果一般优于其他决策树。
  • 特征:决策树是一种树形结构,其中每个内部结点表示一个属性上的判断,每个分支代表一个判断结果的输出,最后每个叶结点代表一种分类结果。


优点

  • 使用简单的决策规则建立决策树模型,这个过程比较容易被理解。
  • 决策树模型可以可视化,比较直观。
  • 应用范围比较广,既可用于分类也可用于回归。
  • 能够处理数值型和连续的样本特征。


缺点

  • 容易在训练数据中生成复杂的树结构,很容易造成过拟合,而剪枝可以缓解过拟合。常用的方法是限制树的高度。


ID3

  • 以信息论为基础,使用信息增益来选择属性,从而实现对数据的归纳分类;根据信息增益运用自顶向下的贪心策略是ID3建立决策树的主要方法。
  • 优点
  • 建立的决策树规模比较小
  • 查询速度比较快
  • 灵活方便。
  • 缺点
  • 信息增益倾向于取值较多的特征,容易造成误差
  • 没有考虑连续值
  • 无法处理有缺失值的数据
  • 没有考虑过拟合的问题。
  • 容易受到异常值的干扰


C4.5

  • 基于ID3改进的一个分类决策树算法。
  • 改进
  • 不仅使用信息增益,还用信息增益率来选择属性,克服了ID3算法选择属性时偏向选择取值多的属性的不足。
  • 可以对不完整数据进行处理。
  • 在决策树的构造过程中进行剪枝。
  • 优点
  • 支持处理连续值
  • 缺点
  • 容易受到异常值的干扰


CART算法


6、集成方法。

7、CRF

8、HMM

9、解释一下正则化


正则化:将系数估计朝0的方向进行约束、调整或者缩小。也就是说,正则化可以在学习过程中降低模型复杂度和不稳定程度,从而避免过拟合的危险。(即正则化是给损失函数加上一些限制。避免其过拟合)

过拟合函数:过拟合函数往往都是一个高阶多项式,正则化的目的就是使得高次项系数尽可能的为0或者是接近于0。


image.png

线性回归模型的代价函数:代价函数=损失函数+正则化项


image.png

备注:λ是正则化参数,参数越大,则对其惩罚的力度也越大,相应的会把所有的参数最小化,能起到规范的作用。θ 平方是为了求导方便。


L1、L2正则化:又叫做L1范数、L2范数。目的是对损失函数加上一个约束,减小其解的范围。

L1正则化:逼迫更多w为0,变得稀疏。(Lasso回归)

L2正则化:逼迫所有w尽可能趋向于0但是不为0,顾及到了每一个点。(岭回归)


二、深度学习相关模型

1、CNN

2、RNN

3、LSTM

lstm结构图

4、textcnn

5、transformer

transformer结构图

6、bert

6-1、bert

6-2、bert衍生模型

6-2-1、Albert

6-2-2、Roberta

6-2-3、XLNET

6-2-4、ERNIE

6-3、bert激活函数

6-4、bert的其他一些问题

bert以及衍生模型


三、自然语言处理过程中使用的技巧以及方法

1、Batch Normalization 优缺点

2、分词

3、各种激活函数优缺点

4、word2vec原理

请查看我的另一篇博客文章——Word2vec原理笔记.

四、以问题为导向

1、如何解决维度灾难?


维度灾难:指的是在建模的过程中,随着特征数量的增多,计算量呈指数级增长的一种现象。

如何解决:主成分分析法PCA、线性判别法LDA、拉普拉斯特征映射。

2、GDBT和XGboost区别、改进?

3、Bert和GPT的区别

结构上的区别:Bert的网络结构类似于Transformer的Encoder部分,而GPT类似于Transformer的Decoder部分。

预训练任务的区别:Bert的预训练任务中,Bert主要使用“填空题”的形式来完成预训练,随机盖住一些输入文字,被mask的部分是随机决定的。而GPT要做的任务是,预测接下来,会出现什么。

4、Bert的优化机制


Bert模型是欠训练的,可以考虑训练的时间更长,添加更多的训练数据,每一批次的训练数据增大。训练更长的句子。


梯度下降

学习率

各个激活函数:Sigmoid、Tanh、Relu、Leaky Relu、Elu

attention

self-attention


去除噪声、数据获取


数据不平衡的处理:重采样、上采样、下采样等等。

文本表示:tf-idf(公式)

词袋模型

word2vec:CBOW,Skip-Gram(公式、训练技巧)

word2vector负采样时为什么要对频率做3/4次方

改进后的word2vec

fasttext,glove,elmo


序列标注:

基于概率模型的方法:HMM,MEMM,CRF(画图,比较差异)

基于深度学习的方法:bi-lstm+CRF


关系抽取:

应用场景:知识图谱。

方法:Bootstrap(半监督方法)

深度学习方法:


熟悉hadoop、spark对海量数据进行处理。



大型任务:

1、文本聚类:

方法:划分法、层次法、基于密度的方法、基于网格的方法。

场景应用案例:数据整理,数据挖掘,用户画像,数据可视化。

2、文本分类:

机器学习:

模型融合的方法:

深度学习的方法:

应用场景:垃圾邮件二分类,新闻主题分类,多标签多分类。

3、文本摘要:

抽取式的

压缩式的

重组法

4、语言生成:

基于概率统计:

基于深度学习:

任务:写诗机器人,聊天任务中的语言生成。

5、机器翻译:

关键技术:编码器-解码器注意力机制。

6、聊天系统:

类型:闲聊,专业领域问答,任务型(基于特定任务,多轮对话)。

任务型机器人:意图识别、词槽填充、对话管理。

强化学习,适合多轮对话。


五、


公司:

专业做nlp技术的,卖技术。

百度实习算法岗

参考文献:

贝叶斯公式由浅入深大讲解—AI基础算法入门.

详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解.

百度百科——最大似然估计.

决策树笔记(入门).

机器学习(二):决策树原理及代码实现.

决策树(Decision Tree,DT).


总结


12月31日✌,和好兄弟去看反贪风暴5,就是静安附近的电影票价格太贵了,不对,应该说贵的离谱。

相关文章
|
3月前
|
自然语言处理 算法 Python
自然语言处理(NLP)在文本分析中的应用:从「被动收集」到「主动分析」
【10月更文挑战第9天】自然语言处理(NLP)在文本分析中的应用:从「被动收集」到「主动分析」
62 4
|
3月前
|
机器学习/深度学习 存储 自然语言处理
【NLP自然语言处理】探索注意力机制:解锁深度学习的语言理解新篇章(上)
【NLP自然语言处理】探索注意力机制:解锁深度学习的语言理解新篇章(上)
|
3月前
|
机器学习/深度学习 存储 人工智能
大数据中自然语言处理 (NLP)
【10月更文挑战第19天】
182 60
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
自然语言处理(Natural Language Processing,简称NLP)
自然语言处理(NLP)是人工智能的分支,旨在让计算机理解、解释和生成人类语言。NLP的关键技术和应用包括语言模型、词嵌入、文本分类、命名实体识别、机器翻译、文本摘要、问答系统、情感分析、对话系统、文本生成和知识图谱等。随着深度学习的发展,NLP的应用日益广泛且效果不断提升。
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
自然语言处理(NLP)是AI的重要分支,旨在让计算机理解人类语言
自然语言处理(NLP)是AI的重要分支,旨在让计算机理解人类语言。本文探讨了深度学习在NLP中的应用,包括其基本任务、优势、常见模型及具体案例,如文本分类、情感分析等,并讨论了Python的相关工具和库,以及面临的挑战和未来趋势。
95 1
|
2月前
|
人工智能 自然语言处理 语音技术
利用Python进行自然语言处理(NLP)
利用Python进行自然语言处理(NLP)
58 1
|
3月前
|
人工智能 自然语言处理 语音技术
利用Python进行自然语言处理(NLP)
利用Python进行自然语言处理(NLP)
35 3
|
3月前
|
机器学习/深度学习 存储 自然语言处理
【NLP自然语言处理】探索注意力机制:解锁深度学习的语言理解新篇章(下)
【NLP自然语言处理】探索注意力机制:解锁深度学习的语言理解新篇章(下)
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
详谈什么是自然语言处理(NLP),特点以及使用场景场景(一)
详谈什么是自然语言处理(NLP),特点以及使用场景场景(一)
145 0
|
3月前
|
人工智能 自然语言处理
【NLP自然语言处理】NLP中的常用预训练AI模型
【NLP自然语言处理】NLP中的常用预训练AI模型