如果 AlphaZero 总是玩最好的动作,它只会一遍又一遍地生成相同的训练游戏。那么随机性从何而来?它什么时候决定不玩最优化的动作?
AlphaZero 什么时候会玩次优动作?
人工智能
强化学习
深度学习
零字母
贪心的爱
2021-11-10 07:45:43
1个回答
在自我对弈训练过程中,AlphaZero 不会贪婪地只玩它认为“最佳”的棋步(通常是从 MCTS 搜索树的根节点引出的访问次数最多的棋步)。相反,为了产生更多样化的体验,它会按访问次数对移动进行采样。这意味着在自我对战中遇到的任何给定情况下,被认为是“最佳”的动作仍然有最大的被选中概率,但其他动作也有较小的被选中概率。理论上,它有时甚至可能会选择它认为是最糟糕的一步(非常罕见)!
如果我没记错的话,他们只对任何游戏的前 30 步进行了我上面描述的操作,然后继续进行贪婪游戏。尽管如此,这仍然会为它所体验的每场比赛带来一组非常多样化的 30 次移动开始。不过,我不能 100% 确定我是否正确地记住了这个细节,也许他们只是更早地这样做了(例如在 AlphaGo Zero 中),而不再在 AlphaZero 中这样做。必须检查纸张以确保。
此外,每当他们开始一个新的搜索过程时,他们都会扰乱由学习策略网络分配给根节点中所有可用移动的先验概率。这是使用 Dirichlet 噪声以非确定性方式完成的。我认为这在 AlphaZero 论文中并没有真正明确提及,但它在补充材料中(以及 AlphaGo Zero 论文中?)。无论如何,这也意味着如果在两次不同的自我对弈中遇到两次完全相同的游戏状态,由于引入的随机性,搜索行为可能会略有不同,因此可能会得出不同的结论。是“最佳的”。