Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CP Block Coordinate Descent #157

Open
wants to merge 26 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
f859521
Start making a block coordinate diagonal decomposition
kmp5VT May 3, 2023
f3c84a2
Merge branch 'kmp5/debug/fix_cp_test' into kmp5/feature/cp-bcd
kmp5VT May 3, 2023
bc235f0
Use target instead of assuming tensor_ref
kmp5VT May 3, 2023
4079f1a
Start fixing BCD
kmp5VT May 3, 2023
f4a5ab8
Fix cp_bcd
kmp5VT May 4, 2023
1f2f05a
Add function to change norm of converge_test
kmp5VT May 4, 2023
62da071
Update cp_bcd.h
kmp5VT May 8, 2023
df4938b
BCD now completely working!
kmp5VT May 8, 2023
5bb3bc8
BCD wasn't calculating gradient correctly
kmp5VT May 18, 2023
d66b529
Add BCD unit tests
kmp5VT May 18, 2023
d56085e
Allow more than 1 sweep of block coordinates, this allows each block …
kmp5VT May 25, 2023
c79a7cc
Fix for complex tensors
kmp5VT May 25, 2023
132eecb
one is const, one is not
kmp5VT May 26, 2023
622e258
Merge branch 'master' into kmp5/feature/cp-bcd
kmp5VT May 26, 2023
2b3a4a0
create `compute_full` fit function
kmp5VT Jul 18, 2023
0bd5473
Merge branch 'master' into kmp5/feature/cp-bcd
kmp5VT Jul 24, 2023
dbd76aa
Add ability to use different block sizes
kmp5VT Aug 17, 2023
4008a5e
Merge branch 'master' into kmp5/feature/cp-bcd
kmp5VT Aug 17, 2023
4a1304c
update BCD printing
kmp5VT Aug 22, 2023
562f2c2
Merge branch 'master' into kmp5/feature/cp-bcd
kmp5VT Dec 22, 2023
8bcee70
Goal here is to try make new CP
kmp5VT Jan 10, 2024
d74188f
Merge branch 'kmp5/debug/fix_flatten' into kmp5/feature/cp-bcd
kmp5VT Jan 10, 2024
fdb1b8d
Fix testing area
kmp5VT Jan 24, 2024
b9490ec
Merge remote-tracking branch 'origin/master' into kmp5/feature/cp-bcd
kmp5VT Jan 24, 2024
0614c06
Merge branch 'master' into kmp5/feature/cp-bcd
kmp5VT Jan 30, 2024
8007360
Bump VG tag
kmp5VT Jan 30, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Add BCD unit tests
  • Loading branch information
kmp5VT committed May 18, 2023
commit d66b529ad6d538302a2a875409a061b5af9af952
24 changes: 23 additions & 1 deletion unittest/tensor_cp_test.cc
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ TEST_CASE("CP")
using conv_class = btas::FitCheck<tensor>;
using conv_class_coupled = btas::CoupledFitCheck<tensor>;
using btas::CP_ALS;
using btas::CP_BCD;
using btas::CP_RALS;
using btas::CP_DF_ALS;
using btas::COUPLED_CP_ALS;
Expand Down Expand Up @@ -374,7 +375,28 @@ TEST_CASE("CP")
double diff = 1.0 - A1.compute_error(conv_coupled, 1e-2, 1, 19);
CHECK(std::abs(diff - results(38,0)) <= epsilon);
}
*/
*/
}
// Block Coodirnate descent test
{
SECTION("BCD MODE = 3, Finite rank"){
CP_BCD<tensor, conv_class> A1(D3, 9);
conv.set_norm(norm3);
double diff = A1.compute_rank_random(13, conv, 100);
CHECK(std::abs(diff) <= epsilon);
}
SECTION("BCD MODE = 4, Finite rank"){
CP_BCD<tensor, conv_class> A1(D4, 37);
conv.set_norm(norm4);
double diff = A1.compute_rank_random(55, conv, 100);
CHECK(std::abs(diff) <= epsilon);
}
SECTION("BCD MODE = 5, Finite rank"){
CP_BCD<tensor, conv_class> A1(D5, 26);
conv.set_norm(norm5);
double diff = A1.compute_rank_random(60, conv, 100);
CHECK(std::abs(diff) <= epsilon);
}
}
}
#endif