2

我们正在为 Checkers 游戏开发神经网络。在我们的训练数据中,

0代表空白格,1代表白棋,-1代表白王,2代表黑棋,-2代表黑王

因此,我们需要一个范围为 [-2, 2] 的激活函数。我们应该使用哪个激活函数?请就此提出您的建议。

4

3 回答 3

4

我看不出你不能使用 sigmoid 函数的原因 sigmoid 函数
Sigmoid 函数
的范围是 [0, 1]
要修改 sigmoid 函数以满足您的需要,可以将它乘以 4,将函数乘以一个常数会影响它的幅度( Range = [0, 4] ),
而不是减去 2,通过减法/加法,您可以在 Y 轴上移动函数( Range = [-2, 2] )
所以函数看起来像这样: S(t) = 4* ( 1 / (1 + e ^ (-t)) ) - 2

于 2013-04-07T22:46:09.197 回答
3

您的状态编码不是最佳的。通常,神经网络在类别的 1-of-c 编码中效果更好。然后,很容易使用 sigmoid 单元。只需取 5 个输出的 argmax 即可确定状态。

于 2013-04-08T20:45:09.890 回答
1

是的!sigmoid 函数运行良好,因为它完全符合您指定的范围。我还将它用于我正在开发的模式识别问题。线性往往效果很好。

于 2013-04-11T03:12:16.683 回答