请简述神经网络的发展史sigmoid会饱和,造成梯度消失.于是有了ReLU.ReLU负半轴是死区,造成梯度变0.于是有了LeakyReLU,PReLU.强调梯度和权值分布的稳定性,由此有了ELU,以及较新的SELU.太深了,梯度传不下去,于是有了highway.干脆连highway的参数都不要,直接变残差,于是有了ResNet.强行稳定参数的均值和方差,于是有了BatchNorm.在梯度流中增加噪声,于是有了 Dropout.RNN梯度不稳定,于是加几个通路和门控,于是有了LSTM.LSTM简化…
RNN梯度消失和爆炸的原因 经典的RNN结构如下图所示: 假设我们的时间序列只有三段,  为给定值,神经元没有激活函数,则RNN最简单的前向传播过程如下: 假设在t=3时刻,损失函数为  . 则对于一次训练任务的损失函数为  ,即每一时刻损失值的累加. 使用随机梯度下降法训练RNN其实就是对  .  .  以及  求偏导,并不断调整它们以使L尽可能达到最小的过程. 现在假设我们我们的时间序列只有三段,t1,t2,t3. 我们只对t3时刻的  求偏导(其他时刻类似): 可以看出对于  求偏导并没有…
前言 我相信你是遇到了同样的问题.通过搜索引擎来到这里的.为了不耽误排查问题的时间,我提前说明一下这篇文章所描述的问题范畴: 我遇到的问题和 c++ 模板相关: 如果我减少传递的参数的话,是有可能避免这个编译错误的: 和我使用的 VS 开发环境版本相关,我使用 VS2013 时报错,但是使用 VS2015 及以上版本就不报错: 和我使用的平台也相关,如果我改用 g++ 编译则不报错(gcc 版本为  4.9.2). 如果这不是你的场景,或者通过上述几种方法(本质上都是提高 c++ 编译器版本)可…
问题描述: 在使用gulp当中,自动生成的node_modules文件夹,因为文件目录层级太深,无法系统删除,用360粉碎工具也报错 解决方法: 使用npm中的插件rimraf,专门用于删除的模块插件 1.安装:npm install -g rimraf(全局安装) 2.使用:先定位目标文件夹的父级目录,然后命令行输入rimraf ***(***为需要删除的文件夹名称), 案例:(命令行操作,删除gulptest下的node_modules文件夹) 整个node_modules文件夹被删除的干干…
VisualStudio开发过程中碰到C1061报错,查了MSDN,文档说明如下 从说明中我们明白这是由于我们的代码块嵌套太深,超过了编译器的限制.但我理解为应该是同一个域内块的数量太多,超过了编译器限制.示例代码如下: void Demo1() { for( int i = 0; i < 10; ++i ) { cout << i << " "; } cout << endl; -重复200个 for( int i = 0; i < 1…
外网上传到NAS速度很慢是什么情况?上行1M都不到,但是测试有4M NAS可以将自己的影片,图片,音乐都放在NAS中.在家中就能无线共享了.在其他地方要下载自己nas里的影片,下载速度主要取决于家里宽带的上行速度.  对方下载取决于你的上行速度,网通上下行基本一样,4m带宽上行300多k.电信拨号一律上行50k,光纤20m也就是300多k.如果在线听音频没问题,如果是视频的话,只能流畅看小格式影片.如果你是电信2m,那你的上行只有50k.网通估计应该在100k. 宽带上传速度导致,一般家用宽带,…
我们给定一个三个时间的RNN单元,如下: 我们假设最左端的输入  为给定值, 且神经元中没有激活函数(便于分析), 则前向过程如下: 在  时刻, 损失函数为  ,那么如果我们要训练RNN时, 实际上就是是对  求偏导, 并不断调整它们以使得  尽可能达到最小(参见反向传播算法与梯度下降算法). 那么我们得到以下公式: 将上述偏导公式与第三节中的公式比较,我们发现, 随着神经网络层数的加深对  而言并没有什么影响, 而对  会随着时间序列的拉长而产生梯度消失和梯度爆炸问题. 根据上述分析整理一下…
  1RNN为什么会有梯度消失问题 (1)沿时间反向方向:t-n时刻梯度=t时刻梯度* π(W*激活函数的导数)  …
最近做项目的时候  用户提出要上传大图片  一张图片有可能十几兆  本来用的第三方的上传控件  有限制图片上传大小的设置 以前设置的是2M  按照用户的要求  以为直接将限制图片上传大小的设置改下就可以了  但是当上传大图片的时  总是异常: 错误消息:超过了最大请求长度 解决方案: 错误原因:asp.net默认最大上传文件大小为4M,运行超时时间为90S. 修改web.config中配置 <configuration> <system.web> <httpRuntime u…
tflearn 中文汉字识别,训练后模型存为pb给TensorFlow使用. 数据目录在data,data下放了汉字识别图片: data$ ls0  1  10  11  12  13  14  15  16  2  3  4  5  6  7  8  9 datag$ ls 0xxx.png yyy.png .... 代码: 如果将get model里的模型层数加非常深,训练时候很可能不会收敛,精度一直停留下1%以内. # -*- coding: utf-8 -*- from __future…