-
Notifications
You must be signed in to change notification settings - Fork 190
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
移植loss问题 #40
Comments
多谢你的关注! |
N = dist_mat.size(0) #这是您N的定义 dist_mat[is_pos_test].contiguous()的维数不等于N,就不能用view(N,1).您看我理解的对吗,是不是我哪边理解错了。 |
举个例子,
对角线都是 我发现上面你的代码中好像有点问题, |
后来发现是我对triplet loss的理解问题。哈哈,谢谢大佬。大佬在国外的吗?羡慕。 |
大佬这个还是不敢当。。没在国外啊。。。 |
我也遇到了这个问题,你解决了吗? |
要是labels = [1, 2, 3, 4, 2, 1, 3, 4, 4, 2, 1, 1]这样的话,不就没法搞了吗 |
大佬好!
我把代码移植到python3.6+pytorch0.4下面。在训练的时候,loss.py里面报错。
当一个batch块里面出现相同的ID的图片的时候这边is_pos 计算的就不是对角矩阵了。
is_pos = labels.expand(N, N).eq(labels.expand(N, N).t())
is_neg = labels.expand(N, N).ne(labels.expand(N, N).t())
然后导致后面代码:
dist_ap, relative_p_inds = torch.max(
dist_mat[is_pos_test].contiguous().view(N, -1), 1, keepdim=True)#报错
错误提示:
RuntimeError: invalid argument 2: size '[16 x -1]' is invalid for input with 18 elements at ..\src\TH\THStorage.c:37
请问这里我是否可以直接定义一个batch大小的对角阵给is_pos 。还是is_pos 代码里面就可以出现非对角矩阵。
当我将is_pos 改成一直是对角矩阵的时候。只有全局loss,loss的值开始就非常的低,请问可能是什么问题啊。
The text was updated successfully, but these errors were encountered: