【发布时间】:2013-10-01 09:46:23
【问题描述】:
我需要对已使用 k-means 聚类的多维数据集数据集执行降维。数据包含从放置在触觉手套上的传感器的传感器读数获得的正实数和负实数。数据是在表示一个动作时捕获的,比如将字母“A”表示为
0.1373 -1.8764
-1.7020 -0.8322
0.4862 0.8276
-0.0078 1.3597
0.9008 1.8043
2.9751 0.7125
-0.3257 0.1754
现在,我的困惑是
- 我没有使用以下代码对多维数据进行任何聚类
K=3; load('b2.txt'); data = b2; numObservarations = length(data); %% cluster opts = statset('MaxIter', 500, 'Display', 'iter'); [clustIDX, clusters, interClustSum, Dist] = kmeans(data, K, 'options',opts, ... 'distance','sqEuclidean', 'EmptyAction','singleton', 'replicates',3); %% plot data+clusters figure, hold on scatter3(data(:,1),data(:,2),data(:,3), 50, clustIDX, 'filled') scatter3(clusters(:,1),clusters(:,2),clusters(:,3), 200, (1:K)', 'filled') hold off, xlabel('x'), ylabel('y'), zlabel('z')
如何纠正这个问题?有什么问题?
-
在获得所有维度的聚类后,我现在将数据通过其聚类标签表示为
1 1 3 2
等等。
- 此数据是否包含事件的时间顺序?一看就知道,但有论文说聚类不考虑时间顺序。
- 我需要减少它的长度。我知道主成分分析,但它用于选择维度并且不会减少数据长度。使用传入的测试数据集进行基于距离的分类是否合理?
【问题讨论】:
-
首先,
data = b2(1:100);似乎暗示这是一个一维而不是二维的聚类问题。也许对您的数据看起来有些了解,我们可以提供更多帮助...... -
抱歉,打错了。我删除了它并添加了一些数据样本。还是没有剧情
-
你能告诉我们size(data)的输出是什么吗?
-
大小为 200 2 。还有这里的“opts”是什么意思?算法运行了多少次?
标签: matlab cluster-analysis dimensionality-reduction