Facebook today announced the open source release of Deep Learning Recommendation Model (DLRM), a state-of-the-art AI model for serving up personalized results in production environments. DLRM can be found on GitHub, and implementations of the model are available for Facebook’s PyTorch, Facebook’s distributed learning framework Caffe2, and Glow C++.
Recommendation engines decide a lot of what people see today, whether it’s content on social media sites like Facebook, ecommerce sites like Amazon, or even the first options you see on an Xbox. Last month, Amazon made its AI for the shopping recommendations system Personalize available on AWS.
A paper by more than 20 Facebook AI researchers published on arXiv in late May explains how the model uses embedding tables that map categorical data to representations. The predictive function multilayer perceptrons (MLP) carries out the majority of compute.
Facebook director of technology strategy Vijay Rao detailed the approach to working with neural networks with a large number of embeddings in a presentation about open source projects earlier this year at the Open Compute Project conference.
Facebook AI Research (FAIR) open-sources a lot of its work, but its parent company is making DLRM available for free to help the wider AI community address challenges presented by recommendation engines, like a need for neural networks to associate categorical data with certain higher-level attributes.
“Although recommendation and personalization systems still drive much practical success of deep learning within industry today, these networks continue to receive little attention in the academic community,” the paper reads. “By providing a detailed description of a state-of-the-art recommendation system and its open-source implementation, we hope to draw attention to the unique challenges that this class of networks present in an accessible way for the purpose of further algorithmic experimentation, modeling, system co-design, and benchmarking.”
The makers of DLRM suggest the model be used for benchmarking the speed and accuracy performance of recommendation engines. The DLRM benchmark for experimentation and performance evaluation is written in Python and supports random and synthetic inputs.
Performance results of an optimized DLRM system will be shared publicly at a future date, Facebook research scientists Dheevatsa Mudigere and Maxim Naumov said in a blog post today.
Other AI models or frameworks open-sourced by Facebook in recent weeks includes PyRobot, a robotics framework that works with PyTorch, and PyTorch Hub, a workflow and API meant to encourage reproducibility of AI models.
Facebook’s recommendation tools have been controversial in the past, to say the least. Keras deep learning library creator François Chollet last year proclaimed in a lengthy Medium post and series of tweets that AI researchers with a conscience shouldn’t work at Facebook, in part because of the way Facebook’s recommendation engines work today.