This function performs propensity clustering that assigns objects (or nodes) in a network to clusters such that the resulting Cluster and Propensity-based Approximation (CPBA) of the input adjacency matrix optimizes a specific criterion. Large data sets on which standard propensity clustering may take too long are first optionally split into smaller blocks. Propensity clustering is then applied to each block, and the clustering is used for the final CPBA decomposition.
This package implements two main functions PropensityDecomposition and PropensityClustering by finding the closest approximation to a matrix ADJ where ADJ_ij~A_aba_i b_j with either L2 penalties or poisson penalties.