导航:首页 > 网络营销 > 构建神经网络需要确定哪些参数

构建神经网络需要确定哪些参数

发布时间:2024-08-14 03:28:05

① 神经网络超参数选择

深度学习模型通常由随机梯度下降算法进行训练。随机梯度下降算法有许多变形:例如 Adam、RMSProp、Adagrad 等等。这些算法都需要你设置学习率。学习率决定了在一个小批量(mini-batch)中权重在梯度方向要移动多远。

如果学习率很低,训练会变得更加可靠,但是优化会耗费较长的时间,因为朝向损失函数最小值的每个步长很小。
如果学习率很高,训练可能根本不会收敛,损失函数一直处于波动中,甚至会发散。权重的改变量可能非常大,使得优化越过最小值,使得损失函数变得更糟。

训练应当从相对较大的学习率开始。这是因为在开始时,初始的随机权重远离最优值。在训练过程中,学习率应当下降,以允许细粒度的权重更新。

参考: https://www.jiqixin.com/articles/2017-11-17-2

批次大小是每一次训练神经网络送入模型的样本数。在 合理的范围之内 ,越大的 batch size 使下降方向越准确,震荡越小,通常取值为[16,32,64,128]。

Batch_Size=全部数据集 缺点:
1) 随着数据集的海量增长和内存限制,一次性载入所有的数据进来变得越来越不可行。
2) 以 Rprop 的方式迭代,会由于各个 Batch 之间的采样差异性,各次梯度修正值相互抵消,无法修正。
Batch_Size = 1 缺点:
使用在线学习,每次修正方向以各自样本的梯度方向修正,横冲直撞各自为政,难以达到收敛。

在合理范围内,增大 Batch_Size 有何好处?
1) 内存利用率提高了,大矩阵乘法的并行化效率提高。
2) 跑完一次 epoch(全数据集)所需的迭代次数减少,对于相同数据量的处理速度进一步加快。
3) 在一定范围内,一般来说 Batch_Size 越大,其确定的下降方向越准,引起训练震荡越小。

盲目增大 Batch_Size 有何坏处?
1) 内存利用率提高了,但是内存容量可能撑不住了。
2) 跑完一次 epoch(全数据集)所需的迭代次数减少,要想达到相同的精度,其所花费的时间大大增加了,从而对参数的修正也就显得更加缓慢。
3) Batch_Size 增大到一定程度,其确定的下降方向已经基本不再变化。

参考: https://blog.csdn.net/juronghui/article/details/78612653

迭代次数是指整个训练集输入到神经网络进行训练的次数,当测试错误率和训练错误率相差较小,且测试准确率趋于稳定时(达到最优),可认为当前迭代次数合适;当测试错误率先变小后变大时则说明迭代次数过大了,需要减小迭代次数,否则容易出现过拟合。

用激活函数给神经网络加入一些非线性因素,使得网络可以更好地解决较为复杂的问题。参考: https://blog.csdn.net/tyhj_sf/article/details/79932893

它能够把输入的连续实值变换为0和1之间的输出。
缺点:
1) 在深度神经网络中梯度反向传递时导致梯度爆炸和梯度消失,其中梯度爆炸发生的概率非常小,而梯度消失发生的概率比较大。
2) Sigmoid 的 output 不是0均值,使得收敛缓慢。batch的输入能缓解这个问题。

它解决了Sigmoid函数的不是zero-centered输出问题,然而梯度消失的问题和幂运算的问题仍然存在。
tanh函数具有中心对称性,适合于有对称性的二分类

虽然简单,但却是近几年的重要成果,有以下几大优点:
1) 解决了梯度消散问题 (在正区间)
2)计算速度非常快,只需要判断输入是否大于0
3)收敛速度远快于sigmoid和tanh
ReLU也有几个需要特别注意的问题:
1)ReLU的输出不是zero-centered
2)Dead ReLU Problem,指的是某些神经元可能永远不会被激活,导致相应的参数永远不能被更新。有两个主要原因可能导致这种情况产生: (1) 非常不幸的参数初始化,这种情况比较少见 (2) learning rate太高导致在训练过程中参数更新太大,不幸使网络进入这种状态。解决方法是可以采用Xavier初始化方法,以及避免将learning rate设置太大或使用adagrad等自动调节learning rate的算法。

