接下来就是参数选择的问题。

什么是参数选择的问题呢?例如如果你把720x720的图片放进去,隐藏层都几个G了,这个自然是不行的。

在本次实验中,我一开始用了5000个隐藏节点,结果,训练一次这个隐藏层就需要1分钟的时间,自然是不可以的,因为我还要训练一万次,没法调Bug啊,这个时间绝对不行。

因此图像的大小选择是十分慎重的,因为如果只是28x28像素的话,总的也才784个节点,如果是60x80的话,就会陡增至4800个节点。计算机的算力吃不消。当初我做minst的时候,输入784个节点,隐藏层也就100~150个节点,输出为10个,大概能花上几分钟的时间就可以运行完毕。那么如果本次的用4800个节点,500个隐藏层节点,输出为101,那么时间可能花上几倍的时间。

就是说,在训练的时候,可以选取更小的节点,确保其本身的确是下降的,如果你设计的一个网络,光运行就花费三个小时,那么你若认清它不是下降的,就至少花费6个小时,因此用更小的节点先进行测试,确保它没有什么关系后,可以用更大的序列计算。

参数初始化的时候不可以初始化为0,因为在反向传播的时候就都变成0了,根本不会有任何变化。

很明显的是,虽然一开始都很小,但是自从第一轮开始,它的输出就会变成200多,再激活就是1了,这种情况是不是对的呢?自然是不对的,常理情况下,每一个输出节点,输出到隐藏层后,它应该是-11之间,然后激活一下,还是在-11之间,因此,在最开始初始化的时候,虽然把参数都初始化为-11之间,但是还是要再除以个上一层的节点个数,这样总和一加,仍能保持在-11之间,不会猛增至几百,最后NAN根本就不是数了。

实际上,并不是说除以前一个节点的个数就行,因为每一个数是0~1之间,它并不是1,因此总和加起来,它应该会更小,大概会小一个数量级,因此最好除以个个数的一半,或者更小一些,让最后结果维持在零点几,而不是零点零几这个范围。这个非常重要,参数初始化不对,可能根本就不会下降的。

不同的激活函数,它们的参数初始化是不一样的,例如sigmoid函数,因为它要求输入应该在-11之间,因此在设计参数时,它的确能保证输入值能限制在-11之间,又比如ReLU函数,它的特点是正数取正数,负数取零,如果你的参数都预处理为正数,你的输入也都是正数,那么ReLUctant函数就会失效,从而整个神经网络转变为一个多项式级别的了,可能根本都不收敛,因此在初始化的时候,应该保证正数和负数最好是一半一半。

因此,小心调参,防止NaN,就是这样。

