Skip to content

Question about discrete sCM loss vs standard CM loss performance #30

Description

@SpursLipu

Hi, thanks for your great work!

I have a question regarding training with the consistency loss.

Currently, my model heavily relies on custom operators, which makes it difficult to directly compute
𝑑𝐹/𝑑𝑡 using JVP. Because of this, I tried to reproduce the discrete sCM loss (with fd_type == 2) as an alternative.

At the same time, I also implemented the standard consistency model (CM) loss, i.e., directly computing the L2 loss between:

the predicted 𝑥0 from 𝑥𝑡​, and
the predicted 𝑥0 from 𝑥𝑡+1​

However, in my experiments, I found that this simpler CM loss actually performs better than the discrete sCM formulation.

So I have a few questions:

Have you observed similar behavior where discrete sCM underperforms compared to the standard CM loss?
Do you have any suggestions on how to improve the performance of discrete sCM in practice?
Are there any recommended tricks (e.g., better finite difference schemes, weighting strategies, or stabilization techniques) when JVP is not available?

From my understanding, sCM can suffer from issues like error accumulation and instability in derivative estimation, especially when approximating time derivatives numerically , so I wonder if this might be related to what I am seeing.

Thanks a lot for your help!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions