CN116226378A - 一种基于深度学习的文本生成方法 - Google Patents

一种基于深度学习的文本生成方法 Download PDF

Info

Publication number
CN116226378A
CN116226378A CN202310040513.4A CN202310040513A CN116226378A CN 116226378 A CN116226378 A CN 116226378A CN 202310040513 A CN202310040513 A CN 202310040513A CN 116226378 A CN116226378 A CN 116226378A
Authority
CN
China
Prior art keywords
model
generation
scoring
score
training
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310040513.4A
Other languages
English (en)
Inventor
姚念民
刘晗旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dalian University of Technology
Original Assignee
Dalian University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dalian University of Technology filed Critical Dalian University of Technology
Priority to CN202310040513.4A priority Critical patent/CN116226378A/zh
Publication of CN116226378A publication Critical patent/CN116226378A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3346Query execution using probabilistic model

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)

Abstract

本发明属于自然语言处理技术领域,涉及一种基于深度学习的文本生成方法。包括:收集目标任务数据集,增加损失函数,在目标任务数据集上重新训练初始生成模型;构建用于训练打分模型的数据集,包括数据集的生成以及划分等操作;构建打分模型,使用打分模型训练数据集对打分模型进行训练至收敛,通过测试集验证模型性能;将打分模型与生成模型相结合,在生成模型的解码阶段插入打分模块,通过打分模型的输出调整候选词的概率分布。经过本发明的优化后,文本生成模型的生成质量明显提升,其具体表现在,在以生成结果与参考标准相匹配程度为评价指标的任务中,生成结果的指标分数明显提高。

Description

