目录
一,分类问题
1.1 简介
给定一组具有一些特征的数据,并给出其所属的类型,问给定相似数据是否能确定其类型。当数据所属类型只有两类时称为二分类问题,有三类及其以上时称为多分类问题。
举例: 给定电子邮件,判断邮件为(垃圾邮件,非垃圾邮件);
给定电子交易记录,判断交易为(可靠交易,欺诈交易);等等。
1.2 引例:肿瘤问题
给定一些有关某部位肿瘤的医疗记录(肿瘤大小,肿块厚度:良性/恶性),试求出相应的二分类模型用来预测肿瘤情况。
二,假设函数
直接采用线性回归算法拟合数据显然不成立,假设数据线性可分,由线性回归所带来的经验,可依然想到用一个线性函数解决问题,只不过目标不是拟合数据,而是预测概率。设立一个阈值,当概率值大于等于阈值的数据分为一类,小于阈值为另一类。由此便实现了可解决线性可分问题的二分类模型。
假设样本数据为; 一般用 0表示没有,1表示有,所有这里可用1表示有恶性肿瘤,0表示良性肿瘤。将 可看做是给定样本预测其是恶性肿瘤的概率,则有
(公式 6.1.1)
(公式 6.1.2)
不妨设 其中 ,函数称为sigmoid函数,又叫逻辑函数(Logistic Function)
(公式 6.2)
如上所述,可看作是样本为恶性肿瘤的概率,可设定阈值为0.5,即超过50%的可能性则预测其为恶性肿瘤。则有 。
即为sigmod()函数,其定义域为全体实数,值域为[0,1]其函数图像如下图6-2:
三,决策边界
假设函数的定义虽然有些突兀,但我们可以从图像上观察其正确性。假设有数据样本如下图像6-3所示,假设函数为,最终可训练出模型。将方程的图像与数据合在一起即可得到图像6-3。
由此可看出, 假设函数中所对应的方程即为划分不同类别的分割线,我们将其称为决策边界(decision boundary)。
当数据如图像6-4中所示,无法找到线性的决策边界时,只要其有可分的边界,即可寻找相应的方程,同样可以正确分类。需要注意的是,训练过程中根据样本训练而得出的是参数向量,而不是决策边界。
四,损失函数
由于假设函数和问题的变化,原先适用于线性回归的均方差损失函数:
(公式2.2)
已经不再适用于求解最优模型。因为在该问题中,其会有许多局部最优解来干扰问题求解,即函数非凸,难以最优化。因为假设函数即可看为一个概率函数,则可通过极大似然估计法来得到的对数损失函数(logarithmic loss),具体有:
(公式6.3)
五,梯度下降法
将 代入中再利用梯度下降法求偏导可得:
(公式 6.4)
其中
即逻辑回归的梯度下降法表达式与线性回归的完全一致,只有假设函数不同。
结合逻辑函数,对数损失函数以及梯度下降法,即是可求解相应的二分类问题的逻辑回归算法(Logistics Regression)。稍微提一下,逻辑回归中的回归是由于历史问题的遗留的,该算法只适合求解分类问题,不适合应用于回归问题。
六,高级训练方法的使用
除了梯度下降法外还有很多其他的算法可用来训练模型参数,即使梯度下降法也有很多改进变形。到遇到训练问题时,可以尝试使用其他更好的方法,喜欢挑战的同学可以尝试自己去理解,而一般而言只要掌握相应的库函数调用即可。
七,多分类问题
当数据标签不止两种,而是有N(N>2)种时,我们可为每个类别单独训练一个二分类回归模型(如逻辑回归),计算其在属于各个类别 的可能性(概率),选可能性最大的类别为其类别标签。即:
(公式6.5.1)
(公式6.5.2)
八,总结
- 本章主要介绍了分类问题,并着重讲解了逻辑回归算法来求解二分类问题,最后并将其扩展到解决多分类问题。
- 分类问题的具体流程与求解回归问题类似,只是假设函数以及损失的计算不同。
- 逻辑回归中相应的数学推倒比较复杂,最好的自己手推,有时间专门讲解。