caffe卷积层代码阅读笔记

本文详细解析了Caffe中卷积层的实现思路,包括im2col转换、参数剖析和重点函数分析。通过im2col将卷积转换为矩阵乘法,使用GEMM完成运算。文中还介绍了卷积层涉及的参数配置,如内核尺寸、填充、步长等,并解释了卷积核、输入和输出的尺寸。最后,深入探讨了 caffe_cpu_gemm 函数在卷积过程中的作用。
摘要由CSDN通过智能技术生成

卷积的实现思想:

  • 通过im2col将image转为一个matrix,将卷积操作转为矩阵乘法运算
  • 通过调用GEMM完成运算操作
  • 下面两个图是我在知乎中发现的,“盗”用一下,确实很好,能帮助理解。
    这里写图片描述
    这里写图片描述

参数剖析

  • 配置参数:(从配置文件得来)
    kernel_h_ pad_h_ hole_h_ stride_h_
    kernel_w_ pad_w_ hole_w_ stride_w_
    is_1x1_:上面8个参数都为1时,该参数为true

  • 和输入有关的参数:(从bottom得来)
    num_
    channels_
    height_
    width_

  • 和卷积核有关的参数:(前两个参数从配置文件得来)
    num_output_
    group_
    this->blobs_[0].reset(new Blob(num_output_, channels_ / group_, kernel_h_, kernel_w_));
    this->blobs_[1].reset(new Blob(1, 1, 1, num_output_));
    this->param_propagate_down_

  • 和输出有关的参数:(计算得来)

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值