当前位置:   article > 正文

NLP实习笔试面试题汇总二_nlp ner 相关面试

nlp ner 相关面试

一、LSTM中各模块分别使用什么激活函数,可以使用别的激活函数吗?

关于激活函数的选取。在LSTM中,遗忘门、输入门、输出门使用Sigmoid函数作为激活函数;在生成候选记忆时,使用双曲正切函数Tanh作为激活函数。

值得注意的是,这两个函数都是饱和的,即在输入达到一定值的情况下,输出不会发生明显变化。如果是非饱和的激活函数,比如ReLU,那么就难以实现门控的效果。

Sigmoid函数的输出在0~1之间,符合门控的物理意义。且当输入较小或较大时,其输出会非常接近0或1,从而保证该门开或关。

在生成候选记忆时,使用Tanh函数,因为其输出在-1~1之间,这与大多数场景下特征分布是0中心的吻合。此外,Tanh在输入为0的附近比Sigmoid有更大梯度,通常使模型收敛更快。

激活函数选取不是一成不变的,例如在原始LSTM中,使用的是Sigmoid函数的变种,h(x)=2sigmoid(x)−1,g(x)=4sigmoid(x)−2h(x)=2sigmoid(x)-1,g(x)=4sigmoid(x)-2h(x)=2sigmoid(x)−1,g(x)=4sigmoid(x)−2,这两个函数的范围分别是[-1,1]和[-2,2]。后来发现效果并不如sigmoid。
  实际上在门控中,使用Sigmoid几乎是现代所有神经网络模块的共同选择。例如在GRU和Attention机制中,也采用Sigmoid作为门控激活函数。
  在计算能力有限制的设备中,由于Sigmoid函数求指数需要一定的计算量,此时会使用0/1门控输出为0或1的离散值。即当输入小于阈值,门控输出为0;大于阈值时,输出为1。
在这里插入图片描述

二、什么是Seq2Seq模型?Seq2Seq有哪些优点?

Seq2Seq,全称Sequence to Sequence模型。称为序列到序列模型。大致意思是将一个序列信息,通过编码和解码生成一个新的序列模型。通常用于机器翻译、语音识别、自动对话等任务。

在Seq2Seq模型之前,深度神经网络所擅长的问题中,输入和输出都可以表示为固定长度的向量,如果长度稍有变化,会使用补零等操作。然而对于前面的任务,其序列长度实现并不知道。如何突破这个局限,Seq2Seq应运而生。

Seq2Seq的核心思想在于通过深度神经网络将一个输入的序列映射为一个作为输出的序列。

这一个过程由编码输入解码输出两个环节组成。在经典的实现中,编码器和解码器各由一个循环神经网络组成,既可以选择传统RNN,也可以选择LSTM、GRU等。在Seq2Seq中,两个模型是共同训练的。

假想一个复习和考试的场景,我们将学到的历史信息经过一系列加工整理,形成了知识体系,这就是编码过程。然后在考试的时候,将高度抽象的知识应用到系列问题中进行求解,这就是解码过程。

Seq2Seq经典结构
在这里插入图片描述
在机器翻译过程中,如上图所示,输入是一个源语言的句子。有三个单词A、B、C,编码器依次读入A、B、C和结束符 。解码第一步,读入编码器最终状态,生成第一个目标语言单词W,第二步读入第一步的输出W,生成第二个单词X,如此循环,知道输出结束符.输出的序列W、X、Y、Z就是翻译后目标语言的句子。

在文本摘要任务中,输入序列是长句子或段落,输出序列是摘要短句。在图像描述文本生成任务中,输出是图像经过视觉网络后的特征,输出序列是图像描述短句。语言识别中输入序列是音频信号,输出序列是识别出的文本。不同场景下,编码器和解码器有不同的设计,但对应的Seq2Seq底层结构基本相似。
  Seq2Seq优点在于可以处理变长序列。

二、.Seq2Seq模型在解码时,有哪些常用的方法?

Seq2Seq模型最核心的部分在于解码部分,大量的改进也是基于解码环节。Seq2Seq模型最基础的解码方法是贪心法:即选取一种度量标准后,每次都在当前状态下选择最佳的一个结果,直到结束。贪心法计算代价低,适合作为基准结果与其他方法比较。显然贪心法获得的是一个局部最优解,往往并不能取得最好的效果。

集束搜索是常见改进算法,它是一种启发式算法。该方法会保存beam size个当前的较佳选择。解码的时候每一步根据当前的选择进行下一步扩展和排序,接着选择前beam size个进行保存,循环迭代,直到结束时选择一个最佳的作为编码的结果。
在这里插入图片描述
上图中beam size为2。当前有解码得到的两个候选:I和My。然后输入解码器,得到一系列候选序列。显然,如果beam size取1,退化为贪心算法。b越大,搜索空间越大,效果会有所提升,但计算量也相应增大。实际上beam size需要取一个折中范围:8~12.

