nlp深度学习基础-CNN、GNN、RNN

文章目录

    • 卷积神经网络CNN
      • 卷积层
      • 池化层
      • 全连接层
      • CNN网络结构
      • 结构特性
      • 参数学习
      • CNN在NLP上的应用
    • 图卷积神经网络GNN
      • 结构
      • 参数维度
      • 卷积步骤
    • 循环神经网络RNN
      • 单元结构
      • 网络结构
      • 输入输出结构
      • 参数学习算法
      • 长短时记忆神经网络LSTM(long short-term memory)
      • GRU(Gated Recurrent Unit)

卷积神经网络CNN

  • DNN存在的问题,当层数和神经元个数都很大时,权重矩阵的参数也会非常多,训练效率就会非常低。
  • 解决方案:CNN

组成
CNN是由卷积层、子采样层、全连接层交叉堆叠而成

卷积层

nlp深度学习基础-CNN、GNN、RNN_第1张图片
单卷积核:输入多少层输出多少层
nlp深度学习基础-CNN、GNN、RNN_第2张图片

多卷积核:输出不一样的层数
nlp深度学习基础-CNN、GNN、RNN_第3张图片

问题: 卷积连接虽然减少了参数,但网络规模(结点数)并没有减少
解决方案: 池化(Pooling)

池化层

通过采用缩小网络规模
优点:网络规模缩小,参数量进一步减少

常用池化方法

  1. Max Pooling
  2. Mean Pooling
    nlp深度学习基础-CNN、GNN、RNN_第4张图片

全连接层

将最后池化层的单元“平化”然后组成全连接输入网
nlp深度学习基础-CNN、GNN、RNN_第5张图片

CNN网络结构

  • 输入:X
  • 输出:Y
  • 参数:各卷积层中各过滤值和偏置;卷积层到池化层权重和偏置;全连接输出网络各连接权重和偏置
  • 函数关系:X->Y:若干(卷积层+采样层)+全连接层

结构特性

  1. 局部连接
  2. 权重共享
  3. 空间或时间上的次采样

参数学习

超参数 权重变量 状态变量
迭代轮数
学习率
batch大小
卷积核大小
卷积步长
特征图个数
池化大小
卷积核的权值
卷积核的偏置
全连接的权值
输入图片数据
输入图片对应类别

CNN在NLP上的应用

各种分类任务:文本分析、情感分析、实体关系抽取等等
用于其他任务的特征提取


图卷积神经网络GNN

结构

nlp深度学习基础-CNN、GNN、RNN_第6张图片

  • 输入:原网状结构
  • 输出:带有原图特征信息的网结构

问题:邻接结点的个数不能确定
解决方案:先将结点的邻接结点聚集到结点旁边

nlp深度学习基础-CNN、GNN、RNN_第7张图片

参数维度

X:结点数*特征数
W:特征数*下一层的特征数
nlp深度学习基础-CNN、GNN、RNN_第8张图片
nlp深度学习基础-CNN、GNN、RNN_第9张图片

卷积步骤

方案一、Basic GNN
把邻接结点先聚集到实心结点中

h v k = σ ( W k ∑ u ϵ N ( v ) h u k − 1 ∣ N ( v ) ∣ + B k h v k − 1 ) h_{v}^{k}=\sigma(W_{k}\sum_{u\epsilon N(v)}\frac{h_{u}^{k-1}}{|N(v)|}+B_{k}h_{v}^{k-1}) hvk=σ(WkuϵN(v)N(v)huk1+Bkhvk1)

平均邻接结点再加上上一层传过来的结点

方案二、GCN
连同自身聚集到实心结点

h v k = σ ( W k ∑ u ϵ N ( v ) ∪ v h u k − 1 ∣ N ( u ) ∣ ∣ N ( v ) ∣ ) h_{v}^{k}=\sigma(W_{k}\sum_{u\epsilon N(v)\cup v}\frac{h_{u}^{k-1}}{\sqrt{|N(u)||N(v)|}}) hvk=σ(WkuϵN(v)vN(u)∣∣N(v) huk1)

有向图的GNN
出度和入度分开,各卷各的

GNN变形
根据结点聚集和层级连接方法的不同有大量不同形式的GNN


循环神经网络RNN

DNN、CNN存在的问题:

  • 输入、输出定长;处理输入输出变长问题效率不高,但NLP中语句通常长度不固定
  • 单一DNN、CNN无法处理时序相关序列问题

解决方案:RNN

RNN核心思想

将处理问题在时序上分解为一系列相同的“单元”,单元的神经网络可以在时序上展开,且能将上一时刻的结果传递给下一时刻,整个网络按时间轴展开,即可边长

单元结构

nlp深度学习基础-CNN、GNN、RNN_第10张图片
输入:X,来自上时刻隐藏层
输出:Y,给下时刻隐藏层
参数: W i 、 W o 、 W h W_{i}、W_{o}、W_{h} WiWoWh
信息传播: h ( t ) = σ ( W i X + W h h ( t − 1 ) + b ) h(t)=\sigma(W_{i}X+W_{h}h(t-1)+b) h(t)=σ(WiX+Whh(t1)+b)
Y = s o f t m a x ( W o h ( t ) ) Y=softmax(W_{o}h(t)) Y=softmax(Woh(t))

网络结构

nlp深度学习基础-CNN、GNN、RNN_第11张图片

输入输出结构

nlp深度学习基础-CNN、GNN、RNN_第12张图片

参数学习算法

BPTT(Backpropagation through time)

问题:距离当前结点越远的结点对当前结点处理影响会越来越小,无法建模长时间的以来
解决方法:LSTM、GRU等

长短时记忆神经网络LSTM(long short-term memory)

基本思想:不仅接受 x t 和 h t − 1 x_{t}和h_{t-1} xtht1,还需要建立一个机制能够保留前面远处结点信息在长距离传播中不会被丢失
nlp深度学习基础-CNN、GNN、RNN_第13张图片
nlp深度学习基础-CNN、GNN、RNN_第14张图片

GRU(Gated Recurrent Unit)

是LSTM简化,输入门和遗忘门合并为更新门(更新门决定隐状态保留放弃部门)

nlp深度学习基础-CNN、GNN、RNN_第15张图片nlp深度学习基础-CNN、GNN、RNN_第16张图片

nlp深度学习基础-CNN、GNN、RNN_第17张图片

你可能感兴趣的:(深度学习,cnn,自然语言处理)