比特币交易数据的时序异构图建模及其机器学习应用

比特币交易数据的时序异构图建模及其机器学习应用

摘要 (Abstract)

自 2009 年创世区块诞生以来,比特币网络已处理超过 10.8 亿笔交易,涉及累计超过 87.2 亿比特币的价值转移,为机器学习(ML)研究提供了巨大的潜力。然而,比特币的假名机制及其固有的未花费交易输出(UTXO)模型导致资金流向模糊,使得这些数据在很大程度上难以被机器学习社区直接利用。为解决这一问题,我们构建了一个与机器学习兼容的时序异构图模型,旨在通过重建资金流 (reconstructing the flow of funds) 来揭示比特币的经济拓扑结构。该图完整覆盖了截至区块 863,000 的全部交易历史,包含超过 24 亿个节点和 397.2 亿条边。此外,我们还提供了一套全面的工具包,包括定制化的采样方法、用于加载和分析图数据的工具以及即用型数据库快照。这一数据集和工具包旨在赋能机器学习社区,使其能够规模化地研究比特币复杂的生态系统,从而推动在异常检测、实体分析、市场分析以及大规模图机器学习基准测试等领域的应用进展。

1. 引言 (引言)

比特币的问世引入了一种去中心化的公共账本,其发行、所有权安全、双花防治及价值转移均由密码学规则保障。自 2009 年诞生以来,截至区块 863,000,该账本已公开记录了超过 16 年的真实世界经济活动,涵盖了超过 10.8 亿笔交易和 13.2 亿个独立地址,累计转移价值超过 87.2 亿比特币。这使其成为机器学习研究领域一个独一-无二的宝贵资源。

然而,尽管潜力巨大,比特币的设计,特别是其未花费交易输出(UTXO)模型和假名机制,为机器学习应用带来了严峻挑战。在 UTXO 模型中,资金被表示为与原子化交易输出相关联的价值,只有预期的接收者才能花费。这与基于账户的系统不同,导致我们缺乏一个易于获取的实体状态 (readily accessible entity state),例如账户余额或交易对手。重建单个实体(如个人或机构)的状态需要跨越多个区块追踪和聚合大量的 UTXO。假名机制进一步加剧了这一复杂性:交易仅与密码学地址相关联,而单个实体通常控制着大量地址。因此,构建可靠的实体级特征 (reliable entity-level features) 成为一项核心挑战。此外,诸如 CoinJoin 等隐私增强技术被有意设计用来混淆资金来源,使得实体解析变得更加困难。因此,要有效地将机器学习应用于比特币账本,必须进行专门的特征工程。

为应对这些挑战,我们提出将比特币的交易历史建模为一个时序异构图。该模型通过显式表示资金流向和交易拓扑结构(即交易的输入输出关系以及区块内的交易集合),旨在捕获实体的状态演变。本文的结构安排如下:第二节将对比特币的链上指标进行统计分析,为后续的图模型提供背景洞察;第三节详细阐述从区块链到图的转换方法;第四节量化分析图的结构特性;第五节探讨其潜在应用与建模考量;最后,我们将讨论研究的局限性、未来方向和伦理考量。这些分析为理解和应用我们构建的图模型奠定了坚实的基础。

2. 比特币链上指标的统计分析 (Statistical Profiling of Bitcoin’s On-chain Metrics)

在构建图模型之前,对核心的链上指标进行统计分析至关重要。这不仅能揭示比特币生态系统的宏观动态和演化趋势,也为后续图模型的结构设计和应用解释提供了基础背景和深入洞察。本节所有分析均基于截至区块 863,000 的数据。

区块生成动态

