主要内容

堆栈

类:Autoencoder

将几个自动编码器的编码器堆叠在一起

描述

stackkednet = stack(autoenc1,autoenc2,…)返回一个网络通过堆叠自动编码器的编码器创建的对象,autoenc1autoenc2等等。

例子

stackkednet = stack(autoenc1,autoenc2,…,net1)返回一个由自动编码器的编码器和网络对象堆叠而成的网络对象net1

自动编码器和网络对象只有在尺寸匹配时才能堆叠。

输入参数

全部展开

经过训练的自动编码器,指定为Autoencoder对象。

经过训练的自动编码器,指定为Autoencoder对象。

训练过的神经网络,指定为网络对象。net1可以是一个softmax层,训练使用trainSoftmaxLayer函数。

输出参数

全部展开

堆叠神经网络(深度网络),返回为网络对象

例子

全部展开

加载训练数据。

[X,T] = iris_dataset;

训练一个具有大小为5的隐藏层和解码器的线性传递函数的自动编码器。将L2权重正则化器设置为0.001,稀疏性正则化器设置为4,稀疏性比例设置为0.05。

hiddenSize = 5;autoenc = trainAutoencoder(X, hiddenSize,...“L2WeightRegularization”, 0.001,...“SparsityRegularization”4...“SparsityProportion”, 0.05,...“DecoderTransferFunction”“purelin”);

图神经网络训练(03- 03- 2023 09:03:59)包含一个类型为uigridlayout的对象。

提取隐层特征。

特征=编码(autoenc,X);

训练一个softmax层进行分类使用特性

softnet = trainSoftmaxLayer(特征,T);

图神经网络训练(03-03-2023 09:04:13)包含一个类型为uigridlayout的对象。

将编码器和softmax层堆叠起来,形成一个深度网络。

stackkednet = stack(autoenc,softnet);

查看堆叠网络。

视图(stackednet);

提示

  • 一个自动编码器的隐藏表示的大小必须与堆栈中下一个自动编码器或网络的输入大小相匹配。

    堆叠网络的第一个输入参数是第一个自编码器的输入参数。来自第一个自编码器的编码器的输出参数是堆叠网络中第二个自编码器的输入。第二个自编码器的编码器的输出参数是堆叠网络中第三个自编码器的输入参数,依此类推。

  • 堆叠网络对象stacknet从最终输入参数继承其训练参数net1

版本历史

在R2015b中引入