为了解决Dead ReLU Problem,提出了将ReLU的前半段设为 αx 而非 0 ,如 PReLU 。

1)深度学习往往需要大量时间来处理大量数据,模型的收敛速度是尤为重要的。所以,总体上来讲,训练深度学习网络尽量使用zero-centered数据 (可以经过数据预处理实现) 和zero-centered输出。所以要尽量选择输出具有zero-centered特点的激活函数以加快模型的收敛速度。
2)如果使用 ReLU,那么一定要小心设置 learning rate,而且要注意不要让网络出现很多 “dead” 神经元,如果这个问题不好解决,那么可以试试 Leaky ReLU、PReLU 或者 Maxout.
3)最好不要用 sigmoid,你可以试试 tanh,不过可以预期它的效果会比不上 ReLU 和 Maxout.

公式: https://www.cnblogs.com/xiaobingqianrui/p/10756046.html
优化器比较: https://blog.csdn.net/weixin_40170902/article/details/80092628

② 卷积神经网络用全连接层的参数是怎么确定的

卷积神经网络用全连接层的参数确定:卷积神经网络与传统的人脸检测方法不同,它是通过直接作用于输入样本,用样本来训练网络并最终实现检测任务的。

它是非参数型的人脸检测方法,可以省去传统方法中建模、参数估计以及参数检验、重建模型等的一系列复杂过程。本文针对图像中任意大小、位置、姿势、方向、肤色、面部表情和光照条件的人脸。

输入层

卷积神经网络的输入层可以处理多维数据,常见地,一维卷积神经网络的输入层接收一维或二维数组,其中一维数组通常为时间或频谱采样;二维数组可能包含多个通道;二维卷积神经网络的输入层接收二维或三维数组;三维卷积神经网络的输入层接收四维数组。

由于卷积神经网络在计算机视觉领域应用较广,因此许多研究在介绍其结构时预先假设了三维输入数据,即平面上的二维像素点和RGB通道。

③ 神经网络参数如何确定

神经网络各个网络参数设定原则:

①、网络节点  网络输入层神经元节点数就是系统的特征因子(自变量)个数,输出层神经元节点数就是系统目标个数。隐层节点选按经验选取,一般设为输入层节点数的75%。如果输入层有7个节点,输出层1个节点,那么隐含层可暂设为5个节点,即构成一个7-5-1 BP神经网络模型。在系统训练时,实际还要对不同的隐层节点数4、5、6个分别进行比较,最后确定出最合理的网络结构。

②、初始权值的确定  初始权值是不应完全相等的一组值。已经证明,即便确定  存在一组互不相等的使系统误差更小的权值,如果所设Wji的的初始值彼此相等,它们将在学习过程中始终保持相等。故而,在程序中,我们设计了一个随机发生器程序,产生一组一0.5~+0.5的随机数,作为网络的初始权值。

③、最小训练速率  在经典的BP算法中,训练速率是由经验确定,训练速率越大,权重变化越大,收敛越快;但训练速率过大,会引起系统的振荡,因此,训练速率在不导致振荡前提下,越大越好。因此,在DPS中,训练速率会自动调整,并尽可能取大一些的值,但用户可规定一个最小训练速率。该值一般取0.9。

④、动态参数  动态系数的选择也是经验性的,一般取0.6 ~0.8。

⑤、允许误差  一般取0.001~0.00001,当2次迭代结果的误差小于该值时,系统结束迭代计算,给出结果。

⑥、迭代次数  一般取1000次。由于神经网络计算并不能保证在各种参数配置下迭代结果收敛,当迭代结果不收敛时,允许最大的迭代次数。

⑦、Sigmoid参数 该参数调整神经元激励函数形式,一般取0.9~1.0之间。

⑧、数据转换。在DPS系统中,允许对输入层各个节点的数据进行转换,提供转换的方法有取对数、平方根转换和数据标准化转换。

(3)构建神经网络需要确定哪些参数扩展阅读:

神经网络的研究内容相当广泛,反映了多学科交叉技术领域的特点。主要的研究工作集中在以下几个方面:

1.生物原型

从生理学、心理学、解剖学、脑科学、病理学等方面研究神经细胞、神经网络、神经系统的生物原型结构及其功能机理。

2.建立模型

根据生物原型的研究,建立神经元、神经网络的理论模型。其中包括概念模型、知识模型、物理化学模型、数学模型等。