Matlab实现图像识别(十)相关推荐

  1. matlab识别图像,基于MATLAB神经网络图像识别的高识别率代码

    MATLAB神经网络图像识别高识别率代码 I0=pretreatment(imread('Z:\data\PictureData\TestCode\SplitDataTest\0 (1).png')) ...

  2. 计算识别率的matlab代码,基于MATLAB神经网络图像识别的高识别率代码

    更新时间: 2019年3月14日10:50:04作者: 钱190 今天,我将与您分享一个基于MATLAB神经网络图像识别的高识别代码. 我认为内容非常好. 现在我与大家分享. 具有很好的参考价值. 需 ...

  3. matlab 车牌图识别,基于MATLAB车牌图像识别的设计与实现(附答辩记录)

    基于MATLAB车牌图像识别的设计与实现(附答辩记录)(包含选题审批表,任务书,开题报告,中期报告,毕业论文15000字,代码) 摘  要:车牌照识别是图像识别领域的重要研究课题.运用MATLAB对车 ...

  4. matlab:图像识别

    matlab:图像识别 一.Matlab图像识别的基本原理 二.Matlab图像识别的实现步骤 三.常用的Matlab图像识别算法 四.Matlab图像识别的应用领域 五.总结 Matlab是一款非常 ...

  5. 基于MATLAB车牌图像识别的设计与实现

    课题介绍 车牌图像识别系统是现代智能交通管理的重要组成部分之一.车牌识别系统使车辆管理更智能化,数字化,有效提升了交通管理的方便性和有效性. 车牌识别系统主要包括了图像采集.图像预处理.车牌定位.字符 ...

  6. matlab在图像识别(深度学习神经网络)中的使用(转)

    前言: 1)图像识别用途甚广,解决的算法之一,是深度学习神经网络.matlab近几个版本,对这块的语法修改较多,总体而言,用户用起来更方便了: 2)这里以2018a版本为例,做一些粗略的说明. 1.概 ...

  7. matlab rotatefactors,第十二章-matlab--因子分析.docx

    第十二章 因子分析(贵州大学 杨虎 统计) 引出因子分析的定义:作个比喻,对面来了一群女生,我们一眼就能够分辨出孰美孰丑,这是判别分析:并且我们的脑海中会迅速的将这群女生分为两类:美的一类,丑的一类, ...

  8. 用MATLAB作图像识别所需要注意的细节!

    ⑴自己构建的图像矩阵一定要从double类型转换为uint8类型!示例代码如下: I1=[50 200 220 100 200]; I1=uint8(I1); ⑵MATLAB因为数组编号从1开始,所以 ...

  9. matlab数学实验十,数学实验(MATLAB版)

    丛书序 前言 第1章 概述 1.1 数学实验 1.2 MATLAB软件简介 1.2.1 MATLAB的基本作 1.2.2 窗口与菜单 1.2.3 变量与符号 1.2.4 常用命令和技巧 1.2 ,5函 ...

  10. matlab中基于十字形窗口的滤波算法,#215;字形滤波窗口在Matlab自适应中值滤波算法中的应用 - 21ic中国电子网...

    由于种种原因,图像在生成.传输.变换等过程中往往会受到各种噪声的污染,从而导致图像质量退化.噪声信号的滤波是图像处理的基本任务之一,主要有线性滤波和非线性滤波两种方法.线性滤波方法一般具有低通特性,而 ...

最新文章

  1. maven 多环境打包
  2. [Bug]当IDENTITY_INSERT设置为OFF时,不能为表“xx”中的标识列插入显示的值
  3. Android 快速开发框架Afinal
  4. 给定任意字符串,计算一共能组合成多少个单词bing
  5. 农产品加工进销存单_果蔬行业,用营销版在线进销存3秒开单收款!
  6. 大数据分析需注意哪些问题
  7. 读取usb接口数据_笔记本接口不够?无须担心!小米分线器开箱初体验
  8. 高并发 多线程批量ping工具 nbping简介和使用
  9. matlab显示和输出语句,matlab输出语句是什么,
  10. cesium绘制地图国/省/市/区边界线
  11. 计算机音乐桃源恋歌,GARNiDELiA《桃源恋歌》[FLAC/MP3-320K]
  12. Python识别二维码获取电子发票基本信息
  13. 产品经理如何营销自己
  14. PHP保留两位小数的三种方法
  15. HDU - 3681 Prison Break(状态压缩 + 最短路)
  16. 怎样对别的计算机进行远程协助,如何控制别人的电脑?教你如何远程协助
  17. eclipse2022-06的web brower内部浏览器
  18. leetcode-每日一题731. 我的日程安排表 II
  19. 西门子rwd60参数设置调试手册_西门子控制器RWD62
  20. 【cocos creater】7.仿《弓箭传说》- 控制主角朝向敌人

热门文章

  1. C语言学习-翁凯(第十三章笔记)
  2. 2022年山东省安全员C证特种作业证考试题库及答案
  3. 8位数码管静态显示c语言,数码管静态显示介绍_8位数码管静态显示程序解析
  4. android模拟器上https抓包
  5. 惠普179fnw打印机使用说明_|惠普HP Color Laser MFP 179fnw一体机驱动下载v1.10官方版 - 欧普软件下载...
  6. linux msgctl清除缓存,linux消息队列
  7. 小程序进阶-用户消息通知
  8. Win7/10亲测可用:湘源控规6+CAD200832+64
  9. 有些CAD通过Arcgis程序读取后,发现面积不对
  10. 解码平安:如何成为世界级综合金融集团