CNN算法详细分析

CNN算法详细分析test_example_CNN.mtrain_x=double(reshape(train_x’,28,28,60000))/255;test_x=double(reshape(test_x’,28,28,10000))/255;train_y=double(train_y’);test_y=double(test_y’);将输入的数据按照规定的形式组织,并归一化。r…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

test_example_CNN.m

train_x = double(reshape(train_x',28,28,60000))/255;
test_x = double(reshape(test_x',28,28,10000))/255;
train_y = double(train_y');
test_y = double(test_y');

将输入的数据按照规定的形式组织,并归一化。

rand('state',0)

初始化时设置随机产生的数字不变

cnn.layers = {
    struct('type', 'i') %input layer
    struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer
    struct('type', 's', 'scale', 2) %sub sampling layer
    struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer
    struct('type', 's', 'scale', 2) %subsampling layer
};

设置网络结构为6c-2s-12c-2s

opts.alpha = 1;
opts.batchsize = 50;
opts.numepochs = 1;

设置学习率为1,每一批训练50个样本,迭代一次(所有样本训练完就结束)。

cnn = cnnsetup(cnn, train_x, train_y);
cnn = cnntrain(cnn, train_x, train_y, opts);

调用cnnsetup模块初始化网络并将网络赋给变量cnn,调用cnntrain模块训练网络并将训练好的网络赋给变量cnn。

[er, bad] = cnntest(cnn, test_x, test_y);

将存储网络结构的变量cnn传递给测试模块cnntest,返回错误率和错误的数目。

%plot mean squared error
figure; plot(cnn.rL);
assert(er<0.12, 'Too big error');

画平滑后的均方差曲线


cnnsetup.m

    inputmaps = 1;
    mapsize = size(squeeze(x(:, :, 1)));

squeeze:除去size为1的维度

关于输入通道、输出通道与多通道卷积的详细说明:link

转载于:https://www.cnblogs.com/ratels/p/10682361.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197357.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vue分页功能[通俗易懂]

    vue分页功能[通俗易懂]分页分页、查询、重置、修改、删除分页、查询、重置、修改、删除vue中的分页使用频繁,在此记录一下。因为分页一般和增删查改等一起使用,所以写了一套。若是没有使用到其他功能,可以直接删除,只使用分页功能。pagination:{total:0,current:1,pageSize:10,//每页中显示10条数据pageSizeOptions:[“10″,”20″,”30”],//每页中显示的数据

    2022年10月1日
    3
  • ROS教程(五):OpenCV调用USB摄像头并发布topic(详细图文)

    ROS教程(五):OpenCV调用USB摄像头并发布topic(详细图文)前言ros教程:OpenCV调用usb摄像头创建功能包教程在ROS教程(三):创建程序包及节点(图文)已讲解,本文便不再细讲。

    2022年6月19日
    136
  • linux安装与卸载命令_ubuntu安装jdk并配置环境变量

    linux安装与卸载命令_ubuntu安装jdk并配置环境变量linux配置java环境变量(详细)linux配置java环境变量(详细)一.解压安装jdk在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录,执行命令./jdk-6u14-linux-i586.bin这时会出现一段协议,连继敲回车,当询问是否同意的时候,输入yes,回车。之后会在当前目录下生成一个jdk1.6.0_14目录,你可以将它复制到任…

    2022年10月1日
    3
  • echarts 旭日图sunburst[通俗易懂]

    echarts 旭日图sunburst[通俗易懂]1、配置数据 第一层为最内层的环,第二层为第一层对应的children所构成的环 [ { value:n, 数值,根据同层所有数值的占比,构成百分比圆环,不写为内部第一层children的数值和 若设置的值大于内部第一层的数值,即表示有未显示的内容,具体表示图会压缩同层其他环占比 name:’显示内容’, children:[ { value:n, name:’显示内容’ } ] }, { va

    2022年9月26日
    2
  • python库之_thread

    官方参考文档:https://docs.python.org/3.7/library/_thread.html_thread库方法(1)_thread.error(2)_thread.Lock

    2021年12月29日
    45
  • 基于SSM框架的毕业设计管理系统的设计与实现(附资源下载)

    基于SSM框架的毕业设计管理系统的设计与实现(附资源下载)我的毕业设计就叫毕业设计管理系统的设计与实现,哈哈目录1.摘要2.需求分析3.数据库设计4.功能模块的设计与实现5.项目截图6.项目源码1.摘要毕业设计是本科教育的最后一个环节,整个过程包括课题拟定与审核、师生双选、开题报告、文档审核、中期检查、毕业答辩等多个环节,是一项系统而复杂的工作。开发一个适合本校的毕业设计管理系统,不仅能够极大地减少教务管理人员的…

    2022年7月12日
    18

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号