常见的改进方法还有:

  • 解码时使用堆叠RNN
  • 增加Dropout机制
  • 与编码器建立残差连接
  • 加入注意力机制(解码时每一步有针对的关注当前有关编码结果)
  • 加入记忆网络(从外部获取知识)

三、Seq2Seq模型加入注意力机制是为了解决什么问题?为什么选用了双向循环神经网络?

人脑的注意力机制本质上是一种注意力资源分配的模型,比如说我们在阅读一篇论文的时候,在某个特定时刻注意力肯定只会在某一行文字描述,在看到一张图片时,我们的注意力肯定会聚焦于某一局部。随着我们的目光移动,我们的注意力肯定又聚焦到另外一行文字,另外一个图像局部。所以,对于一篇论文、一张图片,在任意一时刻我们的注意力分布是不一样的。这便是著名的注意力机制模型的由来。早在计算机视觉目标检测相关的内容学习时,我们就提到过注意力机制的思想,目标检测中的 Fast R-CNN 利用 RoI(兴趣区域)来更好的执行检测任务,其中 RoI 便是注意力模型在计算机视觉上的应用。

注意力模型的使用更多是在自然语言处理领域,在机器翻译等序列模型应用上有着更为广泛的应用。在自然语言处理中,注意力模型通常是应用在经典的 Encoder-Decoder 框架下的,也就是 RNN 中著名的 N vs M 模型,seq2seq 模型正是一种典型的 Encoder-Decoder 框架。
在这里插入图片描述
Encoder-Decoder 作为一种通用框架,在具体的自然语言处理任务上还不够精细化。换句话说,单纯的Encoder-Decoder 框架并不能有效的聚焦到输入目标上,这使得像 seq2seq 的模型在独自使用时并不能发挥最大功效。比如说在上图中,编码器将输入编码成上下文变量 C,在解码时每一个输出 Y 都会不加区分的使用这个 C 进行解码。而注意力模型要做的事就是根据序列的每个时间步将编码器编码为不同 C,在解码时,结合每个不同的 C 进行解码输出,这样得到的结果会更加准确

比如,在不运用注意力机制的情况下:
统一编码为 C:
在这里插入图片描述
使用统一的 C 进行解码:
在这里插入图片描述
在应用了注意力模型之后,每个输入会被独立编码,解码时就会有各自对应的 c 进行解码,而不是简单的一刀切:
在这里插入图片描述
相应的,原先的 Encoder-Decoder 框架在引入了注意力机制后就变成了如下结构:
在这里插入图片描述
在实际任务(机器翻译)中使用Seq2Seq,通常会先使用一个RNN作为编码器,将输入序列(源语言句子的词向量序列)编码成一个向量表示 ,然后再使用一个RNN解码,从该向量表示中解码得到输出序列(目标语言句子的词序列)。

在Seq2Seq中,当前隐状态以及上一个输出词决定了当前输出词。即
在这里插入图片描述
在这里插入图片描述
实际使用中,随着输入序列长度的增加,模型性能显著下降。因为编码时输入序列的全部信息被压缩到一个向量表示中去。序列越长,句子越前面的词的信息丢失就越严重。以100词的句子为例,编码时将整个句子的信息压缩到一个向量中去,而在解码时(比如翻译),目标语言第一个单词大概率与源语言第一个单词对应,这就意味着第一步的解码需要考虑到100步之前的信息。
  一个小技巧是可以将源语言句子逆向输入,或者重复输入两遍,得到一定的提升,也可以使用LSTM缓解这个问题。但对于过长序列仍难以有很好表现。此外Seq2Seq的输出序列通常会损失部分输入序列信息,因为解码时丢失了当前词与对应源语言词的上下文信息和位置信息。
在这里插入图片描述

四、.知道哪些命名实体识别算法?具体的优缺点?

命名实体识别(Named EntitiesRecognition, NER)是自然语言处理(Natural LanguageProcessing, NLP)的一个基础任务。其目的是识别语料中人名、地名、组织机构名等命名实体。由于这些命名实体数量不断增加,通常不可能在词典中穷尽列出,且其构成方法具有各自的一些规律性,因而,通常把对这些词的识别从词汇形态处理(如汉语切分)任务中独立处理,称为命名实体识别。命名实体识别技术是信息抽取、信息检索、机器翻译、问答系统等多种自然语言处理技术必不可少的组成部分。

命名实体是命名实体识别的研究主体,一般包括3大类(实体类、时间类和数字类)和7小类(人名、地名、机构名、时间、日期、货币和百分比)命名实体。评判一个命名实体是否被正确识别包括两个方面:实体的边界是否正确;实体的类型是否标注正确。主要错误类型包括文本正确,类型可能错误;反之,文本边界错误,而其包含的主要实体词和词类标记可能正确。

命名实体识别的主要技术方法分为:基于规则和词典的方法、基于统计的方法、二者混合的方法等。