比特币协议通过动态调整挖矿难度,确保区块大约每 10 分钟生成一次(均值为 µ = 9.59 ± 13.45 分钟)。每个区块的挖矿奖励由两部分构成:新铸造的比特币和该区块内所有交易支付的手续费。最初,每个区块奖励 50 BTC,该奖励大约每四年(210,000 个区块)减半一次。截至分析时点,总计约有 1976 万 BTC 被铸造出来。值得注意的是,在整个历史中,存在总计 40.55 BTC 的挖矿奖励因各种原因未被矿工领取,这些奖励已永久无法花费。

交易宏观特征

比特币网络已记录超过 10.8 亿笔交易(Txs),累计转账价值超过 8.72 亿 BTC,涉及超过 13.2 亿个独立地址。每个区块都包含一笔特殊的 “Coinbase 交易”,用于矿工领取挖矿奖励。早期,这类交易的输出(TxOut)数量较多(µ = 4.07 ± 23.87),通常与矿池直接分配收益有关,但这一趋势逐渐减弱,后期平均输出数量降至 µ = 1.13 ± 0.0。此外,分析显示有 10.4% 的区块是“空区块”,即除了 Coinbase 交易外不包含任何其他交易。

交易输出(TxOut)的消费模式

已花费 TxOut 的“币龄”(δµ,即从创建到花费所间隔的区块数)为了解持币行为提供了窗口。新铸造的币(来自 Coinbase 交易)在被花费前必须“成熟”至少 100 个区块,其平均花费币龄为 µ = 25k ± 65k 个区块。对于非空区块中的消费行为,其模式更加多样化。我们观察到在连续的非空区块中存在三种显著的消费模式:8.02% 的情况下,连续两个区块的平均币龄 δµ 均为 0(即时花费);2.3% 的情况下,δµ = 0 后紧跟着 δµ > 0 的区块;而在 40.6% 的情况下,连续两个区块的 δµ 值均落在 1k 到 10k 的范围内,这反映了不同周期的持币和交易行为。

脚本(Script)类型的演变

比特币使用一种类似 Forth 的脚本系统作为其资金的锁定和解锁机制,而我们熟知的“地址”通常是脚本的用户友好表示。脚本类型的使用偏好随时间发生了显著变迁。早期,P2PK(Pay-to-Public-Key)脚本占主导地位;随后,P2PKH(Pay-to-Public-Key-Hash)成为最主流的选择;近年来,随着 SegWit 的激活,P2WPKH(Pay-to-Witness-Public-Key-Hash)的采用率不断增加,以提高交易效率。尽管技术在演进,但从整个区块链历史来看,P2PKH 仍然是使用最广泛的脚本类型,占所有交易输入和输出的 44.9%。

这些复杂的链上动态和实体间模糊的关系,凸显了通过结构化的图模型来表示比特币经济活动的必要性,这也正是我们下一章节将要详细阐述的核心工作。

3. 从区块链到图的转换 (Blockchain to Graph)

比特币原生的 UTXO 模型以交易为中心,虽然保证了账本的不可篡改性和安全性,但却未能明确表示钱包(即实体)层面的活动。这使得执行诸如资金流向分析、实体行为研究等更深层次的任务变得异常复杂。为了克服这一局限性,我们采取的核心策略是将以 UTXO 为中心的链上数据转换为以钱包(由脚本表示)为中心的图模型。这种转换使得资金的流动和实体间的交互关系得以显式化,为机器学习应用奠定了基础。

节点类型定义

我们的图模型包含四种不同类型的节点,每种节点代表了区块链上的一个核心实体。

节点标签 (Node Label) 描述 (Description)
Coinbase 一个在整个图中唯一的单例节点,用于对 Coinbase 交易进行建模。该节点没有入边,其出边连接到代表挖矿活动的其他节点。
Script 代表一个由其地址唯一标识的脚本。交易的输入(TxIn)和输出(TxOut)都是脚本,因此脚本节点是资金流动的基本单元。
Transaction (Tx) 代表一笔交易,旨在促进对脚本间相关性和共享活动的学习。该节点与其相关的其他节点和边共同确保了图的完整性。
Block 作为时间锚点或“超节点”,使得模型能够捕捉长程的时间依赖性和动态变化。在不影响图完整性的前提下,可根据应用需求选择性地省略。

