本文基于最新开源的“超大规模比特币交易图数据集”,为研究人员、风控工程师与区块链开发者提供从数据结构到前沿模型的全景式解读。核心关键词随篇自然分布,读完即可上手实验与落地。
速览:为什么这份比特币交易图前所未有
- 体量空前:区块链前 70 万区块全部囊括——2.52 亿节点、7.86 亿边、6.7 亿笔交易,时间跨度近 13 年。
双重标注:
- 3.3 万个节点按实体类型打标(交易所、矿池、赌博平台、勒索软件等)。
- 10 万个比特币地址给出具体实体名称。
- 带时间戳:节点与边均精确到区块高度,支持因果关系与时序演化研究。
- 配套论坛文本:同步附带 1,406 万条 Bitcointalk 帖文,可用作文本辅助特征。
- 即用基准:已跑通 GCN、GraphSAGE、GAT、GIN 与 Gradient Boosting 五大模型,跑分一键复现。
数据集怎么来?三大步骤一次看懂
1. 原始区块链解析
- 工具链:官方 Bitcoin Core 全节点 + 自研解析脚本。
- 范围:创世区块到第 700,000 区块,覆盖 100% 历史 UTXO。
- 文件格式:解析后的交易输入/输出直接映射到本地 PostgreSQL。
2. 节点聚类:从脚本到真实实体
比特币采用“锁定脚本”控制资产,同一实体往往拥有多组脚本。我们复用已被学界广泛验证的启发式规则 bundle,把同控地址聚成 2.52 亿个 实体簇,每个簇即为图的单一节点。
3. 边构建:价值流向精准可溯
对每交易进行净额结算:
净接收值 = Σ输出值 - Σ输入值- 若净接收 > 0 → 收件人(recipient)。
- 若净接收 < 0 → 付款人(sender)。
以此规则在节点间建立有向加权边,权重等于流转价值。
❗CoinJoin、彩色币等特殊交易被显式剔除,避免干扰正常资金流可视化。
标注段位:实体类型一网打尽
| 主要实体类别 | 示例场景 | 地址示例量级 |
|---|---|---|
| Exchange | 中心化交易所充值地址 | 4.1 万 |
| Mining | 矿池收益分账地址 | 0.5 万 |
| Gambling | 比特币在线赌场 | 1.8 万 |
| Ransomware | 已曝光的勒索地址 | 0.2 万 |
| Faucet | 免费领取比特币站点 | 0.9 万 |
| Individual | 普通用户个人地址 | 2 万 |
标注路径
- Bitcointalk 爬楼:使用正则 + GPT-4o-mini 自动提取“充值地址”“提现 txid”等关键字段。
- 多重佐证:结合 CoinMarketCap 公布的交易所冷/热钱包、美国 OFAC 制裁名单以及公开学术库勒索地址。
- 消歧合并:出现冲突标签的实体簇直接标为“未分类”,减少噪音。
模型竞赛:谁的实体识别最强
特征工程
- 静态特征:出入度、首末次区块差值、在链时长、平均转账额度(USD)。
- 动态特征:与邻居转账比率的平均值、活动频率随时间衰减系数。
- 数值处理:幂律分布导致极大值,先 log 再 5–95 分位归一化,训练更稳。
训练细节
- 框架:PyTorch Geometric + Sklearn Gradient Boosting。
- 采样策略:二阶邻居,每阶 10/5 节点就能覆盖主要结构。
- 类别均衡:上/下采样确保最少 300、最多 1500 样本。
成绩一览
| 模型 | Macro-F1 | 最大优势 |
|---|---|---|
| GAT | 0.64 | 注意力机制捕获复杂邻居交互,Mining/Ponzi 预测极佳 |
| GIN | 0.63 | 表达能力最强,Bet 实体最高 0.72 F1 |
| GraphSAGE | 0.61 | 归纳式框架,新节点也能实时推断 |
| GCN | 0.60 | 轻量高速,普通笔记本即可训练 |
| GBC | 0.57 | 不使用邻居结构,仅靠特征即可完成基线 |
FAQ:实践中高频疑问一次说清
Q1:存储压力大吗?
结点表 ~40 GB、边表 ~80 GB;建议 PostgreSQL 独享 SSD,并按官方推荐的 1 GB shared_buffers、4 并行 worker 起步。
Q2:如何快速获得某个节点的局部子图?
使用内建采样脚本 neigh_sample.py,输入节点 ID + 采样深度即可返回可加载的 csv 子图。
Q3:节点标签出现更新怎么办?
标注数据以版本号区分,可借助 GitHub Actions 每晚自动增量爬 Bitcointalk 并回写,无需全量重跑。
Q4:模型推理延迟高吗?
走一步 2-hop 采样生成子图平均 <20 ms(RTX-3060);在线服务可把子图缓存 Redis,TPS 成千级。
Q5:数据集合规吗?
所有地址与交易均源自公开区块链,仅整理 & 规范化,符合各国监管对“链上公开信息”的使用要求。
Q6:可否拓展到以太坊/USDT?
交易流模型通用,但脚本聚类逻辑需要替换为 EOA/合约识别,目前已有团队基于本仓库做适配,敬请期待 2.0 版本。
从实验到实战:五大落地场景
- 风控引擎升级
将模型离线打分结果注入交易所风控,勒索地址、混币服务实时拦截。 - 宏观市场监控
基于时序图谱监测矿池→交易所的资金涌入,抢先捕捉抛压前信号。 - 学术前沿拓展
结合论坛文本情绪 + 资金链路,完成跨模态因果关系研究(样本量足,统计显著性高)。 - 监管沙盒原型
政府侧利用标注实体、资金流与真实身份映照,构建反洗钱知识图谱原型。 - 通用图预训练
先在比特币大图无监督训练,再微调至支付网络、发票网络,效果普遍优于随机初始化。
一键重启:本地部署 checklist
- 下载地址:
git clone https://github.com/hugoschnoering2/BTCGraphLabeling - 安装依赖:
pip install -r requirements.txt && createdb btcgraph - 导入数据:
pg_restore -j 8 -Fd -O -U postgres -d btcgraph dataset/tx_graph.dump - 运行 demo:
python examples/label_predict.py --node_id 123456 --neighbors 5 --depth 2
结语
这套比特币交易图数据集首次把 真实实体、链上资金流与社区行为文本 三者耦合,打通了研究、风控与合规的整条价值链。
无论你是链上数据科学家、量化交易员还是合规产品经理,都能基于它建立行业级洞察。现在就打开仓库,跑一段子图采样,链上资金流世界的冰山将从你眼前展开。