Skip to content
Run large scale tensor and coupled matrix-tensor factorization on top of stock Hadoop.
Java Shell Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


FlexiFaCT is a system for performing scalable matrix, tensor, and coupled matrix-tensor factorization on top of standard, stock Hadoop. The system is flexible to different objectives, including non-negative factorization and sparse factorization. Through careful partitioning of both the data and the model, our system can scale to big data and models with even billions of parameters.

For details of the algorithm and implementation (such as how to set parameters) see [1], and if you are interested in this direction of research you can check out our follow up work in [2].


The implementation of FlexiFaCT has been tested on Hadoop 0.20.1 and Java (but can likely be run on other versions of Hadoop).

Include in your bashrc:

export PATH=$PATH:/hadoop/hadoop-current/bin
export PATH=$PATH:/hadoop/jdk-current/bin

alias hls='hadoop fs -ls '
alias hput='hadoop fs -put '
alias hmv='hadoop fs -mv '
alias hmkdir='hadoop fs -mkdir '
alias hcat='hadoop fs -cat '

You must also have the HADOOP_HOME and HADOOP_CORE set to compile the necessary jar files in the script.

An example of running the script can be found in but make sure to change the appropriate directories.

Test data can be generated with


FlexiFaCT is developed by:

Alex Beutel, Carnegie Mellon University -

Abhimanu Kumar, Carnegie Mellon University -

Evangelos Papalexakis, Carnegie Mellon University -

Partha Pratim Talukdar, Carnegie Mellon University -

Christos Faloutsos, Carnegie Mellon University -

Eric P. Xing, Carnegie Mellon University -


[1] Alex Beutel, Abhimanu Kumar, Evangelos Papalexakis, Partha Pratim Talukdar, Christos Faloutsos, Eric P. Xing. "FlexiFaCT: Scalable Flexible Factorization of Coupled Tensors on Hadoop." 2014 SIAM International Conference on Data Mining (SDM).

[2] Abhimanu Kumar, Alex Beutel, Qirong Ho, Eric P. Xing. "Fugue: Slow-Worker-Agnostic Distributed Learning for Big Models." 17th International Conference on Artificial Intelligence and Statistics (AISTATS), 2014. PDF

You can’t perform that action at this time.