图的模式与边的构建逻辑

我们构建的图是一个异构、有向、时序的图,且可能包含循环。图中的边均带有区块高度作为时间戳。边的构建逻辑旨在精确地捕捉资金流动和交易结构,共包含六种核心类型:

* Mints: 从唯一的 Coinbase 节点指向矿工的 Script 节点,专门用于表示新铸造价值的产生。
* Transfers: 在一笔交易的所有输入 Script 节点和所有输出 Script 节点之间构建一个完全二部图。这种设计明确地表示了所有可能的资金从发送方到接收方的流动路径。
* Fee: 从交易支付方的 Script 节点指向矿工的 Script 节点,专门用于表示已存在价值(交易费)的转移。
* Redeems: 表示资金的花费。它源自 Script 节点或 Tx 节点,指向它们所属的 Block 节点,分别代表资金的支出和输入交易的确认。
* Confirms: 表示交易被确认。它从一个 Block 节点指向其包含的 Tx 节点,标志着该交易被正式纳入区块。
* Credits: 表示资金的接收。它从一个 Block 节点指向一个接收资金的 Script 节点,代表该脚本收到的资金在该区块中得到确认。

其中,Block 和 Tx 节点扮演了**“超节点” (hypernodes)** 的关键角色。它们不仅提供了结构上下文,更重要的是,它们为图神经网络(GNN)等模型提供了时间锚点。这种结构使模型能够分析如**“时间邻居” (temporal neighbors)(由同一区块关联的脚本)和潜在的“共同所有权” (co-ownership)**(由同一交易所关联的脚本)等复杂关系。这使得模型能够学习时间依赖性和长程依赖关系,从而进行更复杂的模式识别。

数据保真度与排除规则

为了确保解析的准确性,我们的提取、转换和加载(ETL)流程直接使用 Bitcoin Core(比特币协议的参考实现)。在构建过程中,我们有意排除了以下三类数据: (a) 密码学证明(如签名),因其对多数机器学习任务的直接效用尚不明确。 (b) 零值交易。 (c) 输入和输出数量均大于 20 的复杂交易,以避免生成过于庞大的二部图。

提供的数据集与工具

为了方便社区使用,我们以两种格式提供图数据:

1. TSV 文件: 具有广泛的兼容性,便于在不同系统中使用。
2. 专门的图数据库快照: 为需要高效查询和分析的用户提供,可直接导入。

同时,我们认识到图的巨大规模带来的挑战,因此提供了一套工具,包括可配置的子图采样算法(如对 Forest Fire 算法的改编版)和用于增量更新的方法,以支持在资源有限的系统上进行分析。

在定义了图的构建方法后,我们接下来将对其宏观结构特性进行量化分析,以揭示其内在的复杂性和规模。

4. 图的结构属性 (Structural Properties of the Graph)

本节旨在从宏观层面量化分析所构建的比特币交易图的统计属性。通过揭示其规模、复杂性和内在结构,我们为后续的机器学习应用提供一个坚实的基础认知,帮助研究者理解网络的拓扑特征。

总体规模统计

该图完整编码了比特币的交易历史,其总体规模如下:

* 总节点数: >24 亿 (2,405,686,021)
* 总边数: >397.2 亿 (39,724,622,327)
* 节点类型分布:
* Script 节点: 1,318,372,665
* Transaction (Tx) 节点: 1,086,450,355
* Block 节点: 863,000
* Coinbase 节点: 1
* 主要边类型分布:
* Redeems: 13,239,336,019
* Credits: 9,640,779,047
* Transfers: 8,853,979,505
* Fee: 4,385,356,514
* Confirms: 3,601,864,107
* Mints: 3,307,135

节点的度分布 (Degree Distributions)

