Skip to content

Commit 3a83a71

Browse files
committed
difference model and classifier
1 parent d5c97bf commit 3a83a71

File tree

3 files changed

+19
-4
lines changed

3 files changed

+19
-4
lines changed

README.md

+1-4
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ Bonus Notebooks (not in the book)
102102
- [How was classification, as a learning machine, developed?](./faq/classifier-history.md)
103103
- [Which machine learning algorithms can be considered as among the best?](./faq/best-ml-algo.md)
104104
- [What are the broad categories of classifiers?](./faq/classifier-categories.md)
105+
- [What is the difference between a classifier and a model?](./faq/difference_classfier_model.md)
105106

106107
### Questions about ML Concepts and Statistics
107108

@@ -172,10 +173,6 @@ Bonus Notebooks (not in the book)
172173

173174

174175

175-
176-
177-
<br>
178-
<br>
179176
<br>
180177

181178

faq/README.md

+1
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ Sebastian
4040
- [How was classification, as a learning machine, developed?](./classifier-history.md)
4141
- [Which machine learning algorithms can be considered as among the best?](./best-ml-algo.md)
4242
- [What are the broad categories of classifiers?](./classifier-categories.md)
43+
- [What is the difference between a classifier and a model?](./difference_classfier_model.md)
4344

4445

4546
### Questions about Machine Learning Concepts and Statistics

faq/difference_classifier_model.md

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# What is the difference between a classifier and a model?
2+
3+
Essentially, the terms "classifier" and "model" are synonymous in certain contexts; however, sometimes people refer to "classifier" as the learning algorithm that learns the model from the training data. To makes things more tractable, let's define some of the key terminology:
4+
5+
- ***Training sample:*** A training sample is a data point *x* in an available training set that we use for tackling a predictive modeling task. For example, if we are interested in classifying emails, one email in our dataset would be one training sample. Sometimes, people also use the synonymous terms *training instance* or *training example*.
6+
7+
- ***Target function:*** In predictive modeling, we are typically interested in modeling a particular process; we want to learn or approximate a particular function that, for example, let's us distinguish spam from non-spam email. The ***target function*** *f(x) = y* is the **true** function *f* that we want to model.
8+
9+
- ***Hypothesis:*** A hypothesis is a certain function that we believe (or hope) is similar to the true function, the *target function* that we want to model. In context of email spam classification, it would be the *rule* we came up with that allows us to separate spam from non-spam emails.
10+
11+
- ***Model:*** In machine learning field, the terms *hypothesis* and *model* are often used interchangeably. In other sciences, they can have different meanings, i.e., the hypothesis would be the "educated guess" by the scientist, and the *model* would be the manifestation of this *guess* that can be used to test the hypothesis.
12+
13+
- ***Learning algorithm:*** Again, our goal is to find or approximate the ***target function***, and the learning algorithm is a set of instructions that tries to *model* the target function using our training dataset. A learning algorithm comes with a ***hypothesis space***, the set of possible hypotheses it can come up with in order to model the unknown target function by formulating the *final hypothesis*
14+
15+
- ***Classifier:*** A classifier is a special case of a *hypothesis* (nowadays, often learned by a machine learning algorithm). A *classifier* is a *hypothesis* or *discrete-valued function* that is used to assign (categorical) class labels to particular data points. In the email classification example, this classifier could be a hypothesis for labeling emails as spam or non-spam. However, a *hypothesis* must not necessarily be synonymous to a *classifier*. In a different application, our *hypothesis* could be a function for mapping study time and educational backgrounds of students to their future SAT scores.
16+
17+
So, we can say that a *classifier* is a special case of a *hypothesis* or *model*: a classifier is a function that assigns a class label to a data point.

0 commit comments

Comments
 (0)