当然,最好的材料还是看原版论文。原版论文都没看就别跟别人凑热闹,瞎逼逼了。AlphaGo之前的论文也需要仔细看看,不然可能不明白diff在什么地方。
- AlphaGo Zero《Mastering the Game of Go without Human Knowledge》
- AlphaGO Lee(跟李世石对战的版本)《Mastering the game of Go with deep neural networks and tree search》之前做过笔记
其实论文里面已经说了。
Our program, AlphaGo Zero, differs from AlphaGo Fan and AlphaGo Lee 12 in several important aspects.
- First and foremost, it is trained solely by self-play reinforcement learning, starting from random play, without any supervision or use of human data. 之前的版本提到需要人类棋谱作为训练样本,这是比较让人诟病,会让人觉得这跟我们想要的AI有点距离。虽然学了人类棋谱之后,self-play会继续迭代加强,有点“智能”的样子。那旧版AlphaGo能否不要人类棋谱呢?我后来也想过这个问题。毕竟围棋是一个规则很明确的游戏,这些人类棋谱顶多起到一个加速收敛的作用,如果没有这些棋谱,顶多让机器自己去explore。当然代价就是会多花费很多时间,毕竟围棋的解空间太大了。不过这次AlphaGo Zero的研究结果表明,用人类的棋谱其实也有side-effect,会形成“思维定式”,用神经网络里的术语就是陷入局部最优。所以去掉之后发现效果更好了。当然,带来的另外一个疑问就是如何快速收敛?
- Second, it only uses the black and white stones from the board as input features. 至少之前的fast rollout是有用hand-craft特征的。现在完全没用hand-craft特征了,离“人工智能”又更近了。
- Third, it uses a single neural network, rather than separate policy and value networks. 之前提到,policy network和value network训练的目的虽然不太一样,但单纯从效果上看,这两个网络都可以当做AI,所以,一个很自然的想法就是合并。插一句题外话,在object detection领域用同一网络同时实现bounding Box的回归和target的classification也不是没有。这个优化