当前位置:网站首页>卷积神经网络的推导过程
卷积神经网络的推导过程
2022-08-09 03:07:00 【白小李】
目录
前言
本此周报主要是对CNN的基本流程进行手动推导学习,进一步理解卷积网络的运行过程。同时温习整个卷积神经网络的运作机制。
一、基本流程
在卷积神经网中的输入x,通常是以矩阵进行输入,在下图中的输入矩阵,横数是“很好看呢!”这几个的个数,列数是词向量的维度,0.3、0.1、0.1,在词向量空间中就代表好字。在第一层卷积运算层中有3种fitter,而每种fitter有3个。在convolve之后,每一个fitter都会有一个卷积结果。之后经过激活层(activation),通过映射到高维度来解决分类以及其它问题。在卷积层之间周期性的引进池化 层(pooling),在减少训练参数数量的同时,防止过拟合的发生并从每一个fitter里面选出最大值,最后通过dropout层和输出层,将卷积后的结果输出来。
本质:神经网络中一层层的卷积本质上就是大量的卷积核在发挥不同的作用。
二、推导
1、初始化
首先convolve4×3的输入和2×3的background fitter,之后将得到的3×1的结果放进激活层中,在这个推导例子中,采用ReLu作为激活函数,经过激活函数的结果进行max pooling,进一步降低维度,得到一个1×1的结果,再将这个结果放入softmax layer进行多分类或者将某个值转化为激活概率。
此次优化的参数一共有8个,一个是background fitter上的6个参数以及线性层参数w1、w2。初始化如图所示。
2、正向计算(Forward)
4×3的输入卷积后得到的3×1的结果中,以1.6举例,0.4×1+0.7×1+0×1+0.3×1+0.1×1+0.1×1=1.6。同理1.4和2.5也是这么计算出来的。之后经过ReLu函数,大于0的时候是本身,小于0的时候是0。经过maxpooling留下最大的2.5这个node作为softmax的输入,最后得出概率分布。
3、反向传播(Backpropagation)
反向传播即先从后面开始算,首先算loss对O1求导,即预测概率减去实际标签,再loss对O2求导。
之后是算loss对W1求导,采用链式法则展开后,转换为对O1求导×O1对W1求导,同理对O2进行求导。
第三步算loss对Z求导。
接下来算maxpooling的梯度。
再算loss对S的梯度
最后一步是算卷积层的导数。在向量比较少的时候,可以通过向量展开计算。在CNN中算fitter的梯度可以被转化成一个反过来的卷积运算。
4、更新
最后进行更新两个w参数和6个u参数,学习率为1。此时便完成了一轮的参数更新
结论
对于卷积神经网络的推导过程有了一个大致的了解,下周计划对卷积的代码进行学习和复现,争取将卷积这部分从理论和实际方面都掌握好,以及对卷积神经网络中的激活函数再次进行学习。
边栏推荐
猜你喜欢
关于eBPF与可观测性,你想知道的都在这里
JS 运行机制最全面的一次梳理
SQL注入(3)
2022-08-08 The fifth group Gu Xiangquan study notes day31-collection-IO stream-File class
书签收藏难整理?这款书签工具管理超方便
对线面试官实现去重和幂等
2027年加密市场将会发生什么?思维的跨越?长期预测无法脱离形势变化
Kubernetes:(十四)安全机制(一定要做好安全措施哦)
Cholesterol-PEG-Maleimide,CLS-PEG-MAL,胆固醇-聚乙二醇-马来酰亚胺用于科研实验
365天挑战LeetCode1000题——Day 051 特殊的二进制序列 分治
随机推荐
2022-08-08 The fifth group Gu Xiangquan study notes day31-collection-IO stream-File class
C专家编程 第9章 再论数组 9.5 数组和指针可交换性的总结
leetcode-23.合并K个升序链表
Rotate the neon circle
Hudi从内核到实战介绍
Shell脚本:正则表达式
1.02亿美元从数字资产基金撤出!BTC价格已经触底!预示下跌趋势即将逆转?
数学基础(四)极大似然估计、误差的高斯分布与最小二乘估计的等价性
作为常用的荧光标记试剂Cy5 亚磷酰胺(CAS号:182873-67-2)有哪些特点了?
渗透测试-域环境下的信息收集
i18n 国际化
365天挑战LeetCode1000题——Day 051 特殊的二进制序列 分治
如何实现有状态转化操作
365 days challenge LeetCode1000 topic - Day 051 special binary sequence partition
Kubernetes:(十四)安全机制(一定要做好安全措施哦)
非关系型数据库MongoDB:(二)副本集部署说明、数据迁移、限制内存、启用mongo认证
126. 单词接龙 II
C专家编程 第10章 再论指针 10.1 多维数组的内存布局
Day021 图书管理系统(对象和数组)
C语言力扣第56题之合并区间。排序+双指针