chessmate-positions
收藏资源简介:
ChessMate Positions 是一个包含国际象棋局面及其评估标签的数据集,主要用于监督蒸馏 ChessMate 策略/价值网络。该数据集存储框架无关的象棋事实,包括FEN、UCI走法、厘兵/将死分数等,而具体的棋盘编码和策略索引在训练时由 ChessMate 的象棋核心计算。数据集包含四个配置:default(约70.2万个样本,v4训练集,阶段平衡,使用Stockfish深度18多PV策略)、ood(约4000个样本,分布外评估集,用于衡量泛化能力)、v3(约5万个样本,历史版本标签)和 lc0_v7(约250万个样本,使用lc0教师模型标注,包含完整策略分布和WDL,仅含中残局)。每个样本包含局面信息(fen、side_to_move、fullmove)、最佳走法(best_move)、多PV走法列表(multipv,包含走法、厘兵评估、将死评估)、策略深度、价值评估(value_cp、value_mate、value_depth,白方视角)以及数据来源。lc0_v7配置额外包含策略分布(policy)和胜平负概率(wdl),其评估值编码方式与Stockfish不同。数据来源于Lichess游戏深度Stockfish评估、Lichess谜题FEN以及引擎自对弈,策略标签由Stockfish多PV计算生成。数据集适用于表格回归任务,如象棋AI的策略和价值网络训练。
ChessMate Positions is a dataset containing chess positions and their evaluation labels, primarily used for supervised distillation of ChessMate policy/value networks. It stores framework-agnostic chess facts, including FEN, UCI moves, centipawn/mate scores, etc., while specific board encodings and policy indices are computed by ChessMates chess core during training. The dataset includes four configurations: default (approximately 702,000 samples, v4 training set, phase-balanced, using Stockfish depth 18 multiPV policy), ood (approximately 4,000 samples, out-of-distribution evaluation set for measuring generalization), v3 (approximately 50,000 samples, historical version labels), and lc0_v7 (approximately 2.5 million samples, annotated with the lc0 teacher model, containing full policy distribution and WDL, only mid and endgames). Each sample contains position information (fen, side_to_move, fullmove), best move (best_move), multiPV move list (multipv, including moves, centipawn evaluation, mate evaluation), policy depth, value evaluation (value_cp, value_mate, value_depth, from whites perspective), and data source. The lc0_v7 configuration additionally includes policy distribution (policy) and win-draw-loss probabilities (wdl), with evaluation value encoding differing from Stockfish. Data sources include deep Stockfish evaluations of Lichess games, Lichess puzzle FENs, and engine self-play, with policy labels generated by Stockfish multiPV calculations. The dataset is suitable for tabular regression tasks, such as training policy and value networks for chess AI.
数据集概述
数据集名称: ChessMate Positions (Stockfish-labeled policy/value)
许可证: CC-BY-4.0
任务类别: 表格回归、其他(国际象棋相关)
标签: 国际象棋、Stockfish、蒸馏、AlphaZero
数据集大小: 1M < N < 10M
数据集介绍: 包含带有 Stockfish 策略和价值标签 的国际象棋局面,用于对 ChessMate 策略/价值网络进行监督蒸馏。该数据集仅存储与框架无关的国际象棋事实:FEN、UCI 走法、分值/将杀分数。8×8×22 平面编码和 4096 策略索引在 ChessMate 的国际象棋核心训练时计算,因此数据不包含特定引擎的编码。
配置与数据划分
数据集提供四个配置,数据以 Parquet 格式存储:
| 配置名称 | 数据行数 | 说明 |
|---|---|---|
default |
~702k | v4 训练集:阶段平衡(约中局/残局 + 开局库通过),Stockfish 深度18、多PV-8 策略。 |
ood |
~4k | 分布外(OOD) 评估集(引擎自对弈开局;VQ-444 D4),与 default 不相交,用于衡量分布外的泛化能力。 |
v3 |
~50k | 早期(v3 时期)的标签运行数据,保留历史。 |
lc0_v7 |
2.5M | lc0 教师 标签(完整策略分布 + WDL),VQ-497 规模扩大。⚠️ 仅包含中局/残局(0% 开局——流式源不携带开局;在训练可发布网络前需添加开局通过)。 |
加载示例: python from datasets import load_dataset ds = load_dataset("victorqueiroz/chessmate-positions") # 默认(v4 训练集) ood = load_dataset("victorqueiroz/chessmate-positions", "ood") # OOD 评估集
数据模式(Schema)
通用列:
fen: 局面 FEN 字符串side_to_move: 轮到走棋方fullmove: 完整步数best_move: 最佳走法(UCI 格式)multipv: 多PV列表,每项包含{move, cp, mate},相对于轮到走棋方(STM-POV)policy_depth: 策略搜索深度achieved_depth: 达到的搜索深度policy_multipv: 策略多PV数量value_cp: 价值的分值(白方视角)value_mate: 价值的将杀分数value_depth: 价值搜索深度source: 数据来源
lc0_v7 配置额外列及不同编码:
- 额外列:
policy(完整 lc0 策略分布,列表形式:{move, prob});wdl([胜, 和, 负],STM-POV)。 - 编码差异:
multipv[i].cp不是分值评估,而是将 lc0 先验编码为cp_i = SOFT_TEMP·(ln p_i - ln p_max),softmax(cp / SOFT_TEMP)可再现 lc0 策略。最佳走法的 cp 始终为 0(作为参考)。使用 Stockfish 方式审计value_cp与multipv[0].cp的相关性将看到常数 0,并得出虚假失败——检查不适用于此配置。value_cp是 lc0 的 WDL 映射为白方视角的分值:cp = VALUE_SCALE·atanh(w-l)。
数据来源与生成
- 局面和携带的价值评估: 采样自
mateuszgrzyb/lichess-stockfish-normalized(Lichess 对局,深度 Stockfish 价值评估),以及用于战术片段的 Lichess 谜题 FEN 和用于 OOD 的引擎自对弈。 - 策略标签(
best_move,multipv): 由 Stockfish 在policy_depth使用多PV模式重新计算。 - 生成脚本: ChessMate 仓库中的
pretrain/hf/label_positions.py(去重 + 阶段平衡 + 战术/OOD 通过)。
许可与归属
CC-BY-4.0。本数据集是 mateuszgrzyb/lichess-stockfish-normalized(CC-BY-4.0——需注明归属)和 Lichess 开放数据(CC0)的衍生作品。新计算的标签由 Stockfish 生成(GPL 引擎;其走法/评估输出不将 GPL 应用于此数据)。使用本数据集时,请注明 mateuszgrzyb/lichess-stockfish-normalized 和 Lichess。




