  Phase retrieval consists in the recovery of a complex-valued signal from
intensity-only measurements. As it pervades a broad variety of applications,
many researchers have striven to develop phase-retrieval algorithms. Classical
approaches involve techniques as varied as generic gradient-descent routines or
specialized spectral methods, to name a few. Yet, the phase-recovery problem
remains a challenge to this day. Recently, however, advances in machine
learning have revitalized the study of phase retrieval in two ways: significant
theoretical advances have emerged from the analogy between phase retrieval and
single-layer neural networks; practical breakthroughs have been obtained thanks
to deep-learning regularization. In this tutorial, we review phase retrieval
under a unifying framework that encompasses classical and machine-learning
methods. We focus on three key elements: applications, overview of recent
reconstruction algorithms, and the latest theoretical results.