一种基于深度学习的文本生成方法
技术领域
本发明属于自然语言处理技术领域,涉及一种基于深度学习的文本生成方法。
背景技术
自然语言处理是人工智能的分支之一,其主要目标是让机器学习到人类的语言特征,从而完成一系列此前需要人类智能才能完成的任务。文本生成是自然语言处理领域的重要研究方向,包括机器翻译、摘要生成、对话生成、故事生成等等诸多任务。
当前文本生成任务主要采用自回归式生成方法,即逐词依次生成。在每个词生成时,根据上文所有文本计算词表中每个词在当前位置出现的概率,根据采样算法选出生成结果。
近年来,以GPT-2为代表的大型预训练语言模型出现,使文本生成的质量有了较大提升。通过在特定领域数据集上对预训练模型进行微调训练,即可实现各种不同的具体任务。
然而在实际应用中,文本生成任务依然存在一些亟待解决的关键问题。第一、模型生成的文本仍然与人类自然语言具有差距,无论是语法的准确性、上下文的逻辑性、表意的流畅性等方面都无法实现完全以假乱真。第二、对于具体的文本生成任务,当前的模型结果在指标表现上仍有欠缺,尤其是在文本摘要、对话生成这类同时要求准确性和多样性的任务中问题更为明显。第三、在语言模型的实际应用中,通常需要根据具体应用场景对语言模型的生成结果进行条件限制,而传统的语言模型仅仅对每个词出现的条件概率进行建模,很难做到更细粒度的条件控制。
发明内容
基于上述在文本生成过程中存在的诸多问题,本发明提出了一种基于深度学习的文本生成方法,可以提升文本生成质量。本发明从两个方面解决文本生成模型存在的问题:第一,调整文本生成模型的损失函数,使训练后的语言模型可以产生更贴近任务目标的句子。第二,训练一个用于评分的神经网络模型,在自回归文本生成的过程中对候选词进行评价,根据评价结果改变候选词的概率分布,最终改变生成结果。
本发明方法大致分为四个部分:
(1)初始生成模型部分:主要指待优化的文本初始生成模型G0,模型结构可选范围包括LSTM,Transformer,GPT等。初始生成模型G0也可以直接选择经过预训练的模型,例如预训练的GPT2模型,再对其进行特定领域的微调,使其适合于当前任务。本方法修改损失函数,对初始生成模型做进一步训练。
(2)表示模型部分:包括一个神经网络模型Mr,以文本作为输入,输出指定维度的向量表示,用于参与本方法所述新损失模型的计算。模型结构可选用ELMO,Bert等动态词向量模型。
(3)打分模型部分:主要包括一个可进行训练的神经网络模型Mscore,以自然语言作为输入,输出0到1之间的数作为分数。模型结构的选择需要尽可能考虑到模型的性能,可使用Bert等预训练模型作为打分模型的基础结构。
(4)指导生成部分:即将打分模型与经过进一步训练的初始生成模型相结合。在初始生成模型的生成过程中,使用打分模型对每一步生成的候选词进行打分,根据分数改变原候选词的概率分布,以此改变后续的采样结果。
本发明的技术方案:
一种基于深度学习的文本生成方法,包括如下步骤:
步骤(1):收集目标任务数据集,增加损失函数,在目标任务数据集上重新训练初始生成模型G0
步骤(2):构建用于训练打分模型的数据集,包括数据集的生成以及划分等操作。
步骤(3):构建打分模型Mscore,使用步骤(2)所述数据集对打分模型进行训练至收敛,通过测试集验证打分模型性能。
步骤(4):将打分模型与生成模型相结合,在生成模型的解码阶段插入打分模块,通过打分模型的输出调整候选词的概率分布。
进一步地,所述步骤(1)包括以下步骤:
(1.1)根据目标任务,收集相关数据集Dgen,其中每一条数据包括生成模型的输入和生成结果的标准参考。选择初始生成模型G0的结构,例如预训练的GPT2模型。要求初始生成模型G0可以在数据集Dgen上进行训练和推断。
(1.2)确定表示模型的结构,例如预训练的Bert,构建表示模型Mr。在数据集Dgen上训练表示模型Mr,使表示模型Mr可以完成从句子到向量的映射。
(1.3)设计均方误差损失函数Lr,公式如下:
Figure BDA0004050639190000031
其中zi表示在训练过程中模型生成的第i个句子输入表示模型Mr后得到的向量,即Mr(y),该句子由表示模型最后一层的输出依据贪心算法采样得到。
Figure BDA0004050639190000032
表示第i个句子的标准生成结果由表示模型Mr映射后的向量,即/>
Figure BDA0004050639190000033
将均方误差损失与初始生成模型G0的损失LLM相加,即:
L=Lr+LLM
将L作为新的损失函数重新训练初始生成模型G0,得到优化后的生成模型G1
进一步地,所述步骤(2)包括以下步骤:
(2.1)令优化后的生成模型G1在数据集Dgen上完成生成任务,将每一句的生成结果y与对应的原输入x、标准参考
Figure BDA0004050639190000041
一一匹配,组成全新的数据集,即打分模型数据集Dscore
(2.2)将打分模型数据集Dscore划分成训练集、验证集和测试集,分别用于打分模型Mscore的训练、验证和测试。
进一步地,所述步骤(3)包括以下步骤:
(3.1)构建打分模型Mscore,确定模型结构,例如预训练的Bert模型。设置合理超参数。
(3.2)从打分模型数据集Dscore中获取数据,将每条数据拆分为原输入x、生成结果y和标准参考
Figure BDA0004050639190000042
将生成结果y从随机位置r截断,取句子开头到断点的片段y[0:r],根据当前任务的评价指标对该片段进行评价,将原输入x和生成结果片段y[0:r]共同作为打分模型的输入,将评价分数Seval作为每个输入对应的标签。
(3.3)开始执行打分模型Mscore的训练,选择合适的损失函数和优化器,迭代多轮训练直至收敛,通过验证集调整超参数以提升性能,最大化模型为生成结果片段打分的准确度。
(3.4)使用测试集检验打分模型Mscore的泛化能力,保证训练完成的打分模型具有对于目标文本生成任务的泛用性。
进一步地,所述步骤(4)包括以下步骤:
(4.1)使用测试集进行生成,在优化后的生成模型G1的解码阶段,根据模型输出的概率分布,选择概率最高的k(k为超参数)个词作为候选词,获取所有候选词的概率,构成k维向量p0
(4.2)将候选词分别拼接在当前生成阶段已生成的文本末端,组成k个候选句子片段,利用打分模型对句子片段进行打分,获取对应的输出分数,构成k维向量spre
(4.3)将候选词的概率与对应每个候选句子片段的分数结合,得到k维向量pfinal,代表调整后的概率分布,具体公式如下,其中α是超参数,用于调节打分模型对生成过程的影响程度:
pfinal=αp0+(1-α)spre
(4.4)根据不同的任务要求选择采样策略,依调整后的概率分布pfinal采样,得到句子下一位置的生成结果。
本发明的有益效果:
本发明提出了使用神经网络模型优化文本生成的方法,旨在拉近文本生成模型的生成结果与真实人类自然语言的差距。经过本发明的优化后,文本生成模型的生成质量明显提升,其具体表现在,在以生成结果与参考标准相匹配程度为评价指标的任务中,生成结果的指标分数明显提高。
附图说明
图1为本发明所述的文本生成方法的流程图。
具体实施方式
以下将以中文文本摘要任务为例,对本发明进行详细阐述,具体流程如图1所示。
(1)重新训练初始生成模型:
(1.1)选择LCSTS数据集上的文本摘要生成任务。选择以GPT2为结构,使用CLUECorpusSmall语料训练得到的预训练语言模型GPT2-Chinese作为初始生成模型G0
(1.2)选择经预训练的中文Bert模型作为表示模型Mr,在LCSTS数据集上对此模型进行微调训练。训练时将每条数据摘要部分的第一个token修改为[MASK]标记,令Bert模型对这个token进行预测。
(1.3)修改生成模型训练时的损失函数。生成模型训练时,取每条数据的生成结果和对应的标准摘要,将每个句子摘要部分的第一个token修改为[MASK]标记,分别输入训练好的表示模型Mr,对得到的向量表示计算均方误差损失,将此损失与原本生成模型的损失函数相加,得到新的损失函数。使用新损失函数重新训练至收敛,得到优化后的生成模型G1
(2)生成用于训练打分模型的数据集:
(2.1)在LCSTS数据集上对G1进行微调,初步收敛后,令其对数据集上的所有文本生成对应的摘要。将生成的摘要与对应的原输入文本、参考摘要一一匹配,组成打分模型数据集Dscore
(2.2)划分打分模型数据集Dscore。由于LCSTS数据集已经完成了训练集、验证集和测试集的划分,此步骤可跳过。
(3)构建和训练打分模型:
(3.1)选择Bert作为打分模型的结构,加载预训练模型bert-base-chinese的参数,选择合适的batch_size等超参数。
(3.2)从打分模型数据集Dscore中获取数据,将每条数据拆分为原输入文本x、生成结果y和参考摘要
Figure BDA0004050639190000061
对于每条数据,随机在生成结果y上取一个位置r,将y截断,取从句子开始处到截断位置的片段y[0:r],依据参考摘要/>
Figure BDA0004050639190000062
计算ROUGE-1指标分数Seval。将原输入文本x和生成结果片段y[0:r]以分句token即[SEP]连接,作为打分模型的输入,将指标分数Seval作为每个输入对应的标签。
(3.3)选择均方误差损失函数和Adam优化器,对打分模型Mscore进行多轮训练直至收敛。根据验证集的反馈调整超参数,提升模型打分性能。
(3.4)使用测试集检验打分模型Mscore的泛化能力,当打分的精准程度满足预期阈值时,训练完成。
(4)将打分模型与初始生成模型结合:
(4.1)使用测试集进行生成,在文本生成模型G1的解码阶段,选择出现概率前50的词作为候选词,获取所有候选词的概率,构成50维向量p0
(4.2)将上述候选词分别拼接在当前阶段已生成的文本末端,组成50个候选句子片段,利用打分模型对以上句子片段分别进行打分,获取对应的输出分数,构成50维向量spre
(4.3)依照概率分布pfinal的计算公式,将候选词的概率与每个词对应的分数结合,取α为0.5,得到50维向量pfinal,代表调整后的概率分布。
(4.4)选择贪心的采样策略,依据调整后的概率分布pfinal,每次选择概率最大的词,连续自回归生成,直至生成结束token或者长度超过预设的限制,结束生成。
经过本发明对初始生成模型GPT2-Chinese的优化,根据模型在测试集上的测试结果,优化后模型的生成质量明显高于初始生成模型。具体数据如表1所示:
表1初始生成模型优化前后评价指标分数对比
ROUGE-1 ROUGE-2 ROUGE-L
GPT2-Chinese 0.2883 0.1571 0.2579
优化后的生成模型 0.3472 0.2073 0.3142

