我正在使用R kohonen包来实现SOM。我发现将自组织映射产生的代码向量与原始数据点关联起来很麻烦。我试图在训练过程中包括没有重量的标签,但结果是不可理解的。
培训过程完成后,有没有办法在每个节点上回溯原始数据点?
答案 0 :(得分:1)
您将从
获取中心和缩放值x= attr(som_model$data,"scaled:center")
y= attr(som_model$data,"scaled:scale")
获取原始数据
首先找到节点
som_model$unit.classif
将返回与观察总数相对应的获胜节点。
假设您想找出与第n个节点相关的数据,
for (i in 1:ncol(som_model$data)){
z[,i] = som_model$data[,i][som_model$unit.classif==n] * y[i]+x[i]
}
对应于第n个节点,您将获得原始值。