  In the recent years, machine learning has made great advancements that have
been at the root of many breakthroughs in different application domains.
However, it is still an open issue how make them applicable to high-stakes or
safety-critical application domains, as they can often be brittle and
unreliable. In this paper, we argue that requirements definition and
satisfaction can go a long way to make machine learning models even more
fitting to the real world, especially in critical domains. To this end, we
present two problems in which (i) requirements arise naturally, (ii) machine
learning models are or can be fruitfully deployed, and (iii) neglecting the
requirements can have dramatic consequences. We show how the requirements
specification can be fruitfully integrated into the standard machine learning
development pipeline, proposing a novel pyramid development process in which
requirements definition may impact all the subsequent phases in the pipeline,
and viceversa.