3.算法

在理论模型研究的基础上构作具体的神经网络模型,以实现计算机模拟或准备制作硬件,包括网络学习算法的研究。这方面的工作也称为技术模型研究。

神经网络用到的算法就是向量乘法,并且广泛采用符号函数及其各种逼近。并行、容错、可以硬件实现以及自我学习特性,是神经网络的几个基本优点,也是神经网络计算方法与传统方法的区别所在。

④ BP神经网络模型各个参数的选取问题

样本变量不需要那么多,因为神经网络的信息存储能力有限,过多的样本会造成一些有用的信息被丢弃。如果样本数量过多,应增加隐层节点数或隐层数目,才能增强学习能力。

一、隐层数
一般认为,增加隐层数可以降低网络误差(也有文献认为不一定能有效降低),提高精度,但也使网络复杂化,从而增加了网络的训练时间和出现“过拟合”的倾向。一般来讲应设计神经网络应优先考虑3层网络(即有1个隐层)。一般地,靠增加隐层节点数来获得较低的误差,其训练效果要比增加隐层数更容易实现。对于没有隐层的神经网络模型,实际上就是一个线性或非线性(取决于输出层采用线性或非线性转换函数型式)回归模型。因此,一般认为,应将不含隐层的网络模型归入回归分析中,技术已很成熟,没有必要在神经网络理论中再讨论之。
二、隐层节点数
在BP 网络中,隐层节点数的选择非常重要,它不仅对建立的神经网络模型的性能影响很大,而且是训练时出现“过拟合”的直接原因,但是目前理论上还没有一种科学的和普遍的确定方法。 目前多数文献中提出的确定隐层节点数的计算公式都是针对训练样本任意多的情况,而且多数是针对最不利的情况,一般工程实践中很难满足,不宜采用。事实上,各种计算公式得到的隐层节点数有时相差几倍甚至上百倍。为尽可能避免训练时出现“过拟合”现象,保证足够高的网络性能和泛化能力,确定隐层节点数的最基本原则是:在满足精度要求的前提下取尽可能紧凑的结构,即取尽可能少的隐层节点数。研究表明,隐层节点数不仅与输入/输出层的节点数有关,更与需解决的问题的复杂程度和转换函数的型式以及样本数据的特性等因素有关。

⑤ 神经网络权值怎么确定

神经网络的权值是通过对网络的训练得到的。如果使用MATLAB的话不要自己设定,newff之后会自动赋值。也可以手动:net.IW{}= ; net.bias{}=。一般来说输入归一化,那么w和b取0-1的随机数就行。神经网络的权值确定的目的是为了让神经网络在训练过程中学习到有用的信息,这意味着参数梯度不应该为0。

参数初始化要满足两个必要条件:

1、各个激活层不会出现饱和现象,比如对于sigmoid激活函数,初始化值不能太大或太小,导致陷入其饱和区。

2、各个激活值不为0,如果激活层输出为零,也就是下一层卷积层的输入为零,所以这个卷积层对权值求偏导为零,从而导致梯度为0。

(5)构建神经网络需要确定哪些参数扩展阅读:

神经网络和权值的关系。

在训练智能体执行任务时,会选择一个典型的神经网络框架,并相信它有潜力为这个任务编码特定的策略。注意这里只是有潜力,还要学习权重参数,才能将这种潜力变化为能力。

受到自然界早成行为及先天能力的启发,在这项工作中,研究者构建了一个能自然执行给定任务的神经网络。也就是说,找到一个先天的神经网络架构,然后只需要随机初始化的权值就能执行任务。研究者表示,这种不用学习参数的神经网络架构在强化学习与监督学习都有很好的表现。

其实如果想象神经网络架构提供的就是一个圈,那么常规学习权值就是找到一个最优点(或最优参数解)。但是对于不用学习权重的神经网络,它就相当于引入了一个非常强的归纳偏置,以至于,整个架构偏置到能直接解决某个问题。

但是对于不用学习权重的神经网络,它相当于不停地特化架构,或者说降低模型方差。这样,当架构越来越小而只包含最优解时,随机化的权值也就能解决实际问题了。如研究者那样从小架构到大架构搜索也是可行的,只要架构能正好将最优解包围住就行了。

⑥ 绁炵粡缃戠粶瓒呭弬鏁伴夋嫨

