Is there any classification algorithm that doesn't give probability? I'm studying the ROC Curve, and I was wondering if there is any classification algorithm that doesn't return the output class as a result of a certain threshold from the probabilities of the algo?
Because if there is one, how could you have a ROC Curve if you can't use thresholds to draw it, as it gives the output class as a certainty?
 A: TLDR: probabilities are not required to build a ROC curve, only a numerical scale supporting the decision.


I'm studying the ROC Curve, and I was wondering if there is any
  classification algorithm that doesn't return the output class as a
  result of a certain threshold from the probabilities of the algo?

I previously let this question slip because I focused on what's the actual problem.
Many algorithms do not output probabilities at all (it's one of their main selling points actually). SVMs and K-NNs, for example.
Below I'll explain why this is not a problem to build a ROC curve.


Because if there is one, how could you have a ROC Curve if you can't
  use thresholds to draw it, as it gives the output class as a
  certainty?

If your algorithm does not give you any other numerical scale of support for the decision, then your ROC curve has only one point.
It's not a wrong ROC, per se, but its usefulness is dubious.
So I'd say that if you don't have this scale (continuous or not), then you can't draw a ROC curve.
Luckly, most algorithms do have this scale. In SVMs it's the distance to the margin, in logistic regression it's the output probability, in decision trees it's the leaf probability, in K-NNs it's the neighborhood voting proportions, etc.
A: Support Vector Machines and $k$-Nearest Neighbors come to mind.
(See here for a motivation for short answers. Longer answers are always welcome.)
