主要内容

scalingLayer

演员或评论家网络的缩放层

描述

缩放层线性缩放输入阵列并使其偏置U,给出输出Y =。* U +偏见.你可以将这一层整合到你在强化学习代理中为参与者或批评者定义的深度神经网络中。这一层用于缩放和移动非线性层的输出,例如tanhLayer和乙状结肠。

例如,一个tanhLayer给出介于-1和1之间的有界输出。如果您的参与者网络输出有不同的边界(如参与者规范中定义的那样),您可以包括ScalingLayer作为输出,以适当缩放和移动行动者网络输出。

a的参数ScalingLayer对象不可学习。

创建

描述

捉鬼= scalingLayer创建一个具有默认属性值的缩放层。

例子

捉鬼= scalingLayer (名称,值属性使用名称-值对。例如,scalingLayer(“规模”,0.5)创建一个缩放层,将输入缩放0.5。将每个属性名用引号括起来。

属性

全部展开

层名,指定为字符向量。若要在层图中包含层,必须指定非空的唯一层名。如果你用这一层训练一系列网络的名字被设置为'',然后软件在训练时自动为该层分配一个名称。

此属性是只读的。

层的描述,指定为字符向量。在创建缩放层时,可以使用此属性为其提供描述,以帮助确定其用途。

在缩放层的输入上按元素进行缩放,指定为以下方式之一:

  • 标量——为输入数组的所有元素指定相同的比例因子。

  • 与输入数组相同维度的数组——为输入数组的每个元素指定不同的比例因子。

缩放层接受一个输入U然后产生输出Y =。* U +偏见

元素对缩放层的输入的偏差,指定为如下之一:

  • 标量-为输入数组的所有元素指定相同的偏差。

  • 与输入数组相同维度的数组——为输入数组的每个元素指定不同的偏差。

缩放层接受一个输入U然后产生输出Y =。* U +偏见

例子

全部折叠

创建一个缩放层来转换输入数组U到输出数组Y = 0.1。* U - 0.4

杀手= scalingLayer (“规模”, 0.1,“偏见”, -0.4)
sLayer = ScalingLayer with properties: Name: 'scaling' Scale: 0.1000 Bias: -0.4000 Learnable Parameters无属性状态参数无属性。显示所有属性

确认缩放层按预期缩放和偏移输入数组。

预测(猎人,[10年,20年,30])
ans =1×30.6000 1.6000 2.6000

你可以把捉鬼进入一个演员网络或评论家网络来加强学习。

假设在scalingLayer是一个tanhLayer三个输出沿第一个维度对齐,你想要使用scalingLayer

Scale = [2.5 0.4 10]';Bias = [5 0 -50]';

创建scalingLayer对象。

杀手= scalingLayer (“规模”、规模、“偏见”、偏差);

确认缩放层将正确的缩放和偏差值应用于具有预期尺寸的数组。

testData = [10 10 10]';testData预测(猎人)
ans =3×130 4 50

扩展功能

GPU的代码生成
使用GPU Coder™为NVIDIA®GPU生成CUDA®代码。

介绍了R2019a