对 Script 节点和 Tx 节点的度分布进行深入分析,可以揭示它们在网络中扮演的不同角色。

在低度数区间,两类节点的分布表现出一定的相似性。例如,97.49% 的 Script 节点的入度(din)小于等于 10,而 98.95% 的 Tx 节点也在此区间内。这表明网络中绝大多数地址和交易的直接交互都非常有限。

然而,在分布的尾部,两者呈现出显著的差异。Script 节点的度分布表现出明显的长尾特性。其中,最大入度可达约 2.82 亿,最大出度(dout)约 3,700 万。相比之下,Tx 节点的度数则受限得多,最大入度仅约 8 千,最大出度约 1.4 万。

这种差异的根本原因在于两类节点的本质不同:

* Script 节点(地址)是可重用的。 一些高活跃度的地址,例如属于交易所或大型矿池 (exchanges or large mining pools) 的地址,会在成千上万笔交易中被反复使用,从而累积了极高的度数,形成了长尾。
* Tx 节点代表的是一次性事件。 每笔交易都是一个独特的、发生在特定区块中的事件,其输入和输出数量在协议层面受到限制,因此其度数不可能无限增长。

进一步地,从网络密度和熵值的角度看(源于 Table A.7),Script 节点网络的密度极低(5.57× 10⁻⁹),归一化香农熵也较低(Hn = 0.24),这与“少数高活跃度节点和大量低活跃度节点”的结构相符。Tx 节点网络同样呈现低密度(3.05× 10⁻⁹)和低熵(Hn = 0.21),反映了其作为独立事件的离散特性。

通过对图的静态结构进行分析,我们揭示了其内在的复杂性和异质性。接下来,我们将探讨如何利用这些结构特性,并讨论其潜在的应用和建模方法。

5. 应用与建模考量 (Applications and Modeling Considerations)

我们构建的比特币图是一个大规模、真实的经济网络,记录了超过 16 年的经济活动。它为机器学习领域开辟了广阔的应用前景。本节将探讨该图支持的三大类核心应用及其相关的建模挑战。

核心应用领域

1. 大规模图算法与模型的基准测试 该数据集的规模对现有数据科学库和图机器学习流水线的可扩展性构成了巨大挑战。例如,在执行邻域采样时,对一个高阶邻域的探索可能需要巨大的计算资源。此外,比特币网络的特性随时间发生显著变化(即时序分布漂移),这为测试模型在真实世界网络中的鲁棒性提供了一个理想的试验场。因此,该图可以作为评估图算法和模型的可扩展性与泛化能力的基准。
2. 新颖的加密货币应用 该图的结构、规模和时间跨度使其成为为比特币生态系统训练基础模型 (foundation model) 的理想选择。这样的模型可以学习链上交易模式和实体经济行为,从而赋能一系列创新应用,例如:
* 链上声誉系统: 为钱包地址生成信任分数,用于去中心化金融(DeFi)借贷等场景。
* 实时风险评估与欺诈预防: 在交易提交至网络前,评估钱包和交易的风险。
* 个性化加密货币辅助 AI 代理: 根据用户的风险偏好和链上动态,提供定制化的投资策略建议。
3. 跨学科的交叉研究 通过将该图与链下数据源相结合,可以进行更广泛的跨学科研究。例如,可以将其与市场指标(如开盘-最高-最低-收盘价 OHLC)、宏观经济公告或社交媒体情绪等数据进行同步分析。这有助于量化外部事件对加密货币生态系统的影响,从而赋能更广泛的社会经济行为研究,探索去中心化系统中的经济行为与外部世界的相互作用。

基础性挑战:实体解析 (Entity Resolution)

上述许多应用都依赖于一个基础性任务:实体解析,即识别由同一实体控制的多个脚本(地址聚类)。例如,在异常检测中,准确识别一个实体的完整资金版图至关重要。

