A tensor factorization model of multilayer network interdependence
Authors: Izabel Aguiar, Dane Taylor, Johan Ugander
JMLR 2024 | Venue PDF | Archive PDF | Plain Text | LLM Run Details
| Reproducibility Variable | Result | LLM Response |
|---|---|---|
| Research Type | Experimental | Using both synthetic and real-world data, we evaluate the use and interpretation of the NNTuck as a model of multilayer networks. Algorithmically, we show that using expectation maximization (EM) to maximize the log-likelihood under the NNTuck is step-by-step equivalent to tensorial multiplicative updates for the NNTuck under a KL loss, extending a previously known equivalence from nonnegative matrices to nonnegative tensors. Keywords: multilayer networks, social networks, stochastic blockmodels, Tucker decomposition, link prediction |
| Researcher Affiliation | Academia | Izabel Aguiar EMAIL Institute for Computational and Mathematical Engineering Stanford University Stanford, CA 94305, USA Dane Taylor EMAIL School of Computing Department of Mathematics and Statistics University of Wyoming Laramie, WY 82071, USA Johan Ugander EMAIL Department of Management Science and Engineering Institute for Computational and Mathematical Engineering Stanford University Stanford, CA 94305, USA |
| Pseudocode | Yes | Algorithm 1 Multiplicative Updates for minimizing KL-Divergence in the NNTuck (Kim and Choi, 2007) Input: A, K, C, Symmetric, Masked, M, Independent, Redundant Initialize U, V RN K + , Y RL C + , and G RK K C + to have random, nonnegative entries. Initialize Aˆ = G 1 U 2 V 3 Y . if Symmetric: V U, G G for = 1, . . . , C, and skip each V update step below. if Independent: Y I and skip each Y update step below. if Redundant: Y ones(C) and skip each Y update step below. if not Masked: M = 1N N L while KL(A|| Aˆt) KL(A|| Aˆt 1) KL(A|| Aˆt) < rel_tol: U U [M(1) A(1)/ Aˆ(1)][G 2 V 3 Y ] (1) M(1)[G 2 V 3 Y ] (1) V V [M(2) A(2)/ Aˆ(2)][G 1 U 3 Y ] (2) M(2)[G 1 U 3 Y ] (2) Y Y [M(3) A(3)/ Aˆ(3)][G 1 U 2 V ] (3) M(3)[G 1 U 2 V ] (3) G G [M A/ Aˆ] 1 U 2 V 3 Y M 1 U 2 V 3 Y Aˆ G 1 U 2 V 3 Y Return U, V , Y , G. |
| Open Source Code | Yes | Tools for this work and an example jupyter notebook (all in python) can be found at https://github.com/izabelaguiar/NNTuck The implementation of the multiplicative updates algorithm from Kim and Choi (2007), Algorithm 1, is done in python using the tensorly backend. |
| Open Datasets | Yes | In Section 6 we use the NNTuck to analyze layer dependence in practice for: two synthetic networks; the cognitive social structure dataset from Krackhardt (1987); a biological multilayer network from Larremore et al. (2013); a social support multilayer network from Banerjee et al. (2013); and 113 other multilayer social support networks from Banerjee et al. (2013, 2019). ... The adjacency matrices for this advice CSS were transcribed from the original paper for this work, and can be accessed on Git Hub (see Aguiar, 2021) ... For the over 45 datasets provided in De Domenico s multilayer network database (De Domenico, 2022). |
| Dataset Splits | Yes | For each link prediction task we construct five different masking tensors and estimate a model based on only observed entries of the data tensor. We select the NNTuck with the highest test set log-likelihood from 50 different runs of the multiplicative updates algorithm with random initializations. Then, test-AUC is averaged across the five different maskings. ... Independent link prediction In this link prediction task masking is irrespective of layer. That is, we assume that for b-fold cross-validation, elements in the tensor are missing with uniform and independent probability 1/b. ... Tubular link prediction In this link prediction task edges are always observed or missing across all layers. That is, we assume that for b-fold cross-validation, tubes (i, j, ) in the tensor are missing with uniform probability 1/b (see Figure 13 for a visualization of tensor tube fibers). |
| Hardware Specification | No | As an upper limit for the computation we were able to do before running into memory limits, we generated a synthetic multilayer network with N = 25, 000 nodes and L = 5 layers. Over 20 random initializations of Algorithm 1, estimating the layer redundant NNTuck and the layer independent NNTuck of this network took 12.43 hours and 18.044 hours, on average, respectively. Efficient algorithms for estimating the nonnegative Tucker decomposition, such as those discussed in Zhou et al. (2015), minimize least-squares loss. |
| Software Dependencies | No | Tools for this work and an example jupyter notebook (all in python) can be found at https://github.com/izabelaguiar/NNTuck The implementation of the multiplicative updates algorithm from Kim and Choi (2007), Algorithm 1, is done in python using the tensorly backend. |
| Experiment Setup | Yes | In practice, we declare that the algorithm has found a local minima if the KL-divergence has not decreased by more than a relative tolerance of 10-5 in ten steps. ... For both networks we estimate the NNTuck with C = 2 and K = 2 and report the NNTuck with the highest log-likelihood over 20 runs with different random initializations. ... We vary K from 2 to 12 in the Krackhardt multilayer network, and from 2 to 20 in the Malaria and Village multilayer networks. ... For the LRT in each application we select the NNTuck (for prespecified (K, C)) with the highest log-likelihood across 20 random initializations. |