主要内容

可视化LSTM网络的激活

此示例显示如何通过提取激活来调查和可视化LSTM网络学习的功能。

加载净化网络。Japanesevowelsnet.是在日本元音数据集上培训的预磨削的LSTM网络,如[1]和[2]中所述。它训练在序列长度排序的序列中,含有迷你批量大小为27。

加载Japanesevowelsnet.

查看网络架构。

net.layers.
ANS = 5x1层阵列具有图层:1'SENDUNINPUT'序列输入序列输入序列输入12尺寸2'LSTM'LSTM LSTM LSTM LSTM为100个隐藏单元3'FC'完全连接的9完全连接的第4层SoftMax'SoftMax SoftMax SoftMax 5'ClassOutput'分类输出Crossentropyex与“1”和其他8个类

加载测试数据。

[xtest,ytest] =日本韦沃尔斯特迪塔

在绘图中可视化第一次序列。每行对应于特征。

x = xtest {1};图绘制(xtest {1}')xlabel(“时间步骤”) 标题(“测试观察1”)numfeatures = size(xtest {1},1);传奇(“特征 ”+字符串(1:numfeatures),'地点'“东北朝”

对于序列的每个时间步骤,在该时间步骤中获取LSTM层(第2层)输出的激活并更新网络状态。

sequencelength = size(x,2);idxlayer = 2;outputsize = net.layers(idxlayer).numhidendents;为了i = 1:Sequencelength功能(:,i)=激活(net,x(:,i),idxlayer);[net,ypred(i)] = classifyandupdatestate(net,x(:,i));结尾

使用Heatmap可视化前10个隐藏单元。

图热图(特征(1:10,:));Xlabel(“时间步骤”)ylabel(“隐藏的单位”) 标题(“LSTM激活”

Heatmap显示每个隐藏的单元激活强烈的强效,并突出显示激活如何随时间变化。

参考

[1] M. Kudo,J. Toyama和M. Shimbo。“使用过度区域的多维曲线分类。”模式识别字母。卷。20,第11-13页,第1103-1111页。

[2]UCI机器学习存储库:日语元音数据集。https://archive.ics.uci.edu/ml/datasets/japanese+vowels.

也可以看看

|||||

相关话题