This article presents future directions for how machine learning (ML) can be easily adopted across applications to take advantage of artificial intelligence (AI). In the past two decades, ML has been improving at a tremendous pace thanks to many corporations and “experienced developers with years of study working within large organizations.” Currently, there are two systems with easy user interfaces--Overton and Ludwig--that do “not require users to fully understand all the details of how models are trained and used for obtaining predictions.” In the field of computer science, compilers and database systems hide the low-level complexity of hardware and data storage, indexing, and retrieving. So, too, this declarative ML aims to hide the expensive-to-train models and obtain predictions through simple abstract interfaces, thus it will be easy for even less experienced end users to apply ML.
There are many reasons to adopt ML. However, the one adopted in the aforementioned systems is “a simple coarse-grained view composed of four high-level steps: 1) Business need identification; 2) Data exploration and collection; 3) Pipeline building; and 4) Deployment and monitoring.” In order for AutoML systems to encapsulate all the details and simplify parts of the ML process, challenges must be addressed: building ML systems involves many decisions, all of which need to be correct with many errors at each stage; failure to improve performance for lack of understanding of the quality and failure modes of previous models; the gaps between teams working in pipelines that make it hard to share code and ideas; and, finally, not many developers, even in large companies, can write low-level ML code.
The definition of declarative ML, here, “is restricted to those systems that impose a separation between what an ML system should do and how it actually does it.” It is similar to an SQL query where “someone who writes a query doesn’t need to know about database indices and planning.” As the article explains,
Overton is designed to make sure that people do not need to write new models for production applications in search, information extraction, question answering, named entity disambiguation, and other tasks, while making it easy to evaluate models and improve performance by ingesting additional relevant data to get quality results on end-deployed models.
Thus, the whole system takes a data-first approach, which leads to “new, higher-level systems that seamlessly integrate model training, inference, and data.”
Any system that hides the implementation details from users makes it easy for the developers. However, the disadvantage of such a system would be when some unexpected errors occur; this not only degrades performance, but also the ML can cause disaster in a real-world system. In compiler or database usage, the rules are very clear based on well-supported theoretical norms. But in ML, much of the accuracy obtained is based on long-time training. Besides, it is just the beginning of such a system and it will take a long time to reach perfection.