← 全部章节详细版这一节

P15 · 基础与训练

逻辑回归

2016/17 版 · 视频 1:07:13

1这节解决什么问题

上一讲绕了一圈:先估分布、再反推类别,最后其实就是一个打分。那为什么不直接学这个打分?

2一句话讲清

逻辑回归名字里有「回归」,做的却是分类:先算一个打分,再用 S 形曲线把打分压成概率。

3通俗解释

  1. 打分是「权重乘输入再加基数」,可正可负、可大可小;概率必须落在零到一之间。S 形曲线正好把整条数轴压进零到一,而且保持「打分越高、概率越大」。
  2. 训练目标是让「这批带标签的数据出现」的可能性最大,这个想法叫最大似然。把它写成要最小化的形式,就是交叉熵(cross-entropy):正确类别的概率越低,罚得越重。
  3. 这样定损失之后,调整方向出奇地干净:每个参数的调整量,正比于「预测概率减正确答案」,再乘上对应的输入。预测得准就几乎不用动,错得越离谱动得越多。
  4. 多个类别时,把各类打分一起变成「加起来等于一的概率」,就是 softmax;损失仍看正确那一类的概率。

4一个例子

讲义例子

讲义做了一个直接对照:同样假设「打分加 S 形」,生成式那套的测试准确率约七成三,直接学权重的做法约七成九。函数形状一样、数据一样,结果却不同,因为生成式多假设了「属性服从钟形分布」,这个额外假设把答案往某个方向拉了。讲义还用异或的四个点说明局限:无论怎么调权重,一条直线都分不开对角的两类;要么人工换特征,要么把多个逻辑回归接起来——后者就是深度网络的起点。

5常见误区

  • 逻辑回归不是回归。它输出的是「属于这一类的概率」,还要过一道门槛才变成类别。
  • 单个逻辑回归是线性分类器,不是深度网络。接多个、层数变多之后才是网络。
  • 多类互斥时不要用多个独立的 S 形:几个概率加起来不等于一,不是一套概率。要用 softmax。

6和相邻几节的关系

P14 的生成式做法在这里被对照;P12 的反向传播是这里「逐层算方向」的规模化版本;P16 接着讲训练不好时该怎么诊断。

730 秒回顾

打分过 S 形得概率;最大似然写成损失就是交叉熵;调整方向是「预测减答案」乘输入;一条直线切不开异或,接起来才成网络。

8小自测

先自己答,再点开对答案。

1. 预测概率很小、正确答案是一,交叉熵和平方误差哪个给的调整力度大?

交叉熵大得多。平方误差会乘上「概率乘(1 减概率)」,概率接近零时这个因子也接近零,最该纠正的时候反而没力度。

2. 逻辑回归为什么分不开异或?两种补救各有什么代价?

它的分界是一条直线,而异或的两类在对角,直线切不开。补救一是人工换特征,靠人找、不好扩展;补救二是把多个逻辑回归接起来让模型自己学特征,代价是参数变多、要用反向传播训练。

9来源

来源与说明(点开可查)

基于对应官方讲义整理并做复习补充,不是视频逐字稿;本页不标注视频时间点。

对应讲义页码:Logistic Regression (v3).pdf 第 2–30 页

回到顶部