二元分类与损失解读
2023-12-10 11:05:01
二元分类:从损失与得分深入理解模型原理
二元分类概述
二元分类,顾名思义,就是把样本分为两类的机器学习问题。它在现实生活中有着广泛的应用,比如疾病诊断、欺诈检测、文本情感分析等等。
一个二元分类模型通常会收到一个特征向量 x∈R^d
作为输入,经过计算后输出一个分数或概率值,来衡量样本 x
属于正例的可能性。二元分类模型的训练通常基于带有标签的样本集,模型需要学习如何有效地区分正负例。
二元分类模型及其损失与得分
二元分类模型可以抽象为一个得分 (Score)或概率 (Logit)计算器,其形式化定义为:
得分的计算本质上是使用权重向量 \beta 将样本投影到一维实数轴上。因此,得分的正负决定了样本的类别:
- 正例 (y=1): f(x)\geq 0
- 反例 (y=0): f(x)<0
二元分类的训练,也就是求解权重向量 \beta,是基于如下形式的损失 (Loss)最小化 :
损失衡量了模型在数据集上分类正确的误差,是最小化问题(模型训练)的优化目标。不同的损失度量决定了二元分类的不同方法:
1. Hinge 损失(SVM)
合页损失 (Hinge loss)通常用于支持向量机(SVM) 模型,其形式如下:
直观地说,合页损失对于在分类边界内的样本为 0,对于在分类边界外的样本与样本到边界的距离成正比。其目的是惩罚分类边界附近的样本,以增大分类间隔(SVM 的核心思想)。
2. Logistic 损失(逻辑回归)
逻辑损失 (Logistic loss)或称交叉熵损失 ,通常用于逻辑回归 模型,其形式如下:
逻辑损失基于Sigmoid 函数 \sigma(z) = 1 / (1 + exp(-z)) 的概率建模,衡量模型对样本的类别判断与真实类别之间的差异性。
3. 交叉损失(softmax)
交叉损失 (Cross loss)通常用于基于softmax 的多分类模型,其形式如下:
softmax 函数将得分向量归一化为概率向量 \hat{y},使得每个分量表示样本属于该类的概率。交叉损失衡量了模型对正确类概率(第 y 个分量)的偏离,本质上也是一种似然损失。
结论
通过从损失和得分的角度出发,我们梳理了二元分类问题中常见模型的理论原理。揭示了合页损失、逻辑损失、交叉损失等损失度量与模型自身的建模形式、训练目标之间的内在联系,有助于读者全面系统地掌握二元分类的基础知识。
常见问题解答
-
什么是二元分类?
二元分类是一种机器学习问题,其目标是将样本分为两类。 -
二元分类模型如何工作?
二元分类模型接收一个特征向量作为输入,计算一个得分或概率值来衡量样本属于正例的可能性。 -
损失函数在二元分类中的作用是什么?
损失函数衡量模型在数据集上分类正确的误差,是模型训练的目标。 -
合页损失、逻辑损失和交叉损失有什么区别?
合页损失用于 SVM,逻辑损失用于逻辑回归,交叉损失用于基于 softmax 的多分类模型。 -
如何选择合适的二元分类模型?
二元分类模型的选择取决于数据的性质、问题的复杂性和所需的性能水平。