主要内容

理解浅层网络数据结构

本主题讨论输入数据结构的格式如何影响网络的模拟。它开始于静态网络,然后是动态网络。下一节描述数据结构的格式如何影响网络训练。

有两种基本类型的输入向量:出现的输入向量同时(在同一时间,或没有特定的时间顺序),以及那些发生的按顺序在时间。对于并发向量,顺序并不重要,如果有多个网络并行运行,则可以向每个网络表示一个输入向量。对于顺序向量,向量出现的顺序很重要。

静态网络中具有并发输入的仿真

模拟一个网络的最简单的情况发生在被模拟的网络是静态的(没有反馈或延迟)。在这种情况下,您不需要关心输入向量是否以特定的时间序列出现,因此您可以将输入视为并发的。此外,假设网络只有一个输入向量,问题就变得更简单了。以如下组网为例。

为了建立这个线性前馈网络,使用以下命令:

网= linearlayer;net.inputs{1}。大小= 2;net.layers{1}。尺寸= 1;

为简单起见,将权重矩阵和偏差赋值为W= [1 2]b=[0]。

这些作业的命令是

网。Iw {1,1} = [1 2];网。b{1} = 0;

假设网络仿真数据集包括= 4个并发向量:

p 1 1 2 , p 2 2 1 , p 3. 2 3. , p 4 3. 1

并行向量以单个矩阵的形式表示到网络中:

P = [1 2 2 3;2 1 3 1];

你现在可以模拟网络:

A = net(P

将一个并行向量矩阵提供给网络,网络产生一个并行向量矩阵作为输出。如果有四个并行运行的网络,每个网络接收一个输入向量并产生一个输出,结果将是相同的。输入向量的顺序并不重要,因为它们之间没有相互作用。

动态网络中顺序输入的模拟

当一个网络包含时延时,网络的输入通常是一个输入向量序列,它们按照一定的时间顺序出现。为了说明这种情况,下图显示了一个包含一个延迟的简单网络。

下面的命令创建这个网络:

Net = linearlayer([0 1]);net.inputs{1}。大小= 1;net.layers{1}。尺寸= 1;网。biasConnect = 0;

将权重矩阵赋值为W=[1 - 2]。

的命令是:

网。Iw {1,1} = [1 2];

假设输入序列为:

p 1 1 , p 2 2 , p 3. 3. , p 4 4

序贯输入以a的元素形式呈现给网络单元阵列:

P = {1 2 3 4};

你现在可以模拟网络:

A = net(P) A = [1] [4] [7] [10]

输入一个包含一系列输入的单元数组,网络就会产生一个包含输出序列的单元数组。当输入以序列的形式呈现时,输入的顺序是很重要的。在这种情况下,电流输出是通过将电流输入乘以1和前面的输入乘以2,然后对结果求和得到的。如果要改变输入的顺序,那么在输出中获得的数字也会改变。

动态网络中具有并发输入的仿真

如果您将相同的输入应用为一组并发输入,而不是一系列输入,那么您将获得完全不同的响应。(但是,还不清楚为什么要使用动态网络这样做。)这就好像每个输入都被同时应用到一个独立的并行网络。对于前面的例子,动态网络中顺序输入的模拟如果你使用的是一组并发的输入

p 1 1 , p 2 2 , p 3. 3. , p 4 4

可以用下面的代码创建:

P = [1 2 3 4];

当您使用并发输入进行模拟时,您得到

A = net(P

结果与将每个输入同时应用到单独的网络并计算一个输出是一样的。请注意,因为您没有为网络延迟分配任何初始条件,所以假定它们为0。在这种情况下,输出就是1乘以输入,因为乘以当前输入的权值是1。

在某些特殊情况下,您可能希望同时模拟对几个不同序列的网络响应。在本例中,您可能希望用一组并发序列来表示网络。例如,假设你想向网络呈现以下两个序列:

p 1 1 1 , p 1 2 2 , p 1 3. 3. , p 1 4 4 p 2 1 4 , p 2 2 3. , p 2 3. 2 , p 2 4 1

输入P应该是一个单元数组,数组中的每个元素包含同时出现的两个序列中的两个元素:

P = {[1 4] [2 3] [3 2] [4 1]};

你现在可以模拟网络:

一个=净(P);

得到的网络输出将是

A = {[1 4] [4 11] [7 8] [10 5]}

正如您所看到的,每个矩阵的第一列构成了第一个输入序列产生的输出序列,这个输入序列就是前面示例中使用的那个。每个矩阵的第二列构成由第二个输入序列产生的输出序列。两个并行序列之间没有相互作用。这就好像它们各自应用于并行运行的独立网络。

下图显示了网络输入的一般格式P当有并发序列TS时间的步骤。它涵盖了所有只有一个输入向量的情况。每个元素细胞阵列是一个并行向量矩阵,对应于每个序列的同一时间点。如果有多个输入向量,则在单元数组中会有多行矩阵。

在本主题中,您将向动态网络应用顺序和并发输入。在静态网络中具有并发输入的仿真,您将并发输入应用到静态网络。也可以将顺序输入应用到静态网络中。它不会改变网络的模拟响应,但会影响网络的训练方式。这一点在神经网络训练概念

另请参阅配置浅神经网络输入输出