A huge part of Facebook's everyday operations are driven by various artificial intelligence processes. One of the main processes is machine learning, the ability of a machine to store and synthesize information; in essence, to learn like a human. This complicated task requires dedicated hardware and software, networked and synced cohesively. For Facebook, the software end of things is handled by a special platform created in-house, dubbed 'FBLearner Flow'. For the first time, Facebook has seen fit to bring the inner workings of FBLearner Flow to light, giving an inside look at their A.I. operations and how everything comes together at the backend to make things like automated face tagging and user heuristics possible.
FBLearner Flow was built around a number of key concepts and needs, based on the way Facebook's employees and components operate. Namely, Facebook wanted to be able to implement an algorithm once and make it reusable, they wanted to allow for the creation of learning pipelines that can run parallel on many machines and be reused by multiple engineers, they wanted a highly automated training and implementation process that an engineer of any skill could operate, and they wanted the ability to easily search, view, share and create variations on past experiments in the system. Building on those principles, FBLearner Flow was shaped into a platform used by over a quarter of Facebook's workforce and capable of making 6 million predictions per second through easy implementation and automated parallelization throughout a given network. In essence, the idea is to create a workflow and an experiment once, and get the maximum possible return from that effort. By automating most of the process, Facebook has freed their engineers to spend less time on A.I. experimentation and more time on actually coding new procedures and objects for the A.I. to work with, allowing for faster development.
For the future of the platform, Facebook hopes to automate more and more machine learning tasks, make things more efficient and make the actual human work required easier and quicker through the use of systems like neural networks and automated Python code and workflow generation, as well as automatic UI generation for workers based on the workflow and objects at hand. Facebook plans to continue growing FBLearner Flow in a mostly autonomous direction to free up manpower and resources for development, positioning them to keep up with the rest of the tech world, while keeping their edge in A.I.