贡献者: xzllxls
分类(Classfication)是一种把实例或者对象划归到特定的类别中的操作。在机器学习中,分类指的是从给定特征来预测离散型输出值的学习任务。预测输出值就称为类别。与之对应的,预测连续型变量的操作是回归。
机器学习中的分类是通过建立一个从输入空间 $ \boldsymbol{\mathbf{X}} $ 到输出空间 $ \boldsymbol{\mathbf{Y}} $(有限个离散值的集合)的映射来实现的。该映射被称为分类模型或者分类器(Classifier)。学习算法的任务就是从训练数据中学习相应的规律,从而建立分类器。该学习过程就是分类器的训练过程。常用的分类器有很多,比如决策树、逻辑回归、支持向量机、神经网络等。
最常见的分类任务是二分类(Binary classification),即类别只有两类的分类任务。通常,称两类中的一类为正类(Positive class),另一类为反类或负类(Negative class)。显然,此时,输出空间 $ \boldsymbol{\mathbf{Y}} $ 中元素的个数为 $2$,可以表示为 $Y=\{+1, -1\}$ 或者 $Y=\{0, 1\}$。也有不少文献使用 “$+$” 表示正例,"$-$"表示反例。如果,一个分类任务的待预测类别数是三个或者三个以上的话,就称为多分类(Muti-class classification)任务[1]。
编号 | 性别 | 年龄 | 职业 | 睡眠时间(小时) | BMI 指数 | 心率 | 舒张压 | 收缩压 | 每日走路步数 | 睡眠障碍 |
1 | 男 | 27 | 软件工程师 | 6.1 | 超重 | 77 | 83 | 126 | 4200 | 无 |
2 | 男 | 28 | 医生 | 6.2 | 正常 | 75 | 80 | 125 | 10000 | 无 |
3 | 女 | 30 | 护士 | 6.4 | 正常 | 78 | 86 | 130 | 4100 | 睡眠暂停 |
4 | 男 | 29 | 教师 | 6.3 | 肥胖 | 82 | 90 | 140 | 3500 | 失眠 |
比如,在表 1 所示的睡眠数据集上。如果想要通过睡眠时间、BMI 指数、心率、舒张压、收缩压这几个特征来预测人的睡眠障碍情况,那就是一个典型的分类问题。要预测的量是表格最后一列所示的 “睡眠障碍”,该特征有三个可能的取值,分别为:“无”、“睡眠暂停” 和 “失眠”。因此,这是一个三分类问题。输出空间可以表示为:$Y=\{\text{无}, \text{睡眠暂停}, \text{失眠}\}$。
在实际应用中,往往不须要很精细地预测每一个类别,此时可以将问题简化,把多分类问题简化为一个二分类问题。比如,可以把 “睡眠暂停” 和 “失眠” 都归为 “有”。那么那个三分类问题就退化为了一个二分类问题。此时,输出空间可以表示为:$Y=\{\text{无}, \text{有}\}$。
参考文献: