0

我知道通常使用具有线性输出的感知器(无隐藏层)在误差表面中没有局部最小值。但是,由于它不是线性的,是否有可能使用使用 sigmoid 函数的感知器陷入局部最小值?我在 WEKA 中使用 functions.MultilayerPerceptron(使用 sigmoid 激活函数和反向传播),没有隐藏层。我在具有 4 个不同类别的线性可分数据集上对其进行训练。当我更改随机生成器的种子(用于节点的初始权重)时,大多数情况下它只能正确分类 60%(它没有完全学习目标概念)。但是我发现了一个特定的种子,它分类 90% 正确(这是最佳的)。我已经使用了动力、训练时间和学习率,但这并没有改变任何东西。

我很感谢任何帮助

4

1 回答 1

1

Simgoid 激活函数没有任何变化,这仍然是一个线性模型。所以没有局部最优。错误行为的唯一原因是一些奇怪的停止标准和/或数据处理/方法实施中的错误。

于 2014-05-03T13:12:19.867 回答