逻辑回归 (Logistic Regression)
🎬 视频详解 (Video)
Section titled “🎬 视频详解 (Video)”📌 核心定义 (What)
Section titled “📌 核心定义 (What)”一句话定义:逻辑回归是一种二分类算法,通过 Sigmoid 函数将线性回归的输出映射到
[0, 1]区间,表示属于某一类的概率。
虽然名字里有”回归”,但它解决的是分类问题(如:邮件是否是垃圾邮件、用户是否会点击广告)。
🎨 交互演示 (Interactive)
Section titled “🎨 交互演示 (Interactive)”调整权重观察决策边界如何变化,拖动 Sigmoid 输入滑块理解概率映射。
🎯逻辑回归可视化
📊 二分类决策边界
📈 Sigmoid 函数
输入 z0.0
σ(0.0) = 0.5000
w₁1.00
w₂1.00
b-5.00
损失: 0.097准确率: 100%
🏠 生活类比 (Analogy)
Section titled “🏠 生活类比 (Analogy)”📧 垃圾邮件检测
Section titled “📧 垃圾邮件检测”你收到一封邮件,想判断是不是垃圾邮件:
- 包含”免费” → +3 分
- 包含”中奖” → +5 分
- 来自通讯录 → -4 分
- 有正常问候语 → -2 分
总分 = 3 + 5 - 4 - 2 = 2 分
然后用 Sigmoid 函数转换:
- 分数高 → 概率接近 1 → 垃圾邮件
- 分数低 → 概率接近 0 → 正常邮件
🎯 数学公式 (Math)
Section titled “🎯 数学公式 (Math)”Step 1: 线性组合
Section titled “Step 1: 线性组合”Step 2: Sigmoid 函数
Section titled “Step 2: Sigmoid 函数”性质:
- 输出范围
- 时,
- 时,
- 时,
Step 3: 预测
Section titled “Step 3: 预测”损失函数:交叉熵 (Cross-Entropy)
Section titled “损失函数:交叉熵 (Cross-Entropy)”📊 Sigmoid 曲线
Section titled “📊 Sigmoid 曲线”概率1.0 | .--------- | .-'0.5 |- - - - - - - -o- - - - - - - (决策边界) | .-'0.0 |------------' +-----------------------------→ z -5 0 +5💻 代码实现 (Code)
Section titled “💻 代码实现 (Code)”import numpy as np
def sigmoid(z): return 1 / (1 + np.exp(-z))
def predict(X, w, b): z = np.dot(X, w) + b return sigmoid(z)
# 示例:2个特征X = np.array([[1, 2], [2, 1], [3, 4], [4, 3]]) # 特征y = np.array([0, 0, 1, 1]) # 标签
# 假设已训练好的参数w = np.array([0.5, 0.5])b = -2
probs = predict(X, w, b)predictions = (probs >= 0.5).astype(int)print(f"概率: {probs}")print(f"预测: {predictions}")from sklearn.linear_model import LogisticRegressionimport numpy as np
X = np.array([[1, 2], [2, 1], [3, 4], [4, 3]])y = np.array([0, 0, 1, 1])
model = LogisticRegression()model.fit(X, y)
print(f"权重: {model.coef_}")print(f"偏置: {model.intercept_}")print(f"预测概率: {model.predict_proba(X)}")🔗 与神经网络的联系
Section titled “🔗 与神经网络的联系”| 逻辑回归 | 神经网络 |
|---|---|
| Sigmoid 激活 | 输出层激活函数 |
| 交叉熵损失 | 分类任务标准损失 |
| 单层结构 | 无隐藏层的网络 |
关键洞察:逻辑回归 = 线性回归 + Sigmoid 激活 + 交叉熵损失
🚀 多分类扩展:Softmax
Section titled “🚀 多分类扩展:Softmax”当类别 > 2 时,使用 Softmax 回归:
⚠️ 局限性
Section titled “⚠️ 局限性”- 只能处理线性可分问题 - 决策边界是直线/超平面
- 对特征缩放敏感 - 建议先标准化
- 特征工程依赖 - 非线性关系需手动构造交叉特征