打字猴:1.70050849e+09
1700508490
1700508491 我们可以考虑设计一个3层的神经网络(如图11-45所示),输入层只有2个神经元,分别接收x和y的坐标值。隐含层有2层,在物理上可以解释为拟合出l1到l6各自的表达式,以及相互之间的“与”或“非”关系。输出层有1层,用来最终输出0(否)或1(是)。
1700508492
1700508493
1700508494
1700508495
1700508496 图11-45 3层BP网络
1700508497
1700508498 这样一个六角形区域中的点应该怎样表示呢?
1700508499
1700508500 设6个超平面的表达式分别为l1(x, y)、l2(x, y)、l3(x, y)、l4(x, y)、l5(x, y)和l6(x, y),则这个六角形可以转化成中心的1个正六边形和旁边的6个正三角形的表达式的并集,即
1700508501
1700508502
1700508503
1700508504
1700508505 能够表达这样一种关系的神经网络是很容易设计的。
1700508506
1700508507 从理论上讲,这个网络中所拥有的VC维已经足够把刚刚的非线性分类问题转换成线性分类和“与”或“非”判断的问题组合了。单个神经元的工作方式是线性分类器的工作方式,这个观点刚刚已经讨论过了,那么“与”或“非”计算是怎么实现的呢?
1700508508
1700508509 对于一个有2个维度输入的神经元来说,“与”运算的构造要达到如表11-8所示的效果。
1700508510
1700508511 表11-8 与运算
1700508512
1700508513   维度1输入     维度2输入     输出     1     1     1     1     0     0     0     1     0     0     0     0   那么,分别构造一个w和一个b,使其满足上面这个约束,其实也很容易。取w=[20,20],b=-30(取法不止1种)。
1700508514
1700508515
1700508516 带入,会得到如表11-9所示的结果。
1700508517
1700508518
1700508519 表11-9 输入与输出(1)
1700508520
1700508521
1700508522   维度1输入     维度2输入     输出     1     1     10     1     0     -10     0     1     -10     0     0     -30   对这样的结果,通过Sigmoid激励函数很容易得到与期望一致的1和0的输出结果。
1700508523
1700508524 同样,构造一个“或”关系计算也很容易,如表11-10所示。
1700508525
1700508526 表11-10 或运算
1700508527
1700508528   维度1输入     维度2输入     输出     1     1     1     1     0     1     0     1     1     0     0     0   那么,分别构造一个w和一个b,使其满足上面这个约束,其实也很容易。取w=[20,20],b=-10(取法同样不止1种)。
1700508529
1700508530
1700508531 带入,会得到如表11-11所示的结果。
1700508532
1700508533
1700508534 表11-11 输入与输出(2)
1700508535
1700508536
1700508537   维度1输入     维度2输入     输出     1     1     30     1     0     10     0     1     10     0     0     -10   对这样的结果,再通过Sigmoid激励函数,也很容易得到与期望一致的1和0的输出结果。
1700508538
1700508539 同样,构造一个“非”运算也很容易,如表11-12所示。
[ 上一页 ]  [ :1.70050849e+09 ]  [ 下一页 ]