Hi, I try to use this HingeEmbeddingLoss however I did not understand how it works, and I think it’s different from wiki
And I run a little code and still could not understand how it works.
In [36]: x = torch.tensor([0.5, -0.5])
In [37]: y = torch.tensor([1.0, -1.0])
In [38]: torch.nn.HingeEmbeddingLoss(reduction='none')(x,y)
Out[38]: tensor([0.5000, 1.5000])
It seems it tries to make
- x_n to -inf when y_n==1
- x_n to be greater than 1 when y_n==-1
But neither of them are making x_n close to y_n.
Could someone help me with this?
- Does x_n have to be between [-1,1]?
- IMHO, the signs of y_n should be swapped in the doc
Or just follows the one on Wiki.