資源簡(jiǎn)介
在matlab上實(shí)現(xiàn)kpca的程序,沒(méi)有任何問(wèn)題,絕對(duì)可以運(yùn)行
代碼片段和文件信息
function?[train_kpcatest_kpca]?=?kpcaFordata(traintestthresholdrbf_var)
%train?是訓(xùn)練數(shù)據(jù)
%test??是測(cè)試數(shù)據(jù)
%threshold?是閥值,是累計(jì)特征值的和占總的特征值的和的百分比,其范圍是1—100。
%rbf_var?是徑向基函數(shù)的參數(shù)
%%?Data?kpca?processing
%%?源地址:http://blog.sina.com.cn/lssvm
%這個(gè)思路應(yīng)該是這樣的:根據(jù)訓(xùn)練數(shù)據(jù)得到中心核矩陣,計(jì)算出指定的特征向量(這是目的)。同樣根據(jù)測(cè)試數(shù)據(jù)計(jì)算出測(cè)試數(shù)據(jù)的中心核矩陣,利用訓(xùn)練數(shù)據(jù)的特征向
%量計(jì)算出測(cè)試數(shù)據(jù)的kpca
%%?函數(shù)默認(rèn)設(shè)置
if?nargin?<4
rbf_var=10000;%?
end
if?nargin?<3
threshold?=?90;
end
%%?數(shù)據(jù)處理
patterns=zscore(train);?%訓(xùn)練數(shù)據(jù)標(biāo)準(zhǔn)化
test_patterns=zscore(test);?%測(cè)試數(shù)據(jù)標(biāo)準(zhǔn)化
train_num=size(patterns1);?%train_num是訓(xùn)練樣本的個(gè)數(shù)
test_num=size(test_patterns1);%test_num是測(cè)試樣本的個(gè)數(shù)
cov_size?=?train_num;?%cov_size是訓(xùn)練樣本的個(gè)數(shù)
%%?計(jì)算核矩陣這是一個(gè)對(duì)稱(chēng)陣
for?i=1:cov_size
????for?j=i:cov_size
????????K(ij)?=?exp(-norm(patterns(i:)-patterns(j:))^2/rbf_var);?%核函數(shù)?rbf_var???
????????K(ji)?=?K(ij
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件????????2355??2013-05-01?21:38??kpcaFordata.m
- 上一篇:matlab迷宮小游戲
- 下一篇:svm算法的仿真程序
評(píng)論
共有 條評(píng)論