Thanks for releasing this repo for us to learn flow matching!
While I was looking at the TargetConditionalFlowMathcer in conditional_flow_matching.py, I found that in the sample_xt() function, the output is something like mu_t + sigma_t * torch.randn_like(x0). In the paper FLOW MATCHING FOR GENERATIVE MODELING, the final loss function of example two is written as follows (Eq. 23):
My confusion is shouldn't the output of sample_xt() be something like mu_t + sigma_t * x0 instead of mu_t + sigma_t * torch.randn_like(x0) as in Eq. 22? In the above loss function, the x0 is used instead of sampling a new random noise. Is there someting I miss? Or is these equivalent?
Sorry for the inconvenience. I am new to the field.
Many thanks!
Hi,
Thanks for releasing this repo for us to learn flow matching! While I was looking at the TargetConditionalFlowMathcer in
conditional_flow_matching.py
, I found that in thesample_xt()
function, the output is something likemu_t + sigma_t * torch.randn_like(x0)
. In the paper FLOW MATCHING FOR GENERATIVE MODELING, the final loss function of example two is written as follows (Eq. 23): My confusion is shouldn't the output ofsample_xt()
be something likemu_t + sigma_t * x0
instead ofmu_t + sigma_t * torch.randn_like(x0)
as in Eq. 22? In the above loss function, the x0 is used instead of sampling a new random noise. Is there someting I miss? Or is these equivalent?Sorry for the inconvenience. I am new to the field. Many thanks!