问题标签 [self-organizing-maps]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1866 浏览

iteration - 如何确定 Kohonen 自组织图上的最佳聚类和迭代次数?

请帮助我完成我的最终作业。讲师有几个问题

  • 如何确定自组织图上的集群数量?
  • 如何确定自组织图中的最佳迭代次数?
0 投票
1 回答
1343 浏览

python - 自组织地图 Python - 代码错误

我一直在使用代码为小型数据集生成 SOM。它会产生一个我无法弄清楚的错误。

错误 :

任何帮助理解这一点?

0 投票
0 回答
193 浏览

python - Python:有效地从密度数组中采样 n 维分布

我有一个 N 维分布,我已经估计了存储为 N 维数组的高斯核密度。我需要对底层分布执行 2D Kohonen 映射拟合。

到目前为止,我发现在 Python 中执行此操作的最简单方法是使用newc来自neurolab的模块。

但是,这个模块需要一个云或点,我需要对 N 维数组进行采样以恢复与我的原始密度分布相对应的点。

执行此类采样的最有效方法是什么?或者,是否有任何 Kohonen 地图模块可以直接与密度阵列一起使用?

0 投票
1 回答
2504 浏览

r - 自组织图 R

我使用 R 中的 Kohonen 包创建了一个 SOM 地图,并希望在地图上标识一个特定的数据点位置。即所使用的系列是由 2 列组成的矩阵,并且增加了一行,我如何在地图本身或任何特定行上标记最后一次观察的位置?我使用的代码如下:

任何帮助表示赞赏

谢谢

0 投票
0 回答
1764 浏览

python - Python 中的 SOM 网络(Kohonen 的地图) - 效果不佳

我已经为我的课程编写了 SOM 网络,但它不起作用,我不知道为什么。我有一个 Node 类,它是单个神经元并包含权重向量。然后,我编写了包含 Node 数组的 SOM 类。

我的任务是实现 SOM,从这些数据中:http: //archive.ics.uci.edu/ml/datasets/SPECT+Heart 告诉我哪个输入向量(它是一个二进制向量)适合哪个类别(0 或 1 )。

代码: http: //pastebin.com/GerkTf3C

训练过程:

  1. 我从一组训练数据和它适合的类别中随机获得一个输入向量。
  2. 我激活网络并获得一系列距离,它告诉我特定神经元与输入向量有何不同。
  3. 我得到了获胜者节点的索引,它与输入向量的距离最小。
  4. 我计算当前迭代的学习率和邻域半径。
  5. 对于每个节点,我计算它到获胜节点的欧几里得距离。
  6. 如果节点在获胜者的附近,我计算它必须如何更改和更新他的权重向量,并将它适合的类别添加到它的集群向量中。
  7. 当学习率大于某个限制时,我重复步骤 1 到 6
  8. 最终,我为每个节点设置了它适合的类别。

不幸的是,我获得了大约 40% 到 80% 的有效性(它非常不稳定,我不知道如何消除这种随机性)在训练集上测试它(我假设我应该在训练集上具有 100% 的有效性)

PS对不起我的英语和代码质量,但我刚刚开始学习Python。

0 投票
0 回答
145 浏览

visualization - 自组织地图解释

我想知道如何解释 SOM 输出。例如

输入

输出

谁能告诉我?

0 投票
0 回答
1144 浏览

r - 如何在 som 中创建单元分类,使用 R 中的 kohonen 包

使用的代码:

据我了解,som_model$unit.classif将获胜神经元/BMU 的索引映射到输入数据集的各个行。尝试将它们与最终的码本/加权向量 ( som_model$codes) 链接,但无法建立链接。

请指导我根据什么基础/规则或公式som将这些索引分配给数据。

0 投票
0 回答
1108 浏览

r - R 中带有 SOM 的错误“外部函数调用 (arg 1) 中的 NA/NaN/Inf”

我正在尝试解决这个问题:

每张图像高 28 像素,宽 28 像素,总共 784 像素。每个像素都有一个与之关联的像素值,表示该像素的亮度或暗度,数字越大表示越暗。该像素值是介于 0 和 255 之间的整数,包括 0 和 255。

训练数据集 (train.csv) 有 785 列。第一列称为“标签”,是用户绘制的数字。其余列包含相关图像的像素值。

我在 R 中执行了下面的代码,它返回了这个错误NA/NaN/Inf in foreign function call (arg 1)

我的数据有很多零,我认为这是问题所在。

我该如何解决这个问题?

0 投票
1 回答
344 浏览

matlab - SOM 工具箱分类数据

有什么方法可以使用“SOM 工具箱”训练的神经网络对数据集中的数据进行分类?例如我有数据,我把它放到网络上,网络告诉我数据的类型。

0 投票
1 回答
76 浏览

machine-learning - 激活模式对 SOM 有什么意义?

SOM - Self Organized Map,每个输入维度映射到所有输出节点,节点相互竞争打分——向量量化。PCA 和其他聚类方法可以看作是这个过程的简化特例。

SOM 中只有一个获胜节点。但是,当输入与两个已建立的“集群”非常相似时会发生什么?会不会发生第一个神经元以很小的优势战胜第二个神经元,但两者相距甚远?如果是这样,它不是也是非常有用的信息吗?

如果是这样,那么这意味着具有所有各种输出的整个激活模式将有助于对输入进行分类。

我问的原因是因为我正在考虑将 SOM 插入其他神经网络,然后再重新插入 SOM。并且在插入时,我想知道将整个晶格及其所有输出而不只是获胜节点结转是否安全。

我试过检查 SOM 的数学,在训练时它只考虑获胜的神经元,但似乎没有任何迹象表明如果使用新的输入,只有获胜节点对操作员很重要。