Before we can proceed with understanding how flow-based models work, let's recap some concepts such as the Jacobian matrix, calculating the determinant of a matrix and the change of the variable theorem in probability, and then go on to understand what a normalizing flow is.
As a refresher, the Jacobian matrix is an m×n-dimensional matrix that contains the first derivatives of a function, which maps an n-dimensional vector to an m-dimensional vector. Each element of this matrix is represented by .
The determinant can only be found for a square matrix. So, let's suppose we have an n×n matrix, M. Its determinant can be found ...