Tensorflow 损失已经很低
Tensorflow loss is already low
我正在用强化学习做一个人工智能,我得到了奇怪的结果,损失显示如下:
Tensorflow 损失:https://imgur.com/a/Twacm
在训练时,每场比赛结束后,它都会与一名随机球员比赛,并在一名球员之后与一个加权矩阵比赛,但它会上下波动:
结果:https://imgur.com/a/iGuu2
基本上我正在做一个学习玩奥赛罗的强化学习代理。使用 E-greedy,使用 Keras over Tensorflow 体验回放和深度网络。尝试了不同的架构,如 sigmoid、relu 和上图所示的 tanh。他们都有相似的损失,但结果有点不同。
在此示例中,代理正在从 100k 专业游戏中学习。
这是架构,默认学习率为 0.005:
model.add(Dense(units=200,activation='tanh',input_shape=(64,)))
model.add(Dense(units=150,activation='tanh'))
model.add(Dense(units=100,activation='tanh'))
model.add(Dense(units=64,activation='tanh'))
optimizer = Adam(lr=lr, beta_1=0.9, beta_2=0.999, epsilon=1e-08, decay=0.0)
model.compile(loss=LOSS,optimizer=optimizer)
原代码:https://github.com/JordiMD92/thellia/tree/keras
那么,为什么我会得到这些结果?
现在我的输入是 64 个神经元(8*8 矩阵),有 0 个空方块、1 个黑色方块和 -1 个白色方块。使用负输入不好吗?
可能是你激活函数的问题。尝试使用 relu 而不是 tanh,如果你正在使用深度 q 学习,你可能不需要任何激活函数或关心重置权重的优化器。
我正在用强化学习做一个人工智能,我得到了奇怪的结果,损失显示如下: Tensorflow 损失:https://imgur.com/a/Twacm
在训练时,每场比赛结束后,它都会与一名随机球员比赛,并在一名球员之后与一个加权矩阵比赛,但它会上下波动: 结果:https://imgur.com/a/iGuu2
基本上我正在做一个学习玩奥赛罗的强化学习代理。使用 E-greedy,使用 Keras over Tensorflow 体验回放和深度网络。尝试了不同的架构,如 sigmoid、relu 和上图所示的 tanh。他们都有相似的损失,但结果有点不同。 在此示例中,代理正在从 100k 专业游戏中学习。 这是架构,默认学习率为 0.005:
model.add(Dense(units=200,activation='tanh',input_shape=(64,)))
model.add(Dense(units=150,activation='tanh'))
model.add(Dense(units=100,activation='tanh'))
model.add(Dense(units=64,activation='tanh'))
optimizer = Adam(lr=lr, beta_1=0.9, beta_2=0.999, epsilon=1e-08, decay=0.0)
model.compile(loss=LOSS,optimizer=optimizer)
原代码:https://github.com/JordiMD92/thellia/tree/keras
那么,为什么我会得到这些结果? 现在我的输入是 64 个神经元(8*8 矩阵),有 0 个空方块、1 个黑色方块和 -1 个白色方块。使用负输入不好吗?
可能是你激活函数的问题。尝试使用 relu 而不是 tanh,如果你正在使用深度 q 学习,你可能不需要任何激活函数或关心重置权重的优化器。