arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~

O-Funnel:从漂移、异构文档中进行无损结构捕获与需求驱动提取

O-Funnel: Lossless Structural Capture and Requirement-Driven Extraction from Drifting, Heterogeneous Documents

Osama Mustafa

arXiv 2609.39209首次发表:更新:

发表机构

Intellusion(Intellusion)

机构由 AI 辅助整理,请以论文原文为准。

AI 中文总结

O-Funnel通过分离值描述与定位,将异构文档转为类型化树,融合多源证据提取字段,在漂移模式下保持高F1,并支持自我改进。

AI 中文摘要

从以多种格式和漂移模式到达的文档中提取固定字段集,通常通过手写的字节模式完成,而一旦键被重命名、值被重新格式化或出现相似值,这些模式就会失效。我们认为其根源在于结构性:一个模式必须同时描述值并在其周围环境中定位它。O-Funnel将两者分离。它将任何XML、JSON、CSV、HTML或键值文本文档转录为一个基于五个构造子的类型化树,并由一个预言机门控,该预言机拒绝任何无法重建其来源的捕获。每个所需字段以树自身的术语声明,并通过融合独立证据(键、路径、值形状、同义词、键拼写、记录邻域、值轮廓)来定位,因此最受支持的节点胜出,缺失字段会附带原因报告。没有需求声明的数据成为残余,漏斗将其追溯至需求以学习新的键别名。在34,989条真实PubMed记录上,O-Funnel与手写解析器匹配(F1 1.00)。在五元素模式重命名后,解析器的正则表达式降至0.20,而O-Funnel保持在1.00,且每次捕获均验证完整。在隔离正则表达式失败模式的构造套件上,它将F1从0.43提升至1.00,并在自我改进后从0.80提升至0.94;在保留的模式匹配实例上,无需训练即可与经典匹配器竞争。O-Funnel是一个无依赖的Python库(pip install ofunnel)。

英文摘要

Pulling a fixed set of fields out of documents that arrive in many formats and under drifting schemas is usually done with hand-written byte patterns, which break whenever a key is renamed, a value is reformatted, or a lookalike value appears first. We argue the cause is structural: one pattern must both describe the value and locate it among its surroundings. O-Funnel separates the two. It transcribes any XML, JSON, CSV, HTML or key-value text document into one typed tree over five constructors, gated by an oracle that rejects any capture that does not reconstruct its source. Each needed field is declared in the tree's own terms and located by fusing independent evidence (key, path, value shape, synonym, key spelling, record neighborhood, value profile), so the best-supported node wins and a missing field is reported with a reason. Data no requirement claims becomes residue that a funnel traces back to the requirements to learn new key aliases. On 34,989 real PubMed records, O-Funnel matches a hand-written parser (F1 1.00). After a five-element schema rename, the parser's regular expressions fall to 0.20 while O-Funnel stays at 1.00, with every capture verified complete. On constructed suites that isolate regex failure modes it raises F1 from 0.43 to 1.00, and from 0.80 to 0.94 after self-improvement; on held-out schema-matching instances it is competitive with classical matchers without training. O-Funnel is a dependency-free Python library (pip install ofunnel).

Comments21 pages, 3 figures. Code and benchmarks: https://github.com/osamaa-mustafa/ofunnel

论文原文

arXiv 摘要页 · PDF 原文 · HTML 原文

↑