选通递归层

选通递归层[n个]

表示一个可训练的递归层,该层接受一系列向量并生成一系列大小各异的向量n个.

选通递归层[n个,opts选项]

包括初始权重和其他参数的选项。

详细信息和选项

  • 选通递归层[n个]表示一个网络,该网络采用表示向量序列的输入矩阵,并输出相同长度的序列。
  • 输入序列的每个元素都是一个大小向量k个,并且输出序列的每个元素都是一个大小向量n个.
  • 尺寸k个通常在NetGraph(网络图形),网络链等。
  • 网络的输入和输出端口由选通递归层[n个]是:
  • “输入”大小向量序列k个
    “输出”大小向量序列n个
  • 给定输入序列{x个1,x个2,,x个T型},一个选通递归层输出一系列状态{1,2,,T型}使用以下递归关系:
  • 输入门=物流Sigmoid[W公司.x个+W公司.t吨-1+b条]
    重置闸门第页=物流Sigmoid[W公司接收.x个+W公司.t吨-1+b条第页]
    存储器门=坦恩(Tanh)[W公司mx(百万倍).x个+第页*(W公司毫秒.t吨-1)+b条]
    状态=(1-)*+*t吨-1
  • 上述定义选通递归层基于Chung等人所述的变体。,门限递归神经网络在序列建模中的实证评价, 2014.
  • 选通递归层[n个]还有一个州端口,“状态”,这是一个大小向量n个.
  • NetGraph(网络图形),表单的连接src公司->NetPort(网络端口)[,“状态”]可以用于提供状态的初始值选通递归层,对应于0在递归关系中。默认初始值为零向量。
  • NetGraph(网络图形),窗体的连接NetPort(网络端口)[,“状态”]->数据传输系统可用于获取状态的最终值选通递归层,对应于T型在递归关系中。
  • NetState对象可用于创建一个网络,该网络将记住状态的值选通递归层当网络应用于输入时进行更新。
  • 已初始化的选通递归层[]操作大小向量的k个包含以下可训练数组:
  • “InputGateInputWeights”W公司尺寸矩阵n个×k个
    “输入网关状态权重”W公司尺寸矩阵n个×n个
    “InputGateBiases”b条大小向量n个
    “重置网关输入权重”W公司接收尺寸矩阵n个×k个
    “重置网关状态权重”W公司尺寸矩阵n个×n个
    “重置网关比亚斯”b条第页大小向量n个
    “MemoryGateInputWeights”W公司mx(百万倍)尺寸矩阵n个×k个
    “内存网关状态权重”W公司毫秒尺寸矩阵n个×n个
    “MemoryGateBiases”b条大小矢量n个
  • 选通递归层[n个,opts选项],可以使用以下形式的规则为可训练数组提供初始值"阵列"->价值.
  • 可以包括以下培训参数:
  • “退出”辍学正规化,单位概率设置为零
    学习率乘数自动可训练阵列的学习速率乘数
  • 指定“退出”->在训练期间禁用辍学。
  • 指定“退出”->第页应用具有辍学概率的自动选择辍学方法第页.
  • 指定“退出”->{"方法1"->第页1,"方法2"->第页2,}可用于将特定的辍学方法与相应的辍学概率相结合。可能的方法包括:
  • “可变重量”dropout在权重矩阵间递归联系中的应用(违约)
    “变体输入”应用于输入的门贡献的丢失,在每个序列步骤中使用相同的单元模式
    “变体状态”退学适用于前一州的门贡献,在每个序列步骤中使用相同的单元模式
    “状态更新”在将状态更新向量添加到之前的状态之前,应用于该向量的丢失,在每个序列步骤中使用不同的单元模式
  • 辍学方法“变体输入”“变体状态”基于Gal等人2016年的方法,而“状态更新”基于Semeniuta等人2016年的方法和“可变重量”基于Merity等人2017年的方法。
  • 选通递归层[n个,“输入”->形状]允许指定输入的形状。可能的形式形状是:
  • 网络编码器[]产生矢量序列的编码器
    {伦恩,k个}序列伦恩长度-k个向量
    {,自动}序列长度被推断的向量
    {“不断变化”,k个}改变每个长度的向量数k个
    {“不断变化”,自动}改变每个推断长度的向量数
  • 当给出一个NumericArray(数字阵列)作为输入,输出将是NumericArray(数字阵列).
  • 选项[选通递归层]给出了构造层的默认选项列表。选项[选通递归层[]]给出了在某些数据上评估层的默认选项列表。
  • 问询处[选通递归层[]]给出了有关层的报告。
  • 问询处[选通递归层[],支柱]给出属性的值支柱属于选通递归层[].可能的属性与的相同NetGraph(网络图形).

