【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路!
一、独裁前向神经收集
独裁前向神经收集由三部分构成:输出层、隐蔽层、输出层,每层由单位构成;
输入层由练习集的实例特点向量传入,经由连接结点的权重传入下一层,前一层的输出是下一层的输入;隐蔽层的个数是随便率性的,输入层只有一层,输出层也只有一层;
1、由输入层向前传送:
除去输入层之外,隐蔽层和输出层的层数和为n,则该神经收集称为n层神经收集,如下图为2层的神经收集;
一层中加权乞降,根据非线性方程进行转化输出;理论上,如不雅有足够多的隐蔽层和足够大年夜的练习集,可以模仿出任何方程;

二、设计神经收集构造
应用神经收集之前,必须要肯定神经收集的层数,以及每层单位的个数;
为了加快进修过程,特点向量在传入输入层前,平日须要标准化到0和1之间;

比如:特点值A可能去三个值(a0,a1,a2),那么可以应用3个输入单位来代表A
- 如不雅A=a0,则代表a0的单位值取1,其余取0;
- 如不雅A=a1,则代表a1的单位值取1,其余取0;
- 如不雅A=a2,则代表a2的单位值取1,其余取0;
神经收集既解决分类(classification)问题,也可以解决回归(regression)问题。对于分类问题,如不雅是两类,则可以用一个输出单位(0和1)分别表示两类;如不雅多余两类,则每一个类别用一个输出单位表示,所以输出层的单位数量平日等一类其余数量。
没有明白的规矩来设计最佳个数的隐蔽层,一般根据实验测试误差和精确率来改进实验。
三、交叉验证办法
若何计算精确率?最简单的办法是经由过程一组练习集和测试集,练习集经由过程练习获得模型,将测试集输入模型获得测试结不雅,将测试结不雅和测试集的┞锋实标签进行比较,获得精确率。
在机械进修范畴一个常用的办法是交叉验证办法。一组数据不分成2份,可能分为10份,
- 第1次:第1份作为测试集,残剩9份作为练习集;
- 第2次:第2份作为测试集,残剩9份作为练习集;
- ……
如许经由10次练习,获得10组精确率,将这10组数据求平均值获得平均精确率的结不雅。这里10是特例。一般意义大将数据分为k份,称该算法为K-fold cross validation,即每一次选择k份中的一份作为测试集,残剩k-1份作为练习集,反复k次,最终获得平均精确率,是一种比较科学精确的办法。

四、BP算法
经由过程迭代来处理练习集中的实例;
反偏向(大年夜输出层=>隐蔽层=>输入层)来最小化误差,来更新每个连接的权重;
4.1、算法具体介绍
输入:数据集、进修率、一个独裁神经收集构架;
输出:一个练习好的神经收集;
初始化权重和偏向:随机初始化在-1到1之间(或者其他),每个单位有一个偏向;对于每一个练习实例X,履行以下步调:
结合神经收集示意图进行分析:
由输入层到隐蔽层:

由隐蔽层到输出层:

两个公式进行总结,可以获得:


Ij为当前层单位值,Oi为上一层的单位值,wij为两层之间,连接两个单位值的权重值,sitaj为每一层的偏向值。我们要对每一层的输出进行非线性的转换,示意图如下:
当前层输出为Ij,f为非线性转化函数,又称为激活函数,定义如下:


即每一层的输出为:

比较经由神经收集后猜测值与真实值之间的差;
如许就可以经由过程输入置魅正向获得每一层的输出值。
2、根据误差反向传送 对于输出层:个中Tk是真实值,Ok是猜测值

对于隐蔽层:
推荐阅读
【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路! 定义强化进修是机械进修的一个重要分支,是多学科多范畴交叉的一个产品,它的本质是解决 decision making>>>详细阅读
本文标题:神经网络理论基础及Python实现
地址:http://www.17bianji.com/lsqh/36265.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示