提出自动化模型计数算法,可处理超大规模数据集。
Towards Practical First-Order Model Counting
- 将函数定义自动编译为支持高精度计算的C++代码
- 在超过50万倍于现有技术的域规模上实现可扩展性
- 适合需要高效精确计数的逻辑推理与知识库应用
一阶模型计数(FOMC)是计算一阶逻辑语句模型数量的问题。由于提升推理技术依赖于各类FOMC变体的约简,过去十年中,设计可扩展的FOMC方法吸引了理论与实践界的关注。最近一种基于一阶知识编译的新方法被提出,称为Crane。该方法不直接给出最终计数,而是生成可递归的函数定义,可对不同域大小求值以计算模型计数。然而,该方法未完全自动化,需手动评估生成的函数。本文主要贡献是提出全自动编译算法Crane2,将函数定义转换为带有任意精度算术的C++代码。实验表明,新算法可将域规模扩展至当前最先进水平的50万倍以上。
原文摘要 · Abstract (English)
First-order model counting (FOMC) is the problem of counting the number of models of a sentence in first-order logic. Since lifted inference techniques rely on reductions to variants of FOMC, the design of scalable methods for FOMC has attracted attention from both theoreticians and practitioners over the past decade. Recently, a new approach based on first-order knowledge compilation was proposed. This approach, called Crane, instead of simply providing the final count, generates definitions of (possibly recursive) functions that can be evaluated with different arguments to compute the model count for any domain size. However, this approach is not fully automated, as it requires manual evaluation of the constructed functions. The primary contribution of this work is a fully automated compilation algorithm, called Crane2, which transforms the function definitions into C++ code equipped with arbitrary-precision arithmetic. These additions allow the new FOMC algorithm to scale to domain sizes over 500,000 times larger than the current state of the art, as demonstrated through experimental results.
Thank you to arXiv for use of its open access interoperability. PaperDance 不是 arXiv 官方产品;中文卡片由大模型生成,请以原文为准。