【发布时间】:2016-02-19 08:41:23
【问题描述】:
假设我有一个训练有素的 SOM:mySom。
我想测试它的质量。一个有趣的paper 给出了一个建议:使用summary(mySom)。这样做的结果是:
som map of size 5x5 with a hexagonal topology.
Training data included; dimension is 1017 by 24
Mean distance to the closest unit in the map: 0.02276404
所以,mean(somres$distances) = 0.02276404 似乎是所有元素与最近原型的平均距离。
不过,另一个度量值应该代表相同的值:mySom$changes。打印我们找到的值:
> somres$changes
[,1]
[1,] 0.0053652766
[2,] 0.0054470742
[3,] 0.0054121733
[4,] 0.0054452036
...
[97,] 0.0010324613
[98,] 0.0009807617
[99,] 0.0010183714
[100,] 0.0010220923
在向 SOM 提供 100 次输入后,我们得到每个单元与最近一个单元的平均距离:0.0010220923。
问题:mySom$changes[100] != mean(somres$distances)。为什么?
【问题讨论】:
-
根据
kohonen:::summary.kohonen,通过mean(object$distances)计算平均距离。所以在你的情况下mean(somres$distances)。 -
你是对的。尽管如此,'somres$changes' 应该包含基于 rlen 值更新的相同度量。在我的例子中,rlen=100 意味着我已经向 SOM 提交了 10 次输入。在“somres$changes[100]”中,我应该得到“mean(somres$distances)”的最终值。
-
您是否找到了答案?我在理解这两者之间的区别时遇到了同样的问题?
标签: r properties summary som self-organizing-maps