然而,实体解析面临两大挑战。首先,隐私增强技术(如 CoinJoin)被设计用来故意混淆共同所有权。其次,交易所等服务通常会使用自己的地址来“代理”用户的交易,这为追踪真实资金流向增加了另一层模糊性。尽管已有大量研究致力于此,实体解析仍然是一个活跃的研究领域。我们提供的图模型通过支持深度邻域分析(探索多跳邻居)和与链下注释的集成,为该领域的研究提供了强大的工具和基础,有助于开发更先进的实体解析启发式方法和模型。

在探讨了广泛的应用前景后,我们同样需要正视当前研究存在的局限性,并为未来的工作指明方向。

6. 局限性与未来方向 (Limitations and Future Direction)

我们的工作为利用图机器学习分析比特币生态系统奠定了一个坚实的基础,但作为一个持续性的研究项目,它也存在一些局限性,并为未来的探索开辟了多个方向。

主要局限性

* 单一 DLT 范围: 当前的工作完全聚焦于比特币的交易数据,尚未涵盖其他分布式账本技术(DLT)生态系统。
* 缺乏链下注释: 当前的图仅包含链上可获取的原始信息。它缺乏对实体类型(如交易所、矿工、商户)、交易意图(如购买、投资、混币)或非法活动等关键的链下标签。这会限制其在监督学习分类任务中的直接应用和准确性。

未来的研究方向

* 扩展到其他 DLTs: 一个自然而然的扩展方向是将此建模范式应用到其他区块链,特别是那些包含智能合约的平台(如以太坊)。这将极大地拓宽应用范围,例如智能合约的预测或分类任务。
* 集成链下数据: 整合来自执法机构、网络安全报告和商业数据提供商的链下注释是未来增强功能的关键。虽然这些数据通常覆盖范围有限且可能存在偏差,但它们对于提高分类模型的准确性至关重要。
* 深度图分析: 我们所构建的图本身就是一个值得深入研究的对象。对其进行纵向研究,例如分析其演化模式、周期性出现的社区结构,或实体间微小但持续的资金流动,这些都足以构成独立的后续研究课题。

在审视技术局限与未来机遇的同时,我们也必须充分考虑这项研究的伦理维度,确保其应用能够负责任地进行。

7. 伦理考量 (Ethical Considerations)

在处理大规模金融交易数据时,进行审慎的伦理考量是至关重要的。本研究致力于在推动科学进步的同时,恪守数据处理的伦理准则。

数据来源与隐私保护

我们郑重声明,本研究构建的图完全基于公开可访问的比特币链上数据。这些数据天然不包含任何个人身份信息(PII)或地理位置信息。图中的实体由加密公钥的哈希值(即地址)表示,与真实世界的身份没有直接关联。在研究过程中,我们没有进行任何去匿名化尝试,也未包含任何已知的去匿名化地址。

潜在的滥用风险

尽管数据来源是公开的,但我们必须警示该数据集的潜在滥用风险。当复杂的行为模型与外部注释数据相结合时,可能被用于去匿名化假名地址或预测特定社区的行为。这种分析具有双重影响:一方面,它可以用于积极的目的,如预防欺诈和识别非法活动;另一方面,它也可能引发严重的隐私问题,甚至导致歧视性后果。

对下游用户的呼吁

我们敦促所有使用该数据集的研究者和开发者,负责任地利用这些资源。在所有后续的研究和应用中,使用者都应严格遵守最新的伦理最佳实践,充分评估其工作的社会经济影响,并采取措施保护个人隐私。

在明确了伦理边界后,我们将对全文进行总结,重申本研究的核心贡献。

8. 结论 (结论)

本文介绍了一种将完整的比特币账本编码为图的综合方法,该模型精确地描绘了从新币铸造到所有后续交易的完整资金流,同时省略了与机器学习任务不直接相关的密码学验证细节。

我们构建的图模型具有以下关键技术特性:

