The goal of seismic inversion is to obtain subsurface properties from surface measurements. Seismic images have proven valuable, even crucial, for a variety of applications, including subsurface energy exploration, earthquake early warning, carbon capture and sequestration, estimating pathways of sub-surface contaminant transport, etc. These subsurface properties (such as wave speed, density, and elastic velocities) influence the transmission of seismic waves through the subsurface media, and well-understood physics models (so-called “forward models”) can be used to predict what surface measurements would be made, for any given subsurface configuration. Seismic inversion is the inverse problem: given actual surface measurements, infer what subsurface configuration would give rise to those measurements. Like most inverse problems, seismic imaging is ill-posed, meaning many different subsurface configurations can give rise to the same surface measurements. Iterative optimization algorithms for the inverse problem are typically very computationally expensive because they require many evaluations of the forward model, which is itself computationally expensive. A further challenge is the different sensitivity of subsurface properties to the seismic data; density for example is more difficult to accurately infer than is P-wave velocity. But recent advances in algorithms and computing provide an opportunity for remarkable progress in seismic inversion, and efficient solutions to previously infeasible problems have been obtained using data-driven approaches (such as the deep learning methods that were developed primarily for problems in computer vision). The excellent performance of learning-based methods arises from its ability to exploit large amounts of high-quality training data, without the need for hand-designed features. Unlike computer vision, however, seismic inversion is not a data-rich domain. There is a relatively small amount of field data in existence due to the high cost of acquisition, and as a result of its commercial value, a very limited amount is publicly available. To alleviate the data scarcity issue and improve model generalization, there has been growing interest in combining physics knowledge with machine learning for solving seismic inversion problems. This review will survey methods for incorporating physics knowledge with machine learning (primarily deep neural networks) to solve computational seismic inversion problems. We will provide a structured framework of the existing research in the seismic inversion community, and will identify technical challenges, insights, and trends.