网站建设与管理就业岗位主机开设成功 网站正在建设中
1. 二分类(Binary Classification)
定义
二分类是指将输入样本分成两个互斥的类别。例如:
- 邮件 spam 或不是 spam。
 - 病人是有病或健康。
 - 物品是正品或假货。
 
实现方法
二分类任务可以通过多种算法实现,包括:
- 逻辑回归(Logistic Regression):通过sigmoid函数将输出值映射到0和1之间,用于概率预测。
 - 决策树(Decision Tree):基于特征划分数据空间,适用于分类问题。
 - 支持向量机(SVM):通过寻找最大间隔超平面来进行分类。
 - 神经网络:使用多层感知机或卷积神经网络等模型进行分类。
 
评估指标
- 准确率(Accuracy):预测正确的样本数占总样本的比例。
 - 精确率(Precision):所有被预测为正类的样本中,实际是正类的比例。
 - 召回率(Recall):所有实际是正类的样本中,被正确预测的比例。
 - F1-score:精确率和召回率的调和平均数,综合衡量模型性能。
 
2. 多分类(Multi-Class Classification)
定义
多分类是指将输入样本分成三个或更多互斥类别。例如:
- 图像分类:识别图片中的物体(如猫、狗、鸟等)。
 - 文本分类:将文本归类到多个主题类别中。
 
实现方法
多分类任务可以通过以下两种方式实现:
-  
One-vs-Rest (OvR) 或 One-vs-One (OvO):
- One-vs-Rest:将多分类问题分解为多个二分类问题。对于每个类别,将其视为正类,其余类别视为负类,训练一个二分类模型。预测时,选择概率最大的类别。
 - One-vs-One:将所有类别两两配对,训练一个二分类模型。预测时,通过投票或概率加权确定最终类别。
 
 -  
专门的多分类算法:
- Softmax 回归:用于输出多个类别的概率分布。
 - 决策树/随机森林:可以直接处理多分类问题。
 - 神经网络:使用 Softmax 激活函数进行多分类预测。
 
 
评估指标
与二分类类似,多分类任务中也可以计算精确率、召回率和 F1-score,但这些指标通常需要对每个类别分别计算,并取平均值(如宏均值或微均值)。
3. 二分类与多分类的关系
-  
二分类是多分类的特例:可以认为二分类任务是多分类任务中类别数为2的情况。
 -  
实现方法的共性:
- 大多数二分类算法(如逻辑回归、决策树等)可以直接扩展到多分类任务,通过调整输出类别数量或使用专门的多分类策略。
 - 神经网络模型通常需要调整输出层的神经元数量以适应多分类任务。
 
 -  
实现方法的区别:
- 多分类任务需要处理多个类别之间的关系(如类别不平衡问题),而二分类任务不需要考虑这一点。
 - 在评估指标方面,多分类可能需要分别计算每个类别的性能,并综合这些结果。
 
 
实例:使用二分类和多分类评估和预测花的种类
案例背景
假设我们有一个数据集包含不同类型的花的特征,包括花瓣长度、花瓣宽度以及花萼长度和花萼宽度。目标是根据这些特征来预测花的种类。
由于有三种花的类型(Iris setosa, Iris versicolor, 和 Iris virginica),这是一个多分类任务。然而,我们可以将问题简化为二分类问题,例如预测是否属于 Iris virginica。
数据集描述
- 样本数量:150个样本(50个每种花)
 - 特征变量: 
- 花瓣长度 (Petal Length)
 - 花瓣宽度 (Petal Width)
 - 花萼长度 (Sepal Length)
 - 花萼宽度 (Sepal Width)
 
 - 目标变量:花的种类(Iris setosa, Iris versicolor, Iris virginica)
 
二分类:
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing 