NLP 主要任务
- 序列标注:分词/命名实体识别/语义角色标注…
句子中每个单词要求模型根据上下文都要给出一个分类类别 - 分类任务:文本分类/情感分析
不管文章有多长,总体给出一个分类类别即可 - 生成式子任务:翻译/摘要生成/写诗造句/看图说话
输入文本内容后,需要自主生成另外一段文字 - 句子关系判断:QA/自然语言推理
给定两个句子,模型判断出两个句子是否具备某种语义关系
NLP 特点
NLP的输入往往是一句话或者一篇文章,所以它有几个特点:
- 输入是个一维线性序列,这个好理解;
- 输入是不定长的,有的长有的短,而这点其实对于模型处理起来也会增加一些小麻烦
- 再次,单词或者子句的相对位置关系很重要,两个单词位置互换可能导致完全不同的意思。
特征提取对比
1、RNN
原始的RNN也存在问题,它采取线性序列结构不断从前往后收集输入信息,但这种线性序列结构在反向传播的时候存在优化困难问题,因为反向传播路径太长,容易导致严重的梯度消失或梯度爆炸问题。为了解决这个问题,后来引入了LSTM和GRU模型,通过增加中间状态信息直接向后传播,以此缓解梯度消失问题,获得了很好的效果,于是很快LSTM和GRU成为RNN的标准模型。
为什么RNN能够这么快在NLP流行并且占据了主导地位呢?
主要原因还是因为RNN的结构天然适配解决NL