category
type
status
date
slug
summary
tags
password
Property
Jan 17, 2026 08:19 AM
icon
摸索过程问题汇总
jupyter notebook中的库冲突问题

知识点记录
卷积概念
可视化理解

卷积核获取
在 PyTorch 的
nn.Conv2d 中,卷积核通过初始化和训练更新两个阶段确定:- 初始化阶段
卷积核作为可学习参数随机初始化,形状为
(out_channels, in_channels/groups, kernel_size[0], kernel_size[1])。
默认采用 Kaiming 均匀分布初始化(
nn.init.kaiming_uniform_):- 从均匀分布
U(-bound, bound)中采样
bound = sqrt(6 / (1 + fan_in))
- 目的是保持前向和反向传播时的方差稳定
也可使用其他初始化方法:
- 训练阶段 卷积核自动更新:
- 注册为
nn.Parameter,默认requires_grad=True
- 反向传播时自动计算梯度
- 优化器根据梯度更新参数
- 核心特点
- 非预设:没有固定值,完全从数据中学习
- 随机起点:初始化影响训练速度,但不决定最终性能
- 可解释性:训练后的卷积核可视化可能呈现边缘、纹理等特征
总结:卷积核初始时随机生成,通过反向传播自动学习最优值,无需手动设计。
池化概念

ceil_model默认是False,池化的默认stride默认与池化核有关,如此处是stride=3,ceil_mode=true「与整数向上取整思想一致」
最大池化:MaxPool,即取池化核覆盖范围中的最大值进行输出
池化的目的:保留输入数据的特征并减少数据量。如视频的4k,720p
- 池化输出结果和输入的通道数一样,但卷积输出结果的通道数和输入的通道数可能不一样。
非线性激活
非线性激活层主要是用于提高模型的泛化能力。
- ReLU

作用就是:将≤0的值设置0,将>0的值取原值 以下是inplace取不同值的效果,inplace默认值为False


ReLU — PyTorch 2.9 documentation
inplace (bool) – can optionally do the operation in-place. Default: False
网络构建例子



计算每层卷积网络的参数
![Conv2d的输入输出尺寸计算公式,dilation[0],dilation[1]默认值是1,stride的值默认情况下也是1,故由输入时32*32,输出也是32*32故可以算得padding=2](https://www.notion.so/image/attachment%3Af5b9d16d-8953-4cfd-b7af-451dc769d8e8%3Aimage.png?table=block&id=2eb2458d-bf0c-8090-81f3-e0e3f72f2dbf&t=2eb2458d-bf0c-8090-81f3-e0e3f72f2dbf)
- 作者:axiszql
- 链接:https://axiszql.cn/article/deep-learning-learn
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。

