Table 1.
Comparison of our proposed S3CMTF and the existing CMTF methods.
S3CMTF outperforms all other methods in terms of time, accuracy, scalability, memory usage, and parallelizability.
Fig 1.
Comparison of our proposed S3CMTF and the existing methods.
(a) For a fixed number of nonzeros, S3CMTF takes constant time as dimensionality grows, while existing methods become slower. Our sequential method S3CMTF-opt1 is 930× and 54× faster than CMTF-OPT and CMTF-Tucker ALS, respectively. (b) S3CMTF-opt20 shows the best convergence rate and accuracy on real world Yelp dataset. CMTF-Tucker-ALS shows O.O.M. in both experiments. (O.O.M.: out of memory error).
Table 2.
Table of symbols.
Fig 2.
The scheme for S3CMTF.
Fig 3.
Example hypergraphs induced by S3CMTF objective function (Eq (7)).
A matrix Y is coupled to the second mode of with a coupled factor matrix V. Each node represents a factor row or the core tensor. Each hyperedge includes corresponding factors to an SGD update. (a) Induced hypergraph with the core tensor. Every hyperedge corresponding to tensor entries includes
. (b) Induced hypergraph without core tensor. The graph has sparse structure as every node is shared by only few hyperedges.
Table 3.
Comparison of time complexity (per iteration) and memory usage of our proposed S3CMTF and other CMTF algorithms.
S3CMTF-opt shows the lowest time complexity and S3CMTF-base shows the lowest memory usage. For simplicity, we assume that all modes are of size I, of rank J, and an I × K matrix is coupled to one mode. P is the number of parallel cores. (* indicates the lowest time or memory).
Table 4.
Summary of the data used for experiments.
‘K’ means thousand, and ‘M’ million. Tensors and matrices of density 1 are fully observed.
Fig 4.
Test RMSE of S3CMTF and other CMTF methods over iterations.
S3CMTF-opt20 shows the best convergence rate and accuracy.
Fig 5.
Comparison with SALS-single for movieLens dataset.
We compare two non-coupled version of S3CMTF, S3CMTF-CP-opt and S3CMTF-TUCKER-opt with the parallel CP decomposition method, SALS-single. For (a), we set 1 mark per 20 iterations for clarity. (a) S3CMTF converges faster to a lower error than SALS does. (b) S3CMTF-CP-opt is 2.3× faster than SALS-single.
Fig 6.
(a) S3CMTF shows linear scalability as the number of entries increases. (b) S3CMTF-base and S3CMTF-opt show linear speed up as the number of cores grows. O.O.M.: out of memory error.
Fig 7.
(a) Gap statistics on U(2) of S3CMTF and the Tucker decomposition for Yelp dataset. S3CMTF outperforms the naive Tucker decomposition for its clustering ability. (b) Visualization of the personal recommendation scenario.
Table 5.
Clustering results on business factor U(2) found by S3CMTF.
We found dominant spatial and categorical characteristics from each cluster. Businesses in a same cluster tend to be in adjacent cities and are included in similar categories.