【每周一文】Supervised Sequence Labelling with Recurrent Neural Networks

本文介绍了NLP中的序列化标注问题,探讨了深度学习模型如FNN、RNN、Bi-RNN和LSTM在处理序列数据时的作用。重点讲解了RNN的演化,包括LSTM如何通过门控机制解决长期依赖问题。还提到了其他模型如CTC、多维RNN、层次RNN和注意力模型,并强调了它们在不同NLP任务中的适用性。
摘要由CSDN通过智能技术生成

概述

序列化标注是NLP领域非常常见的问题,很多问题都可以归结为序列化标注问题,例如分类可以看做多对一的标注;词性标注属于一对一的标注;机器翻译属于多对多的标注。
深度学习在NLP上取得不错的效果,常用的模型有前向神经网络(FNN)、卷积神经网络(CNN)、循环神经网络(RNN、BIRNN)、LSTM、关注度模型(AM)等,对于特定任务还有相关变形
本文主要科普下各个模型的结构,方便在后续NLP任务中应用。

RNN技术演化

常见激活函数

在多层神经网络中,一般先进行线性变换,然后进行非线性变换。如果多层神经网络只进行线性变换可以证明和一层网络一致。常见的非线性变换函数,也叫激活函数,如下:
这里写图片描述

常用的以sigmoid和tanh为主,他们都是将实数区间转换为固定区间(0,1)或者(-1,1)

前向神经网络(FNN)

FNN也称之为多层神经网络,主要结构如下:
这里写图片描述

  1. FNN 整体分为三层,输入层、隐含层和输出层,可以理解为输入层为原始特征层常常表示为向量结构;隐含层为特征非线性变换层;输出层为特征变换后的结果。
  2. 输入层表示为:x
  3. 隐藏层表示为
    ah=i=1Iwihxibh=θh(ah)
  4. 输出层表示为
    ao=i=1HLwiobi
  5. 模型层:一般会根据不同的问题选择不同的模型或者损失函数,对于回归问题均方差;二分类问题采用sigmoid变换采用对数损失;多分类问题采用softmax;以二分类为例
    y=sigmoid(ao)l(zi,xi)=ziln(y)+(1zi)ln(1y)
  6. 模型计算,可以采用标准的BP算法进行求解,即采用链式规则求解,这里不再赘述。

循环神经网络(RNN)

简单的FNN不太适用于NLP,主要原因是没有考虑上下文特征,如果仅仅考虑前一个词特征,可以考虑使用RNN,结构如下:
这里写图片描述
1. 该图看上去比较复杂,可以简单的理解为计算某个神经元时,除了考虑当前输入外,还要考虑上一时间点隐藏状态值,从公式看一目了然

ath=i=1Iwihx
  • 6
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值