109_神经网络的决策层:线性层(Linear Layer)与数据展平详解

在经过卷积层提取特征、池化层压缩空间、激活函数引入非线性后,神经网络进入了最后的决策阶段。线性层(Linear Layer),也称为全连接层(Fully Connected Layer),负责将这些抽象特征映射到最终的分类结果上。

1. 线性层的核心原理

线性层执行的是最基本的线性变换:

  • x:输入向量。
  • A:权重矩阵(Weights),也就是神经网络需要学习的核心参数。
  • b:偏置(Bias)。
  • 本质:它将输入空间的每一个点与输出空间的每一个点进行"全连接"。例如,将 196608 个特征值压缩映射到 10 个分类结果(如 CIFAR-10 的十个类别)上。

2. 关键操作:数据展平(Flatten)

线性层通常要求输入是一维向量 (除了 Batch 维度)。但卷积层的输出通常是四维张量 [Batch, Channel, Height, Width]。因此,在进入线性层之前,必须进行"展平"操作。

文件中展示了两种展平方法:

  1. 方法一: torch.reshape
  2. 方法二: torch.flatten**(推荐)**

3. 实战代码:构建全连接分类网络

文件通过以下代码展示了如何将 CIFAR-10 的图片通过线性层降维:


4. 什么是神经网络在"训练"的东西?

文件开篇提到:"神经网络训练的就是函数系 。"

在线性层中,这对应的就是权重(Weights)和偏置(Bias)。通过不断的迭代,网络会调整这些系数,使得当一张"猫"的图片输入时,输出向量中对应"猫"那个位置的数值最大。


5. 总结:一个完整的视觉网络结构

通过这一系列的笔记处理,我们现在可以勾勒出一个经典 CNN 的完整结构:

  1. 输入层:读取图像。
  2. 特征提取层:卷积(Conv2d)+ 激活(ReLU)+ 池化(MaxPool2d)。
  3. 转换层:展平(Flatten)。
  4. 分类决策层:线性层(Linear)。
相关推荐
机器白学3 小时前
OpenClaw本地Docker安装部署+自定义配置国内大模型
人工智能
逄逄不是胖胖3 小时前
《动手学深度学习》-69BERT预训练实现
人工智能·深度学习
LSssT.4 小时前
【02】线性回归:机器学习的入门第一课
人工智能·机器学习·线性回归
多年小白4 小时前
今日AI科技简报(2026年3月18日)
人工智能·科技
轮到我狗叫了4 小时前
GAN初次阅读
人工智能·神经网络·生成对抗网络
一只土卜皿4 小时前
列线图/诺莫图 含概率轴
人工智能
造夢先森4 小时前
【白话神经网络(三)】从Transformer到XXX
人工智能·神经网络·transformer
研究点啥好呢4 小时前
3月22日GitHub热门项目推荐|网页浏览,何须手动
人工智能·python·开源·github
zl_vslam4 小时前
SLAM中的非线性优-3D图优化之相对位姿Between Factor-四元数(十二)
人工智能·算法·计算机视觉