DL Homework 8

目录

习题5-2 证明宽卷积具有交换性, 即公式(5.13).

习题5-4 对于一个输入为100 × 100 × 256的特征映射组, 使用3 × 3的卷积核, 输出为100 × 100 × 256的特征映射组的卷积层, 求其时间和空间复杂度. 如果引入一个1 × 1卷积核, 先得到100 × 100 × 64的特征映射, 再进行3 × 3的卷积, 得到100 × 100 × 256的特征映射组, 求其时间和空间复杂度.

习题5-5 对于一个二维卷积, 输入为3 × 3, 卷积核大小为2 × 2, 试将卷积操作重写为仿射变换的形式. 参见公式(5.45) .

        ​编辑

习题5-7 忽略激活函数,分析卷积网络中卷积层的前向计算和反向传播是一种转置关系

习题5-8 在空洞卷积中, 当卷积核大小为𝐾, 膨胀率为𝐷时, 如何设置零填充𝑃的值以使得卷积为等宽卷积 .


习题5-2 证明宽卷积具有交换性, 即公式(5.13).

        给定图像和卷积核对图像X进行零填充,两端各补 U-1 和 V-1 个零,得到全填充图像

         图像X和卷积核W的宽卷积\tilde{\otimes }定义为

        图像X和卷积核W有固定长度时,它们的宽卷积具有交换性:

rot180()表示旋转180度

        交换性证明:

 

同时推导一下,我们发现:

 

 所以我们从证明变成证明即可

 由此可见,交换性成立!照片感觉在这里展示不太好看,但是毕竟弄了大半天的东西。把照片源文件放进来可以自行下载观看

习题5-4 对于一个输入为100 × 100 × 256的特征映射组, 使用3 × 3的卷积核, 输出为100 × 100 × 256的特征映射组的卷积层, 求其时间和空间复杂度. 如果引入一个1 × 1卷积核, 先得到100 × 100 × 64的特征映射, 再进行3 × 3的卷积, 得到100 × 100 × 256的特征映射组, 求其时间和空间复杂度.

时间复杂度:因为映射后的图像的每一个像素都是经过卷积计算而来的,由这个想法开始,我们首先计算最后输出的图像像素点个数为100\times100\times256=2560000个,并且卷积核大小为3\times3=9,卷积核组是由256个卷积核构成的,所以每个像素点需要经过9\times256次乘法运算(这里时间复杂度同代码,所以不考虑加法的效率)所以最好一共需要的时间效率为256\times3\times3\times100\times100\times256=5,898,240,000

空间复杂度为256\times100\times100 = 2,560,000,因为这里考虑的都为代码过程的时间空间复杂度.

同理可以很容易求得另一组的答案如下:

时间复杂度:64\times100\times100\times256 + 256\times100\times100\times64\times3\times3 = 1,638,400,000

空间复杂度:64\times100\times100 + 256\times100\times100 = 3,200,000

习题5-5 对于一个二维卷积, 输入为3 × 3, 卷积核大小为2 × 2, 试将卷积操作重写为仿射变换的形式. 参见公式(5.45) .

关于这个问题之前的博客就提到过一些,但哪个时候就比较随性(不是好的习惯)了解的还不够透彻,经过老师上课的讲解对展开放射变化了解更为深刻了,首先引用鱼书中这一部分的讲解

        鱼书很明确的指出了,将滤波器展开为1列,那矩阵到底怎么展开呢,通过题目就可以很容易的明确了。

        经过卷积操作仿射变化后,X,W变为如下:

Y = X * W

        这是鱼书中的例子,但是事实上还存在另一种放射变化,老师讲的不同于鱼书,将X拉成一列如下:


Y = W * X

        

        两种仿射变化都是对的只是变现的形式不同罢了~

