Softmax回归中的权重是一维还是二维?
关于线性分类器权重维度的困惑解答
嘿,我来帮你理清这个看似矛盾的点~
吴恩达课程里的一维权重是怎么回事?
吴恩达在Coursera的深度学习课程里,为了让概念更直观,刻意简化了线性分类器的讲解场景:
- 不管是普通的特征还是展平后的图像(比如RGB图像被展平成
像素总数×3的一维向量),他都先从单分类任务入手,这时候线性模型的表达式是y = W·x + b——这里的x是一维特征向量,W自然是一维权重向量,两者做内积后得到单个类别的预测得分。 - 哪怕后续讲到多分类,他也是先拆解成多个单分类任务来解释,所以你看到的权重始终是一维的。
TensorFlow示例里的权重为什么不一样?
《Learning TensorFlow》里的示例是更贴近工程实践的实现方式:
- 它直接面向多分类场景,所以权重会被初始化成二维矩阵。比如如果输入是展平后的
[batch_size, feature_num]张量,权重的形状就是[feature_num, class_num]——矩阵里的每一列,其实就是吴恩达课程里单个类别的一维权重向量! - 这样设计的好处是可以通过一次矩阵乘法,直接计算出所有样本在所有类别上的得分,效率更高,也符合TensorFlow的张量运算逻辑。
书中第14页提到:‘Since we are not going to use convolutional layers yet, we'll flatten the images into vectors, but our weights will be a matrix where each column corresponds to a class’s weight vector.’
本质是一回事!
其实两者的核心逻辑完全一致,都是线性分类的得分 = 权重·特征 + 偏置,只是:
- 吴恩达用“一维权重向量”来降低理解门槛,聚焦单分类的核心逻辑;
- TensorFlow用“二维权重矩阵”来适配多分类的工程实现,提升运算效率。
内容的提问来源于stack exchange,提问作者Gnanesh
相关产品推荐
相关产品推荐