1銆佹墍浠ヨ佸敖閲忛夋嫨杈揿嚭鍏锋湁zero-centered鐗圭偣镄勬縺娲诲嚱鏁颁互锷犲揩妯″瀷镄勬敹鏁涢熷害銆

2銆佹瘆濡傚湪BP绁炵粡缃戠粶涓锛屽叾鐩镄勪富瑕佷负浜嗛夋嫨妯″瀷镄勫眰鏁般佺炵粡鍏幂殑婵娲诲嚱鏁般佹疮灞傛ā鍨嬬殑绁炵粡鍏冧釜鏁(鍗虫墍璋撶殑瓒呭弬鏁)锛屾疮涓灞傜绣缁灭炵粡鍏冭繛鎺ョ殑链缁堟潈閲嶆槸鍦ㄦā鍨嬮夋嫨(鍗矺鎶树氦鍙夐獙璇)涔嫔悗锛岀敱鍏ㄩ儴镄勮缁冩暟鎹閲嶆柊璁缁冦

3銆侀夊彇璁缁幂炵粡缃戠粶镞跺厛阃夊ソbatchsize锛屽啀璋冨叾浠栫殑瓒呭弬鏁般傚苟涓斿疄璺典笂𨱒ヨ达纴灏变袱涓铡熷垯钬斺攂atchsize鍒澶灏忥纴涔熷埆澶澶э纴鍏朵粬閮借屻傚洜涓哄悎阃傜殑batchsize锣冨洿鍜岃缁冩暟鎹瑙勬ā銆佺炵粡缃戠粶灞傛暟銆佸崟鍏冩暟閮芥病链夋樉镢楃殑鍏崇郴銆

4銆佷綋绯荤粨鏋勫拰瓒呭弬鏁扮殑阃夋嫨阆靛惊銆傚湪绗涓杞涓锛屽畾浣嶅櫒妯″瀷搴旂敤浜庡浘镀忎腑链澶-链灏忎腑蹇冩柟褰浣灭墿銆备綔鐗╃殑澶у皬璋冩暣鍒扮绣缁滆緭鍏ュぇ灏廼s220脳220銆傚崟娆¢氲繃杩欎釜缃戠粶锛屾垜浠灏卞彲浠ュ缑鍒颁笂锏句釜鍊欓夋棩链熸嗐

5銆佺劧钥岋纴DNN瓒呴珮镄勫嗳纭镐ф槸浠ヨ秴楂樼殑璁$畻澶嶆潅搴︿负浠d环镄勚傞氩父镒忎箟涓嬬殑璁$畻寮曟搸锛屽挨鍏舵槸GPU锛屾槸DNN镄勫熀纭銆

6銆侀拡瀵笲P绁炵粡缃戠粶锲炲綊杩囨嫙钖堥梾棰桡纴寤鸿灏濊瘯浣跨敤L1姝e垯鍖栧拰dropout鏂规硶𨱒ヨВ鍐炽傚傛灉闇瑕佽繘琛岀壒寰侀夋嫨锛屽垯鍙浠ヤ娇鐢↙1姝e垯鍖栥傚傛灉闇瑕佹彁楂樼绣缁灭殑娉涘寲鑳藉姏锛屽垯鍙浠ヤ娇鐢╠ropout鏂规硶銆

阅读全文

与构建神经网络需要确定哪些参数相关的资料

热点内容
网络信号差问题 浏览:155
四川广电网络机顶盒出厂设置密码 浏览:588
怎样设置银行网络信息 浏览:556
剑侠情缘2网络版速9戒指哪里出 浏览:251
换个路由器怎么网络连不上 浏览:102
用流量怎样连接网络有哪些步骤 浏览:858
网络安全面临的形势 浏览:605
wifi组成网络 浏览:866
广州高迅大厦有哪些网络覆盖 浏览:942
中国网通网络初始密码 浏览:936
宿舍楼60台电脑网络布置 浏览:880
米家连接路由器提示网络异常 浏览:77
网络机顶盒配什么电视 浏览:120
网络盒子处理信号的是什么元件 浏览:561
无线网显示有网络不可上网 浏览:777
中型无线监控网络方案 浏览:579
金立网络共享设置 浏览:578
连接上网络了显示叹号什么情况 浏览:76
不在一个地方可以共享网络吗 浏览:432
舟山网络配音哪个好 浏览:674

友情链接