ott.core.quad_problems.QuadraticProblem.update_linearization#

QuadraticProblem.update_linearization(transport, epsilon=None, old_transport_mass=1.0)[source]#

Update linearization of GW problem by updating cost matrix.

If the problem is balanced (tau_a = 1.0 and tau_b = 1.0), the equation follows eq. 6, p. 1 of [Peyré et al., 2016].

If the problem is unbalanced (tau_a < 1.0 or tau_b < 1.0), two cases are possible, as explained in init_linearization() above. Finally, it is also possible to consider a Fused Gromov Wasserstein problem. Details about the resulting cost matrix are also given in init_linearization().

Parameters
  • transport (Transport) – Solution of the linearization of the quadratic problem. epsilon: An epsilon scheduler or a float passed on to the linearization. old_transport_mass: Sum of the elements of the transport matrix at the previous iteration.

  • epsilon (Optional[Union[ott.geometry.epsilon_scheduler.Epsilon, float]]) –

  • old_transport_mass (float) –

Return type

LinearProblem

Returns

Updated linear OT problem, a new local linearization of GW problem.