Files
2026-07-13 13:30:25 +08:00

11 lines
364 B
Matlab
Executable File

function K = sd2kn(D)
% Transform a squared distance matrix to a kernel matrix.
% The data are assumed to be centered, i.e., H=eye(n)-ones(n)/n; K=-(H*D*H)/2.
% Input:
% D: n x n squared distance matrix
% Ouput:
% K: n x n kernel matrix
% Written by Mo Chen (sth4nth@gmail.com).
D = bsxfun(@minus,D,mean(D,1));
D = bsxfun(@minus,D,mean(D,2));
K = (D+D')/(-4);