KataGo训练历史与技术演进深度解析
2026-02-04 04:02:56作者:羿妍玫Ivan
项目概述
KataGo是一个基于深度学习技术的开源围棋AI项目,采用自我对弈训练方法不断提升棋力。该项目在训练过程中经历了多个重要阶段,每个阶段都带来了显著的性能提升和功能增强。
当前训练状态(2024年更新)
KataGo目前正在进行公开分布式训练运行"kata1",这一训练从g170运行的峰值状态继续发展,已经取得了一定程度的棋力提升。在计算资源受限的情况下,KataGo仍能以80%-90%的胜率击败多个经典围棋AI对手。
历史训练阶段详解
第三次主要训练运行(g170)
2019年12月至2020年6月进行的g170运行是KataGo的第三次重大训练,历时约5个月,取得了突破性进展:
- 性能突破:仅用12-14天就超越了之前19天的g104运行成果
- 最终棋力:比前一次运行提升了700Elo以上
- 新增功能:
- 支持日本规则
- 更强的让子棋能力
- 更精确的分数估算
神经网络架构演进
g170运行采用了多种神经网络架构:
- 小型网络:10块网络几乎达到之前15块网络的强度
- 中型网络:15块网络接近ELFv2(20块网络)的水平
- 大型网络:20/30/40块网络提供了顶尖棋力
对于硬件资源有限的用户,小型网络提供了很好的性能/资源平衡。
训练资源配置
- GPU使用:大部分时间使用46块GPU(40块用于自对弈,4块用于训练,2块用于游戏测试)
- 训练效率:前14天仅用28块GPU就超越了之前运行的成果
技术特点
g170运行前117天遵循"半零"训练标准:
- 使用游戏特定输入特征和辅助训练目标
- 无外部数据使用
- 仅通过高层超参数调整训练过程
后40天开始尝试使用外部数据的实验性方法。
与其他围棋AI的对比
g170运行的最终网络在各种测试条件下显著强于其他主要开源围棋AI:
- 标准19x19棋盘:显著超越Leela Zero最强的40块网络
- 9x9小棋盘:在CGOS排名赛中表现优异,使用单块V100 GPU对战专门训练的9x9 AI取得接近50%胜率
早期训练运行
第二次主要运行(g104)
2019年5-6月进行,特点包括:
- 仅用3.5天就超越第一次运行的成果
- 19天后达到的最终强度略强于LZ-ELFv2
- 20块网络在访问次数相当时达到约LZ200的水平
第一次主要运行(g65)
2019年2月进行,特点包括:
- 7天训练达到接近LZ130的强度
- 最高使用35块V100 GPU
- 成果被纳入KataGo研究论文的早期版本
技术演进图表分析
训练效率对比图
图表显示KataGo在训练效率上显著优于其他围棋AI:
- X轴:自对弈计算量(对数尺度)
- Y轴:相对Elo评分
- 曲线显示KataGo以更少的计算资源获得更高的棋力提升
g170运行进展图
详细展示了157天训练过程中的Elo提升:
- 前117天为稳定提升阶段
- 后40天包含实验性调整
- 学习率下降带来明显的性能跳跃
技术要点总结
- 训练效率:通过架构和训练方法改进,后续运行的训练效率比早期提升1.5-2倍
- 网络架构:不同规模的网络满足不同硬件需求
- 多规则支持:增加了对日本规则的支持
- 评估能力:提升了分数估算的准确性
对开发者的启示
KataGo的训练历史展示了几个关键的技术演进方向:
- 训练方法优化比单纯增加计算资源更能提升效率
- 网络架构创新可以在减少参数量的同时保持性能
- 辅助训练目标对提升AI的理解能力至关重要
- 渐进式改进比激进变革更能带来稳定的性能提升
这些经验对于开发其他棋类AI或类似的基于自我对弈学习的系统具有重要参考价值。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0190
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0113
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
omega-aiOmega-AI:基于java打造的深度学习框架,帮助你快速搭建神经网络,实现模型推理与训练,引擎支持自动求导,多线程与GPU运算,GPU支持CUDA,CUDNN。Java04
llm-universe本项目是一个面向小白开发者的大模型应用开发教程,在线阅读地址:https://datawhalechina.github.io/llm-universe/Jupyter Notebook08
热门内容推荐
项目优选
收起
deepin linux kernel
C
32
16
暂无描述
Dockerfile
759
4.94 K
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed.
Get Started
Rust
1.78 K
188
暂无简介
Dart
1 K
259
Ascend Extension for PyTorch
Python
716
866
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
854
1.9 K
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.07 K
1.09 K
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.72 K
1.02 K
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
674
1.32 K
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
454
438