我正在尝试开发一个图像分类系统。我使用以下文章:
Dia Abu Al Nadi博士和Ayman M. Mansour博士用于纹理分类的独立成分分析(ICA)
它在一段中说:
针对上述纹理图像,采用上述方法对独立分量进行学习。图2分别显示了上述纹理的(8x8) ICA基函数。主成分分析减少了维数,总共产生了40个函数。注意,来自不同窗口大小的独立组件是不同的。
上面的“方法”是FastICA,纹理来自,每个纹理图像都有640x640像素。我的问题是:
作者所说的“用PCA减少维数,总共有40个函数”,我怎么用matlab得到这个函数呢?
我在SAS中编写了以下代码:
data test;
infile 'C:\Users\Public\Documents\test.dat';
input a b c d e id;
run;
proc princomp cov out=a;
var a b c d e;
run;
proc corr;
var prin1 prin2 prin3 a b c d e;
run;
有没有办法列出每个id的主成分的值?我收到的输出只是摘要统计信息(即max和min)和相关性。
根据我对模式识别的理解,主成分分析被用来删除数据集中不必要的数据,这样当数据集在KMean中使用时,它的性能将低于没有被主成分分析的数据集。所以,我可以有这样的代码(伪代码):
assign .csv to var DATA
PCA_DATA = PCAcompute(DATA)
result = Kmean(PCA_DATA)
plotToGraph(result)
我说的对吗?
我一直在寻找示例程序,它导入一个csv,然后使用PCA进行一些聚类,现在已经快一个月了。我需要做的是使用虹膜数据集将Kmean结果的输出与使用PCA的Kmean结果进行比较。