Claims (6)

1.一种基于深度学习的文本生成方法,其特征在于,包括如下步骤:
步骤(1):收集目标任务数据集,增加损失函数,在目标任务数据集上重新训练文本的初始生成模型G0
步骤(2):构建用于训练打分模型的数据集,包括数据集的生成以及划分;
步骤(3):构建打分模型Mscore,使用步骤(2)所述数据集对打分模型进行训练至收敛,通过测试集验证打分模型性能;
步骤(4):将打分模型与生成模型相结合,在生成模型的解码阶段插入打分模块,通过打分模型的输出调整候选词的概率分布;
进一步地,所述步骤(1)包括以下步骤:
(1.1)根据目标任务,收集相关数据集Dgen,其中每一条数据包括生成模型的输入和生成结果的标准参考;选择初始生成模型G0的结构,要求初始生成模型G0可以在数据集Dgen上进行训练和推断;
(1.2)确定表示模型的结构,构建表示模型Mr;在数据集Dgen上训练表示模型Mr,使表示模型Mr可以完成从句子到向量的映射;
(1.3)设计均方误差损失函数Lr,公式如下:
Figure FDA0004050639180000011
其中zi表示在训练过程中模型生成的第i个句子输入表示模型Mr后得到的向量,即Mr(y),该句子由表示模型最后一层的输出依据贪心算法采样得到;
Figure FDA0004050639180000012
表示第i个句子的标准生成结果由表示模型Mr映射后的向量,即/>
Figure FDA0004050639180000013
将均方误差损失与初始生成模型G0的损失LLM相加,即:
L=Lr+LLM
将L作为新的损失函数重新训练初始生成模型G0,得到优化后的生成模型G1
进一步地,所述步骤(2)包括以下步骤:
(2.1)令优化后的生成模型G1在数据集Dgen上完成生成任务,将每一句的生成结果y与对应的原输入x、标准参考
Figure FDA0004050639180000021
一一匹配,组成全新的数据集,即打分模型数据集Dscore
(2.2)将打分模型数据集Dscore划分成训练集、验证集和测试集,分别用于打分模型Mscore的训练、验证和测试;
进一步地,所述步骤(3)包括以下步骤:
(3.1)构建打分模型Mscore,确定网络结构,设置合理超参数;
(3.2)从打分模型数据集Dscore中获取数据,将每条数据拆分为原输入x、生成结果y和标准参考
Figure FDA0004050639180000022
将生成结果y从随机位置r截断,取句子开头到断点的片段y[0:r],根据当前任务的评价指标对该片段进行评价,将原输入x和生成结果片段y[0:r]共同作为打分模型的输入,将评价分数Seval作为每个输入对应的标签;
(3.3)开始执行打分模型Mscore的训练,选择损失函数和优化器,迭代多轮训练直至收敛,通过验证集调整超参数以提升性能,最大化模型为生成结果片段打分的准确度;
(3.4)使用测试集检验模型Mscore的泛化能力,保证训练完成的打分模型具有对于目标文本生成任务的泛用性;
进一步地,所述步骤(4)包括以下步骤:
(4.1)使用测试集进行生成,在优化后的生成模型G1的解码阶段,根据模型输出的概率分布,选择概率最高的k个词作为候选词,获取所有候选词的概率,构成k维向量p0,其中,k为超参数;
(4.2)将候选词分别拼接在当前生成阶段已生成的文本末端,组成k个候选句子片段,利用打分模型对句子片段进行打分,获取对应的输出分数,构成k维向量spre
(4.3)将候选词的概率与对应每个候选句子片段的分数结合,得到k维向量pfinal,代表调整后的概率分布,具体公式如下,其中α是超参数,用于调节打分模型对生成过程的影响程度:
pfinal=αp0+(1-α)spre
(4.4)根据不同的任务要求选择采样策略,依调整后的概率分布pfinal采样,得到句子下一位置的生成结果。
2.根据权利要求1所述的一种基于深度学习的文本生成方法,其特征在于,所述的初始生成模型G0,模型结构选择LSTM,Transformer或GPT。
3.根据权利要求1所述的一种基于深度学习的文本生成方法,其特征在于,所述的表示模型Mr为一个神经网络模型,以文本作为输入,输出指定维度的向量表示。
4.根据权利要求3所述的一种基于深度学习的文本生成方法,其特征在于,所述的表示模型Mr的模型结构选用ELMO或Bert。
5.根据权利要求1所述的一种基于深度学习的文本生成方法,其特征在于,所述的打分模型Mscore为一个可进行训练的神经网络模型,以自然语言作为输入,输出0到1之间的数作为分数。
6.根据权利要求5所述的一种基于深度学习的文本生成方法,其特征在于,所述的打分模型Mscore的模型结构选择Bert。
CN202310040513.4A 2023-01-13 2023-01-13 一种基于深度学习的文本生成方法 Pending CN116226378A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310040513.4A CN116226378A (zh) 2023-01-13 2023-01-13 一种基于深度学习的文本生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310040513.4A CN116226378A (zh) 2023-01-13 2023-01-13 一种基于深度学习的文本生成方法

