Distributed Statistical Model Fitting with ADMM Algorithm

Yixuan Qiu & Rongrong Zhang
2015-12-02

@ STAT 598 Computing for Big Data

Content

  • What is ADMM?
  • Distributed Computing with ADMM
  • Implementation in Scala/Spark
  • Computing on Real Data

What is ADMM?

What is ADMM?

  • Full name: Alternating Direction Method of Multipliers
  • An algorithm for constrained convex optimization problems
  • Highlighted features:
    • Provides easy-to-apply solutions to many statistical models
    • Can be easily incorporated into the distributed computing framework
    • A good friend of statistical models

Timings

  • Coding time: FOREVER
“Multithreading: Theory and Practice” (Image from http://wrathematics.github.io/RparallelGuide/)

References

  • Boyd, S., Parikh, N., Chu, E., Peleato, B., & Eckstein, J. (2011). Distributed optimization and statistical learning via the alternating direction method of multipliers. Foundations and Trends® in Machine Learning, 3(1), 1-122.
  • Minka, T. P. (2003). Algorithms for maximum-likelihood logistic regression.
  • Spark documentation
  • Breeze documentation
  • Java Native Interface (JNI)

Thank you!