⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dualpcatest.m.svn-base

📁 a function inside machine learning
💻 SVN-BASE
字号:
% A script to test dualPCA object code 
clear all; 
rand('state',0); 

tol = 10^-6; 
numExamples = 20; 
numFeatures = 10; 

X = rand(numExamples, numFeatures); 

d = data; 
d = addDataField(d, 'X', X, 'examples'); 

T = min(9, rank(X)); 

params.iterations = T; 
params.X.kernel = getDefaultLinearKernel; 

[subspaceInfo, trainInfo] = dualPCATrain(d, params);
[testInfo, projectionInfo] = dualPCAProject(d, d, subspaceInfo, params);

%Now do normal PCA and compare 
[V, D] = eigs(X'*X, T, 'LM'); 

newX = X*V(:, 1:T); 

if norm(abs(newX) - abs(getDataFieldValue(testInfo.data, 'X'))) > tol 
    error('KPCA features are wrong on training set'); 
end 

%Now try projecting on another dataset and test 
X2 = rand(numExamples*2, numFeatures); 

d2 = data; 
d2 = addDataField(d2, 'X', X2, 'examples'); 

[testInfo2, projectionInfo] = dualPCAProject(d, d2, subspaceInfo, params);
newX2 = X2*V(:, 1:T); 

if norm(abs(newX2) - abs(getDataFieldValue(testInfo2.data, 'X'))) > tol 
    error('KPCA features are wrong on test set'); 
end 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -