大家好,各位神经网络爱好者们,关于AForge中的SOM学习算法我有些困惑。我发现其实现假设了最常见的情况,即一个二维的SOM。
当我查看网络上的其他SOM图形时,我发现神经元的位置随时间变化。相似的神经元被聚集在一起。
我查看了源代码,发现地图中神经元的位置是固定的。代码如下:
int wx = neuronIndex % width;int wy = neuronIndex / width;
这是否只是另一种具有固定位置的SOM类型,或者是我误解了什么?我还认为主要目的是从SOM中获取信息图形,但似乎没有公开可用的方法来获取神经元的位置。
回答:
我不熟悉AForge,但是……
编辑:起初我以为权重是二维的,并且被训练成类似网格的形状,但这更像是一种有根据的猜测:你看到的移动神经元网格仍然不是SOM的节点。SOM节点的位置是恒定的。SOM被训练用于抽象某些数据集,而Sammon映射可能被用作节点权重的可视化方法。结果看起来像这个,可能会与原始SOM的网格混淆,在这个网格中,节点或“神经元”从不移动。
请注意,这仍然只是一种有根据的猜测。