System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于大语言模型的柔性思维链学习方法、设备和介质技术_技高网
当前位置: 首页 > 专利查询>之江实验室专利>正文

一种基于大语言模型的柔性思维链学习方法、设备和介质技术

技术编号:42050598 阅读:14 留言:0更新日期:2024-07-16 23:31
本发明专利技术公开了一种基于大语言模型的柔性思维链学习方法、设备和介质,利用大语言模型针对任务进行初始的思维链模板生成,使用思维链模板进行分布答案生成,经过针对最终输出结果的样本粗筛选和针对各个步骤结构的样本精筛选后,得到训练样本数据集;使用监督学习的方法训练柔性思维链模型用于任务推理;柔性思维链模型包括:大语言模型、各个步骤的柔性参数层、prompt层;将柔性参数层、prompt层、训练样本数据集输入大语言模型中,输出结果与样本真值进行一致性判断,得到的惩罚函数优化柔性参数层。本发明专利技术提升了推理精度,降低了思维链的构建难度,同时降低了大语言模型调用成本。

【技术实现步骤摘要】

本专利技术涉及自然语言处理领域,尤其涉及一种基于大语言模型的柔性思维链学习方法、设备和介质


技术介绍

1、尽管大语言模型在一系列nlp任务中表现出了显著的成功,但它们推理的能力常常被看作是一种局限。在使用这些大语言模型时,发现思维链(cot)提示可以提高需要复杂推理的任务的性能,例如数学单词问题、常识推理和符号操作。例如,给定问题“如果停车场里有3辆车,还有2辆车到达,停车场里有多少辆车?”,大语言模型会被提示用简单分步方法来回答:(1)停车场已经有3辆车了。(2)又来了两个。现在有3+2=5辆车。(3)答案是5。分步计算就是思维链的一种形式,可以看到,思维链提示可以将复杂问题简单化并提高回答的解释性。

2、但是,思维链也存在一些不足。例如,思维链可能有多种形式,而这些不同形式的思维链应该不影响最终结果,但实际情况是最终结果并不相同。这也引起人们对大语言模型是否真正具有推理能力的质疑。针对此问题,研究者们提出了各种自校验的推理方法,例如有研究者提出正向推理后进行反向推理校验的方法,让大语言模型作为裁判员对每一步进行反复确认。也有研究者提出让大模型进行多次回答,并基于概率,取概率最高的答案。通常自校验方法是无监督方法,虽然可以提升模型的推理精度,但也带来了推理次数的额外开销。


技术实现思路

1、为充分发挥大语言模型和思维链组合在推理上的优势,并降低手工调整思维链的难度和自校验方法带来的额外计算成本,本专利技术提出了基于大语言模型的柔性思维链学习方法、设备和介质,该方法基于有监督的方式,在大语言模型外再训练一个模型,对思维链进行优化,该方法可以提升推理精度,降低思维链的构建难度,同时降低推理次数开销。

2、具体技术方案如下:

3、一种基于大语言模型的柔性思维链学习方法,利用大语言模型针对任务进行初始的思维链模板生成,使用思维链模板进行分布答案生成,筛选得到训练样本数据集,使用监督学习的方法训练柔性思维链模型用于任务推理,具体包括以下步骤:

4、s1、思维链生成:使用大语言模型自动生成针对单个任务的多个思维链,人工复检并合并成一个合理的思维链模板;

5、s2、分步答案生成:针对原始任务样本,按照所述思维链模板的步骤,多次生成对应步骤的答案;所述原始任务样本与所述单个任务的类别相同;

6、s3、样本粗筛选:对比s2中按照思维链模板生成的多个最终输出结果和原始任务样本真值,筛选结果正、负样本;若最终输出结果与原始任务样本真值相同,则归类为结果正样本;反之则归类为结果负样本;

7、s4、样本精筛选:对比所述结果正、负样本的各个步骤的答案,若单步骤的答案正确,则归类为单步骤正样本,反正则归类为单步骤负样本;整理并集合所有单步骤正样本和单步骤负样本,得到训练样本数据集;

8、s5、柔性思维链参数训练:使用所述训练样本数据集,根据soft-prompt方法训练柔性思维链模型;所述柔性思维链模型包括:各个步骤的柔性参数层、各个步骤的prompt层、大语言模型;所述各个步骤的prompt层与所述思维链模板中的各个步骤一一对应;将所述柔性参数层、prompt层、训练样本数据集输入大语言模型中,对大语言模型的输出结果与原始任务样本真值进行一致性判断,得到的惩罚函数进一步优化柔性参数层;

