Reinforcement learning is a commonly used tool in machine learning to teach a wanted behavior. It works by rewarding desirable behaviors while discouraging undesirable ones. Facebook has used Horizon in a number of its applications in an attempt to better serve its users. According to the company, Horizon has helped personalize suggestions from M, the virtual assistant that appears in Messenger. It also has used Horizon to fine-tune notifications and optimize streaming video quality.
By taking Horizon open source, Facebook is hoping to see reinforcement learning applied in new ways. The method is typically used in robotics and games. Google used reinforcement learning to teach its DeepMind AI how to navigate a virtual parkour course and researchers at UC Berkeley used the method to teach computers to be curious. Facebook believes it could also help improve large-scale systems and applications.
Specifically, the company believes the reinforcement learning platform can prove helpful in dealing with massive data sets. Machine learning systems typically require engineers to create hand-crafted policies to take specific actions -- they need to know what outcome they are trying to achieve before making decisions. Reinforcement learning, on the other hand, can make decisions and adapt its actions based on feedback.
Because Horizon was built on open frameworks including PyTorch 1.0, Caffe2 and Spark, it should be available to just about anyone who wants to get their hands on it. Facebook believes Horizon is the first "open-source end-to-end platform that uses applied reinforcement learning (RL) to optimize systems in large-scale production environments." If you'd like to play around with it, you can clone Faecbook's Horizon GitHub repository and try it out.