about rank values at recalls_and_ndcgs_for_ks
ys201810 opened this issue · 1 comments
ys201810 commented
Hi!
Thanks for your grate repository!
I'm trying to use this code and process step by step.
And I found strange point on my environment.
At recalls_and_ndcgs_for_ks def, I checked scores and ranks value.
I found difference between score order and rank order.
Below, ranks says index 13 is minimum, but scores index 13 is a '-2.9711'. It's not minimum at score.
Code is around here
# ranks[0] value
tensor([ 70, 86, 7, 97, 63, 95, 24, 58, 65, 56, 16, 5, 93, 0,
18, 31, 68, 48, 59, 98, 29, 76, 54, 79, 23, 55, 39, 72,
36, 89, 38, 44, 78, 4, 61, 53, 8, 74, 100, 22, 3, 91,
80, 84, 51, 57, 82, 92, 83, 67, 34, 64, 50, 25, 85, 52,
26, 43, 15, 12, 40, 27, 1, 88, 94, 71, 2, 66, 96, 28,
19, 42, 20, 60, 49, 87, 77, 47, 9, 69, 41, 99, 17, 46,
75, 73, 21, 14, 45, 32, 13, 11, 10, 33, 90, 35, 6, 37,
30, 62, 81])
# scores[0] value
tensor([ 0.5852, -3.4007, -3.5931, -1.8515, -1.1481, 0.5925, -7.0834, 2.5950,
-1.6262, -4.7560, -6.4868, -6.4362, -2.9711, -6.3241, -5.8845, -2.9454,
0.7134, -5.0486, 0.5127, -4.3835, -4.5180, -5.8608, -1.8072, -0.6608,
1.9210, -2.5598, -2.8975, -3.0994, -4.1074, -0.2445, -7.5053, 0.1854,
-6.3146, -6.4986, -2.3304, -6.8591, -0.8691, -7.4218, -1.0146, -0.7875,
-3.0707, -4.9039, -4.3940, -2.9124, -1.0281, -6.2175, -5.1383, -4.7329,
-0.0837, -4.6264, -2.4418, -2.1516, -2.5802, -1.6060, -0.3369, -0.7312,
0.7645, -2.1919, 0.8558, -0.1193, -4.5226, -1.3819, -7.8501, 2.4229,
-2.4081, 0.8114, -3.6097, -2.3246, 0.0658, -4.8747, 2.9387, -3.4794,
-0.7969, -5.7531, -1.7263, -5.4659, -0.3193, -4.7225, -1.1454, -0.3836,
-1.9473, -8.0547, -2.2138, -2.3139, -2.0216, -2.5738, 2.7595, -4.6759,
-3.4287, -0.9745, -6.6980, -1.8827, -2.2390, 0.5889, -3.4509, 2.3932,
-4.0403, 2.5251, -0.1454, -4.9200, -1.7323])
Do you have any idea? Or if I have some mistake, then please let me know.
Thank you.
ys201810 commented
I'm sorry I have mistakes.
argsort return old index.
Sorry for that.