技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种基于代码语言的结构化常识推理方法  >  正文

一种基于代码语言的结构化常识推理方法

  • 国知局
  • 2024-07-31 22:49:09

本发明涉及计算机科学领域,具体涉及一种应用于结构化常识推理方法。

背景技术:

1、在自然语言处理和人工智能领域,结构化常识推理是一个重要的研究领域。传统的常识推理任务通常涉及阅读理解或问题回答,目标是根据自然语言文本提供答案。然而,结构化常识推理任务更具挑战性,因为它们要求生成结构化的输出,例如事件图、推理图或论证解释图,而不仅仅是文本答案。

2、过去的方法通常依赖于自然语言处理技术,但在生成结构化输出时存在一些困难。自然语言模型(nlm)在自由文本上进行预训练,而结构化输出通常与传统的自然语言文本存在明显差异。此外,结构化数据的生成需要复杂的结构化预测和生成,这对nlm来说是一个挑战。

3、近年来,代码生成型语言模型(code generation language models,简称codelm)已经取得了显著的进展。这些模型可以理解自然语言描述并将其转化为编程语言代码,实现了自动化的代码生成。codelm的成功应用在编程领域,是否能用于结构化常识推理方面尚未可知。

技术实现思路

1、本发明的目的是为了克服现有技术中的不足,提供一种基于代码语言的结构化常识推理方法,将codelm应用于结构化常识推理任务。该方法包括将自然语言描述转化为具有语义等效性的编程语言代码,使其能够更好地处理结构化常识推理任务。具体选择了python编程语言作为代码的表示方式,并通过代码生成型语言模型来实现自然语言描述到代码的转换。

2、本发明的目的是通过以下技术方案实现的:

3、一种基于代码语言的结构化常识推理方法,将自然语言描述转化为具有语义等效性的编程语言代码,自然语言描述包括事件图、推理图、论证解释图,所述编程语言代码在通用编程语言中编写,以实现结构化常识推理任务的更高级目标。

4、进一步的,所述编程语言代码使用python编写,其中自然语言描述被添加为代码的类属性或描述性注释,并通过python数据结构以及函数调用来编码结构。

5、进一步的,所述编程语言代码表示为一个具有节点和边的树形结构,其中节点表示自然语言描述的元素,边表示节点之间的关联。

6、进一步的,所述自然语言描述和生成的编程语言代码之间的转换是通过代码生成型语言模型完成的,所述代码生成型语言模型在训练过程中通过少样本提示few-shotprompting和预训练数据实现了结构化常识推理的泛化;数学上,少样本提示表示为:给定任务t和示例集合d={(x1,y1),(x2,y2),...,(xn,yn)},其中(xi,yi)表示输入-输出对,i=1,2,3…n,少样本提示的目标在于通过少样本提示p,将输入示例xtest映射到对应的输出ytest;即:ytest=model(p,xtest);其中,p表示少样本提示,model表示代码生成型语言模型,xtest表示测试输入;通过引入少样本提示,代码生成型语言模型能够利用提示中的示例信息进行泛化和推断,以完成测试输入的任务。

7、进一步的,所述结构化常识推理任务包括生成事件图、推理图或论证解释图任务;每个训练样例包含一个文本输入t和要生成的结构g(通常是一个图形);将输出图g转换为一个在通用编程语言中编写的具有语义等效性的程序gc;选择python作为程序gc对应的编程语言,转换后的代码图与代码llm的预训练数据格式类似,作为更容易泛化的训练或少样本示例。

8、进一步的,所述结构化常识推理任务的目标是创建一个与自然语言描述相对应的具有结构和语义的结构化输出。

9、进一步的,所述自然语言描述包括对事件、关系、操作或逻辑的描述,所述编程语言代码用于实现描述中指定的操作或逻辑。

10、本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述基于代码语言的结构化常识推理方法的步骤。

11、本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述基于代码语言的结构化常识推理方法的步骤。

12、本发明还提供一种基于所述代码语言的结构化常识推理方法的应用,包括:

13、(1)应用于实体状态跟踪:实体状态跟踪任务的文本输入t是关于主题以及一组实体的一系列自然语言动作;任务的目标是预测每个实体在执行动作后的状态;使用propara数据集对此任务进行测试;

14、(2)应用于论证图生成:对于一个观点和一个论点,任务目标是生成一个图,使用论点支持或反驳观点;相应任务的文本输入是一个元组,结构化输出是一个解释图;使用explagraphs数据集对此任务进行测试。

15、与现有技术相比,本发明的技术方案所带来的有益效果是:

16、1.本发明方法可以实现结构化常识推理任务的更高级目标,例如生成事件图、推理图或论证解释图。本方法将有助于改善结构化常识推理的效率和性能。

17、2.本发明方法将自然语言描述(例如事件图、推理图、论证解释图等)转化为具有语义等效性的编程语言代码,自然语言描述包括对事件、关系、操作或逻辑的描述,而编程语言代码用于实现描述中指定的操作或逻辑;编程语言代码采用python编写,并且自然语言描述被添加为代码的类属性或描述性注释,并通过python数据结构以及函数调用来编码结构。生成的编程语言代码表示为一个具有节点和边的树形结构,其中节点表示自然语言描述的元素,而边表示节点之间的关联。本发明选择了python编程语言作为代码的表示方式,但本方法不限于特定的编程语言。

18、3.通过引入代码生成型语言模型codelm,克服了传统结构化常识推理任务中生成结构化数据的困难,实现了更高效的处理方式。codelm在python编程语言的应用下,能够理解自然语言描述并成功生成具有语义等效性的编程语言代码,为结构化输出提供了可靠的解决方案。代码生成型语言模型codelm在训练过程中通过少样本提示和预训练数据实现了结构化常识推理的泛化,通过引入少样本提示,模型可以利用提示中的示例信息来进行泛化和推断,从而完成测试输入的任务。

19、4.该方法适用于多个结构化常识推理任务,包括实体状态跟踪、论证图生成等,其中每个任务旨在创建与自然语言描述相对应的具有特定结构和语义的结构化输出。该方法提供了一种有效的方式,将自然语言描述转化为具有语义等效性的编程语言代码,从而实现了结构化常识推理任务的更高级目标。

技术特征:

1.一种基于代码语言的结构化常识推理方法,其特征在于,将自然语言描述转化为具有语义等效性的编程语言代码,自然语言描述包括事件图、推理图、论证解释图,所述编程语言代码在通用编程语言中编写,以实现结构化常识推理任务的更高级目标。

2.根据权利要求1所述一种基于代码语言的结构化常识推理方法,其特征在于,所述编程语言代码使用python编写,其中自然语言描述被添加为代码的类属性或描述性注释,并通过python数据结构以及函数调用来编码结构。

3.根据权利要求1或2所述一种基于代码语言的结构化常识推理方法,其特征在于,所述编程语言代码表示为一个具有节点和边的树形结构,其中节点表示自然语言描述的元素,边表示节点之间的关联。

4.根据权利要求1或2所述一种基于代码语言的结构化常识推理方法,其特征在于,所述自然语言描述和生成的编程语言代码之间的转换是通过代码生成型语言模型完成的,所述代码生成型语言模型在训练过程中通过少样本提示和预训练数据实现了结构化常识推理的泛化;数学上,少样本提示表示为:给定任务t和示例集合d={(x1,y1),(x2,y2),...,(xn,yn)},其中(xi,yi)表示输入-输出对,i=1,2,3…n,少样本提示的目标在于通过少样本提示p,将输入示例xtest映射到对应的输出ytest;即:ytest=model(p,xtest);其中,p表示少样本提示,model表示代码生成型语言模型,xtest表示测试输入;通过引入少样本提示,代码生成型语言模型能够利用提示中的示例信息进行泛化和推断,以完成测试输入的任务。

5.根据权利要求1所述一种基于代码语言的结构化常识推理方法,其特征在于,所述结构化常识推理任务包括生成事件图、推理图或论证解释图任务;每个训练样例包含一个文本输入t和要生成的结构g;将输出图g转换为一个在通用编程语言中编写的具有语义等效性的程序gc;选择python作为程序gc对应的编程语言,转换后的代码图与代码llm的预训练数据格式类似,作为更容易泛化的训练或少样本示例。

6.根据权利要求1或5所述一种基于代码语言的结构化常识推理方法,其特征在于,所述结构化常识推理任务的目标是创建一个与自然语言描述相对应的具有结构和语义的结构化输出。

7.根据权利要求1或2所述一种基于代码语言的结构化常识推理方法,其特征在于,所述自然语言描述包括对事件、关系、操作或逻辑的描述,所述编程语言代码用于实现描述中指定的操作或逻辑。

8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至7任一项所述基于代码语言的结构化常识推理方法的步骤。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7任一项所述基于代码语言的结构化常识推理方法的步骤。

10.一种基于权利要求1-7任意一项所述代码语言的结构化常识推理方法的应用,其特征在于,

技术总结本发明公开一种基于代码语言的结构化常识推理方法,包括将自然语言描述转化为具有语义等效性的编程语言代码,这一编程语言代码是在通用编程语言中编写的,旨在实现结构化常识推理任务的更高级目标。该方法的关键特点包括:1)自然语言描述包括对事件、关系、操作或逻辑的描述,编程语言代码用于实现描述中指定的操作或逻辑。2)编程语言代码采用Python编写,并且自然语言描述被添加为代码的类属性或描述性注释,并通过Python数据结构以及函数调用来编码结构。3)生成的编程语言代码表示为一个具有节点和边的树形结构。4)转换过程使用代码生成型语言模型完成,可以利用提示中的示例信息来进行泛化和推断,从而完成测试输入的任务。技术研发人员:王博,侯灼霖受保护的技术使用者:天津大学技术研发日:技术公布日:2024/7/29

本文地址:https://www.jishuxx.com/zhuanli/20240730/194778.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。