我实现了一个简单的多层感知器,偶然发现了一个严重的问题:当输入发生巨大变化时,输出值仅会被轻微修改。
我创建了一个具有以下内容的MLP:
转发示例:
Input1 = [0.2, 0.7, 0.1, 0.9]
Input2 = [0.6, 0.2, 0.8, 0.01]
Output1 = [0.39468, 0.74283]
Output2 = [0.37928, 0.75102]
偏差值已正确添加。权重初始化范围为[-1; 1]。
sigmoid
用作激活函数。
我注意到,当使用tanh
或“挤压” S形图时,输出会有所不同,问题似乎已解决。但是为什么呢?
谢谢。