深圳综合改革试点

保存时间:2026/4/2 18:01:24


围棋与 KataGo 小型化
内容由豆包 AI 生成
介绍一下围棋, KataGo 是否可以小型化?

围棋介绍

  • 起源与发展:围棋起源于中国古代,传说起源距今有4000余年历史。春秋战国时开始有记载,历经秦汉、魏晋南北朝、隋唐五代等时期的发展,在两宋时期极为兴盛,明清名家辈出。1949年后被列为体育竞赛项目,2008年入选中国《国家级非物质文化遗产代表性项目名录》,2010年成为亚运会正式比赛项目。
  • 规则:使用格状棋盘及黑白二色棋子对弈。棋盘纵横各19条线,形成361个交叉点。棋子下在交叉点上,黑先白后,交替行棋,落子后不能移动。4枚同色棋子把另一色棋子四周包围,被包围棋子无“气”则被“吃”掉。终局以围地多者为胜,因黑方有先手优势,局终时黑方要贴目给白方。
  • 文化内涵:围棋蕴含着中华文化丰富内涵,是“琴棋书画”四大文化之一。其棋理博大精深,融合了科学、艺术和竞技,体现了兵家、道家等诸多思想理念,具有发展智力、培养意志品质等功能。
  • 主要赛事:有富士通杯世界围棋锦标赛、天府杯世界职业围棋锦标赛、三星杯世界围棋公开赛等。

KataGo是否可以小型化

KataGo可以小型化。有博主分享过精减版的KataGo教程,其大小才168M,能在配置不高的电脑上正常运行。
从技术角度来看,AI模型小型化和优化是当下的趋势,像知识蒸馏等技术可将大模型的性能压缩到小型模型中,同时保持较高准确性。KataGo有可能利用类似技术实现小型化,而且它支持从7x7到19x19的板尺寸,在9x9和13x13棋盘上表现出色,这也为其小型化提供了一定的支持。
相关视频
KataGo小型化有什么具体的应用场景?
KataGo小型化后有以下具体应用场景:
  • 个人围棋学习与训练:可在配置不高的个人电脑、平板电脑甚至手机上安装,围棋爱好者能随时随地与AI对弈,根据自己的水平调整难度,提升棋艺。还能利用其分析功能,对自己的棋局进行复盘,找出失误和可改进之处。
  • 围棋教学辅助:教师在课堂上可以通过小型化的KataGo,快速展示不同棋步的变化和优劣,让学生更直观地理解围棋策略和技巧。对于围棋培训机构来说,无需强大的硬件支持,就能为学生提供专业的AI教学服务,降低教学成本。
  • 围棋研究:研究人员可以在自己的设备上方便地运行KataGo,进行围棋相关的学术研究,如探索新的布局、战术,分析围棋的复杂局面和可能性,推动围棋理论的发展。对于人工智能领域的研究人员,也可将其作为研究深度学习、强化学习在游戏领域应用的案例,进行算法改进和创新。
  • 便携围棋设备:可以集成到便携的围棋设备中,如智能围棋棋盘等,为用户提供更便捷的围棋体验,无需额外连接大型电脑设备。
  • 竞赛现场分析:在围棋比赛现场,小型化的KataGo可用于实时分析棋局,为观众和选手提供棋局解读和走势预测,增加比赛的观赏性和专业性。
介绍一下它有什么模块?有什么 API 吗?可以做到怎样的小型化?
KataGo主要有以下模块:
  • 神经网络模块:采用基于Transformer或ResNet的架构,以棋子位置作为输入,不输入人工特征,通过大量围棋对弈数据训练,能理解和评估棋盘局势,输出任意局面下双方的胜率和下一手棋落在各个合法位置的概率分布。
  • 蒙特卡罗树搜索(MCTS)模块:以当前局面为根节点构建搜索树,每个节点代表一种局面,每条边代表一手棋。搜索过程重复选择、扩展、模拟、反向传播步骤,通过模拟多次随机游戏探索最佳下一步走法,与神经网络协同工作,由神经网络提供直觉胜率和先验概率,以指导搜索方向。
  • 分析引擎模块:支持基于JSON的分析引擎,能有效地批处理多个游戏评估,比GTP更易用,可用于分析棋局、提供走法建议等。
  • 配置模块:通过配置文件对KataGo进行参数设置,如线程数、辞职阈值、思考行为、效用函数等,还可选择使用的后端(OpenCL、CUDA、TensorRT、Eigen)以及神经网络模型等,以优化其性能和资源使用。
KataGo有API。例如KataGui通过REST API与KataGo对抗,能部署到Heroku,可帮助用户使用KataGo学习,具有完整的Go Server基本功能,适用于移动设备,用户可通过Web浏览器使用。
关于KataGo的小型化,从硬件角度来看,若使用CPU运行,可选择Eigen后端,对于不支持AVX2的老旧或低端CPU,可使用不带AVX2的Eigen;若有GPU,可选择OpenCL后端,对于中低端GPU,可选用20 - block的神经网络模型,以减少计算量和内存占用。从算法角度来看,采用知识蒸馏等技术有可能将大模型的性能压缩到小型模型中,不过目前没有公开资料明确表明KataGo在这方面的具体应用和效果。通过这些方式,KataGo可在一定程度上实现小型化,以适应不同硬件条件和应用场景的需求。
相关视频
这些模块是必须的还是选用的?哪些是必须的?
KataGo 的神经网络模块和蒙特卡罗树搜索(MCTS)模块是必须的
KataGo 采用类似 AlphaGo Zero 的蒙特卡洛树搜索加神经网络工作流。神经网络模块可理解和评估棋盘局势,输出胜率和下一手棋的概率分布。蒙特卡罗树搜索模块以当前局面为根节点构建搜索树,通过重复选择、扩展、模拟、反向传播步骤,探索最佳下一步走法。二者相互协作,神经网络为搜索算法提供直觉胜率和先验概率,以指导搜索方向,是 KataGo 实现围棋对弈和决策的核心部分。
分析引擎模块和配置模块是可选的。分析引擎模块可用于分析棋局、提供走法建议等,若用户只需要 KataGo 进行对弈,不进行深入的棋局分析,该模块则不是必需的。配置模块用于对 KataGo 进行参数设置,以优化其性能和资源使用,但即使不进行复杂配置,KataGo 也能以默认设置运行。
那么 KataGo 只配备必须的蒙特卡罗神经网络模模块,最小能够做到多少?我指的是说它的这个最小安装。有多大文件?
目前没有确切资料表明只配备蒙特卡罗神经网络模块的 KataGo 最小安装文件大小。
不过,有博主分享的精减版 KataGo 教程中,其大小为 168M。但这并非单纯只包含蒙特卡罗神经网络模块,而是一个能在配置不高的电脑上正常运行的精简版本,其中可能还包含了一些其他必要的运行组件和默认配置文件等。
KataGo 的安装文件大小会受到多种因素影响,如选用的后端(OpenCL、CUDA、TensorRT、Eigen 等)、神经网络模型的大小和复杂度、是否包含额外的分析工具或图形界面等。如果仅考虑运行核心的蒙特卡罗神经网络模块相关功能,理论上可以通过一些优化手段进一步减小文件大小,但具体能达到多少难以准确预估。
参考 11 篇资料
KataGo的安装文件可以从哪些渠道获取?
只安装KataGo的神经网络模块需要哪些步骤?