- 基于规则和词典的方法
基于规则的方法多采用语言学专家手工构造规则模板,选用特征包括统计信息、标点符号、关键字、指示词和方向词、位置词(如尾字)、中心词等方法,以模式和字符串相匹配为主要手段,这类系统大多依赖于知识库和词典的建立。基于规则和词典的方法是命名实体识别中最早使用的方法,一般而言,当提取的规则能比较精确地反映语言现象时,基于规则的方法性能要优于基于统计的方法。但是这些规则往往依赖于具体语言、领域和文本风格,编制过程耗时且难以涵盖所有的语言现象,特别容易产生错误,系统可移植性不好,对于不同的系统需要语言学专家重新书写规则。基于规则的方法的另外一个缺点是代价太大,存在系统建设周期长、移植性差而且需要建立不同领域知识库作为辅助以提高系统识别能力等问题。

- 基于统计的方法
基于统计机器学习的方法主要包括:隐马尔可夫模型(HiddenMarkovMode,HMM)、最大熵(MaxmiumEntropy,ME)、支持向量机(Support VectorMachine,SVM)、条件随机场( ConditionalRandom Fields,CRF)等。

在这4种学习方法中,最大熵模型结构紧凑,具有较好的通用性,主要缺点是训练时间复杂性非常高,有时甚至导致训练代价难以承受,另外由于需要明确的归一化计算,导致开销比较大。而条件随机场为命名实体识别提供了一个特征灵活、全局最优的标注框架,但同时存在收敛速度慢、训练时间长的问题。一般说来,最大熵和支持向量机在正确率上要比隐马尔可夫模型高一些,但是隐马尔可夫模型在训练和识别时的速度要快一些,主要是由于在利用Viterbi算法求解命名实体类别序列的效率较高。隐马尔可夫模型更适用于一些对实时性有要求以及像信息检索这样需要处理大量文本的应用,如短文本命名实体识别。

基于统计的方法对特征选取的要求较高,需要从文本中选择对该项任务有影响的各种特征,并将这些特征加入到特征向量中。依据特定命名实体识别所面临的主要困难和所表现出的特性,考虑选择能有效反映该类实体特性的特征集合。主要做法是通过对训练语料所包含的语言信息进行统计和分析,从训练语料中挖掘出特征。有关特征可以分为具体的单词特征、上下文特征、词典及词性特征、停用词特征、核心词特征以及语义特征等。

基于统计的方法对语料库的依赖也比较大,而可以用来建设和评估命名实体识别系统的大规模通用语料库又比较少。

- 混合方法
自然语言处理并不完全是一个随机过程,单独使用基于统计的方法使状态搜索空间非常庞大,必须借助规则知识提前进行过滤修剪处理。目前几乎没有单纯使用统计模型而不使用规则知识的命名实体识别系统,在很多情况下是使用混合方法:

  1. 统计学习方法之间或内部层叠融合
  2. 规则、词典和机器学习方法之间的融合,其核心是融合方法技术
  3. 将各类模型、算法结合起来,将前一级模型的结果作为下一级的训练数据,并用这些训练数据对模型进行训练,得到下一级模型。

NER研究进展的大概趋势

  • 在基于机器学习的方法中,NER被当作序列标注问题。利用大规模语料来学习出标注模型,从而对句子的各个位置进行标注。输入是一段序列,预测其中每个单词的标签(是不是命名实体,是哪种实体)。NER 任务中的常用模型包括生成式模型HMM、判别式模型CRF等。其中条件随机场是NER目前的主流模型。ÏÏ它的目标函数不仅仅考虑输入的状态特征函数,而且还包含标签转移特征函数。在训练时可以采用SGD学习模型参数。在已知模型,给定输入序列,预测输出序列也就是求使目标函数最大化的最优序列,是一个动态规划问题,可以使用Viterbi算法解码求得最优标签序列。CRF的优点在于其为一个序列进行标注的过程中充分利用内部及上下文特征信息。

  • 随着词的分布式表示(wordembedding)的提出,神经网络可以有效处理许多NLP任务。这类方法对于序列标注任务(POS、NER)的处理方法是相似的:将token从离散one-hot表示映射到低维空间中成为稠密的embedding,随后将句子的embedding序列输入到RNN中,用神经网络自动提取特征,Softmax来预测每个token的标签。

  • 缺点在于对每个token打标签的过程是独立的进行,不能直接利用上文已经预测的标签(只能靠隐含状态传递上文信息),进而导致预测出来的标签可能会是无效的。

学界提出了DL-CRF模型做序列标注。在神经网络的输出层接入CRF层(重点是利用标签转移概率)来做句子级别的标签预测,使得标注过程不再是对各个token独立分类。

BiLSTM-CRF模型

应用于NER中的biLSTM-CRF模型主要由Embedding层(主要有词向量,字向量以及一些额外特征),双向LSTM层,以及最后的CRF层构成。实验结果表明biLSTM-CRF已经达到或者超过了基于丰富特征的CRF模型,成为目前基于深度学习的NER方法中的最主流模型。在特征方面,该模型继承了深度学习方法的优势,无需特征工程,使用词向量以及字符向量就可以达到很好的效果,如果有高质量的词典特征,能够进一步获得提高。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/484818
推荐阅读
相关标签
  

闽ICP备14008679号