1700537760
1700537761
数理逻辑,深度学习,神经网络
1700537762
1700537763
问题1 多层感知机表示异或逻辑时最少需要几个隐含层(仅考虑二元输入)?
1700537764
1700537765
难度:★★☆☆☆
1700537766
1700537767
分析与解答
1700537768
1700537769
首先,我们先来分析一下具有零个隐藏层的情况(等同于逻辑回归)能否表示异或运算。仅考虑二元输入的情况,设X取值为0或1,Y的取值也为0或1,Z为异或运算的输出。也就是,当X和Y相同时,异或输出为0,否则为1,具体的真值表如表9.1所示。
1700537770
1700537771
表9.1 异或运算的真值表
1700537772
1700537773
X
1700537774
1700537775
Y
1700537776
1700537777
Z=X⊕Y
1700537778
1700537779
0
1700537780
1700537781
0
1700537782
1700537783
0
1700537784
1700537785
0
1700537786
1700537787
1
1700537788
1700537789
1
1700537790
1700537791
1
1700537792
1700537793
0
1700537794
1700537795
1
1700537796
1700537797
1
1700537798
1700537799
1
1700537800
1700537801
0
1700537802
1700537803
回顾逻辑回归的公式
1700537804
1700537805
Z=sigmoid(AX+BY+C) ,
1700537806
1700537807
(9.1)
1700537808
1700537809
其中Sigmoid激活函数是单调递增的:当AX+BY+C的取值增大时,Z的取值也增大;当AX+BY+C的取值减少时,Z的取值也减小。而AX+BY+C对于X和Y的变化也是单调的,当参数A为正数时,AX+BY+C以及Z的取值随X单调递增;当A取负数时,AX+BY+C和Z随X单调递减;当参数A为0时,Z的值与X无关。观察异或运算的真值表,当Y=0时,将X的取值从0变到1将使输出Z也从0变为1,说明此时Z的变化与X是正相关的,需要设置A为正数;而当Y=1时,将X的取值从0变为1将导致输出Z从1变为0,此时Z与X是负相关的,需要设置A为负数,与前面矛盾。因此,采用逻辑回归(即不带隐藏层的感知机)无法精确学习出一个输出为异或的模型表示。
[
上一页 ]
[ :1.70053776e+09 ]
[
下一页 ]