1.4 - logistic回归

1. 模型理念

  对于求解二分类问题,寻找一个决策边界,使得不同类别的点在边界的两侧,并用点到决策边界的 距离 表示该点属于某个类别的 概率。点到决策面的距离 d 直接将点代入决策面公式即可;距离到概率的映射函数需要符合概率的公理化定义,选用Sigmoid函数,(多分类问题选用 Softmax函数)。

2. 模型构建

2.1 损失函数

  根据上述模型理念,当 y = 1 时,设其概率为 P(y=1|x) = h(x),则 y = 0 时,概率为 P(y=0|x) = 1 - h(x)。其中,h(x)=Sigmoid( d(x) )。然后将 y=1和y=0 两种情况时的概率公式综合为一个概率公式,这样,我们就得到了任意一个样本的分类概率结果。对于分类问题的数据集,根据 极大似然估计 理论,我们认为之所以会出现数据集中呈现的分类结果,是因为在这个问题中这样分类得到的概率最大,又因为已知每个样本的概率函数以及样本数据的独立同分布,可以得到极大似然函数 => 化简取负值 =》logistic回归的损失函数:交叉熵函数

2.2 优化方法

  得到交叉熵损失函数之后,对函数求模型超参的偏导数函数,通过令偏导函数为0的方式求取解析解比较困难。但是已知偏导函数,通过梯度下降的方式求取 一般解 还是比较容易的。

3. 引发过拟合和欠拟合的因素以及改进措施

3.1 欠拟合

  欠拟合是因为:模型复杂度不够,可以调大多项式扩展的 degree 值。

3.2 过拟合

  过拟合是因为:模型过于复杂导致学习到了很多无效特征,如:噪音。不同的ML模型降低过拟合的方式不同。Logistic回归降低过拟合的方式是:

    【分析业务去掉不相关的特征 / 逐步回归 / 引入正则项(sklearn中默认L2,可以关掉,最后没办法时再打开)】

4. 适用场景

  线性二分类问题。

4.1 二分类解决多分类问题

  1)OvR:one - v - rest,训练会用到所有的数据集,现在大多用这种。

  2)OvO:one - v - one,训练不会用到所有的数据集,适合在小数据集上效果比较好的二分类模型,如:SVM。

5. 可运行代码

 

posted @ 2024-04-03 11:58  橘子葡萄火龙果  阅读(6)  评论(0编辑  收藏  举报