U矩阵是如何构建的,以便可视化自组织映射?更具体地说,假设我有一个3×3节点的输出网格(这些节点已经过训练),我如何从中构建U矩阵?例如,你可以假设神经元(和输入)的维度为4。
我在网上找到了几个资源,但它们不够清晰或相互矛盾。例如,原始论文充满了打字错误。
回答:
U矩阵是输入数据维度空间中神经元之间距离的可视化表示。具体来说,你使用它们训练后的向量计算相邻神经元之间的距离。如果你的输入维度是4,那么训练后的映射中的每个神经元也对应一个4维向量。假设你有一个3×3的六边形地图。
U矩阵将是一个5×5的矩阵,其中包含每个连接两个神经元的插值元素,如下所示
{x,y}元素是神经元x和y之间的距离,{x}元素中的值是周围值的平均值。例如,{4,5} = distance(4,5) 且 {4} = mean({1,4}, {2,4}, {4,5}, {4,7})。在计算距离时,你使用每个神经元的训练后的4维向量以及用于训练映射的距离公式(通常是欧几里得距离)。因此,U矩阵的值仅为数字(不是向量)。然后,你可以将这些值中最大的赋予浅灰色,最小的赋予深灰色,其他值赋予相应的灰色阴影。你可以使用这些颜色来绘制U矩阵的单元格,从而可视化神经元之间的距离。
还可以参考这篇网络文章。