技术特征:
1.一种基于预训练的古体诗自动生成方法,其特征在于包括以下步骤:1)收集海量的单语语料,包括现有古体诗词、文言文,然后进行分词数据预处理,使用单语语料训练语言模型得到预训练模型;2)利用收集到的现有古体诗数据构建训练语料,得到古体诗的训练数据;3)利用步骤2)中提取到的关键词训练一个语言模型作为关键词扩展模块;4)利用步骤2)中构建好的古体诗训练语料在步骤1)中训练好的预训练模型上进行微调;5)将用户输入的关键词利用步骤3)中的关键词扩展模块进行扩展并结合格式控制符构建成模型输入,送入到训练好的模型中生成古体诗。2.按专利要求1所述的基于预训练的古体诗自动生成方法,其特征在于:步骤1)中,收集中文单语语料和现有古体诗词、文言文语料,对数据进行预处理,利用公开脚本进行清洗、分词操作形成训练数据,然后利用开源预训练模型进行语言模型任务的训练,最终得到收敛的预训练模型参数。3.按专利要求1所述的基于预训练的古体诗自动生成方法,其特征在于:在步骤2)中,构建古体诗训练语料具体为:201)利用关键词提取技术从现有每句古体诗中提取出关键词组成整首古体诗的关键词,每一句保留一个关键词作为提取结果,将各句的提取结果拼接形成关键词序列;202)关键词序列结合古体诗格式控制序列以及二者之间加设的标识符形成训练数据中的头部,其中,格式控制包括五言绝句、七言绝句、五言律诗、七言律诗;203)将古体诗的内容看做一个序列,即将每一句进行首尾拼接形成古体诗内容序列作为训练数据中的内容,最终古体诗序列化为格式化的文本序列<格式控制+关键词+古体诗内容>。4.按专利要求1所述的基于预训练的古体诗自动生成方法,其特征在于:在步骤3)中,用关键词序列训练一个语言模型作为关键词扩展模块,具体为:对于关键词序列w:w1,w2,...,w
n
,利用双向单层循环神经网络模型训练一个语言模型,其中一元、二元、三元的语言模型定义如下:n=1unigram:n=2bigram:n=3trigram:其中p为序列w的概率,w
i
为w中的第i个单词,n为序列w的长度;采用双向单层循环神经网络模型进行优化训练,最后得到一个关键词扩展模块,该模块用于扩展用户输入的关键词,丰富模型的输入信息,这样使得模型生成的古体诗整体会更加主题明确和具有相关性。5.按专利要求1所述的基于预训练的古体诗自动生成方法,其特征在于:在步骤4)中,
利用古体诗训练语料在步骤1)中预训练好的模型上进行微调,具体为:将构建好的古体单语数据输入模型中训练一个自回归语言模型,其目标是优化任何观测到的序列,使其生成的概率最大化:其中p为序列x的生成概率,xi为序列x中的第i个单词;微调只需要进行4-6轮训练即可。6.按专利要求1所述的基于预训练的古体诗自动生成方法,其特征在于:步骤5)包括:501)对于用户输入的关键词,如果关键词的个数是i个,则先用关键词扩展模型预测另外4-i个关键词,最后将最多4个关键词结合格式控制,二者之间用标识符隔开组成模型输入序列;502)模型在解码时,模型会自动在需要位置预测出逗号和句号,保证新生成的古体诗形式正确,当模型预测到终止标识符时,解码过程结束;503)整个解码过程采用束搜索来获得多个生成结果,保证内容的多样性。