我正在尝试理解 SOM。当人们发布代表的图像时,我感到很困惑 数据图像让我使用 SOM 将数据映射到 map 空间。据说用的是U矩阵。但是我们的神经元网格是有限的,那么如何获得“连续”图像呢? 例如,从 40x40 网格开始,有 1600 个神经元。现在计算 U 矩阵,但现在如何绘制这些数字以实现可视化? 链接:
最佳答案
U 矩阵代表统一距离,并且在每个单元中包含相邻单元之间的欧几里德距离(在输入空间中)。该矩阵中的小值意味着 SOM 节点在输入空间中靠近,而较大的值意味着 SOM 节点相距很远,即使它们在输出空间中很靠近。因此,U 矩阵可以看作是二维空间中输入矩阵的概率密度函数的总结。通常,这些距离值是离散的,根据强度进行颜色编码,并显示为 heatmap 的形式。 。
引用Matlab SOM工具箱,
Compute and return the unified distance matrix of a SOM.
For example a case of 5x1 -sized map:
m(1) m(2) m(3) m(4) m(5)
where m(i) denotes one map unit. The u-matrix is a 9x1 vector:
u(1) u(1,2) u(2) u(2,3) u(3) u(3,4) u(4) u(4,5) u(5)
where u(i,j) is the distance between map units m(i) and m(j)
and u(k) is the mean (or minimum, maximum or median) of the
surrounding values, e.g. u(3) = (u(2,3) + u(3,4))/2.
除了 SOM 工具箱之外,您还可以查看 kohonen R 包(请参阅 help(plot.kohonen)
并使用 type="dist.neighbours"
)。
关于machine-learning - U 矩阵和自组织映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6174011/