【问题标题】:How plot U-Matrix, Sample Hit and Input Planes from a trained data by SOM如何从 SOM 训练的数据中绘制 U 矩阵、样本命中和输入平面
【发布时间】:2014-11-14 18:07:25
【问题描述】:

我在 MATLAB 中编写了一个简单的 SOM 算法。我最大的挑战是,如何以 U-Matrix、Sample Hits 和 Component/Input Planes 的格式可视化/绘制数据?这三个图存在于 MATLAB 的 SOM 工具箱中。但问题是我不能调用他们来通过我的书面代码来可视化我的数据。因为他们需要一个“网络”作为输入,而我的代码不会生成任何“网络”。

有什么指导吗?

【问题讨论】:

    标签: matlab visualization som


    【解决方案1】:

    您可以创建自己的函数,因为它们不太复杂。我将假设 SOM 为 20x20x10(400 个节点,4 个特征)以进行解释。

    Hit-Map 只不过是将每个样本提供给已学习的 SOM,并将 +1 增加到被选为最佳匹配单元 (BMU) 的节点。然后你绘制这张地图。因此,如果 node(1,1) 触发 10 次,而 node(1,2) 触发 100 次,那么您将得到一个图像,其中 node(1,2) 的强度高于 node(1,1)。

    U-Matrix 是表示节点的权重向量与其最近邻居之间的平均距离的映射。所以在这里你可以计算节点 X 的特征向量到每个邻居之间的欧几里得距离。因此,如果您有 node(1,1,:)=[1,1,2,3]、node(1,2,:)=[2,2,1,1] 和 node(2 ,1,:)=[1,1,1,1],那么 node(1,1) 的 U 矩阵的值可以是 U(1,1)=norm(squeeze(node(1,1, :)-node(1,2,:)))+norm(squeeze(node(1,1,:)-node(2,1,:)))=4.8818

    组件/输入平面是最简单的,不需要任何处理。您只需选择 SOM 地图的每个特征并进行绘图。因此,在我们的 20x20x4 SOM 示例中,您将有 4 个特征,因此有 4 个组件,您可以通过 imagesc(node(:,:,1)) 为特征 1 绘制这些组件

    【讨论】:

      猜你喜欢
      • 2018-04-15
      • 2020-09-10
      • 2018-12-24
      • 2011-10-25
      • 1970-01-01
      • 2014-03-16
      • 2016-09-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多