逻辑回归之今日内容大纲介绍
1 课程概览
本课介绍逻辑回归的整体大纲。逻辑回归虽然有"回归"二字,但实际做的是分类任务,适用于二分类问题。讲解逻辑回归的原理:数据经过线性回归得到预测值,再将预测值传给Sigmoid激活函数,映射到0-1之间的概率,最后基于阈值进行分类。
2 核心概念与定义
- 逻辑回归:有监督学习,标签离散,做分类任务。
- 二分类:只有两类(如猫狗分类、True/False)。
- Sigmoid函数:S型函数,将预测值映射到0-1之间的概率。
- 激活函数:Sigmoid函数的作用。
- 阈值:分类的判断标准(如0.5、0.6)。
3 算法与模型详解
3.1 逻辑回归概述
定义:
- 有监督学习
- 有特征和标签
- 标签是离散的
- 做分类任务
特点:
- 虽然叫"回归",但做的是分类
- 适用于二分类
示例:
- 猫狗分类:预测是猫还是狗
- True/False判断
3.2 多分类问题
问题:逻辑回归能做三分类、四分类吗?
答案:可以,但麻烦
方法:嵌套(类似if-else实现多分支)
- if-else只能做双分支
- 多分支通过嵌套实现
- 逻辑回归类似,二分类通过嵌套可实现多分类
3.3 逻辑回归原理
步骤:
- 数据经过线性回归,得到预测值
- 将预测值传给Sigmoid激活函数
- Sigmoid将预测值映射到0-1之间的概率
- 基于阈值进行分类
流程图:
数据 → 线性回归 → 预测值 → Sigmoid → 概率(0-1) → 阈值判断 → 分类
3.4 Sigmoid函数
作用:将预测值映射到0-1之间的概率
特点:
- S型函数
- 输出值在0-1之间
- 形状像大S
公式: $$\sigma(z) = \frac{1}{1 + e^{-z}}$$
3.5 阈值分类
原理:基于阈值进行分类
示例:
- 阈值 = 0.6
- 概率 > 0.6:A类
- 概率 ≤ 0.6:B类
示例:
- 概率 = 0.5 → B类
- 概率 = 0.6 → B类
- 概率 = 0.7 → A类
3.5 今日内容大纲
5个部分:
- 逻辑回归简介
- 概率相关知识回顾
- 逻辑回归原理介绍
- 逻辑回归案例(癌症预测)
- (其他内容)
4 数学原理与推导
4.1 线性回归预测值
$$z = W^TX + B$$
4.2 Sigmoid函数
$$\sigma(z) = \frac{1}{1 + e^{-z}}$$
4.3 逻辑回归模型
$$h_\theta(X) = \sigma(W^TX + B) = \frac{1}{1 + e^{-(W^TX + B)}}$$
4.4 分类决策
$$\text{预测} = \begin{cases} A, & h_\theta(X) > \text{阈值} \ B, & h_\theta(X) \leq \text{阈值} \end{cases}$$
5 代码示例
import numpy as np
import matplotlib.pyplot as plt
# Sigmoid函数
def sigmoid(z):
return 1 / (1 + np.exp(-z))
# 绘制Sigmoid函数
z = np.linspace(-10, 10, 100)
y = sigmoid(z)
plt.figure(figsize=(8, 5))
plt.plot(z, y, color='blue', label='Sigmoid')
plt.axhline(y=0.5, color='red', linestyle='--', label='阈值=0.5')
plt.axvline(x=0, color='gray', linestyle='--')
plt.xlabel('z')
plt.ylabel('σ(z)')
plt.title('Sigmoid函数')
plt.legend()
plt.grid(True)
plt.show()
# 逻辑回归分类示例
def logistic_classify(prediction, threshold=0.5):
"""基于阈值的分类"""
if prediction > threshold:
return "A类"
else:
return "B类"
# 测试
predictions = [0.3, 0.5, 0.6, 0.8, 0.9]
for p in predictions:
result = logistic_classify(p, threshold=0.6)
print(f"概率 {p} → {result}")
输出示例:
概率 0.3 → B类
概率 0.5 → B类
概率 0.6 → B类
概率 0.8 → A类
概率 0.9 → A类
6 重难点与易错提醒
- ❗重点:逻辑回归做分类,不是回归。
- ❗重点:适用于二分类。
- ❗重点:Sigmoid将预测值映射到0-1概率。
- ❗重点:基于阈值进行分类。
- ⚠️易错:认为逻辑回归是回归任务。
- ⚠️易错:阈值设置不当影响分类效果。
- 💡深入理解:逻辑回归 = 线性回归 + Sigmoid + 阈值判断。
7 课堂问答精选
Q: 逻辑回归是回归还是分类?
A: 逻辑回归虽然名字中有"回归",但实际做的是分类任务。它是有监督学习,标签是离散的,适用于二分类问题。原理是数据经过线性回归得到预测值,再通过Sigmoid映射到概率,最后基于阈值分类。
Q: 逻辑回归能做多分类吗?
A: 可以,但比较麻烦。类似if-else实现多分支的方式,通过嵌套实现多分类。但逻辑回归更适合二分类,多分类通常用其他算法(如Softmax回归)。
8 本课小结
- 逻辑回归:有监督学习,做分类,适用于二分类。
- 原理:数据 → 线性回归 → 预测值 → Sigmoid → 概率 → 阈值判断 → 分类。
- Sigmoid:S型函数,映射到0-1概率。
- 阈值:分类判断标准(如0.5)。
- 多分类:可通过嵌套实现,但麻烦。
9 延伸思考与实践
- 预习:概率相关知识。
- 思考:为什么用Sigmoid函数?
- 实践:绘制Sigmoid函数曲线。