吴恩达机器学习笔记复盘(九)逻辑回归模型概述

简介

逻辑回归(Logistic Regression)是一种用于解决分类问题的统计学习方法,尤其适用于二分类任务。尽管名称中包含“回归”,但它实际上是一种分类模型。

核心思想 

逻辑回归的核心是通过逻辑函数(sigmoid函数)将线性回归的输出转换为概率值,从而实现分类。

步骤如下

线性回归基础

假设特征与目标之间存在线性关系,即 z = \theta^T x,其中 \theta是参数向量,x是特征向量。

概率转换

使用sigmoid函数将线性输出 z映射到概率 p \in [0, 1],公式为:p = h_\theta(x) = \frac{1}{1 + e^{-z}} = \frac{1}{1 + e^{-\theta^T x}}

分类决策

设定阈值(通常为0.5,其实随便了,你也可以设定成0.8,会得到不同结果罢了-_-!),若 p \geq 0.5则预测为正类(1),否则为负类(0)。

数学原理

假设函数

 逻辑回归的假设函数为:h_\theta(x) = \frac{1}{1 + e^{-\theta^T x}}

- 当 \theta^T x很大时,h_\theta(x) \approx 1(正类)。

- 当 \theta^T x很小时,h_\theta(x) \approx 0(负类)。

损失函数

 -逻辑回归使用对数损失函数(交叉熵损失),公式为:J(\theta) = -\frac{1}{m} \sum_{i=1}^m \left[ y^{(i)} \log h_\theta(x^{(i)}) + (1 - y^{(i)}) \log (1 - h_\theta(x^{(i)})) \right]

- \( y^{(i)} \) 是样本真实标签(0或1)。

- 损失函数通过最大化似然估计推导而来,确保模型预测概率与真实标签的一致性。

优化方法

 - 梯度下降:通过迭代更新参数 \theta,公式为: \theta_j := \theta_j - \alpha \cdot \frac{1}{m} \sum_{i=1}^m (h_\theta(x^{(i)}) - y^{(i)}) x_j^{(i)}其中 \alpha是学习率,x_j^{(i)} 是第 i个样本的第 j个特征。

- 牛顿法/拟牛顿法:收敛速度更快,但计算复杂度较高。(略)

应用场景

 逻辑回归广泛应用于以下领域:

1. 二分类问题:如垃圾邮件识别、疾病诊断、用户流失预测。

2. 概率预测:例如计算用户点击广告的概率。

3. 可解释性需求:通过参数 \theta分析特征对结果的影响方向和强度。

优缺点 

优点

- 简单高效:模型训练速度快,计算资源消耗低。

- 可解释性强:参数直接反映特征的重要性。

- 概率输出:提供分类的置信度。

缺点 

- 线性假设:对非线性数据拟合能力有限,需通过特征工程(如多项式特征)增强表达能力。

- 易欠拟合:复杂数据集可能需要正则化(如L1/L2正则)避免过拟合。

- 类别不平衡:需通过调整阈值或样本权重解决。

扩展问题

多分类逻辑回归

 若需处理多分类问题(如手写数字识别),可采用以下方法:

1. 一对多(One-vs-Rest):为每个类别训练一个二分类器,预测时选择概率最大的类别。

2. Softmax回归:直接扩展逻辑回归到多分类,使用Softmax函数替代sigmoid函数。

总结

逻辑回归是一种经典的分类模型,其核心在于将线性回归与概率转换结合,适用于二分类和可解释性要求高的场景。尽管存在一定局限性,但其简单性和高效性使其成为实际应用中的常用工具。

笔者注

关于假设函数 h_\theta(x) = \frac{1}{1 + e^{-\theta^T x}}课里并没有给出推导过程,只是简要提了一下。

构建逻辑回归算法需引入sigmoid函数(也称逻辑函数),其公式为

G(Z)=1/(1 + e^{-Z})e约为2.7)。当Z很大时,G(Z)接近1;Z为很大负数时,G(Z)接近0;Z = 0时,G(Z)=0.5。 

第一步定义类似线性回归的直线函数WX + B,记为Z;第二步将Z传入逻辑函数G,得到逻辑回归模型F(X)=G(WX + B)=G(Z)=1/(1 + e^{-Z}),该模型输入特征\(X\),输出0到1之间的数字。

-------

但是实际上这个函数是非常重要的基础工具函数,涉及概率论的基础,所以给出推导过程便于理解逻辑回归模型的本质。

1. 逻辑回归的目标

逻辑回归用于二分类问题,假设输入特征为 x,输出标签为 y \in \{0, 1\}。我们希望找到一个函数h_\theta(x),将线性组合 \theta^T x 映射到概率 P(y=1|x),即: h_\theta(x) = P(y=1|x; \theta)

2. 对数几率函数(Logit Function)

 为了将线性模型与概率关联,引入对数几率(log-odds):

\ln\left( \frac{P(y=1|x)}{1 - P(y=1|x)} \right) = \theta^T x

该式左边是事件发生概率与不发生概率的比值的对数,右边是线性模型。通过变形可得到概率表达式。

3.推导sigmoid函数

 对对数几率公式两边取指数:

\frac{P(y=1|x)}{1 - P(y=1|x)} = e^{\theta^T x}

解出 P(y=1|x)

P(y=1|x) = \frac{e^{\theta^T x}}{1 + e^{\theta^T x}} = \frac{1}{1 + e^{-\theta^T x}}

记为 g(z),其中 z = \theta^T xg(z) = \frac{1}{1 + e^{-z}}

4. 函数特性

输出范围:g(z) \in (0, 1),适合表示概率。

- 对称性:g(-z) = 1 - g(z),反映正负样本的对称性。

- 导数性质:导数可表示为 g'(z) = g(z)(1 - g(z)),简化梯度计算。

5. 几何意义 

sigmoid函数将线性模型的输出 \theta^T x转换为概率值。当\theta^T x > 0时,P(y=1|x) > 0.5,模型预测为正类;反之则为负类。 

一句话比较的话,线性回归是用函数方程找出最小平均误差,而逻辑回归是先设定一个界线概率,然后根据这个界限算出正负(用人的概念就是归类)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值