* 结构: 这是一个时序、异构的图,由四种不同的节点类型和六种边类型构成。所有边都通过区块高度进行时间戳注释,从而保留了交易的精确时序。
* 创新点: 模型中的 Block 和 Tx 节点被设计为上下文中心或“超节点”。这一独特设计使机器学习模型能够有效学习长程依赖关系,整合时间背景,并识别共现模式,例如分析由共同区块关联的**“时间邻居”或由共同交易所关联并暗示共同所有权**的地址。

该项目为机器学习社区提供了巨大的价值:

* 可用的数据集与工具: 我们以 TSV 文件和即用型数据库快照的形式提供图数据,并附带一套可定制的采样算法,以促进快速原型设计和模型训练。
* 真实世界的大规模基准: 该数据集编码了超过 16 年的真实经济活动,为推动经济分析、加密货币应用以及大规模图机器学习研究提供了一个重要的基准。

最后,我们展望,当该图与外部时间序列数据(如市场指标或宏观经济数据)相结合时,其在赋能跨学科研究、探索和预测更广泛的社会经济行为与趋势方面具有巨大的潜力。

参考文献 (References)

[1] Georgios Palaiokrassas, Sarah Bouraga, and Leandros Tassiulas. Machine learning on blockchain data: A systematic mapping study. Available at SSRN 4530479, 2023.

[2] Sarah Meiklejohn, Marjori Pomarole, Grant Jordan, Kirill Levchenko, Damon McCoy, Geoffrey M Voelker, and Stefan Savage. A fistful of bitcoins: characterizing payments among men with no names. In Proceedings of the 2013 conference on Internet measurement conference, pages 127–140, 2013.

[3] Elli Androulaki, Ghassan O Karame, Marc Roeschlin, Tobias Scherer, and Srdjan Capkun. Evaluating user privacy in bitcoin. In Financial Cryptography and Data Security: 17th International Conference, FC 2013, Okinawa, Japan, April 1-5, 2013, Revised Selected Papers 17, pages 34–51. Springer, 2013.

[4] Michele Spagnuolo, Federico Maggi, and Stefano Zanero. Bitiodine: Extracting intelligence from the bitcoin network. In International conference on financial cryptography and data security, pages 457–468. Springer, 2014.

[5] CoinJoin - Bitcoin Wiki. https://en.bitcoin.it/wiki/CoinJoin, 2023. [Online; accessed March 1, 2025].

[6] Barbara Drossel and Franz Schwabl. Self-organized critical forest-fire model. Physical review letters, 69(11):1629, 1992.

[7] Jure Leskovec and Christos Faloutsos. Sampling from large graphs. In Proceedings of the 12th ACM SIGKDD international conference on Knowledge discovery and data mining, pages 631–636, 2006.

[8] Mark Friedenbach Thomas Kerin. Median time-past as endpoint for lock-time calculations. https://github.com/bitcoin/bips/blob/master/bip-0113.mediawiki, 2015. [Online; accessed March 1, 2025].

[9] Script - bitcoin wiki. https://en.bitcoin.it/wiki/Script, 2025. [Online; accessed March 1, 2025].

[10] Pieter Wuille Eric Lombrozo, Johnson Lau. Segregated Witness (Consensus layer). https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki, 2015. [Online; accessed March 1, 2025].

[11] George Kappos, Haaroon Yousaf, Rainer Stütz, Sofia Rollet, Bernhard Haslhofer, and Sarah Meiklejohn. How to peel a million: Validating and expanding bitcoin clusters. In 31st usenix security symposium (usenix security 22), pages 2207–2223, 2022.

[12] Malte Möser and Arvind Narayanan. Resurrecting address clustering in bitcoin. In International Conference on Financial Cryptography and Data Security, pages 386–403. Springer, 2022.

[13] Difficulty - Bitcoin Wiki. https://en.bitcoin.it/wiki/Difficulty, 2023. [Online; accessed March 1, 2025].