18

为了可视化自组织图,U 矩阵究竟是如何构造的?更具体地说,假设我有一个 3x3 节点的输出网格(已经训练过),我如何从中构造一个 U 矩阵?例如,您可以假设神经元(和输入)的维度为 4。

我在网上找到了几个资源,但不是很清楚或者是相互矛盾的。例如,原始论文充满了错别字。

4

2 回答 2

22

U 矩阵是输入数据维度空间中神经元之间距离的直观表示。也就是说,您可以使用经过训练的向量计算相邻神经元之间的距离。如果您的输入维度是 4,那么训练映射中的每个神经元也对应一个 4 维向量。假设您有一个 3x3 六边形地图。

地图格子

U 矩阵将是一个 5x5 矩阵,其中包含两个神经元之间的每个连接的插值元素,如下所示

u-mat格子

{x,y} 元素是神经元 x 和 y 之间的距离,{x} 元素中的值是周围值的平均值。例如,{4,5} = distance(4,5) 和 {4} = mean({1,4}, {2,4}, {4,5}, {4,7})。对于距离的计算,您使用每个神经元的经过训练的 4 维向量和用于训练地图的距离公式(通常是欧几里得距离)。因此,U 矩阵的值只是数字(不是向量)。然后,您可以将浅灰色分配给这些值中的最大值,将深灰色分配给最小值,将其他值分配给相应的灰色阴影。您可以使用这些颜色来绘制 U 矩阵的单元格,并以可视化方式表示神经元之间的距离。

也看看这篇网络文章

于 2012-11-30T09:26:08.320 回答
2

问题中引用的原始论文指出:

Kohonen 算法的一个幼稚应用,尽管保留输入数据的拓扑结构并不能显示输入数据中固有的集群。

首先,这是真的,其次,这是对 SOM 的深刻误解,第三,也是对 SOM 计算目的的误解。

仅以RGB色彩空间为例:有3种颜色(RGB),6种(RGBCMY),8种(+BW),还是更多?您如何定义独立于目的的,即数据本身固有的?

我的建议是根本不使用集群边界的最大似然估计器——甚至不使用像 U-Matrix 这样的原始估计器——因为基本​​论点已经存在缺陷。无论您随后使用哪种方法来确定集群,都会继承该缺陷。更准确地说,集群边界的确定根本没有意义,它正在失去关于构建 SOM 的真实意图的信息。那么,为什么我们要从数据中构建 SOM?让我们从一些基础知识开始:

  1. 任何 SOM 都是数据空间的代表模型,因为它降低了后者的维数。因为它是一个模型,它可以用作诊断和预测工具。然而,这两种情况都没有某种普遍的客观性。相反,模型在很大程度上取决于目的和可接受的相关错误风险。
  2. 让我们暂时假设 U-Matrix(或类似的)是合理的。所以我们在地图上确定了一些集群。如何证明标准的合理性不仅是一个问题(在目的本身之外),这也是一个问题,因为任何进一步的计算都会破坏一些信息(它是关于模型的模型)。
  3. SOM 上唯一有趣的是准确度本身,即分类误差,而不是对其的某种估计。因此,模型在验证和稳健性方面的估计是唯一有趣的事情。
  4. 任何预测都是有目的的,预测的接受度是准确性的函数,而准确性又可以用分类误差来表示。请注意,可以为 2 类模型和多类模型确定分类误差。如果你没有目的,你不应该对你的数据做任何事情。
  5. 相反,“簇数”的概念完全依赖于“簇内允许发散”的标准,因此它掩盖了数据结构中最重要的东西。它还取决于您愿意承担的风险和风险结构(就 I/II 类错误而言)。
  6. 那么,我们如何确定 SOM 上的数字类别?如果没有可用的外部先验推理,唯一可行的方法是对拟合优度进行后验检查。在给定的 SOM 上,施加不同数量的类并根据误分类成本测量偏差,然后(主观地)选择最令人满意的一个(使用一些奇特的启发式方法,如奥卡姆剃刀)

总而言之,U 矩阵在没有客观性的地方假装客观性。这完全是对建模的严重误解。恕我直言,SOM 的最大优势之一是它所隐含的所有参数都可以访问和开放以进行参数化。像 U 矩阵这样的方法通过无视这种透明度并用不透明的统计推理再次关闭它来破坏这一点。

于 2014-02-06T16:34:31.187 回答