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
In the probability correction algorithm, the generated labels should be multinoimally distributed among all the aviable labels. However according to the code given, it will just be 0 or 1
"lrt_correction" and "prob_correction" are actually the same. We didn't clean our code and due to some historical reason there are two versions of such implementations, which is what we present in our paper. In other words, in the current version both functions achieve the same thing. We will clean it and update the code later.
We once wanted to try "prob_correction" which stochastically flip labels according to confidence, but it doesn't help a lot. You can try that yourself by changing the line "top_k_idx = np.argsort(cur_prob_distri)[-1:] " to "top_k_idx = np.argsort(cur_prob_distri)".
In the probability correction algorithm, the generated labels should be multinoimally distributed among all the aviable labels. However according to the code given, it will just be 0 or 1
The issue come because the code
PLC/utils.py
Lines 336 to 341 in 8c2bcfd
will result in a scalar
top_probs
. Hence the code to generate new labelsPLC/utils.py
Lines 349 to 353 in 8c2bcfd
new_label
being just 0 or 1.Moreover the normalization here
PLC/utils.py
Line 350 in 8c2bcfd
top_probs
always being1.0
thereby invalidating the whole idea of sampling from distribution.Is this intended behavior?
The text was updated successfully, but these errors were encountered: