Golub-Kahan SVD algorithm for KMP tensors #499

Closed
grinisrit wants to merge 64 commits from dev into dev

64 Commits

Author SHA1 Message Date
Roland Grinis
7b693270f0
Merge pull request #2 from margarita0303/feature/tensors-performance
Removed checks for accuracy in benchmarks
2022-08-17 08:47:39 +01:00
margarita0303
2cad8abed7 removed checks for accuracy in benchmarks 2022-08-17 09:53:12 +03:00
Roland Grinis
87022d771b
Merge pull request #1 from margarita0303/feature/tensors-performance
Feature/tensors performance Adding SVDGolubKahan
2022-08-03 08:26:25 +01:00
margarita0303
68609d7846 removed transposition at the end of the svdGolubKahan 2022-08-02 23:01:11 +03:00
margarita0303
38ed6dd995 added benchmarks with different sizes, added check for accuracy 2022-08-02 20:59:11 +03:00
margarita0303
8bfa07cc27 added epsilon for calculating the accuracy of calculations Golub Kahan 2022-08-02 20:39:31 +03:00
margarita0303
9cc9d959c4 mutableBuffer setter method now is used in other places of the library 2022-08-02 20:03:06 +03:00
margarita0303
9eb953228a mutableBuffer setter method now is used in PowerMethod 2022-08-02 19:40:10 +03:00
margarita0303
7e7dc9f9aa added epsilon as a parameter to svdGolubKahan 2022-07-30 21:09:50 +03:00
margarita0303
67eb92357b mutableBuffer setter method now is used in GolubKahan 2022-07-30 20:04:12 +03:00
margarita0303
29ed51c50a added new parameter iterations to svdGolubKahan 2022-07-30 19:03:43 +03:00
margarita0303
7efcd0c027 Merge remote-tracking branch 'origin/feature/tensors-performance' into feature/tensors-performance
# Conflicts:
#	benchmarks/src/jvmMain/kotlin/space/kscience/kmath/benchmarks/SVDBenchmark.kt
#	kmath-tensors/src/commonMain/kotlin/space/kscience/kmath/tensors/core/DoubleTensorAlgebra.kt
#	kmath-tensors/src/commonMain/kotlin/space/kscience/kmath/tensors/core/internal/linUtils.kt
#	kmath-tensors/src/commonTest/kotlin/space/kscience/kmath/tensors/core/TestDoubleLinearOpsAlgebra.kt
2022-07-30 18:38:13 +03:00
margarita0303
8008891a01 added separately svdGolubKahan and svd calls svdGolubKahan, changed benchmarks and tests 2022-07-30 18:37:20 +03:00
margarita0303
9357e0f703 benchmark changed due to new names of svd functions 2022-07-30 18:09:40 +03:00
margarita0303
cccfe61112 added some tests for svd 2022-07-30 18:09:40 +03:00
margarita0303
168912161f fixed error 2022-07-30 18:09:40 +03:00
margarita0303
d1ca4493d5 functions renamed, svd (Golab Kahan) now works by default 2022-07-30 18:09:40 +03:00
margarita0303
40ff0a52a6 commented out new tests, they are too long 2022-07-30 18:09:40 +03:00
margarita0303
684227df63 added new svd tests 2022-07-30 18:09:40 +03:00
margarita0303
082317b8b5 added tests for svd Golab Kahan 2022-07-30 18:09:40 +03:00
margarita0303
de2f82c878 functions SIGN and pythag are made private 2022-07-30 18:09:40 +03:00
margarita0303
46a8e5fca4 changed name in build file 2022-07-30 18:09:40 +03:00
Margarita
b99d2e8486 Delete margarita.kt
deleted tmp file for testing during work
2022-07-30 18:09:40 +03:00
margarita0303
e7968f28f4 svd benchmarks added 2022-07-30 18:09:40 +03:00
margarita0303
7749b72f24 tensors dimensions changed 2022-07-30 18:09:40 +03:00
margarita0303
13d063c1b1 deleted tmp file 2022-07-30 18:09:40 +03:00
margarita0303
c4afb69ba9 added svdGolabKahan 2022-07-30 18:09:40 +03:00
margarita0303
8a45ad1911 added svdGolabKahanHelper 2022-07-30 18:09:40 +03:00
Margarita
40bab168a7 reformatted code 2022-07-30 18:09:40 +03:00
Margarita
8b48eaa1ed renamed function and changed structure 2022-07-30 18:09:40 +03:00
Margarita
3ca94ec4ec added some tests for method dot 2022-07-30 18:09:40 +03:00
Margarita
a21baf95a0 added the rest of the algorithm 2022-07-30 18:09:40 +03:00
Margarita
0c9ef905da added comment about division by zero 2022-07-30 18:09:40 +03:00
Margarita
e1d1bc9031 added partial implementation of svd calculation 2022-07-30 18:09:40 +03:00
Margarita
487a663d0f added test for StructureND<Double>.times 2022-07-30 18:09:40 +03:00
Margarita
cc00e1dee5 added tests for fullLike, onesLike, rowsByIndices 2022-07-30 18:09:40 +03:00
Margarita
99d0cfb384 added tests for std, variance 2022-07-30 18:09:40 +03:00
Margarita
a241d5dc92 added more examples for tensors, added tests for acos, asin, atanh 2022-07-30 18:09:40 +03:00
margarita0303
5d74fd8bf4 benchmark changed due to new names of svd functions 2022-07-26 22:42:36 +03:00
margarita0303
f7ac73b748 added some tests for svd 2022-07-26 22:13:48 +03:00
margarita0303
f0e445587d fixed error 2022-07-26 21:56:50 +03:00
margarita0303
9a46dd8966 functions renamed, svd (Golab Kahan) now works by default 2022-07-26 18:03:01 +03:00
margarita0303
20695e9617 commented out new tests, they are too long 2022-07-14 14:38:00 +03:00
margarita0303
ea8401acab added new svd tests 2022-07-14 14:34:44 +03:00
margarita0303
a420f7406c added tests for svd Golab Kahan 2022-07-13 19:54:10 +03:00
margarita0303
83620c77d2 functions SIGN and pythag are made private 2022-07-13 19:51:17 +03:00
margarita0303
f7cb483782 changed name in build file 2022-07-13 18:52:58 +03:00
margarita0303
8048427a4b Merge remote-tracking branch 'origin/feature/tensors-performance' into feature/tensors-performance 2022-07-13 18:42:28 +03:00
margarita0303
07ed9980fc svd benchmarks added 2022-07-13 18:34:26 +03:00
Margarita
3da47573f4
Delete margarita.kt
deleted tmp file for testing during work
2022-07-12 20:43:35 +03:00
margarita0303
874da80446 tensors dimensions changed 2022-07-12 20:37:00 +03:00
margarita0303
c7e224818b deleted tmp file 2022-07-12 20:32:44 +03:00
margarita0303
ac21838e4b added svdGolabKahan 2022-07-12 17:19:19 +03:00
margarita0303
4ff3ab0100 added svdGolabKahanHelper 2022-07-12 17:16:30 +03:00
Margarita
a497a5df1a reformatted code 2022-05-25 01:16:56 +03:00
Margarita
97104ad40f renamed function and changed structure 2022-05-25 01:11:22 +03:00
Margarita
eda477b2b5 added some tests for method dot 2022-05-24 23:44:09 +03:00
Margarita
37922365b6 added the rest of the algorithm 2022-05-24 23:23:35 +03:00
Margarita
86efe48217 added comment about division by zero 2022-05-24 19:50:50 +03:00
Margarita
2fa39fff14 added partial implementation of svd calculation 2022-05-24 19:22:26 +03:00
Margarita
ae9666b07b added test for StructureND<Double>.times 2022-03-23 00:46:52 +03:00
Margarita
93b62c5bf6 added tests for fullLike, onesLike, rowsByIndices 2022-03-23 00:25:17 +03:00
Margarita
0440764cd3 added tests for std, variance 2022-03-22 21:51:45 +03:00
Margarita
f8c55328a4 added more examples for tensors, added tests for acos, asin, atanh 2022-03-22 21:12:39 +03:00