# 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;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sliu583.gitbook.io/blog/specific-work/shivarams-group/group-papers/declarative-machine-learning-systems.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
