机器学习进阶文档深度页
逻辑回归
先计算线性分数,再用 Sigmoid 或 Softmax 得到类别概率。
学习前需要掌握
点积内容待补充交叉熵内容待补充
背景与问题
它训练快、参数较少、可输出概率,是高维稀疏和小数据任务的重要基线。
概念定义
逻辑回归是分类模型而非回归模型;二分类建模 log-odds,多分类计算多个类别分数。
直观理解
线性分数表示证据强弱,Sigmoid 把分数压到 0~1,再由阈值决定行动。
核心原理
通常最小化交叉熵并加入 L1/L2。StandardScaler 让优化和正则化更稳定;C 是正则强度倒数。
数学表达
核心表达
通常最小化交叉熵并加入 L1/L2。StandardScaler 让优化和正则化更稳定;C 是正则强度倒数。
变量含义
变量定义与本页概念定义一致,代码中的同名变量保持相同语义。
计算步骤
- 1标准化连续特征
- 2拟合交叉熵目标
- 3查看 predict_proba
- 4在验证集选择阈值/C
代码对应位置
示例 1逻辑回归 实现:对应文档中的训练与预测逻辑。
计算与实现步骤
- 1
标准化连续特征
- 2
拟合交叉熵目标
- 3
查看 predict_proba
- 4
在验证集选择阈值/C
- 5
测试并检查校准
代码实现
示例 1
逻辑回归 实现
逻辑回归 实现
scikit-learn
example_01.py用途:对应文档中的训练与预测逻辑。
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
model=make_pipeline(StandardScaler(),LogisticRegression(C=1,max_iter=2000))
model.fit(X_train,y_train)
print(model.predict_proba(X_test[:3]))代码解析
解析始终位于完整代码下方,并按实际代码段逐项对应。
输入数据与任务
对应文档中的训练与预测逻辑。
X_train- 训练特征,只允许它参与预处理器和模型的 fit。
X_test- 测试特征,只用于最终 transform、predict 和评价。
y_train- 与 X_train 对齐的训练目标。
model- 组合预处理和估计器的模型对象。
Step 1 · 1–6 行
导入当前步骤需要的数值计算、预处理、模型或评价工具。依赖集中写在代码开头,便于复现。
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
model=make_pipeline(StandardScaler(),LogisticRegression(C=1,max_iter=2000))
model.fit(X_train,y_train)
print(model.predict_proba(X_test[:3]))代码与数学原理
减去训练均值并除以训练标准差,对应代码中的 mean/std 或 StandardScaler。
预期输出或运行结果
每行输出各类别概率且总和约为 1。
常见错误 · 5 条
- 不要在测试集上调用 fit 或 fit_transform;测试集只能复用训练参数。
- C 方向理解反
- 未缩放就比较权重
- 概率等同可信度
- 确认样本轴、特征轴以及 X 与 y 的第一维完全对应。
实际应用
- 二分类
- 多分类
- 概率基线
常见错误
C 方向理解反
未缩放就比较权重
概率等同可信度
文档来源
03|线性模型原始文档
学习资料/learning_tech/03_linear_models.md- §3 逻辑回归
- §4 为什么需要正则化