# In machine learning, what can be called a classifier?

Is the word classifier used for algorithms that solely classify things, such as Logistic Regression, SVMs, or Neural Networks, or can it be used for all Machine Learning algorithms? In other words, can Linear Regression be called a Classifier?

If not, what word can be used to refer to any and all machine learning algorithms (I feel like algorithm is too generic).

Update: All the answers state that Linear Regression should not be considered a classifier. According to SeanEaster, a better term would be Regressor. I've decided to go with that. Thanks to everyone who took the time to explain this to me.

• Do you want just to obscurify a term for your audience? What is the problem with using "Machine Learning algorithms" to begin with? (BTW, you can always think a linear regression algorithm as a classifier with an infinite number of categories. :) ) Sep 9, 2015 at 8:30
• possible duplicate of Why is logistic regression called a machine learning algorithm?
– Tim
Sep 9, 2015 at 8:30
• @Tim That's related but probably not a duplicate since that question and its answers didn't discuss the meaning or scope of "classifier" which is the main point here. Sep 9, 2015 at 9:36
• @Tim I agree that it is a useful link! For me the critical difference is that that question addressed whether methods like linear regression fell within the definition of "machine learning algorithms" whereas this question is asking whether it falls in the definition of "classifier". The former is a broader definition than the latter so the answers may differ: "what is a classifier?" can't be answered by "what is a machine learning algorithm?" unless one of the answers there happened to go into detail on specific algorithms including a description of the scope of "classifiers". Sep 9, 2015 at 9:48
• @Tim Because this is a terminology question, it is this specific term of art that matters, not the underlying substantive ideas but rather the use of the particular word. For that reason I find that terminology questions are seldom duplicates unless they are exactly so and ask about precisely the same term or phrase. Sep 9, 2015 at 9:53

Context suggests the broader term "model," prefixed with relevant description. See for example the wikipedia articles for some common learning methods, like artificial neural networks:

In machine learning and cognitive science, artificial neural networks (ANNs) are a family of statistical learning models[...]

Similarly for support vector machines:

In machine learning, support vector machines (SVMs, also support vector networks) are supervised learning models with associated learning algorithms that analyze data and recognize patterns, used for classification and regression analysis.

When being fully precise, I myself would only use "algorithm" in reference to the actual algorithm that trains a model. Using the neural network example, the network itself is a model; back-propagation is an algorithm used to train it.

In sum, "learning model," "machine learning model," etc. are likely to avoid objection.

As an aside, the term "regressor" is sometimes used as one would use classifier (e.g. this sklearn documentation.) Though this may invite confusion, as the same term can be used for explanatory variables.

• Although all the answers are extremely detailed, I feel that this one goes a little beyond by suggesting an alternative term to use. Sep 13, 2015 at 6:48

From the lovely book Introduction to Statistical Learning:

We tend to refer to problems with a quantitative response as regression problems, while those involving a qualitative response are often referred to as classification problems

So, no Linear Regression should not be called a classifier.

I guess you can't be much more specific than referring to all methods that solve some kind of learning problem as machine learning algorithm or statistical learning method.

• I agree with this answer, but I don't like the tying of the word "qualitative" to categorical. In English at least, we have non-discrete qualities like "bluishness". Sep 9, 2015 at 14:51

Bishop writes:

Applications in which the training data comprises examples of the input vectors along with their corresponding target vectors are known as supervised learning problems. Cases such as the digit recognition example, in which the aim is to assign each input vector to one of a finite number of discrete categories, are called classification problems. If the desired output consists of one or more continuous variables, then the task is called regression.

Bishop, C. M. (2006). Pattern recognition and machine learning (1st ed. 20). Springer.

The major branches of machine learning are supervised learning and unsupervised learning. In supervised learning, there are some target values. In classification problems, you have categorical target values. In regression problems, you have continuous target values.

For example, there are support vector classification (SVM-C) and support vector regression (SVM-R) algorithms.

In unsupervised learning, there are no target values, and no "correct results".

• The major branches of ML are: supervised learning, unsupervised learning and reinforcement learning But, how does this anyway answer the question? Sep 9, 2015 at 8:45
• Reinforcement learning is a small field compared to the two others. Sep 9, 2015 at 9:13
• It has 1,760,000 articles on it on Google Scholar. And it has huge applications in fields of robotics and gaming. But, how does your answer address the question? Sep 9, 2015 at 9:31
• This agrees with Bishop's introduction. Sep 9, 2015 at 14:49