sparsecorrelations.m.svn-base

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

SVN-BASE
28
字号
function [correlations, bXs, bYs] = sparseCorrelations(KX, KXj, KY, KYj, colIndicesX, colIndicesY)
%A function to compute the correlations in a sparse manner 

numTotalExamples = size(KXj, 1); 
numPartialXExamples = size(KXj, 2); 
numPartialYExamples = size(KYj, 2); 
tol = 10^6; 

warning('off','MATLAB:divideByZero');
normKXj = sqrt(sum(KXj.^2));
normKYj = sqrt(sum(KYj.^2));
iNormKXj = 1./normKXj;
iNormKYj = 1./normKYj;
warning('on','MATLAB:divideByZero');

infiniteXIndices = (iNormKXj > tol).*(1:numPartialXExamples); 
infiniteYIndices = (iNormKYj > tol).*(1:numPartialYExamples); 
infiniteXIndices = setdiff(infiniteXIndices, 0);  
infiniteYIndices = setdiff(infiniteYIndices, 0);  

iNormKXj(infiniteXIndices) = 0;
iNormKYj(infiniteYIndices) = 0;

correlations = KXj'*KYj; 
correlations = diag(iNormKXj) * correlations * diag(iNormKYj);

bXs = iNormKXj; 
bYs = iNormKYj; 

⌨️ 快捷键说明

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