sparsecorrelationstest.m.svn-base

来自「a function inside machine learning」· SVN-BASE 代码 · 共 58 行

SVN-BASE
58
字号
%A script to test sparse correlations 
clear;
rand('state',22); 

numExamples = 15; 
numXFeatures = 10; 
numYFeatures = 20; 
tol = 10^-5; 

X = rand(numExamples, numXFeatures); 
Y = rand(numExamples, numYFeatures); 

X = centerData(X); 
Y = centerData(Y); 

KX = X*X'; 
KY = Y*Y'; 

[correlations, bXs, bYs] = sparseCorrelations(KX, KX, KY, KY, 1:numExamples, 1:numExamples); 

for i=1:numExamples 
    for j=1:numExamples 
        correlations2(i, j) = correlation(KX(:, i), KY(:, j), 0); 
    end 
end 

if norm(correlations - correlations2)  > tol 
    error('Correlations seem to be wrong'); 
end 

for i=1:numExamples 
    for j=1:numExamples
        bX = zeros(numExamples, 1);
        bX(i) = bXs(i);

        bY = zeros(numExamples, 1);
        bY(i) = bYs(i);

        if (abs(bX'*KX'*KX*bX - 1) > tol)
            error('bX is not normalised correctly');
        end

        if (abs(bY'*KY'*KY*bY - 1) > tol)
            error('bY is not normalised correctly');
        end
    end
end


KX = zeros(numExamples, numExamples); 
KY = zeros(numExamples, numExamples); 
[correlations, bXs, bYs] = sparseCorrelations(KX, KX, KY, KY, 1:numExamples, 1:numExamples); 

if norm(correlations) ~= 0 
    error('Correlation of zero matrix is non-zero'); 
end 

⌨️ 快捷键说明

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