108 | RNN在自然语言处理中有哪些应用场景?
洪亮劼
该思维导图由 AI 生成,仅供参考
周一我们进一步展开了 RNN 这个基本框架,讨论了几个流行的 RNN 模型实现,从最简单的 RNN 模型到为什么需要“门机制”,再到流行的 LSTM 和 GRU 框架的核心思想。
今天,我们就来看一看 RNN 究竟在自然语言处理的哪些任务和场景中有所应用。
简单分类场景
我们首先来聊一种简单的分类场景。在这种场景下,RNN 输入一个序列的文字,然后根据所有这些文字,做一个决策,或者叫作输出一个符号。这类应用是文本挖掘和分析中最基本的一个场景。
在绝大多数的“简单分类”任务中,传统的文字表达,例如“词包”(Bag of Word)或者“N 元语法”(Ngram),经常都能有不错的表现。也就是说,在很多这类任务中,文字的顺序其实并不是很重要,或者说词序并没有携带更多的语义信息。
然而,实践者们发现,在一些场景中,如果利用 RNN 来对文字序列进行建模,会获得额外的效果提升。比如有一类任务叫作“句子级别的情感分类”(Sentence-Level Sentiment Classification),这类任务常常出现在分析商品的评论文本(Review)这个场景。这时候,我们需要对每一个句子输出至少两种感情色彩的判断,褒义或者贬义,正面或者负面。比如,我们在分析电影评价的时候,就希望知道用户在某一个句子中是否表达了对电影“喜爱”或者“不喜爱”的情绪。
面对这样句子级别的情感分析,一种比较通行的利用 RNN 建模的方式是:把每一个单词作为一个输入单元,然后把一个句子当作一个序列输入到一个 RNN 中去,RNN 来维持一个隐含的状态。
对于这类应用,不是每一个隐含状态都有一个输出,而是在句子结束的时候,利用最后的隐含状态来产生输出。对于这类任务而言,输出的状态就是一个二元判断,那么我们需要利用最后的隐含状态来实现这个目的。一般来说,在深度模型的架构中,这个步骤是利用最后的隐含状态,然后经过多层感知网络,最后进行一个二元或者多元的分类。这其实是一个标准的分类问题的构建。
在有的应用中,研究者们发现可以利用两个 RNN 建立起来的链条,从而能够更进一步地提升最后的分类效果。在我们刚才描述的建模步骤里,RNN 把一个句子从头到尾按照正常顺序进行了输入并归纳。另外一种建模方式是利用 RNN 去建模句子的逆序,也就是把整个句子倒过来,学习到一个逆序的隐含状态。接下来,我们把顺序的最后隐含状态和逆序的最后隐含状态串联起来,成为最终放入分类器需要学习的特性。这种架构有时候被称作“双向模型”。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
RNN在自然语言处理中有多种应用场景。首先,它可用于简单的分类任务,如句子级情感分类,通过将每个单词作为输入单元,将整个句子作为序列输入到RNN中,利用最后的隐含状态进行二元判断。此外,研究者们还发现通过利用两个RNN建立的链条,即正序和逆序建模,可以进一步提升分类效果。在文档情感分类等任务中,层次式RNN建模将文档拆分成小单元,利用RNN对不同级别的数据进行建模,然后将结果串联起来。 其次,RNN在文本信息特性提取方面发挥作用,特别适用于对文字顺序有一定要求的任务。例如,对于词类标注任务,双向RNN能够包含上下文的隐含信息,有助于分析每个词的词性。此外,结合卷积神经网络(CNN)和RNN进行文档分类,CNN提取局部信息,然后将其输入RNN中,更好地利用RNN对文章的高维度特征进行建模。 总的来说,RNN在自然语言处理中的应用场景多种多样,包括句子级情感分类、文档情感分类、词类标注等任务。它不仅可以用于简单的分类任务,还可作为文本信息特性提取器,对文字顺序有一定要求的任务发挥作用。这些应用展示了RNN在处理自然语言时的强大潜力。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《AI 技术内参》,新⼈⾸单¥98
《AI 技术内参》,新⼈⾸单¥98
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(1)
- 最新
- 精选
- humanchaornn很难捕捉文档整体内容,1.多文档长度不一,网络参数不好确定 2. 文档长度过长,面向整体建模而不是面向标注目标建模,长短特征兼顾导致训练困难。2018-05-12
收起评论