Я пытаюсь реализовать Johnson-Lindenstrauss lemma. У меня есть поиск псевдокода здесь, но я не смог его получить.Правильная реализация леммы Johnson-Lindenstrauss
Я не знаю, правильно ли я его реализовал или нет. Я просто хочу, чтобы вы, ребята, поняли эту лемму, чтобы проверить мой код и посоветуйте мне правильную реализацию Matlab.
n = 2;
d = 4;
k = 2;
G = rand(n,d);
epsilon = sqrt(log(n)/k);
% Projection in dim k << d
% Defining P (k x d)
P = randn(k,d);
% Projecting down to k-dim
proj = P.*G;
u = proj(:,1);
v = proj(:,2);
% u = P * G(:,5);
% v = P * G(:,36);
norm(G(:,1)-G(:,2))^2 * k * (1-epsilon);
norm(u - v)^2;
norm(G(:,1)-G(:,2))^2 * k * (1+epsilon);
которой лемма вы пытаетесь код , каков вход и выход кода. Я проверил указанную вами страницу, но есть много лемм и фактов. – NKN
Первая лемма. Лемма, которая содержит это: (1- \ epsilon) \ | uv \ |^2 \ le \ | f (u) -f (v) \ |^2 \ le (1+ \ epsilon) \ | uv \ |^2. – elizwet