topFiberM: Scalable and Efficient Boolean Matrix Factorization

03/06/2019
by   Abdelmoneim Amer Desouki, et al.
0

Matrix Factorization has many applications such as clustering. When the matrix is Boolean it is favorable to have Boolean factors too. This will save the efforts of quantizing the reconstructed data back, which usually is done using arbitrary thresholds. Here we introduce topFiberM a Boolean matrix factorization algorithm. topFiberM chooses in a greedy way the fibers (rows or columns) to represent the entire matrix. Fibers are extended to rectangles according to a threshold on precision. The search for these "top fibers" can continue beyond the required rank and according to an optional parameter that defines the limit for this search. A factor with a better gain replaces the factor with minimum gain in "top fibers". We compared topFiberM to the state-of-the-art methods, it achieved better quality for the set of datasets usually used in literature. We also applied our algorithm to linked-data to show its scalability. topFiberM was in average 128 times faster than the well known Asso method when applied to a set of matrices representing a real multigraph although Asso is implemented in C and topFiberM is implemented in R which is generally slower than C. topFiberM is publicly available from Github (https://github.com/dice-group/BMF).

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset