逻辑回归(Logistic Regression)模型的概率预测函数

以二分类问题为例,常见的损失函数有

  • 负对数似然损失(neg log-likelihood loss),
  • 交叉熵损失(cross entropy loss),
  • deviance loss
  • 指数损失(exponential loss)。

前三者虽然名字不同,但却具有相同的表达形式。此外,neg log-likelihood loss 和 exponential loss在期望意义下具有相同的解

逻辑回归(Logistic Regression)

逻辑回归是最常见的分类模型,具有如下形式:

图片展示的是 逻辑回归(Logistic Regression)模型的概率预测函数,它是机器学习中经典的二分类算法核心公式。以下是详细解析:


1. 公式组成

p ( x ; ω , b ) = σ ( ω T x + b ) = 1 1 + e − ( ω T x + b ) p(x; \omega, b) = \sigma(\omega^T x + b) = \frac{1}{1 + e^{-(\omega^T x + b)}} p(x;ω,b)=σ(ωTx+b)=1+e−(ωTx+b)1

  • 输入

    • ( x ): 特征向量(如图像特征、用户行为数据等)。
    • ( ω \omega ω ): 权重向量(模型需要学习的参数)。
    • ( b ): 偏置项(截距)。
  • 输出

    • ( p(x; ω \omega ω, b) ): 样本 ( x ) 属于类别1的概率(范围0到1)。
  • 关键函数

    • Sigmoid函数(σ) :将线性组合 ω T x + b \omega^T x + b ωTx+b 映射到概率空间。

      python 复制代码
      def sigmoid(z):
          return 1 / (1 + np.exp(-z))

2. 逻辑回归的核心思想

  • 本质:通过线性回归 + Sigmoid激活函数,实现二分类概率预测。
  • 决策规则
    • 若 ( p(x) \geq 0.5 ),预测为类别1;
    • 若 ( p(x) < 0.5 ),预测为类别0。

3. 逻辑回归的BCE损失

  • 逻辑回归通常使用**二元交叉熵(BCE)**作为损失函数,而Focal BCE是对BCE的改进,用于处理类别不平衡问题。

    python 复制代码
    # 逻辑回归的BCE损失
    loss = -[y * log(p) + (1-y) * log(1-p)]

损失函数设计举例


4. 参数学习(θ = (b, ω))

  • 优化目标 :通过梯度下降最小化交叉熵损失,调整 ( ω \omega ω ) 和 ( b )。
  • 学习过程
    ω ← ω − η ⋅ ∂ L ∂ ω , b ← b − η ⋅ ∂ L ∂ b \omega \leftarrow \omega - \eta \cdot \frac{\partial \mathcal{L}}{\partial \omega}, \quad b \leftarrow b - \eta \cdot \frac{\partial \mathcal{L}}{\partial b} ω←ω−η⋅∂ω∂L,b←b−η⋅∂b∂L
    • ( η \eta η ): 学习率
    • ( L \mathcal{L} L ): 损失函数(如BCE)

5. 为什么用Sigmoid?

  • 概率压缩 :将线性输出 ( ω T \omega^T ωT x + b ) 映射到 (0,1) 区间,符合概率定义。
  • 可解释性:输出可直接解释为"属于正类的置信度"。

总结

逻辑回归的概率函数,它是:

  1. 二分类模型的基础;
  2. 通过Sigmoid函数输出概率;
  3. 常与交叉熵损失配合使用(可扩展为Focal BCE处理不平衡数据)。
相关推荐
FL16238631291 小时前
非机动车闯红灯电动摩托车闯红灯检测数据集VOC+YOLO格式1754张3类别
人工智能·yolo·机器学习
luj_17682 小时前
星火科技助力边远地区防病攻坚
c语言·开发语言·c++·经验分享·算法
geats人山人海4 小时前
数据结构第六章c语言 树的存储下二叉树的概念和存储
c语言·数据结构·算法
漂流瓶jz5 小时前
UVA-12627 奇怪的气球膨胀 题解答案代码 算法竞赛入门经典第二版
算法·图论·递归·aoapc·算法竞赛入门经典·uva·12627
jarvisuni5 小时前
DeepSeekFlash前端依旧拉垮,而且变慢了很多!
前端·javascript·算法
kobesdu5 小时前
流形上的优化:SO(3)与SE(3)的广义加减法在FAST-LIO中如何简化状态估计
人工智能·算法·fastlio
白狐_7986 小时前
408 数据结构算法题 01:线性表暴力求解保分指南
java·数据结构·算法
乐观勇敢坚强的老彭6 小时前
C++信奥:开关门、开关灯问题
开发语言·c++·算法
冻柠檬飞冰走茶6 小时前
PTA基础编程题目集 7-31 字符串循环左移(C语言实现)
c语言·开发语言·数据结构·算法
Hi李耶6 小时前
【LeetCode】4-寻找两个正序数组的中位数
算法·leetcode·职场和发展