我们正在为 Checkers 游戏开发神经网络。在我们的训练数据中,
0代表空白格,1代表白棋,-1代表白王,2代表黑棋,-2代表黑王
因此,我们需要一个范围为 [-2, 2] 的激活函数。我们应该使用哪个激活函数?请就此提出您的建议。
我们正在为 Checkers 游戏开发神经网络。在我们的训练数据中,
0代表空白格,1代表白棋,-1代表白王,2代表黑棋,-2代表黑王
因此,我们需要一个范围为 [-2, 2] 的激活函数。我们应该使用哪个激活函数?请就此提出您的建议。
我看不出你不能使用 sigmoid 函数的原因 sigmoid 函数
的范围是 [0, 1]
要修改 sigmoid 函数以满足您的需要,可以将它乘以 4,将函数乘以一个常数会影响它的幅度( Range = [0, 4] ),
而不是减去 2,通过减法/加法,您可以在 Y 轴上移动函数( Range = [-2, 2] )
所以函数看起来像这样: S(t) = 4* ( 1 / (1 + e ^ (-t)) ) - 2
您的状态编码不是最佳的。通常,神经网络在类别的 1-of-c 编码中效果更好。然后,很容易使用 sigmoid 单元。只需取 5 个输出的 argmax 即可确定状态。
是的!sigmoid 函数运行良好,因为它完全符合您指定的范围。我还将它用于我正在开发的模式识别问题。线性往往效果很好。