问题标签 [som]

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 投票
4 回答
13064 浏览

r - R 教程中的 Kohonen SOM 映射

我只是在寻找一个很好的教程,它将引导我了解如何在 R 中创建 SOM。我正在阅读 Kohonen 和 Kaski 关于使用地图识别福利结构的论文,并想亲自尝试该技术。

我认为 R 中的许多示例有很多不足之处。我在网上查看过,没有发现任何我认为可以使该过程易于理解的内容。

您可以提供的任何帮助将不胜感激。

0 投票
2 回答
11020 浏览

c++ - 自组织图 (SOM) 实施

我正在寻找基于 C、C++ 或 Java 的 SOM 实现,并具有适用于商业用途的许可(非零成本也可以)。

到目前为止,我知道存在 SOM_PAK(来自 Kohonen),但许可禁止商业用途。

有人知道替代实现吗?

0 投票
1 回答
15238 浏览

matlab - MATLAB:自组织图 (SOM) 聚类

我正在尝试根据身体部位之间的角度对一些图像进行聚类。

从每张图像中提取的特征是:

因此输入数据是一个大小为 1057x10 的矩阵,其中 1057 代表图像数量,10 代表身体部位与躯干的角度。类似地,测试集是 821x10 矩阵。

我希望输入数据中的所有行都用 88 个集群进行聚类。那我就用这些集群来查找TestData属于哪些集群呢?

在之前的工作中,我使用了非常简单的 K-Means 聚类。我们只是要求 K-Means 将数据聚类到 88 个聚类中。并实现另一种方法,计算测试数据中每一行与每个集群中心之间的距离,然后选择最小值。这是相应输入数据行的集群。

我有两个问题:

  1. 是否可以在 MATLAB 中使用SOM来做到这一点?AFAIK SOM 用于视觉聚类。但是我需要知道每个集群的实际类,以便以后可以通过计算它属于哪个集群来标记我的测试数据。

  2. 你有更好的解决方案吗?

0 投票
2 回答
5071 浏览

algorithm - (批量)SOM(自组织地图,又名“Kohonen 地图”)的收敛标准?

我喜欢在 Batch SOM 收敛时停止执行。我可以使用什么误差函数来确定收敛?

0 投票
1 回答
622 浏览

matlab - 我需要有关此数据文件的帮助,以便以 SOM_PAK 格式编辑

我正在研究自组织图 (SOM) 实现,我有一个微阵列数据集,我正在尝试使用 some_read_data 函数读取它,但是当我将它编辑为 SOM_PAK 格式时,我一直有一个错误,它可以被 SOM 识别为阅读如:

???错误使用 ==> somtoolbox\som_read_data.m 输入文件数据行 1 上只有 69 个向量分量(维度为 70)

==> SomMainFunction 在 3 sD = som_read_data('B_r2.txt');

但是,当我尝试在不编辑原始文件的情况下读取数据时(编辑器:死链接!),它表示“数据读取正常”,但我有以下错误:

???使用 ==> 未知时出错 内存不足。键入 HELP MEMORY 作为您的选项。

==> somtoolbox\som_bmus.m 中的错误 189 Bmus = zeros(dlen,length(which_bmus));

==> somvis\somvis_p_matrix.m 中的错误在 41 [dummy dists] = som_bmus (dat, dat, 2:datlen);

==> SomMainFunction 中的错误在 16 [pheight rad_real perc] = somvis_p_matrix(sM,sD);

你可以从这里获取数据文件(编辑:死链接!)你也可以从这里下载工具箱。

我需要有人帮我更正这些数据并将其放入 SOM_PAK 格式。我尝试以 SOM_PAK 格式获取它,但它仍然给我错误。

0 投票
2 回答
2657 浏览

machine-learning - Kohonen SOM Maps:标准化未知范围的输入

根据“Jeff Heaton 的 Java 神经网络简介”,Kohonen 神经网络的输入必须是介于 -1 和 1 之间的值。

可以对预先知道范围的输入进行归一化:例如 RGB (125, 125, 125),其中范围已知为 0 到 255 之间的值:
1. 除以 255:(125/255) = 0.5 >> (0.5,0.5,0.5)
2. 乘二减一:((0.5*2)-1)=0 >> (0,0,0)

问题是我们如何规范化范围未知的输入,比如我们的身高或体重。

此外,其他一些论文提到输入必须标准化为 0 和 1 之间的值。正确的方法是“-1 和 1”还是“0 和 1”?

0 投票
3 回答
799 浏览

user-interface - SOM 算法 Matlab 帮助

我正在尝试将一个 txt 文件从 GUI 传递给 som_read_data ......我创建了一个函数,该函数从 GUI 获取一个 txt 文件,然后将其传递给 som_read_data ..但我遇到了一些错误......这是一些错误的列表.....任何有想法的人?

0 投票
1 回答
522 浏览

matlab - 用于检测的 SOM

我想知道如何使用 SOM 进行疾病检测。给定一个肺癌数据集,如何将 SOM 应用于检测,有某些术语,如灵敏度、特异性和准确度百分比……有没有办法用 SOM 算法计算所有这些?我将不胜感激任何可以对此有所了解的人的回答

0 投票
2 回答
7466 浏览

matlab - 如何在MATLAB中交换矩阵的行和列

我在 Excel 中有一个输入数据,它有 2000 行和 60 列。

我想将此数据读入 MATLAB,但我需要交换行和列,以便矩阵为 60 行和 2000 列。我怎么能在 MATLAB 中做到这一点,因为 Excel 只有 256 列,不能容纳 2000 列。

0 投票
1 回答
1899 浏览

som - 需要实现 Fuzzy Kohonen Networks(模糊自组织地图)

我有一个带有 Kohonen 网络的原始实现的 SOM 工具箱。我正在寻找一个模糊的 kohonen 网络实现。有没有人有或者知道我在哪里可以买到?