Precision Recall Curve Not Behaving As Expected

16 hours ago 3
ARTICLE AD BOX

I am training a model in Python.

The problem is a class-imbalance classification problem at ~1:50 ratio.

In most problems, precision-recall curve follows a smooth drop from 100% precision & 0% recall to 0% precision and 100% recall (see: https://towardsai.net/p/l/precision-recall-curve)

However, my model behaves such that it drops sharply. The first point is, as expected, 100% at 0% recall. Then it drops to 50% precision at ~5-10% recall. Afterward, it "behaves expectedly" as it increases recall all the way to 100% while precision drops from 50% to 0%.

I am told that my graph looks unnatural because of that sharp drop. However, after exploring my own data and results, I concluded that this is unfortunately due to class imbalance problem.

For example, if I have only 2 True Positive and 2 False Positive, my precision is 50%. But if I nudge the threshold a bit and obtain 2 TP and 4 FP, my precision would drop to 33%.

My question is, does this make sense? Is an "unnatural-looking" precision-recall curve common in class-imbalance problems?

Thanks!

Read Entire Article