9、s6、任务推理:根据任务类别载入对应柔性思维链模型,将待推理任务输入所述柔性思维链模型,获得推理结果。

10、进一步地,所述s5中,忽略思维链前后顺序,分别构建各个步骤的柔性参数层;所述柔性参数层是指将思维链中的每个步骤以20个字符表示,这些字符从大语言模型的词表中随机抽取,并利用大语言模型的tokenizer转换为对应词的嵌入向量,形成20*e维的矩阵,e表示嵌入向量的维度,每个步骤对应一个柔性参数层,所述柔性参数层共有t个20*e矩阵,t为思维链模板的步骤总数;再将prompt与训练样本数据集组合后使用tokenizer转换为嵌入向量;使用嵌入向量进行训练,训练时,不更新大语言模型和prompt层的参数,仅使用惩罚函数更新柔性参数层,最终得到训练好的柔性思维链模型。

11、进一步地,所述s5中,按照思维链步骤顺序,使用神经网络的方式训练各个步骤的柔性参数层;所述柔性参数层是指将思维链中的每个步骤以20个字符表示,这些字符从大语言模型的词表中随机抽取,并利用大语言模型的tokenizer转换为对应词的嵌入向量,形成20*e维的矩阵,e表示嵌入向量的维度;每个步骤对应一个柔性参数层,所述柔性参数层共有t个20*e矩阵,t为思维链模板的步骤总数;将一个步骤对应的柔性参数层视为一层,神经网络共有t层;将前一个步骤的prompt与训练样本数据集组合后使用tokenizer转换为嵌入向量后,输入到大语言模型中,输出值作为下一个步骤的输入;用惩罚函数从最后一层开始依次更新各层。

12、进一步地,所述s5中的惩罚函数为基于语义一致模型判定的模型概率值交叉熵,判定各个步骤的输出与标签值是否一致,并利用交叉熵函数计算各个步骤的输出与标签值的不一致程度。

13、进一步地,所述s1中,针对单个任务生成的多个思维链并不都是合理的,所述人工复检用于删除无用的步骤,并对剩余有用步骤进行符合逻辑顺序的思维链组合。

14、进一步地,所述s2中,大语言模型表示为函数llm(),思维链模板共有t个步骤;第t个步骤表示为st,t=1,2,3,…t,第t个步骤生成答案表示为ot,在第t-1个步骤生成的答案ot-1的基础上,使用大语言模型得到第t个步骤生成的答案,表示为llm(ot-1,st)=ot。

15、进一步地,所述s4中,根据单个步骤的生成结果,使用自校验的方式,判定单步骤的答案是否正确;所述自校验方式,选用正向推理反向校验,或多次生成,根据概率判定。

16、进一步地,所述原始任务样本与单个任务的类别包括:数学应用类、常识问答类、编程代码类、要素抽取类。

17、一种电子设备,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现所述的基于大语言模型的柔性思维链学习方法。

18、一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现所述的基于大语言模型的柔性思维链学习方法。

19、本专利技术的有益效果是:

20、本专利技术构建了柔性思维链模型进行任务推理,相对于常规的思维链方法,可以提升推理精度,降低思维链的构建难度,同时降低大语言模型调用成本。在针对基于大语言模型的复杂推理场景中,有广泛的应用前景。

本文档来自技高网...

【技术保护点】

1.一种基于大语言模型的柔性思维链学习方法,其特征在于,利用大语言模型针对任务进行初始的思维链模板生成,使用思维链模板进行分布答案生成,筛选得到训练样本数据集,使用监督学习的方法训练柔性思维链模型用于任务推理,具体包括以下步骤:

2.根据权利要求1所述的基于大语言模型的柔性思维链学习方法,其特征在于,所述S5中,忽略思维链前后顺序,分别构建各个步骤的柔性参数层;所述柔性参数层是指将思维链中的每个步骤以20个字符表示,这些字符从大语言模型的词表中随机抽取,并利用大语言模型的tokenizer转换为对应词的嵌入向量,形成20*e维的矩阵,e表示嵌入向量的维度,每个步骤对应一个柔性参数层,所述柔性参数层共有T个20*e矩阵,T为思维链模板的步骤总数;再将prompt与训练样本数据集组合后使用tokenizer转换为嵌入向量;使用嵌入向量进行训练,训练时,不更新大语言模型和prompt层的参数,仅使用惩罚函数更新柔性参数层,最终得到训练好的柔性思维链模型。

