[论文翻译]KnowCoder: 将结构化知识编码到大语言模型以实现通用信息抽取
本文提出KnowCoder——一个通过代码生成实现通用信息抽取(Universal Information Extraction, UIE)的大语言模型。KnowCoder致力于开发一种LLM易于理解的统一模式表示方法,以及能促使LLM遵循模式并准确抽取结构化知识的有效学习框架。为此,KnowCoder引入代码化模式表示方法,将不同模式统一转换为Python类,从而以LLM友好的方式捕捉UIE中任务间约束等复杂模式信息。我们进一步构建了覆盖3万多种知识的代码化模式库,据我们所知这是UIE领域规模最大的模式库。为简化LLM学习过程,KnowCoder采用两阶段学习框架:通过代码预训练增强模式理解能力,通过指令微调提升模式遵循能力。在约15亿条自动构建数据上进行代码预训练后,KnowCoder已展现出卓越的泛化能力,在少样本设置下相比LLaMA2取得49.8% F1值的相对提升。经过指令微调后,KnowCoder在未见模式上表现出强大泛化能力,在零样本和低资源设置下分别较SOTA基线提升12.5%和21.9%。此外,基于我们的统一模式表示方法,可同时利用多个人工标注数据集优化KnowCoder,使其在有监督设置下最高获得7.5%的性能提升。