习题5-7 忽略激活函数,分析卷积网络中卷积层的前向计算和反向传播是一种转置关系

        以一个3×3的卷积核为例,输入为X输出为Y

        将4×4的输入特征展开为16×1的矩阵,y展开为4×1的矩阵,将卷积计算转化为矩阵相乘

因为:;并且

所以:

对比正向: Y=CX,所以两者是一种转置关系。

习题5-8 在空洞卷积中, 当卷积核大小为𝐾, 膨胀率为𝐷时, 如何设置零填充𝑃的值以使得卷积为等宽卷积 .

首先对于普通的卷积操作,输出特征图的大小由以下公式给出:

而在空洞卷积中,由于引入了膨胀率,上述公式需要做相应调整。空洞卷积的输出特征图大小的计算公式如下:

现在我们来解决问题,假设我们希望进行等宽卷积,即输入特征图的大小与输出特征图的大小相同。因此,我们可以令输出特征图的大小等于输入特征图的大小:

将这个等式代入空洞卷积的输出特征图大小计算公式中,可以得到:

接下来,我们可以解出零填充P的值:

        PS:这两周大作业有点多,选修课还都结课,反向传播算法的手推,不太想随便糊弄一个,抄一抄没啥效果,所以手推的过程放在下周赶时间做一个,单独会再发个博客~ 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/190473.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

GLP-1 , GLP-1R

-- 6VCB_GLP-1R G_protein, GLP-1 peptidea positive allosteric modulator

Drools 7 JMX Mbean 及Metric 分析

Mbean mbean的打开很简单,使用jmx启动参数: -Dcom.sun.management.jmxremote.port9999 -Ddrools.mbeansenabled -Dcom.sun.management.jmxremote.authenticatefalse -Dcom.sun.management.jmxremote.sslfalse 但通过jconsole能直观看到的东西也很…

Win11安装Docker

一、进入Docker官网 首先先到Docker官网下载最新官方Docker for Windows链接:Docker下载 在官网内可以查看到Docker的开发文档: 根据官网提示,Windows环境下下载Docker必须满足:Docker for Windows requires 64bit Windows 11 Pro…

CSS之弹性盒子Flexible Box

我想大家在做布局的时候,没接触flex布局之前,大家都是用浮动来布局的,但现在我们接触了flex布局之后,我只能说:“真香”。让我为大家介绍一下弹性盒子模型吧! Flexible Box 弹性盒子 在我们使用弹性盒子时&…

linux系统初始化本地git,创建ssh-key

step1, 在linux系统配置你的git信息 sudo apt install -y git//step1 git config --global user.name your_name // github官网注册的用户名 git config --global user.email your_email //gitub官网注册绑定的邮箱 git config --list //可以查看刚才你的配置内容…

redis的集群,主从复制,哨兵

redis的高可用 在Redis中,实现高可用的技术主要包括持久化、主从复制、哨兵和集群,下面分别说明它们的作用,以及解决了什么样的问题。 持久化: 持久化是最简单的高可用方法(有时甚至不被归为高可用的手段)…

HONOR荣耀MagicBook 15 2021款 锐龙版R5(BMH-WFQ9HN)原厂Windows11预装OEM系统含F10智能还原

链接:https://pan.baidu.com/s/1faYtC5BIDC2lsV_JSMI96A?pwdj302 提取码:j302 原厂系统Windows11.22H2工厂模式安装包,含F10一键智能还原,自带所有驱动、出厂主题壁纸、系统属性专属LOGO标志、Office办公软件、荣耀 电脑管家等预装程序 …

相识词设计思路及实现方法

目录 1.业务背景 2.实现方法 第一种: ​编辑 第二种: 3.相关材料 1.业务背景 业务有全文检索功能,然后根据标书的要求需要有近似词的功能,一般近似词需要模型训练之后成为词库,是需要大数据相关人员负责。负责人表示…

【Leetcode合集】1457. 二叉树中的伪回文路径