示例

全部打开全部关闭

基本示例  (2)

创建一个选通递归层产生长度为3的向量序列:

创建一个随机初始化的选通递归层它采用长度为2的向量序列,并生成长度为3的向量序列:

将层应用于输入序列:

范围  (5)

论据  (1)

创建一个选通递归层产生长度为3的向量序列:

端口  (4)

创建一个随机初始化的选通递归层它接受一个字符串并生成一个长度为2的向量序列:

将层应用于输入字符串:

将层穿过一批输入:

创建一个随机初始化的网络,该网络采用一系列长度为2的向量,并生成一个长度为3的向量:

将层应用于输入:

将层穿过一批输入:

创建一个NetGraph(网络图形)允许的初始状态选通递归层要设置:

创建一个NetGraph(网络图形)允许的最终状态选通递归层待获得:

最终状态是输出序列的最后一个元素:

选项  (2)

“退出”  (2)

创建一个选通递归层指定了辍学方法:

创建一个随机初始化的选通递归层具有规定的辍学概率:

在向量序列上评估层:

在评估期间退出没有影响:

使用NetEvaluation模式强迫辍学的训练行为:

对同一输入进行多次评估可以得出不同的结果:

应用  (2)

创建由描述两位数加法和相应数字结果的字符串组成的训练数据:

使用堆叠创建网络选通递归层读取输入字符串并预测数值结果的层:

训练网络:

将经过训练的网络应用于输入列表:

基于包含x和y的字符串创建训练数据减去,更大的相等通过比较x和y的数量,训练数据包括所有可能的句子,长度不超过8:

创建包含选通递归层读取输入字符串并预测其中一个减去,更大相等:

训练网络:

将经过训练的网络应用于输入列表:

测量整个训练集的准确性:

属性和关系  (1)

NetState对象可以用来创建一个记住选通递归层:

每个求值都会修改存储在NetState对象:

Wolfram Research(2017),GatedRecurrentLayer,Wolfram语言函数,https://reference.wolfram.com/language/ref/GatedRecurrentLayer.html。

文本

Wolfram Research(2017),GatedRecurrentLayer,Wolfram语言函数,https://reference.wolfram.com/language/ref/GatedRecurrentLayer.html。

CMS公司

沃尔夫拉姆语言。2017.“GatedRecurrentLayer”,Wolfram语言与系统文档中心。Wolfram研究。https://reference.wolfram.com/language/ref/GatedRecurrentLayer.html。

亚太地区

沃尔夫拉姆语言。(2017). GatedRecurrentLayer。Wolfram语言与系统文档中心。检索自https://reference.wolfram.com/language/ref/GatedRecurrentLayer.html

BibTeX公司

@misc{reference.wolfram_2024_gatedrecurrentlayer,author=“wolfram Research”,title=“{gatedrecurrentlayer}”,year=“2017”,howpublished=“\url{https://reference.jolfram.com/language/ref/GatedRecurrent Layer.html}”]}

BibLaTeX公司

@online{reference.wolfram_2024_gatedrecurrentlayer,organization={wolfram Research},title={gatedrecurrentlayer},year={2017},url={https://reference.jolfram.com/language/ref/GatedRecurrent Layer.html},note=[访问时间:2024年6月8日]}