You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Congratulations on this great project and publication!
I was browsing the code and noticed a potential issue with cebra.models.criterion.infonce. I assume that c in the function is just there for numerical stability of logsumexp, and that the function is supposed to return $L = \mathbb{E}_x [-\phi(x_i, y^{+}_i) + \log \sum_{j=1}^{n} e^{\phi(x_i, y^{-}_{ij})}]$? If so, then I think that there might be an error in how c is being broadcasted with neg_dist, which makes the function return incorrect values.
Thanks very much again for flagging this. We updated the loss implementation in PR #86, including numerical tests against a reference implementation.
In short, we changed the broadcasting, but this has little effect on the performance. Concretely, when testing the 0.2.0 version (old implementation) vs. the 0.3.0rc2 (new implementation) version, we find no significant differences.
Is there an existing issue for this?
Bug description
Congratulations on this great project and publication!
I was browsing the code and noticed a potential issue with
cebra.models.criterion.infonce
. I assume thatc
in the function is just there for numerical stability oflogsumexp
, and that the function is supposed to return$L = \mathbb{E}_x [-\phi(x_i, y^{+}_i) + \log \sum_{j=1}^{n} e^{\phi(x_i, y^{-}_{ij})}]$
? If so, then I think that there might be an error in howc
is being broadcasted withneg_dist
, which makes the function return incorrect values.Operating System
Ubuntu 18.04
CEBRA version
0.2.0
Device type
Core i9 / RTX 3090
Steps To Reproduce
Relevant log output
Anything else?
No response
Code of Conduct
The text was updated successfully, but these errors were encountered: