AlphaGo的核心技术突破在于其深度神经网络与蒙特卡洛树搜索(MCTS)的深度融合,这一组合不仅解决了围棋中状态空间极其庞大(约10^170种可能局面)的难题,更通过模仿人类棋局经验与自我对弈强化学习,实现了超越人类顶尖棋手的棋力,其关键技术可拆解为以下几个核心模块:神经网络架构、蒙特卡洛树搜索优化、训练策略及多阶段学习流程,各模块协同作用形成了完整的决策系统。

神经网络架构:双网络协同决策
AlphaGo采用两个深度神经网络共同支撑决策过程,分别为策略网络(Policy Network)和价值网络(Value Network),二者分别承担“选择下一步”与“评估当前局面”的核心任务,通过分工协作大幅提升搜索效率。
策略网络(Policy Network)
策略网络的作用是直接预测当前局面下人类或高水准棋手可能落子的概率分布,其设计目标是从海量棋局中学习“人类直觉”,快速缩小搜索范围,早期版本(AlphaGo Fan)的策略网络基于13层卷积神经网络(CNN),输入为19×19的棋盘状态(包括当前落子颜色、历史落子位置等信息,通过通道编码表示),输出为361个可能落子点的概率值,该网络通过监督学习(Supervised Learning,SL)训练,使用约3000万步由人类顶尖棋手(如李世石、古力等)对弈的棋局数据,学习模仿人类落子模式,将预测准确率提升至57%(相比随机猜的1/361已有质的飞跃)。
为提升策略网络的泛化能力,DeepMind后续引入“残差网络”(ResNet)结构,通过堆叠残差块缓解深层网络梯度消失问题,使网络深度达到40层以上,同时引入“批归一化”(Batch Normalization)加速训练收敛,改进后的策略网络不仅能模仿人类落子,还能在未知局面中生成更合理的候选动作,为后续蒙特卡洛树搜索提供更精准的先验概率。
价值网络(Value Network)
价值网络的核心任务是评估当前棋盘局面的胜率,输出一个0到1之间的标量值(接近1表示当前方优势明显,接近0表示劣势),与策略网络不同,价值网络更关注“全局胜负”而非局部落子细节,其输入同样为19×19的棋盘状态,输出为单一胜率预测值,价值网络的训练分为两步:首先通过监督学习学习人类棋局的胜负结果(以棋局终局胜负为标签,训练网络预测中盘局面的胜率),再通过自我对弈生成的数据进行强化学习(Reinforcement Learning,RL)优化,使评估结果更贴近实际胜率。

