这个代码主要针对,对不同类数据,加标签整合
数据为 mnist_all.mat (因为时间隔得有点久我忘了当初下载网站)
我主要用在GNMF相关处理中,其中对2D Hela image data数据也是类似加标签,希望对你有帮助
%对MNIST数据的处理
% 整合为一个数据矩阵
%在因为每张图是28X28=784,所以每一行代表一张图
%需要从所有图中选取500样本,每类选取50个样本
load('mnist_all.mat');
% load('usps_all.mat');
fea=zeros(500,784);
gnd1=ones(50,1); %第一类,全部标记为1
gnd=gnd1;
for i=2:10
gnd=[gnd;i*gnd1]; %gnd 标记;里面第一类标记1,依次内推到第十类标记为10.
end
%下面开始构建处理矩阵
%每个样本选50个样本(随机)
t=0;
for i=1:10
st=['test',num2str(i-1)]; %选取不同的test,然后从中随机提取50个样本;例test0
test=eval(st); %将字符串对应的矩阵取值出来;例将test0,对应的所以样本。
for j=1:50
t=t+1;
fea(t,:)=test(i*j,:);
end
end
其测试时需要构建标签 (上面一个代码就是Matrix_adt.m)
% 先运行Matrix_adt.m,构建标签gnd,与矩阵fea
nClass=10;
K=10;
label = litekmeans(fea,K,'Replicates',20);
[mFea,nSmp]=size(fea);
labelA=[];
labelA=[(1:mFea)',label];
A=[];
for i=1:K

这篇博客介绍如何在Matlab中对矩阵进行加标签整合,特别是针对不同类数据的操作。作者分享了一段代码,该代码适用于处理如mnist_all.mat这样的数据,并且在GNMF(非负矩阵分解)的相关处理中有应用。文中还提及了对2D Hela image data的类似处理,并提供了一个名为Matrix_adt的测试代码。此外,作者提到了之前博客中有关GNMF的更多代码资源。
最低0.47元/天 解锁文章
1480

被折叠的 条评论
为什么被折叠?



