5、逻辑回归LR推导和分析

本文详细介绍了逻辑回归的概念、工作原理、最大似然推导过程以及Python实现。逻辑回归是一种用于二分类问题的监督学习算法,通过Sigmoid函数将线性组合转化为0-1概率。损失函数采用logloss,优化方法包括随机梯度下降。此外,还展示了使用sklearn库进行逻辑回归模型训练和预测的代码示例。尽管逻辑回归简单快速,但可能面临欠拟合和仅适用于线性可分的二分类问题。
摘要由CSDN通过智能技术生成

1、基本概念

  • 逻辑回归
    是一种监督学习分类算法,实现了给定数据集到0,1的一种映射。
  • 逻辑回归的过程
    面对一个回归或者分类问题,构造预测函数,建立代价函数,然后通过优化方法迭代求解出最优的模型参数,然后测试验证我们这个求解的模型的好坏
  • 损失函数
    表征预测值与真实值之间的差异程度,如果预测值与真实值越接近则损失函数应该越小。
    结构风险函数 = 经验风险项 + 正则项 其中损失函数为经验风险项的重要组成部分

image
前半部分为经验风险项,后半部分为正则项。

  • 概率
    描述的是在一定条件下某个事件发生的可能性,概率越大说明这件事情越可能会发生
  • 似然
    描述的是结果已知的情况下,该事件在不同条件下发生的可能性,似然函数的值越大说明该事件在对应的条件下发生的可能性越大

2、LR的推导

2.1、 数据集介绍

数据集image,其中(xi,yi)表示第i个样本,其中image。即每个数据有n个特征,类别,要求训练数据,将数据分成两类0或1。

2.2 过程

  • 为了表示简洁,在数据样本xi添加一个特征x0=1,将b作为一维特征。则有
    image

  • 以上实现了用样本xi的n个特征来表示样本的表达式,现在需要寻找一个映射使得z可以转换为0或者1
    image

  • 可以使用阶跃函数,但是阶跃函数性质不好,不可导求解过于复杂,这里选用Sigmoid函数:
    image
    image

  • 当输入一个Z时,y输出一个0–1之间的数,假定y>0.5则最终结果判为1,y<0.5最终结果为0。当y=0.8时,最终结果为1,y=0.8也表征了此时输出为1的概率。令:
    image

  • 样本特征线性表示,然后输入到Sigmoid函数,输出结果在0–1之间,并且输出结果表征了分类结果为1的概率。即有:
    image
    可求得预测值为y的概率表达式为:
    image

  • 假设样本独立且同分布,最大似然估计:
    image

  • 进而求最大对数似然估计:
    image

  • LR的损失函数:log loss,对数似然函数
    image

  • 随机梯度下降,求解最小值
    image
    迭代式:
    image

3 程序

  • Python实现逻辑回归
import numpy as np
from sklearn.linear_model import LogisticRegression

X = np.array([[0.1,0.2],[0.2,0.3],[1.5,1.8],[2.1,2.6]])
Y = np.array([0,0,1,1])

lr = LogisticRegression()  # 这里有许多参数需要设置
lr.fit(X,Y)
pred = lr.predict([[1.6,2.0]])
print(pred)

4 总结

  • 求解损失函数的方法
    随机梯度下降、牛顿法、Adam
  • 优缺点
    • 优点
      1)速度快,适合二分类问题
      2)简单易于理解,直接看到各个特征的权重
      3)能容易地更新模型吸收新的数据
    • 缺点
      1)容易欠拟合,一般准确度不太高
      2)对数据和场景的适应能力有局限性
      3)只能处理两分类问题(在此基础上衍生出来的softmax可以用于多分类),且必须线性可分
  • 用途
    • 寻找危险因素:寻找某一疾病的危险因素等;
    • 预测:根据模型,预测在不同的自变量情况下,发生某病或某种情况的概率有多大;
    • 判别:实际上跟预测有些类似,也是根据模型,判断某人属于某病或属于某种情况的概率有多大,也就是看一下这个人有多大的可能性是属于某病。
  • Regression 常规步骤
    • 寻找h函数(即预测函数)
    • 构造J函数(损失函数)
    • 想办法使得J函数最小并求得回归参数(θ)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nsq_ai

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值