我试图了解 alpha zero 的工作原理,但有一点我在理解上存在问题,即使在阅读了几种不同的解释之后也是如此。据我了解(参见例如https://applied-data.science/static/main/res/alpha_go_zero_cheat_sheet.png),alpha zero 不执行推出。因此,它不会结束游戏,而是在遇到未知状态时停止,使用神经网络计算不同动作的概率以及该状态的值(“获胜概率”),然后将新值向上传播树。
原因是这要便宜得多,因为实际完成游戏需要更多时间,而不是让神经网络猜测一个状态的值。
但是,这要求神经网络能够很好地预测状态的值。但是在开始训练的时候,显然会在这方面做得不好。此外,由于蒙特卡洛树搜索在遇到新状态时立即停止,并且不同游戏状态的数量非常多,因此在我看来,模拟很少能够完成游戏。并且可以肯定的是,除非真正完成大量游戏,否则神经网络无法改进,因为只有真正的反馈才能告诉智能体它的动作是好是坏。
我在这里想念什么?
我能想出的唯一合理的解释是:如果神经网络在开始时基本上是随机的,那么可以肯定的是,如果树搜索一碰到以前未知的游戏状态,所以不可能是这样。所以也许,也许即使神经网络一开始很糟糕,它也不会很“随机”,但仍然会相当偏向某些路径。这意味着搜索会偏向于大量不同游戏状态中的一些较小的状态集,因此它往往会不止一次地走同一条路径,并且能够完成一些游戏并获得反馈。这个“决议”正确吗?
我在上述“解决方案”中遇到的一个问题是,根据算法,一开始它应该有利于探索,所以一开始它似乎会偏向于选择以前没有采取的行动。这使得树搜索似乎永远无法完成游戏,因此神经网络无法学习。