introduction to flow models

https://www.pi.website/blog/pi07 https://diffusion.csail.mit.edu/2026/index.html

Time dependent vector fields

  • A time dependent vector field maps a point β€˜x’ in space and time β€˜t’ to a velocity vector
  • mathematically we define such field as u(x,t) or just as ut(x)
  • ex- wind direction (the velocity of wind at every point in space and time would be different)
  • interestingly the velocity field is responsible to change the trajectories of points as:

  • the central question which we want to address is:
    • if a point starts at x0 at t=0 and follows the vector field, where does the particle reach at a later time?
    • to answer this question we need to solve the above differential equation
    • the idea is to use the velocity vector to advance the point in small time increments

defining flow

  • collection of trajectories which evolve according to the vector field

so in sequence we have Velocity Field β†’ Trajectories β†’ Flow

Let’s take an example:

  • suppose we have a velocity vector field given by :- ut(x) = -𝛉x
  • then the flow field is given as follows (how can we check if this is valid?)

differential equation:

if the flow field is replaced in the differential equation and it satisfies the equation it is a valid flow field:

Once we have an ODE, how do we simulate it an find the trajectories?

  • We use Euler method in inference to simulate the trajectories and find the final state!
  • We simply take small steps in the direction of vector field

Flow models:

  • goal is to convert a simple dist pinit to a complex dist pdata
  • simulation of an ODE is a natural choice for this transformation
  • a flow model is described by the following ODE:
  • our goal is to make the endpoint x1 of the trajectory have dist pdata
  • the neural network that predicts this ODE is aka neural ode

202609251146