machine-learning
  • Welcome
  • 动手学深度学习
    • 1. 前言
    • 2. 预备知识
    • 3. 线性神经网络
    • 4. 多层感知机
    • 5. 深度学习计算
    • 6. 卷积神经网络
    • 7. 现代卷积神经网络
    • 8. 循环神经网络
    • 9. 现代循环神经网络
    • 10. 注意力机制
    • 11. 优化算法
    • 12. 计算性能
    • 13. 计算机视觉
    • 14. 自然语言处理:预训练
    • 15. 自然语言处理:应用
    • 16. 附录:深度学习工具
  • 百面机器学习
    • 1. 特征工程
    • 2. 模型评估
    • 3. 经典算法
    • 4. 降维
    • 5. 非监督学习
    • 6. 概率图模型
    • 7. 优化算法
    • 8. 采样
    • 9. 前向神经网络
    • 10. 循环神经网络
    • 11. 强化学习
    • 12. 集成学习
    • 13. 生成式对抗网络
    • 14. 人工智能的热门应用
  • 百面深度学习
    • 1. 卷积神经网络 CNN
    • 2. 循环神经网络 RNN
    • 3. 图神经网络 GNN
    • 4. 生成模型
    • 5. 生成式对抗网络 GAN
    • 6. 强化学习 RL
    • 7. 元学习
    • 8. 自动化机器学习 AutoML
    • 9. 计算机视觉 CV
    • 10. 自然语言处理 NLP
    • 11. 推荐系统
    • 12. 计算广告
    • 13. 视频处理
    • 14. 计算机听觉
    • 15. 自动驾驶
  • 统计学习方法
  • 推荐系统实践
    • 1. 推荐系统
    • 2. 特征工程
    • 3. Embedding
    • 4. 精排
    • 5. 召回
    • 6. 粗排/重排
    • 7. 多任务/多场景
    • 8. 冷启动
    • 9. 评估调试
    • 10. 自我修养
  • 深度学习推荐系统
    • 1. 推荐系统
    • 2. 进化之路
    • 3. 深度学习的应用
    • 4. Embedding
    • 5. 多角度审视
    • 6. 工程实现
    • 7. 评估方法
    • 8. 前沿实践
    • 9. 知识框架
  • 强化学习的数学原理
    • 1. 基础概念
    • 2. 贝尔曼公式
    • 3. 贝尔曼最优公式
    • 4. 值迭代与策略迭代
    • 5. 蒙特卡洛方法
    • 6. 随机近似与随机梯度下降
    • 7. 时序差分方法
    • 8. 值函数近似
    • 9. 策略梯度方法
    • 10. Actor-Critic方法
Powered by GitBook
On this page
  • 1.1 卷积基础知识 **
  • 1.2 卷积的变种 ***
  • 1.3 CNN 整体结构 ****
  • 1.4 CNN 基础模块 ****
  1. 百面深度学习

1. 卷积神经网络 CNN

1.1 卷积基础知识 **

  • 卷积操作:局部连接、权值共享、结构化(基本一致的对应关系)

  • 感受野:R(i)=min⁡(R(i−1)+(k−1)∏j=0i−1s(j),L)R^{(i)}=\min(R^{(i-1)}+(k-1)\prod_{j=0}^{i-1}s^{(j)}, L)R(i)=min(R(i−1)+(k−1)∏j=0i−1​s(j),L)

  • 输出尺寸:l(o)=⌊l+2p−ks⌋+1l^{(o)}=\lfloor\frac{l+2p-k}{s}\rfloor+1l(o)=⌊sl+2p−k​⌋+1(padding=same/valid)

1.2 卷积的变种 ***

  • 分组卷积(group):降低参数量、计算量(1/g),e.g. 移动设备

  • 转置卷积 / 反卷积(transposed):扩张 / 上采样,e.g. 语义 / 实例分割、物体 / 关键点检测、自编码器 / GAN

  • 空洞卷积(dilated/atrous):不通过 pooling 扩大感受野,不会降低分辨率(扩张率 r)

  • 可变形卷积(deformable):可学习偏移量(offset),几何形变学习能力

1.3 CNN 整体结构 ****

  • AlexNet:ReLU,局部响应归一化 LRN,Dropout / 数据扩充,分组卷积

  • VGGNet:多个3x3,2x2池化,去掉LRN(20层,更加简洁)

  • GoogLeNet/Inception-v1:1+3+5多路卷积,瓶颈结构1x1通道压缩,中间层辅助分类器,全局平均池化

  • Inception-v2/3:避免表达瓶颈,通道多,通道压缩,平衡深度宽度

  • ResNet:跳层连接,解决网络退化(抑制梯度消失、具备自我关闭能力)

  • Inception-v4/ResNet:

  • ResNeXt:缩小瓶颈比,分组卷积

1.4 CNN 基础模块 ****

  • BatchNorm y(k)=γ(k)x(k)−μ(k)(σ(k))2+ϵ+β(k)y^{(k)}=\gamma^{(k)}\frac{x^{(k)}-\mu^{(k)}}{\sqrt{(\sigma^{(k)})^2+\epsilon}}+\beta^{(k)}y(k)=γ(k)(σ(k))2+ϵ​x(k)−μ(k)​+β(k)

    • 内部协变量偏移:影响效率稳定性,饱和区,更小的学习率

    • BN:训练稳定,对初始值不敏感,采用更大学习率,加速收敛

    • 可以放在激活层 之前 / 之后

  • 最后几层

    • 几层全连接层:全局的、位置敏感的

    • 全局平均池化(特征图):参数量 / 计算量降低,可解释性

  • 瓶颈结构:1x1卷积,压缩输入特征图的 通道数目,降低计算量

  • 沙漏结构

    • bottom-up(encoder):conv + pool,逐层压缩

    • top-down(decoder):反卷积 / 插值 上采样,逐层扩大

Previous百面深度学习Next2. 循环神经网络 RNN

Last updated 2 years ago