作者:Jason Brownlee
翻译:陈丹
校对:杨毅远
全文约4400字,建议阅读18分钟
本文为大家介绍了机器学习中常见的四种分类任务。分别是二分类、多类别分类、多标签分类、不平衡分类,并提供了实战代码。
标签:机器学习
机器学习是一个研究领域,其涉及到从示例中学习的算法。
分类是一项需要使用机器学习算法去学习如何根据问题域为示例分配类标签的任务。一个简单易懂的例子是将电子邮件分为“垃圾邮件”或“非垃圾邮件”。
在机器学习中,你可能会遇到许多不同类型的分类任务,并且每种模型都会使用专门的建模方法。
在本教程中,您将了解机器学习中不同类型的分类预测建模。
读完这篇教程后,你将学会:
将类别标签分配给输入示例的分类预测模型
二分类是指预测两个类别之一,而多分类则涉及预测两个以上类别之一。
多标签分类涉及为每个示例预测一个或多个类别,不平衡分类是指各个类别之间的示例分布不相等的分类任务。
让我们开始吧!
教程概述
本教程分为五个部分,他们分别是:
1. 分类预测模型
2. 二分类
3. 多类别分类
4. 多标签分类
5. 不平衡分类
分类预测建模
在机器学习中,分类是指针对输入数据中的给定示例预测其类别标签的预测性建模问题。
例如:
给定一个示例,将其归为垃圾邮件或者非垃圾邮件。
给定一个手写字符,将其分类为一个已知字符。
根据最近的用户行为,将其归为流失用户或者非流失用户。
从建模的角度来看,分类需要一个训练数据集,其中包含许多可供学习的输入和输出示例。
模型将会使用训练数据集并计算如何将输入数据映射到最符合的特定类别标签。因此,训练数据集必须具有一定代表性,并且每一个类别都应有许多的样本。
类别标签通常是字符串,例如“垃圾邮件”,“非垃圾邮件”。必须先将类别标签映射为数值,然后才能用于建模算法。该过程通常称为标签的编码,标签编码将唯一的整数分配给每个类标签,例如“垃圾邮件” = 0,“非垃圾邮件” = 1。
对于分类预测建模问题进行建模,有许多不同类型的分类算法可供使用。
关于如何对某一问题选择一个最合适的算法,目前没有很好的理论。反而我们通常建议相关人员通过受控试验来探究什么样的算法和算法配置在给定的分类问题上能实现最佳性能。
分类模型的好坏通常用分类预测算法的结果进行评估。分类准确率是一种流行的度量标准,用于根据预测的类别标签评估模型的性能。分类准确率并不是完美的,但对于许多分类任务来说是一个很好的起点。
某些分类任务可能会要求预测每个样本属于各个类别的概率而不是给出一个类别标签,对于应用程序或用户随后的预测而言,这增加了额外的不确定性。用于评估预测概率的常用方法是ROC曲线。
你可能会遇到四种主要的分类任务类型;他们分别是:
二分类
多类别分类
多标签分类
不平衡分类
让我们依次深入研究。
二分类
二分类是指具有两个类别标签的分类任务。
示例包括:
电子邮件垃圾邮件检测(是否为垃圾邮件)。
用户的流失预测(流失与否)。
用户的转化预测(购买或不购买)。
通常,二分类任务包含一个属于正常状态的类别和另一个属于异常状态的类别。
例如,“非垃圾邮件”是正常状态,“垃圾邮件”是异常状态。另一个例子是“未检测到癌症”是医学测试任务的正常状态,而“检测到癌症”是异常状态。
正常状态的类别分配为类别标签0,状态异常的类别分配为类别标签1。
通常使用预测每个样本的伯努利概率分布的模型来对二分类任务进行建模。
伯努利分布是一种离散概率分布,它包含了事件的二元结果,即要么为