3.根据权利要求1所述的基于大语言模型的柔性思维链学习方法,其特征在于,所述S5中,按照思维链步骤顺序,使用神经网络的方式训练各个步骤的柔性参数层;所述柔性参数层是指将思维链中的每个步骤以20个字符表示,这些字符从大语言模型的词表中随机抽取,并利用大语言模型的tokenizer转换为对应词的嵌入向量,形成20*e维的矩阵,e表示嵌入向量的维度;每个步骤对应一个柔性参数层,所述柔性参数层共有T个20*e矩阵,T为思维链模板的步骤总数;将一个步骤对应的柔性参数层视为一层,神经网络共有T层;将前一个步骤的prompt与训练样本数据集组合后使用tokenizer转换为嵌入向量后,输入到大语言模型中,输出值作为下一个步骤的输入;用惩罚函数从最后一层开始依次更新各层。

4.根据权利要求1所述的基于大语言模型的柔性思维链学习方法,其特征在于,所述S5中的惩罚函数为基于语义一致模型判定的模型概率值交叉熵,判定各个步骤的输出与标签值是否一致,并利用交叉熵函数计算各个步骤的输出与标签值的不一致程度。

5.根据权利要求1所述的基于大语言模型的柔性思维链学习方法,其特征在于,所述S1中,针对单个任务生成的多个思维链并不都是合理的,所述人工复检用于删除无用的步骤,并对剩余有用步骤进行符合逻辑顺序的思维链组合。

6.根据权利要求1所述的基于大语言模型的柔性思维链学习方法,其特征在于,所述S2中,大语言模型表示为函数LLM(),思维链模板共有T个步骤;第t个步骤表示为St,t=1,2,3,…T,第t个步骤生成答案表示为Ot,在第t-1个步骤生成的答案Ot-1的基础上,使用大语言模型得到第t个步骤生成的答案,表示为LLM(Ot-1,St)=Ot。

7.根据权利要求1所述的基于大语言模型的柔性思维链学习方法,其特征在于,所述S4中,根据单个步骤的生成结果,使用自校验的方式,判定单步骤的答案是否正确;所述自校验方式,选用正向推理反向校验,或多次生成,根据概率判定。

8.根据权利要求1所述的基于大语言模型的柔性思维链学习方法,其特征在于,所述原始任务样本与单个任务的类别包括:数学应用类、常识问答类、编程代码类、要素抽取类。

9.一种电子设备,其特征在于,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现权利要求1~8中任一项所述的基于大语言模型的柔性思维链学习方法。

10.一种计算机可读存储介质,其特征在于,其上存储有程序,该程序被处理器执行时,实现权利要求1~8中任一项所述的基于大语言模型的柔性思维链学习方法。

...

【技术特征摘要】

1.一种基于大语言模型的柔性思维链学习方法,其特征在于,利用大语言模型针对任务进行初始的思维链模板生成,使用思维链模板进行分布答案生成,筛选得到训练样本数据集,使用监督学习的方法训练柔性思维链模型用于任务推理,具体包括以下步骤:

2.根据权利要求1所述的基于大语言模型的柔性思维链学习方法,其特征在于,所述s5中,忽略思维链前后顺序,分别构建各个步骤的柔性参数层;所述柔性参数层是指将思维链中的每个步骤以20个字符表示,这些字符从大语言模型的词表中随机抽取,并利用大语言模型的tokenizer转换为对应词的嵌入向量,形成20*e维的矩阵,e表示嵌入向量的维度,每个步骤对应一个柔性参数层,所述柔性参数层共有t个20*e矩阵,t为思维链模板的步骤总数;再将prompt与训练样本数据集组合后使用tokenizer转换为嵌入向量;使用嵌入向量进行训练,训练时,不更新大语言模型和prompt层的参数,仅使用惩罚函数更新柔性参数层,最终得到训练好的柔性思维链模型。

3.根据权利要求1所述的基于大语言模型的柔性思维链学习方法,其特征在于,所述s5中,按照思维链步骤顺序,使用神经网络的方式训练各个步骤的柔性参数层;所述柔性参数层是指将思维链中的每个步骤以20个字符表示,这些字符从大语言模型的词表中随机抽取,并利用大语言模型的tokenizer转换为对应词的嵌入向量,形成20*e维的矩阵,e表示嵌入向量的维度;每个步骤对应一个柔性参数层,所述柔性参数层共有t个20*e矩阵,t为思维链模板的步骤总数;将一个步骤对应的柔性参数层视为一层,神经网络共有t层;将前一个步骤的prompt与训练样本数据集组合后使用tokenizer转换为嵌入向量后,输入到大语言模型中,输出值作为下一个步骤的输入;用惩罚函数从最后一层开始依次更新各层。

4.根据...

【专利技术属性】
技术研发人员:丁锴严笑然姬朋立
申请(专利权)人:之江实验室
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1