我目前正在研究一个神经网络来玩石头剪刀布,但我遇到了一个巨大的问题。
我让神经网络根据三个动作的历史来预测接下来会发生什么,其中人类的每一个动作都会在一个数组中创建一个新列表,其中包含之前的两个动作和新的一个。然后神经网络对此进行训练和学习。我的代码可以在下面找到。
#add new situation, with what is currently happening to make current prediction with adjusted weights
current_turn = np.array([[input_data[len(input_data) - 1][1], input_data[len(input_data) - 1][2], output_data[len(output_data) - 1][0]]])
np.append(input_data, current_turn, axis = 0)
Run Code Online (Sandbox Code Playgroud)
我正在使用 Python 系统 NumPy,它拒绝附加这两个数组,因此神经网络无法学习。
编辑:响应之一认识到必须将数组重新分配给这个新附加的数组。当我稍后尝试这个时,如下所示,它再次不起作用。
if human_choice == "r":
output_data = np.append(output_data, ([0]))
elif human_choice == "p":
output_data = np.append(output_data, ([0.5]))
elif human_choice == "s":
output_data = np.append(output_data, ([1]))
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来连接这些数组以便算法可以学习?
注意:“附加”没有绘制任何错误,但似乎没有完成其工作。