价值网络的引入是AlphaGo的关键突破之一,传统蒙特卡洛树搜索(MCTS)依赖随机模拟(rollout)至终局来评估局面,而围棋的模拟步数可能高达数百步,计算效率极低,价值网络通过直接评估当前局面胜率,将模拟深度从数百步压缩至单步评估,使搜索效率提升百倍以上,实验表明,价值网络的评估准确率可达67%,远超随机模拟的30%左右。
蒙特卡洛树搜索(MCTS)与神经网络的融合
传统MCTS通过“选择-扩展-模拟-反向传播”(Selection-Expansion-Simulation-Backpropagation)四步循环逐步构建搜索树,但在围棋中,由于分支因子过大(每步平均约200种合法落子),传统MCTS的搜索深度和广度均受限,AlphaGo的创新在于将神经网络与MCTS深度融合,用神经网络替代部分随机环节,使搜索过程更智能、更高效。
神经网络增强的MCTS流程
AlphaGo的MCTS流程可概括为以下步骤(以当前玩家视角为例):
-
选择(Selection):从根节点(当前局面)开始,递归选择子节点,直至到达“未 fully expanded”的叶节点,选择策略采用“UCT+先验概率”混合公式:
[ UCT(s,a) = Q(s,a) + c_{puct} \cdot P(s,a) \cdot \frac{\sqrt{\sumb N(s,b)}}{1 + N(s,a)} ]
(Q(s,a)) 为动作 (a) 在状态 (s) 的动作价值(由反向传播累计),(P(s,a)) 为策略网络输出的先验概率(引导搜索向高概率动作倾斜),(N(s,a)) 为动作 (a) 的访问次数,(c{puct}) 为探索常数(平衡开发与利用),与传统UCT相比,先验概率 (P(s,a)) 的引入使搜索更倾向于“合理”的动作,避免在低概率动作上浪费计算资源。
(图片来源网络,侵删) -
扩展(Expansion):若叶节点 (s) 不是终局节点,则调用策略网络生成先验概率分布 (P(s,\cdot)),并创建 (k) 个子节点((k) 为合法动作数,实际中会过滤掉低概率动作以节省计算),每个子节点对应一个新局面 (s'),并初始化其访问次数 (N(s',a)=0) 和动作价值 (Q(s',a)=0)。
-
模拟(Simulation):传统MCTS在此步进行随机模拟至终局,但AlphaGo直接调用价值网络评估叶节点 (s) 的胜率 (V(s)),替代随机模拟结果,这一步骤将模拟时间从毫秒级降至微秒级,且评估准确率远高于随机模拟。
-
反向传播(Backpropagation):将模拟结果 (V(s)) 沿搜索树路径反向传播,更新路径上所有节点的访问次数 (N(s,a)) 和动作价值 (Q(s,a)):
[ N(s,a) \leftarrow N(s,a) + 1, \quad Q(s,a) \leftarrow Q(s,a) + \frac{V(s) - Q(s,a)}{N(s,a)} ]
传播完成后,选择根节点下访问次数最多的动作作为最终落子选择。
MCTS的效率优化
AlphaGo对MCTS的优化不仅限于神经网络替代,还包括以下关键技术:
- 虚拟损耗(Virtual Loss):在并行搜索时,为避免多个线程重复探索同一节点,引入虚拟损耗机制:当某个线程开始探索节点 (s) 的动作 (a) 时,临时增加 (N(s,a)) 和 (Q(s,a)) 的“虚拟值”,使其他线程倾向于选择其他动作,探索完成后,再反向传播真实结果,修正虚拟损耗的影响,这一技术使并行搜索效率提升3-5倍。
- 动作剪枝(Action Pruning):策略网络输出的361个动作中,仅保留概率最高的Top-K(如K=10)动作进行扩展,忽略低概率动作(概率低于10^-6的动作直接过滤),实验表明,剪枝后MCTS的搜索速度提升10倍以上,且对最终决策准确率影响极小。
训练策略:从模仿学习到自我超越
AlphaGo的训练分为三个阶段,每个阶段针对不同目标优化网络性能,最终实现从“模仿人类”到“超越人类”的跨越。
监督学习(SL)训练策略网络
目标:让策略网络模仿人类顶尖棋手的落子模式,快速学习围棋的基本规则和常见战术。
- 数据来源:KGS围棋服务器上的约1600万步人类对弈棋局,筛选出6段以上棋手的棋局作为训练数据。
- 网络结构:13层CNN,输入为19×19×17的特征平面(包括当前落子颜色、历史落子位置、气、禁手等信息),输出为361维概率向量。
- 训练目标:最小化交叉熵损失函数:
[ \mathcal{L}{SL} = -\sum{a} p{\text{data}}(a) \log p{\theta}(s,a) ]
(p{\text{data}}(a)) 为人类棋手落子的真实概率(通过Softmax归一化落子频次得到),(p{\theta}(s,a)) 为策略网络预测的概率。 - 效果:训练后策略网络的落子准确率达57%,相当于业余顶尖棋手的水平,但与人类职业九段仍有差距。
强化学习(RL)优化策略网络
目标:通过自我对弈,让策略网络超越人类棋手的局限,探索更优的下法。
- 训练方法:采用“策略梯度算法”(Policy Gradient),将监督学习得到的策略网络 (p{\theta{SL}}(s,a)) 作为初始策略,通过自我对弈生成大量棋局 ((s_1, a_1, s_2, a_2, \dots, sT)),以棋局胜负 (z)(+1表示胜,-1表示负)作为奖励信号,优化策略网络参数 (\theta):
[ \mathcal{L}{RL}(\theta) = -\mathbb{E}z \left[ z \cdot \log p{\theta}(sT | s{1:T}, a_{1:T-1}) \right] ]
(sT) 为终局状态,(p{\theta}(sT | s{1:T}, a_{1:T-1})) 为从初始状态 (s_1) 到终局 (s_T) 的联合概率(通过链式法则展开为各步动作概率的乘积)。 - 自我对弈流程:使用当前最优策略网络进行自我对弈,每走一步以小概率(如ε=0.25)添加狄利克雷噪声(Dirichlet noise)到动作概率分布中,增加探索多样性;对弈结束后,用棋局胜负更新网络参数。
- 效果:强化学习后的策略网络(称为“SL+RL策略网络”)落子准确率提升至67%,击败了监督学习版本,且开始出现人类棋手未曾使用的创新下法(如“点三三”等)。
强化学习训练价值网络
目标:让价值网络准确评估任意局面的胜率,为MCTS提供高效的局面评估能力。
- 数据来源:使用SL+RL策略网络进行自我对弈,生成约3000万局棋局,每局棋局采样100个中间局面(均匀分布在早、中、晚盘),并记录当前玩家的胜率标签 (z)(终局胜负)。
- 网络结构:与策略网络类似的13层CNN,但输出层为单一Sigmoid单元,输出胜率预测值 (v_{\phi}(s))。
- 训练目标:最小化均方误差损失函数:
[ \mathcal{L}{V}(\phi) = \mathbb{E} \left[ (z - v{\phi}(s))^2 \right] ] - 效果:训练后价值网络的预测准确率达67%(与人类职业九段评估水平相当),且评估结果与实际胜率的相关系数达0.85。
关键技术总结与演进
AlphaGo的关键技术可总结为“神经网络+MCTS+多阶段训练”三位一体,其演进路径体现了从“数据驱动”到“自我进化”的AI范式突破,下表对比了AlphaGo不同版本的核心技术差异:
| 版本 | 策略网络训练方式 | 价值网络训练方式 | 关键改进 | 战绩 |
|---|---|---|---|---|
| AlphaGo Fan | 监督学习(人类棋局) | 监督学习+强化学习 | 首次引入CNN策略网络 | 5:0击败欧洲冠军樊麾二段 |
| AlphaGo Lee | 监督学习+强化学习 | 强化学习(自我对弈) | 引入价值网络,MCTS与神经网络融合 | 4:1击败世界冠军李世石九段 |
| AlphaGo Zero | 纯强化学习(从零开始) | 纯强化学习(自我对弈) | 去除人类数据,双网络联合训练 | 100:0击败AlphaGo Lee版本 |
| AlphaMaster | 纯强化学习 | 纯强化学习 | 分布式训练,每秒可模拟2980万步棋局 | 60:0击败中日韩顶尖棋手 |
从AlphaGo到AlphaGo Zero,技术的核心演进在于“摆脱人类依赖”:AlphaGo Fan需要人类棋局数据作为初始知识,AlphaGo Lee通过自我对弈强化但仍依赖监督学习初始化,而AlphaGo Zero完全从随机参数开始,通过纯强化学习(策略网络与价值网络共享卷积层参数,称为“双头网络”)实现自我对弈训练,仅用3天时间即超越AlphaGo Lee版本,展现了AI自我进化的强大潜力。
相关问答FAQs
Q1:AlphaGo的策略网络和价值网络有什么区别?为什么需要两个网络?
A1:策略网络和价值网络的区别在于功能定位:策略网络负责“选择下一步”,输出当前局面下各合法落子点的概率分布,侧重于“局部动作选择”;价值网络负责“评估当前局面”,输出当前局面的胜率预测,侧重于“全局胜负判断”,二者缺一不可:策略网络为MCTS提供先验概率,缩小搜索范围,避免盲目探索;价值网络替代传统MCTS的低效随机模拟,实现快速局面评估,仅使用策略网络会导致搜索深度不足,仅使用价值网络则缺乏动作选择的指导,二者协同才能实现高效、精准的决策。
Q2:AlphaGo的蒙特卡洛树搜索与传统MCTS相比有哪些核心改进?
A2:传统MCTS主要依赖随机模拟(rollout)至终局来评估局面,计算效率低且评估准确率差;AlphaGo的MCTS通过以下核心改进实现突破:① 引入策略网络生成先验概率,引导搜索向高概率动作倾斜,避免在低价值动作上浪费资源;② 用价值网络替代随机模拟,直接评估当前局面胜率,将模拟时间从毫秒级降至微秒级,且评估准确率提升2倍以上;③ 引入虚拟损耗和动作剪枝技术,提升并行搜索效率,使搜索速度提升10倍以上,这些改进使MCTS从“暴力搜索”升级为“智能搜索”,适应了围棋高复杂度的决策需求。
