• 大小: 372KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-13
  • 语言: 其他
  • 标签: matlab  kpca  lda  mds降维  

资源简介

可运行

资源截图

代码片段和文件信息

function [evectorstrain_kpcatest_kpca] =KPCA(traintest)
rbf_var=10000;
threshold = 90;
patterns=zscore(train); %训练数据标准化
test_patterns=zscore(test); %测试数据标准化
train_num=size(patterns1); %train_num是训练样本的个数
test_num=size(test_patterns1);%test_num是测试样本的个数
cov_size = train_num; %cov_size是训练样本的个数
for i=1:cov_size
for j=i:cov_size
K(ij) = exp(-norm(patterns(i:)-patterns(j:))^2/rbf_var); %核函数 rbf_var ??
K(ji) = K(ij);
end
end
unit = ones(cov_size cov_size)/cov_size;%cov_size是样本的个数
K_n = K - unit*K - K*unit + unit*K*unit;% 中心化核矩阵
[evectors_1evaltures_1] = eig(K_n/cov_size);
[xindex]=sort(real(diag(evaltures_1))); %sort每行按从小到大排序,x为排序后结果,index为索引
evals=flipud(x) ;% flipud函数实现矩阵的上下翻转
index=flipud(index);
evectors=evectors_1(:index);
% for i=1:cov_size
% evecs(:i) = evectors(:i)/(sqrt(evectors(:i)));
% end
train_eigval = 100*cumsum(evals)./sum(evals);
index = find(train_eigval >threshold);

train_kpca = zeros(train_num index(1)); %train_num是训练样本的个数
train_kpca=[K_n * evectors(:1:index(1))];
unit_test = ones(test_numcov_size)/cov_size;%cov_size是训练样本的个数
K_test = zeros(test_numcov_size); %test_num是测试样本的个数, cov_size是训练样本的个数
for i=1:test_num %test_num是测试样本的个数
for j=1:cov_size%cov_size是训练样本的个数
K_test(ij) = exp(-norm(test_patterns(i:)-patterns(j:))^2/rbf_var);
end
end
K_test_n = K_test - unit_test*K - K_test*unit + unit_test*K*unit;
test_kpca = zeros(test_num index(1));%test_num是测试样本的个数
test_kpca = [K_test_n * evectors(:1:index(1))];
end

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        1651  2016-12-22 19:10  kpca lda mds降维\KPCA.m
     文件        1454  2016-12-28 15:45  kpca lda mds降维\LDA.m
     文件         800  2016-12-28 16:38  kpca lda mds降维\MDS.m
     文件         898  2017-03-24 16:00  kpca lda mds降维\Main.m
     文件      376589  2016-12-16 17:53  kpca lda mds降维\ORL.mat
     文件         833  2016-12-28 15:49  kpca lda mds降维\PCA.m
     文件         230  2017-03-24 16:00  kpca lda mds降维\tiqu.m
     目录           0  2017-03-24 16:01  kpca lda mds降维\

评论

共有 条评论