这是我的情景
我使用过EMNIST英语大写字母数据库
我的神经网络如下
现在我为每个班级培训了500 fixed samples
。
简单地说,将500x9
图像传递给使用backpropagation
的训练函数,然后进行100次迭代,将重量改为learning_rate*derivative_of_loss_wrt_corresponding_weight
。
我发现当我在神经元上使用tanh激活时,网络学习速度比学习率0.0001
更快。
我得出结论,因为tanh的固定测试数据集的准确度高于relu。此外,100个时期后的损失值略低于tanh。
预计不会表现得更好吗?
答案 0 :(得分:1)
预计不会表现得更好吗?
一般来说,没有。 RELU在许多问题上表现更好,但不是所有问题。
此外,如果您使用经过优化的架构和一组参数以便在一个激活函数中运行良好,那么在交换不同的激活函数后,您可能会得到更差的结果。
通常,您需要调整架构和参数,例如学习率,以获得可比较的结果。这可能意味着在您的示例中更改隐藏节点的数量和/或学习率。
最后要注意的是:在我所看到的MNIST示例架构中,具有RELU激活的隐藏层通常后跟Dropout层,而具有sigmoid或tanh激活的隐藏层则不然。尝试在隐藏图层后添加dropout,看看是否可以改善RELU的结果。请参阅Keras MNIST示例here。