https://github.com/tensorly/tensorly

sort by:
Revision Author Date Message Commit Date
1d54a35 Use transpose directly instead of moveaxis in the mttkrp This provides a slight performance improvement. 11 February 2019, 21:27:36 UTC
ddc74bf Remove duplicate stack definition 05 February 2019, 20:01:33 UTC
cd88d3f Fix issues with mxnet backend Some custom methods were not being used because of a bad merge conflict resolution. 05 February 2019, 19:45:23 UTC
bbe5336 Merge branch 'master' into sparse-parafac 05 February 2019, 18:24:32 UTC
2d56a42 Merge pull request #95 from JeanKossaifi/backend-manager Backend refactor + sparse support for numpy 05 February 2019, 18:18:43 UTC
114e663 Test backend: remove needless try 01 February 2019, 15:11:57 UTC
6fd2894 Add back dynamical dispatch for backend methods Also bump version 30 January 2019, 23:58:40 UTC
99f2d6a FIX sparse backend 14 January 2019, 15:55:22 UTC
b742c47 FIX contraction tests 10 January 2019, 20:44:06 UTC
478d832 Fix the sparse backend 10 January 2019, 18:01:10 UTC
c10f44e Merge branch 'master' into backend-manager 08 January 2019, 21:55:22 UTC
e1361b8 FIX: forgotten backend registration 08 January 2019, 15:55:14 UTC
591f5b7 Revert to functions 02 January 2019, 16:16:11 UTC
91f85a5 Refactor + Thread Local + context manager 28 December 2018, 12:10:37 UTC
7e69725 update 25 December 2018, 21:57:43 UTC
247917c TYPO 23 December 2018, 23:37:01 UTC
f04806e MXNET: fix reshape with empty shape 23 December 2018, 23:32:26 UTC
05b6b2f Adds tensor contraction 23 December 2018, 23:13:49 UTC
3580c8f BackendManager draft 23 December 2018, 20:57:48 UTC
12e1765 Merge branch 'sparse' into sparse-parafac 13 December 2018, 15:27:45 UTC
895a805 Merge branch 'sparse' of github.com:Quansight/tensorly into sparse 13 December 2018, 15:22:33 UTC
952b684 some minor sparse fixes 13 December 2018, 15:11:01 UTC
3c8fec9 Wrap non-negative PARAFAC for the sparse back-end. 13 December 2018, 11:49:53 UTC
4922c55 Fix typo in non-negative PARAFAC kwarg. 13 December 2018, 11:49:27 UTC
ae0f5eb Merge branch 'sparse' into sparse-parafac 12 December 2018, 20:06:12 UTC
1f1c500 remove sparse tensor 12 December 2018, 20:03:59 UTC
367f376 Fix some text in a comment 11 December 2018, 20:45:23 UTC
15ed539 Fold non_negative_parafac() into parafac(non_negative=True) non_negative_parafac() still exists as a alias to it. 10 December 2018, 21:26:07 UTC
ee17745 Convert A and b to csc in sparse.solve This avoids warnings from scipy that csc is more efficient when using solve. 07 December 2018, 20:21:26 UTC
ba19cfc Add kruskal_to_tensor to the sparse backend 06 December 2018, 22:30:10 UTC
6cb7e71 Fix typo in mxnet moveaxis 06 December 2018, 19:25:21 UTC
91d56bc Remove axis keyword argument from prod() call It is a different keyword argument name for different backends. 06 December 2018, 19:23:38 UTC
680c750 Fix stack for the pytorch backend It calls the second argument 'dim' instead of 'axis'. 06 December 2018, 19:15:03 UTC
57f8751 Use an implementation of moveaxis that supports negative indices for mxnet 06 December 2018, 19:09:58 UTC
ce48e52 Make sure the dot product is against a n x 1 vector Only NumPy will take the dot product of a shape (m, n) with shape (n,) array it seems. 06 December 2018, 18:59:30 UTC
d5a2c48 Fix moveaxis for the pytorch backend for negative source or target 06 December 2018, 18:49:08 UTC
0bb275a Fix moveaxis for the tensorflow backend for negative source or target arguments 06 December 2018, 18:47:22 UTC
b51171b Use a.dot(b) for the numpy backend dot This fixes an issue with the sparse library when dotting a sparse array with a dense array. 06 December 2018, 18:33:05 UTC
71150f7 Add stack to the pytorch backend 06 December 2018, 18:15:25 UTC
ca56b96 Fix an instance of array.dot -> tl.dot 06 December 2018, 18:13:29 UTC
814d254 Use tl.dot and tl.transpose instead of .dot and .T 06 December 2018, 18:07:40 UTC
2a0d58c Merge branch 'sparse' into sparse-parafac 06 December 2018, 18:03:58 UTC
21d49b7 Add stack to the other backends 06 December 2018, 17:57:28 UTC
9bf66a4 Use tl.moveaxis instead of np.moveaxis 06 December 2018, 17:51:49 UTC
ce58bc1 Add explanatory comment 05 December 2018, 21:26:04 UTC
1cf4b5c Print the variation after 2 iterations instead of 3 05 December 2018, 19:04:08 UTC
d382f20 Easier to read verbose output 05 December 2018, 19:03:59 UTC
ab42284 Fix typo in norm calculation 05 December 2018, 18:53:16 UTC
ccad6e1 Add stack to the backend core so that tl.stack works 04 December 2018, 22:23:56 UTC
a769a0b Remove random-sparse method from initialize_factors() 04 December 2018, 21:50:57 UTC
111e636 Add stack() to the numpy and sparse backends It still needs to be added to the other backends. 04 December 2018, 21:42:43 UTC
0a08c08 Leave in some commented out code, but clarify what it is 04 December 2018, 21:41:59 UTC
3b67a89 Indicate how many modes there are in the verbose message 04 December 2018, 21:40:51 UTC
2b407b2 Fix IndexError in parafac 04 December 2018, 20:04:04 UTC
b3054cc Compute the norm at the end of ALS in a sparse-safe way We can never compute the exact kruskal_to_tensor() for a decomposed sparse tensor, because it will be highly dense due to numerical inaccuracies (the zeroes of the original will become near-zeroes). Rather, we compute ||tensor - kruskal_to_tensor(factors)|| as sqrt(||tensor||^2 + ||factors||^2 - 2<tensor, factors>). The second term can be computed via sum(hadamard_product(f.T.dot(f) for f in factors)). See section 5.2.5 from Bader, Brett W., and Tamara G. Kolda. "Efficient MATLAB computations with sparse and factored tensors." SIAM Journal on Scientific Computing 30.1 (2007): 205-231. The third term can be computed from the matricized Khatri-Rao product computed earlier in the algorithm. The idea was this was taken from the above cited paper and corresponding source code. See https://gitlab.com/tensors/tensor_toolbox/blob/master/cp_als.m and https://gitlab.com/tensors/tensor_toolbox/blob/master/@ktensor/norm.m. The norm computed here is not numerically identical to the norm as previously computed, due to numerical differences. This still requires cleanup to continue to work with non-sparse arrays (I haven't factored out sparse.stack to the backend yet). 04 December 2018, 19:12:46 UTC
4ff986b more docs 03 December 2018, 21:51:38 UTC
e49a448 try to fix local_threadsafe tests 03 December 2018, 20:48:05 UTC
6a5ac92 import tensorly as tl 03 December 2018, 20:38:58 UTC
2c8555a make_session_default -> local_threadsafe 03 December 2018, 20:18:00 UTC
359ee35 Some more verbose printing This commit should eventually be reverted. 30 November 2018, 23:34:37 UTC
c864360 Better variable names 30 November 2018, 23:34:17 UTC
2653b70 Experimental work in progress support for sparse matrix-times-khatri-rao 30 November 2018, 20:30:21 UTC
f2fc3f1 added sparse tensor to initi 29 November 2018, 23:39:35 UTC
1608ad0 added sparse_tensor and backend system docs 29 November 2018, 23:20:50 UTC
6e03faa revert tests to using relative imports 29 November 2018, 22:22:14 UTC
e636133 Sparse developer docs fixes 28 November 2018, 21:13:04 UTC
eeac726 Sparse developer docs 28 November 2018, 19:05:53 UTC
79a29e3 Clear trailing whitespace in candecomp_parafac.py 26 November 2018, 23:32:43 UTC
0bbba71 Split out some variables for easier debugging 26 November 2018, 23:32:26 UTC
29c6ddd Add random-sparse initialize_factors method This is still experimental. I still need to figure out how to reliably get an initial set of factors that are dense for the algorithm to work but sparse enough to work with large sparse tensors. 26 November 2018, 23:30:51 UTC
b1e93bb Add solve for the sparse backend 26 November 2018, 23:29:55 UTC
f1941ec Wrap parafac for sparse (it doesn't actually work yet) 26 November 2018, 23:29:26 UTC
ba1c13b fixed make_session_default tests 26 November 2018, 20:48:05 UTC
f6a908d some minor refactors 26 November 2018, 20:42:21 UTC
f532a16 Skip MPS tests when on tensorflow backend due to unsupported fancy indexing operations 26 November 2018, 19:35:52 UTC
c66bd7b Merge branch 'master' into sparse 26 November 2018, 18:47:37 UTC
3a35360 DOC FIX: home page user_guide link 26 November 2018, 16:25:12 UTC
9fc1f82 Add argmin and argmax for tensorflow 20 November 2018, 19:03:33 UTC
4848bf9 register_method is only for functions that *aren't* defined as staticmethods 19 November 2018, 23:45:40 UTC
23d21ba Fix assert_ import 19 November 2018, 23:32:04 UTC
f7a9519 Add argmin and argmax to __init__.py 19 November 2018, 23:28:15 UTC
e4144a0 Merge branch 'master' into sparse 19 November 2018, 23:09:15 UTC
ff75e67 Add tensorly.contrib.sparse.tenalg 30 October 2018, 14:41:47 UTC
ec8add1 Random: deprecate old functions 29 October 2018, 14:45:26 UTC
841e7e6 DOC: update random module API 29 October 2018, 14:30:25 UTC
e782136 Refactored random module 29 October 2018, 14:29:04 UTC
c5cef8e Sanity checks on rank for MPS 29 October 2018, 14:28:39 UTC
54297a3 FIX: use tl.ones not np. 28 October 2018, 21:00:47 UTC
8104e06 FIX: (multi_)mode_dot with vector 28 October 2018, 20:53:28 UTC
9badf5d Do not set global random seed 28 October 2018, 18:11:22 UTC
d4b1854 DOC: add contrib to API 28 October 2018, 18:02:33 UTC
f15cf2e Contrib: add decomposition submodule 28 October 2018, 18:02:01 UTC
d82e08b Merge pull request #73 from wumming/TTcross Cross-approx algorithm for MSP/tensor-train decomposition 28 October 2018, 14:21:49 UTC
a7971af Typos 27 October 2018, 19:47:36 UTC
cd25045 Updated guide 27 October 2018, 19:46:30 UTC
c8095a4 Removed un-necessary import 27 October 2018, 17:13:53 UTC
3ff301c Edit AUTHORS list 08 October 2018, 12:27:34 UTC
aa076e5 Add numpy sparse backend 02 October 2018, 03:22:24 UTC
404b8bd Test tensorflow backend on travis 02 October 2018, 00:33:07 UTC
cd83529 Document generic backend methods 01 October 2018, 23:21:49 UTC
back to top