ITE / code / shared / embedded / ITL / centcorrenexp.m

% The following function computes the parametric centered correntropy
%               between two vectors X and Y using double exponential kernel
%
% Input:   X and Y are real valued COLUMN vectors of SAME length
%				kSize is a scalar for the kernel size, i.e. K(x,y) = exp(-|x-y|/kSize),
%				param is a [2x1] vector containing the coefficients a and b in ORDER.
%
% Output: corren contains the parametric centered correntropy
%
% Default:  param = [a,b] = [1,0] and kSize = 1.
%
% Comments: The code uses cipexp
%
% Author: Sohan Seth (sohan@cnel.ufl.edu)	Date: 15.07.2009

function corren = centcorrenexp(X,Y,kSize,param)

if nargin == 2
	kSize = 1;
	param = [1,0];
end

if nargin == 3
	param = [1,0];
end

n = size(X,1);
a = param(1); b = param(2);

X = a*X+b;

corren = (1/n)*sum(exp(-abs(X - Y)/kSize)) - cipexp(X,Y,kSize);
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.