Skip to main content

Posts

Showing posts from June, 2013

Gaussian Process GP

https://www.youtube.com/watch?v=16oPvgOd3UI function GP_1d kernel=5; switch kernel     case 1; k = @(x,y) 1*x'*y; % linear     case 2; k = @(x,y) 1*min(x,y); % brownian motion     case 3; k = @(x,y) exp(-100*(x-y)'*(x-y)); % squared     case 4; k = @(x,y) exp(-1*sqrt(x-y)'*(x-y)); % Ornistin        case 5; k = @(x,y) exp(-1*sin(5*pi*(x-y))^2); % periodic      end % choose points at which to sample x = (0:.005:1); n = length(x); % covariance matrix C = zeros(n,n); for i=1:n    for j=1:n       C(i,j) = k (x(i), x(j)) ;    end end % sample from gaussian process at this points u = randn(n,1); [A, S , B ] = svd(C); z = A *sqrt(S)*u; % plot figure(2); hold on; plot(x, z, '.-'); axis([0, 1, -2, 2]); end ============ IN 2D ======== function GP_2d kernel=3; switch kernel     case 1; k = @(x,y) 1*x'*y; % linear     case 2; k = @(x,y) 1*min(x,y); % brownian motion     case 3; k = @(x,y) exp(-100*(x-y)'*(x-y)); % squared     case 4; k = @(x,y) exp(-1*sqrt(x-y)&