In the problem I am working on, I am dealing with data points which have many features and are mapped to a certain value based on an unknown function. I would like to train a predictor to be able to compare two data points and to predict which of them will have the better (higher) value. I can imagine three approaches for this problem:
- Classification: Train with pairs of training points labeled by 1 (first training point is better) or 0 (second training point is better).
- Regression A : Same approach as with the classification, but the label is a continuous value obtained by dividing the value associated with point A by the value associated with point B.
- Regression B : Train a regressor to predict the values of the hidden function and use this for the comparison.
Apart from implementing all three approaches and comparing their performance, are there any general reasons why one of them might be better?