From cf6ab3c97b1e2667e24d52f769ba2fd0ebf1eab8 Mon Sep 17 00:00:00 2001 From: Lambert Theisen <lambert.theisen@rwth-aachen.de> Date: Mon, 2 Dec 2024 13:32:45 +0100 Subject: [PATCH] fix projected GD --- examples/reconstruct/test-projected-gd.jl | 37 ----------------------- 1 file changed, 37 deletions(-) diff --git a/examples/reconstruct/test-projected-gd.jl b/examples/reconstruct/test-projected-gd.jl index 70cd450..07799dc 100644 --- a/examples/reconstruct/test-projected-gd.jl +++ b/examples/reconstruct/test-projected-gd.jl @@ -10,28 +10,6 @@ X = h5read("X.h5", "X") A = h5read("A.h5", "A") Y = h5read("Y.h5", "Y") - -# A_array = [A[i,:] for i in 1:size(A,1)] - -# n, x = recovery_theta1(size(X), A_array, Y); -# x = reshape(x, size(X)) -# relative_error(X,x) - -# hosvd_x = hosvd(x); - -# core = hosvd_x["core"] -# multirank(core) - -# core - -# core[abs.(core).<1e-5] .= 0 -# multirank(core) - -# hosvd_x["core"] = core -# x_re = hosvd_reconstruct(hosvd_x) -# @assert relative_error(X,x_re) < 1E-2 - - function projection(X, rank) hosvd_x = hosvd(X); core_tmp = hosvd_x["core"] @@ -64,18 +42,3 @@ rank = 2 res = optimal_gradient_descent(ones(size(X)), 1, 5000, rank); relative_error(X, res.x) plot(res.hist, yaxis=:log, labels="resnorm") - -# size_tensor = (3,3,3) # size of the tensor -# r = 1 # rank of the tensor -# coefs = randn(r) # coefficients of rank-1 tensors -# x0 = create_tensor_CP(size_tensor, coefs, "normal"); # create a rank-1 tensor by gaussian distribution -# m = 3^6-1 # number of measurements -# A, b = create_measurements(x0, m); # create gaussian linear measurements -# # A should be a list of length m, each elements is a flattened tensor, i.e. a vector indeed of size 4*4*4=64. -# # b is also a list of length m, each element is the number b_i = <A_i, x0>. - -# n, x = recovery_theta1(size_tensor, A, b); # using nuclear-2 theta-1 norm minimization for recovery -# # n is the theta-1 norm, x is the recovered tensor - -# x = reshape(x, size(x0))# reshape the recovered tensor to its original shape -# relative_error(x0,x) # compare the difference -- GitLab