1457. 二叉树中的伪回文路径 1457. 二叉树中的伪回文路径 代码仓库地址: https://github.com/slience-me/Leetcode 个人博客 :https://slienceme.xyz 给你一棵二叉树,每个节点的值为 1 到 9 。我们称二叉树中的一条路径是 「伪回文」的&am…

2024年最新最全的Jmeter接口测试必会知识点:jmeter连接数据库

jmeter连接mysql数据库 大致步骤如下: 1、下载mysql的jar包放入到jmeter的lib下,然后重启jmeter 2、配置JDBC Connection Configuration 3、配置JDBC Request 4、在请求中引用查询到的结果变量,可以结合计数器取每一个结果值&#xff1a…

RocketMQ 安装部署及应用场景记录

文章目录 前言一、RocketMQ简介1.1 整体架构 二、RocketMQ安装部署2.1 RocketMQ 下载2.2 修改 JVM 参数2.3 启动 NameServer 和 Broker2.4 验证发送和接受消息2.5 停止 NameServer 和 Broker2.6 配置全局环境 三、RocketMQ应用场景3.1 异步处理3.2 应用解耦3.3 流量削峰 前言 …

基于acme免费申请泛域名证书

参考文档:https://github.com/acmesh-official/acme.sh 文章目录 step1: 获取阿里云的ak、skstep2: 安装acmestep3: 安装通配符证书step4: 查看证书step5: 证书的使用step6: 删除证书 step1: 获取阿里云的ak、sk export Ali_Key"LTAI5tG8888888CDoEjLzkE"…

Maxwell安装部署消费到kafka集群

1.上传安装包到linux系统上面 2.解压安装包到安装目录下,并且重命名 [rootVM-4-10-centos package]# tar -zxvf maxwell-1.29.2.tar.gz -C /opt/software/3.配置mysql 增加以下配置 #数据库id server-id 1 #启动binlog,该参数的值会作为binlog的文件…

Vite -构建优化 - 分包策略 + 打包压缩

什么是分包策略 分包策略 就是把不会常规更新的文件,单独打包处理。问 :什么是不会常规更新的文件? 答 : 就是基本上不会改的文件,比如我们引入的第三方的依赖包,例如 lodash工具包,这些工具包…

小程序项目:springboot+vue基本微信小程序的电子书阅读器小程序

项目介绍 随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时…

Python基础:字符串详解(需补充完善)

1. 字符串定义 在Python中,字符串是一种数据类型,用于表示文本数据。字符串是由字符组成的序列,可以包含字母、数字、符号和空格等字符。在Python中,你可以使用单引号()或双引号("&#x…

Leetcode—94.二叉树的中序遍历【简单】

2023每日刷题(四十) Leetcode—94.二叉树的中序遍历 C语言实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ /*** Note: The returned array mus…

[Linux]进程等待

文章目录 3.进程等待3.1什么是进程等待3.2为什么要进程等待3.3如何进行进程等待?1.wait2.waitpid2.1函数的讲解2.2status的理解2.3代码理解 3.4学后而思1.直接用全局变量获取子进程退出码可以吗?如下2.进程具有独立性 退出码是子进程的数据 父进程是如何拿到退出码的3.对内存…

【brpc学习实践十】streaming log实战

实战实例 通常我们在服务还没正式起来时,会用brpc流式log打印,支持对日志输出到ostream对象中(默认std)。同时会在服务初始化时配置LogSink,实现自己的log,这样后续都可以将输出重定向至自己的log. int init(int arg…

【C++】类型转换 ③ ( 重新解释类型转换 reinterpret_cast | 指针类型数据转换 )

文章目录 一、重新解释类型转换 reinterpret_cast1、指针数据类型转换 - C 语言隐式类型转换报错 ( 转换失败 )2、指针数据类型转换 - C 语言显示类型强制转换 ( 转换成功 )3、指针数据类型转换 - C 静态类型转换 static_cast ( 转换失败 )4、指针数据类型转换 - C 重新解释类型…