2011-05-30 76 views
5

我想了解SOM。我很困惑人们何时发布代表 的图片,我使用SOM将数据图像映射到地图空间。据说使用了U矩阵。但是我们有一个有限的神经元网格,所以如何获得“连续”图像?例如,从40x40网格开始,有1600个神经元。现在计算U矩阵,但现在如何绘制这些数字以获得可视化? 链接:U矩阵和自组织映射

SOM tutorial with visualization

SOM from Wikipedia

回答

5

该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")。