Publications (1)

Publication Number Publication Date
CN116226378A true CN116226378A (zh) 2023-06-06

Family

ID=86572432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310040513.4A Pending CN116226378A (zh) 2023-01-13 2023-01-13 一种基于深度学习的文本生成方法

Country Status (1)

Country Link
CN (1) CN116226378A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116910223A (zh) * 2023-08-09 2023-10-20 北京安联通科技有限公司 一种基于预训练模型的智能问答数据处理系统
CN117634468A (zh) * 2023-11-30 2024-03-01 北京智谱华章科技有限公司 一种基于大语言模型的通用文本质量评价方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116910223A (zh) * 2023-08-09 2023-10-20 北京安联通科技有限公司 一种基于预训练模型的智能问答数据处理系统
CN116910223B (zh) * 2023-08-09 2024-06-11 北京安联通科技有限公司 一种基于预训练模型的智能问答数据处理系统
CN117634468A (zh) * 2023-11-30 2024-03-01 北京智谱华章科技有限公司 一种基于大语言模型的通用文本质量评价方法
CN117634468B (zh) * 2023-11-30 2024-05-28 北京智谱华章科技有限公司 一种基于大语言模型的通用文本质量评价方法

Similar Documents

Publication Publication Date Title
CN108763504B (zh) 一种基于强化双通道序列学习的对话回复生成方法及系统
CN116226378A (zh) 一种基于深度学习的文本生成方法
CN109710915B (zh) 复述语句生成方法及装置
CN113343705B (zh) 一种基于文本语义的细节保持图像生成方法及系统
CN109977234A (zh) 一种基于主题关键词过滤的知识图谱补全方法
CN110895932A (zh) 基于语言种类和语音内容协同分类的多语言语音识别方法
CN113254604B (zh) 一种基于参考规范的专业文本生成方法及装置
CN111626041B (zh) 一种基于深度学习的音乐评论生成方法
CN108549703A (zh) 一种基于循环神经网络的蒙古语语言模型的训练方法
CN111782788A (zh) 一种面向开放域对话系统的情感回复自动生成方法
KR20040004558A (ko) 콘텐트 변환 방법 및 장치
CN112488111B (zh) 一种基于多层级表达引导注意力网络的指示表达理解方法
CN117034961B (zh) 一种基于bert的中法互译质量测评方法
CN114239589A (zh) 语义理解模型的鲁棒性评估方法、装置及计算机设备
CN115796187A (zh) 一种基于对话结构图约束的开放域对话方法
CN114492464A (zh) 一种基于双向异步序列的对话生成方法及系统
CN114692615A (zh) 一种针对小语种的小样本意图识别方法
CN108563639B (zh) 一种基于循环神经网络的蒙古语语言模型
CN111709245A (zh) 基于语义自适应编码的汉-越伪平行句对抽取方法
CN108829675A (zh) 文档表示方法及装置
CN116090440B (zh) 基于反馈的口语文本转换方法、装置及电子设备
CN111583915B (zh) n-gram语言模型的优化方法、装置、计算机设备和存储介质
CN109101499B (zh) 基于神经网络的人工智能语音学习方法
CN109062911B (zh) 一种人工智能语音建模方法
CN114418033B (zh) 一种利用CodeBert各层表征信息的代码编程语言分类方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination