> For the complete documentation index, see [llms.txt](https://sliu583.gitbook.io/blog/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sliu583.gitbook.io/blog/specific-work/shivarams-group/group-papers/declarative-machine-learning-systems.md).

# Declarative Machine Learning Systems

### Introduction&#x20;

* Machine learning: central in the strategy of tech companies and has gathered more attention from academia than ever before&#x20;
* Hastened by&#x20;
  * **Hardware improvements**: enabled massive parallel processing&#x20;
  * **Data infrastructure improvements**: enabled storage and consumption of massive datasets needed to train most ML models&#x20;
  * **Algorithmic improvements**: better performance and scaling
* Future envision: larger amount of people without skills to perform the same tasks. More **declarative** and **abstract interfaces** to hide complexity.&#x20;
* Describe&#x20;

  * How current ML systems are structured
  * What factors are important for ML project success, which ones will determine wider ML adoption&#x20;
  * What are the issues current ML systems are facing
  * How the systems being developed address them&#x20;
  * What the next generation of ML systems look like&#x20;

1. Software engineering meets ML&#x20;
   1. Distill common patterns that abstract the most mechanical parts of the process of building ML projects in a set of tools, systems, and platforms&#x20;
2. The coming wave of ML systems&#x20;
   1. Substantial increases in adoption always come with **separation of interests** and **hiding of complexity**&#x20;
   2. Next-generation of ML systems that will allow people without ML expertise to train models and obtain predictions through more abstract interfaces&#x20;

### Machine Learning Systems&#x20;

![](/files/-Mk10JQk_rXMs8aO1akJ)

**Challenges & desiderata:**

1. Exponential decision explosion&#x20;
   1. Need: good defaults and automation&#x20;
2. New model-itis&#x20;
   1. Need: standardization and focus on quality&#x20;
3. Organizational chasms&#x20;
   1. Need: common interfaces&#x20;
4. Scarcity of expertise&#x20;
   1. Need: higher level abstractions&#x20;
5. Process slowness&#x20;
   1. Need: rapid iteration&#x20;
6. Many diverse state
   1. Need: separation of interests&#x20;

### Declarative ML systems&#x20;

&#x20;
