Deeplearning Toolbox中CNN代码的修改--增加下采样层偏置

本文介绍了如何在Deeplearning Toolbox的卷积神经网络(CNN)中增加下采样层的偏置和激活函数,包括在cnnsetup.m中初始化参数,在cnnff.m中添加前向传播计算,在cnnbp.m中处理delta计算和梯度计算,并在cnnapplaygrads.m中实现参数更新。
    前几天学习了Deeplearning Toolbox中关于CNN的那部分代码,发现这个Toolbox的关于CNN的实现与经典的LeNet-5的实现有下面几点不同: 
  1. 在下采样层,在计算前一层的神经元之和后没有使用到偏置;
  2. 在下采样层,在计算前一层的神经元之和后没有使用到系数;
  3. 在下采样层,没有使用Sigmoid函数进行激活
    因此,在学习了CNN的代码后,就要进行修改了。
    在Toolbox中,CNN主要有四个部分组成,cnnsetup.m用于设置CNN的结构和初始化参数,cnnff用于计算前向过程,cnnbp用于计算各层的delta和每一个参数的梯度,cnnapplaygrads使用梯度下降算法计算更新每一个参数。
    因此,每添加一个参数或者添加激活函数,都需要在相应的修改者四个文件中的部分。主要步骤如下:
  1. 在cnnsetup.m文件中添加相应的参数初始值;
  2. 在cnnff.m文件中添加该参数在前向过程中需要加入的计算;
  3. 在cnnbp.m文件中添加该参数对于delta计算的部分,已经该参数的梯度计算部分;
  4. 在cnnapplaygrads.m文件中添加更新该参数的部分。




    根据《Notes on Convolutional Neural Networks》中,关于CNN的下采样层的偏置和推导,可以知道,单独添加下采样层并不会影响到下一层和前一层的delta的计算,也不会影响其他参数的梯度的计算,比较容易实现,因此,考虑添加下采样层偏置。

一.增加下采样层的偏置
    在cnnsetup.m文件中,已经初始化了下采样层的偏置:
    


    在cnnff.m文件中,添加下面的代码:




    在cnnbp.m文件中,添加下面的代码




    在cnnapplaygrads.m文件中,添加下面的代码:



     在进行5次的迭代之后,出现的结果如下:




     进行10迭代后的结果如下:


   下一步就是增加下采样层的系数。



### 回答1: 您可以通过以下步骤安装Deep Learning Toolbox Model for ResNet-50 Network和Deep Learning Toolbox Model for Inception-v3 Network: 1. 打开MATLAB软件并进入主界面。 2. 点击“Add-Ons”选项卡,然后选择“Get Add-Ons”。 3. 在搜索栏中输入“Deep Learning Toolbox Model for ResNet-50 Network”或“Deep Learning Toolbox Model for Inception-v3 Network”。 4. 点击“Install”按钮,等待安装完成。 5. 安装完成后,您可以在MATLAB中使用这些模型进行深度学习任务。 希望这个回答对您有所帮助! ### 回答2: 安装MATLAB中的Deep Learning Toolbox Model for ResNet-50 Network和Deep Learning Toolbox Model for Inception-v3 Network是非常简单的。 首先,确保你已经安装了MATLAB软件,并具有有效的许可证。 然后,打开MATLAB软件,点击工具栏上的“Add-Ons”按钮,它位于主界面的右上角。 在弹出的界面中,点击左侧的“Get Add-Ons”选项卡。 在搜索框中,输入"Deep Learning Toolbox Model for ResNet-50 Network"并点击搜索按钮。 在搜索结果中找到对应的模型,点击右侧的"Add From GitHub"按钮。 稍等几秒钟,MATLAB会自动下载并安装所需的模型。 重复以上步骤,以同样的方式安装“Deep Learning Toolbox Model for Inception-v3 Network”。 安装完成后,你可以在MATLAB的命令窗口中使用这些模型。例如,你可以通过以下命令加载已安装的ResNet-50模型: ```matlab net = resnet50; ``` 或者加载已安装的Inception-v3模型: ```matlab net = inceptionv3; ``` 这样就可以使用这些预训练的深度学习模型进行各种任务,如图像分类、目标检测等。记得在使用这些模型之前,先要明确自己的目标并适当调整模型以适应任务要求。 ### 回答3: 要安装Matlab中的Deep Learning Toolbox Model for ResNet-50 Network和Deep Learning Toolbox Model for Inception-v3 Network,您可以按照以下步骤进行操作: 1. 首先,确保您已经安装了Deep Learning ToolboxMatlab软件。这些工具是使用这些深度学习模型的前提条件。 2. 打开Matlab软件,在主界面的"HOME"选项卡下,选择"Get Add-Ons"。这将打开Matlab Add-On Explorer。 3. 在搜索框中输入"Deep Learning Toolbox Model for ResNet-50 Network",然后点击搜索按钮。 4. 在搜索结果中找到"Deep Learning Toolbox Model for ResNet-50 Network",然后点击"Add"按钮进行安装。等待安装过程完成。 5. 重复步骤3和步骤4,这一次搜索"Deep Learning Toolbox Model for Inception-v3 Network",然后点击"Add"按钮进行安装。同样,等待安装过程完成。 6. 安装完成后,您可以在Matlab的工具箱中找到这些深度学习模型。打开"APPS"选项卡,在"Deep Learning Toolbox"部分下,您会看到"ResNet-50"和"Inception-v3"模型。 7. 单击所需的模型,Matlab将加载相应的模型并打开一个图形用户界面。 8. 在这个界面上,您可以使用这些预训练模型进行不同的深度学习任务,如图像分类、特征提取等。 请注意,这些模型的安装过程可能会因您的Matlab版本和操作系统而有所不同。确保您的Matlab版本兼容并满足相应的系统要求。此外,确保您的计算机具有足够的计算资源来运行这些深度学习模型。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值