0

我对 SOM 很陌生。我在 R 中使用 Kohonen 包来构建我的 SOM。在计数图中,可以在地图的一个角落找到一个非常密集的节点。当我重新训练网络时,这个密集节点有时会随机移动到另一个角落。地图的含义仍然相同,因为它只是旋转了 90、180 或 270 度。但是,如果遵循相同的约定,我希望生成的报告会更好。那么,如何使地图固定到一个位置呢?或者有没有办法旋转情节?

示例 1 示例 2

尽管设置了种子值并且具有相同的编号。在训练过程中的迭代次数中,我无法将这个密集节点固定到一个特定的角落。

如果有帮助,这是我的代码:

require(kohonen)
set.seed(100)
som_grid = somgrid(xdim = 20, ydim = 20, topo = "hexagonal")
som_model = som(train,grid=som_grid,rlen=300,alpha=c(0.05,0.01),keep.data = TRUE, n.hood = "circular")
 plot(som_model, type = "count")

任何想法?提前致谢。

收敛

4

1 回答 1

0

那么,如何使地图固定到一个位置呢? 正如您所描述的,不同的种子值将产生不同的绘图布局,但它们的含义相同,前提是 SOM 映射已经收敛。我不认为你可以物理地告诉 SOM 地图选择某个角落来聚集数据的某些方面。种子值将设置形状。

更重要的是(与您的问题略有相关),您确定 SOM 已经收敛得很好吗? 我在这里的回答描述了 SOM 的收敛

或者有没有办法旋转情节? 据我所知,这不是开箱即用的......你可以尝试编辑包的源代码。

于 2016-07-06T08:46:06.593 回答