CN112883709B - 一种利用自然语言处理技术自动生成对联的方法 - Google Patents
一种利用自然语言处理技术自动生成对联的方法 Download PDFInfo
- Publication number
- CN112883709B CN112883709B CN202110415428.2A CN202110415428A CN112883709B CN 112883709 B CN112883709 B CN 112883709B CN 202110415428 A CN202110415428 A CN 202110415428A CN 112883709 B CN112883709 B CN 112883709B
- Authority
- CN
- China
- Prior art keywords
- data
- couplet
- model
- couplets
- word
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000005516 engineering process Methods 0.000 title claims abstract description 21
- 238000003058 natural language processing Methods 0.000 title claims abstract description 18
- 230000011218 segmentation Effects 0.000 claims abstract description 63
- 238000012549 training Methods 0.000 claims abstract description 42
- 238000013519 translation Methods 0.000 claims abstract description 25
- 230000006870 function Effects 0.000 claims abstract description 19
- 238000013145 classification model Methods 0.000 claims abstract description 6
- 230000014616 translation Effects 0.000 claims description 23
- 238000011161 development Methods 0.000 claims description 18
- 230000018109 developmental process Effects 0.000 claims description 18
- 238000001914 filtration Methods 0.000 claims description 13
- 238000011156 evaluation Methods 0.000 claims description 10
- 238000000605 extraction Methods 0.000 claims description 6
- 238000007781 pre-processing Methods 0.000 claims description 6
- 238000011176 pooling Methods 0.000 claims description 5
- 238000012216 screening Methods 0.000 claims description 4
- 230000003247 decreasing effect Effects 0.000 claims description 3
- 238000004519 manufacturing process Methods 0.000 claims description 3
- 238000013515 script Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 230000001537 neural effect Effects 0.000 claims description 2
- 230000009466 transformation Effects 0.000 claims description 2
- 230000036651 mood Effects 0.000 abstract description 2
- 238000012545 processing Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 235000017166 Bambusa arundinacea Nutrition 0.000 description 1
- 235000017491 Bambusa tulda Nutrition 0.000 description 1
- 241001330002 Bambuseae Species 0.000 description 1
- 241000206753 Gloiopeltis Species 0.000 description 1
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 1
- 235000015334 Phyllostachys viridis Nutrition 0.000 description 1
- 239000011425 bamboo Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 239000003205 fragrance Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/355—Class or cluster creation or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明公开一种利用自然语言处理技术自动生成对联的方法,步骤为:获取、处理上联‑下联数据对、关键词‑上联数据对、横批‑上下联数据对;对所有对联数据进行分词;搭建用于实现对对联功能的机器翻译模型,并使用上联‑下联数据对对其进行训练;根据韵脚平仄规律对模型输出进行重排序、将对对联过程中出现重复翻译现象的输出进行强制截断,对模型输出进行评价;搭建文本生成模型并进行训练,使用长度惩罚系数自动调整策略对生成的对联长度进行自动调整;搭建用于实现横批生成功能的文本分类模型并对其进行训练。本发明实现了对联任务十分完整的功能,并且上下联之间的语义契合度极高,平仄对应准确,生成的对联与关键词相关度很高,意境优美。
Description
技术领域
本发明涉及将机器翻译技术、文本生成技术、文本分类技术应用对联的相关任务上,具体为一种利用自然语言处理技术自动生成对联的方法。
背景技术
随着机器翻译技术、文本生成技术、文本分类技术等自然语言处理相关研究越来越受欢迎,很多学者和技术人员尝试将其应用于日常生活中,对联就是一个很好的例子。
目前比较成熟的“自动对联系统”是微软亚洲研究院自然语言计算组研发的计算机自动对联系统。当用户给定上联,它能够自动提供若干下联供用户选择;并且当用户确定一副对联后,它还能够生成若干四字横批供用户参考。除了这些基本功能外,微软对联系统还有下联定字、用字推敲、机巧对联、嵌名对联、图片装裱等特色功能。通过亲自体验这套系统,发现这套系统在对下联时提供直接方式和分词方式,能够给用户提供更好的使用体验,但以上两种方式在上下联语义配合方面都还存在着一些问题;与此同时,很多时候横批与上下联的关联还不够紧密;此外,对联长度被限制在了10字以内,并且不可以含有标点。现有技术中也存在较简陋的自动对联系统,与微软对联相比,只能实现用户给定上联,系统自动给出下联的功能,并且上下联语义不搭的问题依然存在,较微软对联的优点在于没有字数限制并且对联中可以包含标点,但除了中文标点的其他符号是无法识别的。
综合来看,目前针对自动生成对联的研究较少,市面上的产品存在着功能不完整、生成对联质量不佳的问题。
发明内容
针对现有技术中的上述不足,本发明提供一种利用自然语言处理技术自动生成对联的方法,将机器翻译技术、文本生成技术、文本分类技术应用于对联相关任务中,将Transformer翻译模型应用于对对联和根据关键词生成对联的任务中,利用Transformer编码端和池化层、softmax层实现横批的自动生成。
为了实现上述内容,本发明采取的技术方案是:
本发明提供一种利用自然语言处理技术自动生成对联的方法,包括以下步骤:
1)获取、处理三种训练数据:上联-下联数据对、关键词-上联数据对、横批-上下联数据对;
2)将所有对联数据使用两种方式进行分词:结巴分词和古诗分词相结合的分词方式、按字分开的分词方式;
3)搭建用于实现对对联功能的机器翻译模型,并使用上联-下联数据对对其进行训练,之后使用质量更好的数据对模型进行微调;
4)根据韵脚平仄规律对模型输出进行重排序、将对对联过程中出现的重复翻译现象的输出进行强制截断,设计基于韵脚平仄检查的评价方法对模型输出进行评价;
5)搭建用于实现根据关键词生成对联的文本生成模型并使用关键词-上联数据对对其进行训练,使用本发明设计的长度惩罚系数自动调整策略对生成的对联长度进行自动调整;
6)搭建用于实现横批生成功能的文本分类模型并使用横批-上下联数据对对其进行训练。
步骤1)中,对收集到的对联数据进行处理,主要包括关键词-上联数据对和横批-上下联数据对的获取,具体如下:
101)用于关键词生成对联子系统训练的数据是关键字与上联一一对应的数据,这部分的上联数据一部分从用于对对联子系统训练的数据中筛选出来,筛选的标准是:不含标点符号、字数为N;另一部分则是由诗词数据中筛选出来的,筛选标准是:不含标点符号、字数为N、最后一个字为仄声;此后,对筛选出的对联数据进行关键词抽取,得到2字、3字、4字的关键词。
102)用于横批生成的数据为横批和对联一一对应的数据。通过人为制造伪数据用于模型训练;伪数据的获取方法为:在所有的四字成语中筛选出适合做横批的成语;将所有的横批分类,将语义相近的横批分作一类;对于每一类横批使用词向量模型获取与其高度相关的词语,并以此作为关键词,使用根据关键词生成对联的模型生成对联数据。
步骤2)中,将所有对联数据使用两种方式进行分词——结巴分词和古诗分词相结合的分词方式、按字分开的分词方式,具体如下:
201)在收集的对联数据中,针对古语对联采用古诗词的分词方式,即根据对联分句五言和七言采取二二一和二二三的分词方式,对于标点符号默认是一个词;针对现代语对联,使用python自带的结巴分词工具对其分词,对于标点符号默认是一个词。
202)上下联之间的对仗为字字对应,按字分词的分词方式进行分词。
步骤3)中,首先使用transformer神经翻译模型作为对对联子模型,并使用上联-下联数据对对其进行训练,之后使用质量更好的数据对模型进行微调,具体步骤为:
301)数据预处理:数据预处理阶段的主要任务主要是乱码过滤、分词、开发集抽取、长度比过滤;其中乱码过滤是将数据集中带有乱码的数据去除;分词是借助工具将源语言和目标语言按步骤2)所述的分词方法分开;开发集抽取是将数据集分成训练集和开发集,其中开发集也叫验证集,其作用是当训练集训练出多个模型后,为了能找到效果最佳的模型,使用各个模型对开发集数据进行预测,并记录模型准确度,即用来调整模型参数;长度比过滤是将源语言与目标语言中分词后句子长度不同的数据去掉。
302)生成T2T数据流:将训练数据转化为能够在T2T系统中流动的数据格式,同时生成源语言单词表和目标语言单词表;
303)模型训练和微调:使用普通的对联数据对模型进行训练,再利用提前抽取出的高质量的特殊对联对模型进行微调,特殊对联包括顶针联、回文联、数字联、叠字联、嵌字联以及无情联。
步骤4)中,根据对联的平仄规律将对对联子系统的结果进行重排序、将对对联过程中出现重复翻译现象的输出进行强制截断,并设计基于韵脚平仄检查的评价方法对模型输出进行评价,具体为:
401)重排序:首先对上联进行分词,并用空格隔开,将下联在相同的位置上插入空格;根据上下联单词词尾字生成平仄列表,对照平仄列表对应位置是否相反,给TOP-K个结果在原得分的基础上进行打分;
402)对出现重复翻译的输出进行强制截断:强制将模型输出与上联最后一字相对的位置替换成代表句子结束符号‘<EOS>’的‘1’;
403)使用根据对联的规则编写的脚本对生成的对联质量进行评价,只涉及字符层面而不涉及语义层面,用于初步评估对对联子系统的性能,从以下几个角度对模型输出的下联进行评价:上下联字数是否相等;上下联每个对应的字是否都平仄相对;上下联分词后,每个词尾字是否都平仄相对;上联重复的字,下联是否也重复;上联不重复的字,下联是否也不重复;下联中是否未出现上联中的字。
在步骤5)中,用于实现根据关键词生成对联的生成模型仍然使用transformer模型,并使用关键词-上联数据对对其进行训练,其中提取出的关键词作为模型输入,上联数据作为输出。
还包括以下步骤:
在解码时使用长度惩罚系数自动调整策略对生成的对联长度进行约束:解码时,随时监测目标序列的生成长度并根据目标序列的生成长度,以0.1为调节幅度自动增大或减小长度惩罚系数。
在步骤6)中,使用transformer模型的编码器部分作为强大的文本特征提取器用于提取上联和下联中的深层抽象特征,并在此基础上添加一个池化层和softmax层进行文本分类。
本发明具有以下有益效果及优点:
1.本发明提供一种利用自然语言处理技术自动生成对联的方法,实现了对联任务十分完整的功能,并且上下联之间的语义契合度极高,平仄对应十分准确,根据关键词生成的对联与关键词相关度很高,意境十分优美。
2.本发明将自然语言处理领域的机器翻译技术、文本生成技术、文本分类技术应用于对联的相关任务中,为人们的日常生活带来极大的方便的同时,极大丰富了人们的娱乐生活,有利于中华传统文化的传播。
3.本发明实现了一个自动对联系统,能在各种情境下生成对联,使对联更好地融入到人们的日常生活中。
附图说明
图1为本发明中获取对联关键词过程图;
图2A为本发明在实现横批生成时制造伪数据用于模型训练的过程图;
图2B为本发明在实现横批生成时制造伪数据的实例图;
图3为本发明中实现对对联任务的transformer模型中编码器-解码器工作图;
图4为本发明中利用文本分类实现横批生成任务的模型图。
具体实施方式
下面结合说明书附图对本发明做进一步阐述。
本发明提供一种利用自然语言处理技术自动生成对联的方法,将Transformer翻译模型应用于对对联和根据关键词生成对联的任务中,利用Transformer编码端和池化层、softmax层实现横批的自动生成。具体实现过程包括针对对对联功能的重排序、自动评价、关键词-对联数据对的获取、生成对联长度的控制、横批-对联伪数据的获取等。
本发明方法包括以下步骤:
1)获取、处理三种训练数据:上联-下联数据对、关键词-上联数据对、横批-上下联数据对;
2)将所有对联数据使用两种方式进行分词:结巴分词和古诗分词相结合的分词方式、按字分开的分词方式;
3)搭建用于实现对对联功能的机器翻译模型,并使用上联-下联数据对对其进行训练,之后使用质量更好的数据对模型进行微调;
4)根据韵脚平仄规律对模型输出进行重排序、将对对联过程中出现的重复翻译现象的输出进行强制截断,设计基于韵脚平仄检查的评价方法对模型输出进行评价;
5)搭建用于实现根据关键词生成对联的文本生成模型并使用关键词-上联数据对对其进行训练,使用本发明设计的长度惩罚系数自动调整策略对生成的对联长度进行自动调整;
6)搭建用于实现横批生成功能的文本分类模型并使用横批-上下联数据对对其进行训练。
步骤1)获取、处理三种训练数据:上联-下联数据对、关键词-上联数据对、横批-上下联数据对。其中上联-下联数据对可以直接获取。关键词-上联数据对的获取需要借助TF-IDF算法,如图1所示,利用TF-IDF算法在现有对联中提取关键词,并在所有2字、3字、4字的关键词候选中挑选概率最高的一个作为最终的关键词。横批-上下联数据对的获取需要人工将横批数据进行聚类后借助词向量模型和关键词生成对联模型制造伪数据,伪数据的生成过程如图2A所示,利用词向量模型生成与收集到的横批高度相关的词语,并借助关键词生成对联的模型生成对联,从而解决横批-对联数据严重不足的问题,该过程的具体实例如图2B所示;
步骤2)将所有对联数据使用两种方式进行分词:结巴分词和古诗分词相结合的分词方式、按字分开的分词方式,具体如下:
201)在收集的对联数据中,有百分之七十的数据是古语对联,对联的停顿、用词、语言习惯与古诗词类似,剩下百分之三十的数据是现代语对联,符合现代人的语言习惯。所以针对古语对联采用古诗词的分词方式,即根据对联分句五言和七言采取二二一和二二三的分词方式,对于标点符号默认是一个词,例如:“晚风/摇树/树还挺”、“修竹/翠萝/寒/,/天雾/萦身/,/月香/满袖”;针对现代语对联,使用python自带的结巴分词工具对其分词,对于标点符号默认是一个词,例如:“勤/锻炼/,/平常心/,/心宽/体健”。
202)上下联之间的对仗为字字对应,系统需要学到更多的字字对仗的规律和字与字之间的平仄对应。而且结巴分词和古诗分词相结合的分词方式由于古诗分词方式的加入会产生很多并不是很标准的词语,导致词表过大,在训练过程中会出现很多频率较低的词语被模型认为是生词(UNK),从而影响系统的性能。因而设计了按字分词的分词方式进行分词,例如:“晨/露/润/花/花/更/红/”。
步骤3)搭建Transformer翻译模型用于实现对对联功能,并使用上联-下联数据对对其进行训练,Transformer模型使用的编码器-解码器框架在实现对对联功能时的具体过程如图3所示。在基本训练结束之后使用质量更好的特殊对联,如顶针联、回文联、数字联、叠字联、嵌字联、无情联等对模型进行微调,具体步骤为:
301)数据预处理:数据预处理阶段的主要任务主要是乱码过滤、分词、开发集抽取、长度比过滤;其中乱码过滤是将数据集中带有乱码的数据去除;分词是借助工具将源语言和目标语言按步骤2)所述的分词方法分开;开发集抽取是将数据集分成训练集和开发集,其中开发集也叫验证集,其作用是当训练集训练出多个模型后,为了能找到效果最佳的模型,使用各个模型对开发集数据进行预测,并记录模型准确度,即用来调整模型参数;长度比过滤是将源语言与目标语言中分词后句子长度不同的数据去掉。在对联任务中,由于分词方式的选择不同,所以分词这一步是单独进行的,长度比过滤则是将对联数据中上下联字数不等的数据去掉。
302)生成T2T数据流:将训练数据转化为能够在T2T系统中流动的数据格式,同时生成源语言单词表和目标语言单词表;
303)模型训练和微调:使用普通的对联数据对模型进行训练,由于训练数据中顶针联、回文联、数字联、叠字联、嵌字联、无情联等特殊种类对联的数量较少,因而这些对联中的规则在预训练时,模型并不能学习得十分充分,因此需要再利用提前抽取出的高质量的特殊对联对模型进行微调,特殊对联包括顶针联、回文联、数字联、叠字联、嵌字联以及无情联。
步骤4)根据韵脚平仄规律对模型输出进行重排序、将对对联过程中出现重复翻译现象的输出进行强制截断,设计基于韵脚平仄检查的评价方法对模型输出进行评价,具体为:
401)重排序:首先对上联进行分词,并用空格隔开,将下联在相同的位置上插入空格;根据上下联单词词尾字生成平仄列表,对照平仄列表对应位置是否相反,给TOP-K个结果在原得分的基础上进行打分;
402)对出现重复翻译的输出进行强制截断:机器翻译问题都会存在重复翻译的问题,对联任务中的具体表现:上联是“国庆庆国,中外庆,同天同庆”,对出的下联是“新春春新,干坤春,伴日伴春,春,伴日伴春,春,伴日伴我春,伴日伴日伴日伴日伴日伴月伴日伴日伴月伴日伴日伴月伴月伴日伴月伴月伴日伴月伴月伴月偕春”,经过观察上下联可以发现如果将下联在上联长度强制截断,下联会变成“新春春新,干坤春,伴日伴春”,可以与上联相对,所以在解码时可以将下联根据上联长度强制截断。具体方法是强制将模型输出与上联最后一字相对的位置替换成代表句子结束符号‘<EOS>’的‘1’;
403)传统的BLEU评价方法对于对联任务并不适用,需要制定一个标准来评价对对联子系统性能。本发明涉及到的评价标准主要是使用根据对联的规则编写的脚本对生成的对联质量进行评价,只涉及字符层面而不涉及语义层面,用于初步评估对对联子系统的性能,从以下几个角度对模型输出的下联进行评价:上下联字数是否相等、上下联每个对应的字都平仄相对、上下联分词后,每个词尾字都平仄相对、上联重复的字,下联也重复、上联不重复的字,下联也不重复、下联中不出现上联中的字。
步骤5)搭建用于实现根据关键词生成对联的文本生成模型并使用关键词-上联数据对对其进行训练,在解码时使用本发明设计的长度惩罚系数自动调整策略对生成的对联长度进行调整,具体如下:
针对如何将极少的文本信息合理扩展、如何控制生成的序列长度,在解码时使用长度惩罚系数自动调整策略对生成的对联长度进行约束:解码时,随时监测目标序列的生成长度并根据目标序列的生成长度,以0.1为调节幅度自动增大或减小长度惩罚系数。
步骤6)搭建用于实现横批生成功能的文本分类模型并使用横批-上下联数据对对其进行训练。模型结构如图4所示。由于上联和下联的内容较普通的文本分类输入更加短小精炼,因此使用常规的文本分类方法并不能得到预期中的理想性能。在本发明中,使用transformer模型的编码器部分作为强大的文本特征提取器用于提取上联和下联中的深层抽象特征,并在此基础上添加一个池化层和softmax层进行文本分类。
Claims (8)
1.一种利用自然语言处理技术自动生成对联的方法,其特征在于包括以下步骤:
1)获取、处理三种训练数据:上联-下联数据对、关键词-上联数据对、横批-上下联数据对;
2)将所有对联数据使用两种方式进行分词:结巴分词和古诗分词相结合的分词方式、按字分开的分词方式;
3)搭建用于实现对对联功能的机器翻译模型,并使用上联-下联数据对对其进行训练,之后使用质量更好的数据对模型进行微调;
4)根据韵脚平仄规律对模型输出进行重排序、将对对联过程中出现的重复翻译现象的输出进行强制截断,设计基于韵脚平仄检查的评价方法对模型输出进行评价;
5)搭建用于实现根据关键词生成对联的文本生成模型并使用关键词-上联数据对对其进行训练,使用长度惩罚系数自动调整策略对生成的对联长度进行自动调整;
6)搭建用于实现横批生成功能的文本分类模型并使用横批-上下联数据对对其进行训练。
2.按权利要求1所述利用自然语言处理技术自动生成对联的方法,其特征在于:步骤1)中,对收集到的对联数据进行处理,主要包括关键词-上联数据对和横批-上下联数据对的获取,具体如下:
101)用于关键词生成对联子系统训练的数据是关键字与上联一一对应的数据,这部分的上联数据一部分从用于对对联子系统训练的数据中筛选出来,筛选的标准是:不含标点符号、字数为N;另一部分则是由诗词数据中筛选出来的,筛选标准是:不含标点符号、字数为N、最后一个字为仄声;此后,对筛选出的对联数据进行关键词抽取,得到2字、3字、4字的关键词;
102)用于横批生成的数据为横批和对联一一对应的数据,通过人为制造伪数据用于模型训练;伪数据的获取方法为:在所有的四字成语中筛选出适合做横批的成语;将所有的横批分类,将语义相近的横批分作一类;对于每一类横批使用词向量模型获取与其高度相关的词语,并以此作为关键词,使用根据关键词生成对联的模型生成对联数据。
3.按权利要求1所述的利用自然语言处理技术自动生成对联的方法,其特征在于:步骤2)中,将所有对联数据使用两种方式进行分词——结巴分词和古诗分词相结合的分词方式、按字分开的分词方式,具体如下:
201)在收集的对联数据中,针对古语对联采用古诗词的分词方式,即根据对联分句五言和七言采取二二一和二二三的分词方式,对于标点符号默认是一个词;针对现代语对联,使用python自带的结巴分词工具对其分词,对于标点符号默认是一个词;
202)上下联之间的对仗为字字对应,按字分词的分词方式进行分词。
4.按权利要求1所述的利用自然语言处理技术自动生成对联的方法,其特征在于:步骤3)中,首先使用transformer神经翻译模型作为对对联子模型,并使用上联-下联数据对对其进行训练,之后使用质量更好的数据对模型进行微调,具体步骤为:
301)数据预处理:数据预处理阶段的主要任务主要是乱码过滤、分词、开发集抽取、长度比过滤;其中乱码过滤是将数据集中带有乱码的数据去除;分词是借助工具将源语言和目标语言按步骤2)所述的分词方法分开;开发集抽取是将数据集分成训练集和开发集,其中开发集也叫验证集,其作用是当训练集训练出多个模型后,为了能找到效果最佳的模型,使用各个模型对开发集数据进行预测,并记录模型准确度,即用来调整模型参数;长度比过滤是将源语言与目标语言中分词后句子长度不同的数据去掉;
302)生成T2T数据流:将训练数据转化为能够在T2T系统中流动的数据格式,同时生成源语言单词表和目标语言单词表;
303)模型训练和微调:使用普通的对联数据对模型进行训练,再利用提前抽取出的高质量的特殊对联对模型进行微调,特殊对联包括顶针联、回文联、数字联、叠字联、嵌字联以及无情联。
5.按权利要求1所述的利用自然语言处理技术自动生成对联的方法,其特征在于:步骤4)中,根据对联的平仄规律将对对联子系统的结果进行重排序、将对对联过程中出现重复翻译现象的输出进行强制截断,并设计基于韵脚平仄检查的评价方法对模型输出进行评价,具体为:
401)重排序:首先对上联进行分词,并用空格隔开,将下联在相同的位置上插入空格;根据上下联单词词尾字生成平仄列表,对照平仄列表对应位置是否相反,给TOP-K个结果在原得分的基础上进行打分;
402)对出现重复翻译的输出进行强制截断:强制将模型输出与上联最后一字相对的位置替换成代表句子结束符号‘<EOS>’的‘1’;
403)使用根据对联的规则编写的脚本对生成的对联质量进行评价,只涉及字符层面而不涉及语义层面,用于初步评估对对联子系统的性能,从以下几个角度对模型输出的下联进行评价:上下联字数是否相等;上下联每个对应的字是否都平仄相对;上下联分词后,每个词尾字是否都平仄相对;上联重复的字,下联是否也重复;上联不重复的字,下联是否也不重复;下联中是否未出现上联中的字。
6.按权利要求1所述的利用自然语言处理技术自动生成对联的方法,其特征在于:在步骤5)中,用于实现根据关键词生成对联的生成模型仍然使用transformer模型,并使用关键词-上联数据对对其进行训练,其中提取出的关键词作为模型输入,上联数据作为输出。
7.按权利要求6所述的利用自然语言处理技术自动生成对联的方法,其特征在于还包括以下步骤:
在解码时使用长度惩罚系数自动调整策略对生成的对联长度进行约束:解码时,随时监测目标序列的生成长度并根据目标序列的生成长度,以0.1为调节幅度自动增大或减小长度惩罚系数。
8.按权利要求1所述的利用自然语言处理技术自动生成对联的方法,其特征在于:在步骤6)中,使用transformer模型的编码器部分作为强大的文本特征提取器用于提取上联和下联中的深层抽象特征,并在此基础上添加一个池化层和softmax层进行文本分类。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110415428.2A CN112883709B (zh) | 2021-04-18 | 2021-04-18 | 一种利用自然语言处理技术自动生成对联的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110415428.2A CN112883709B (zh) | 2021-04-18 | 2021-04-18 | 一种利用自然语言处理技术自动生成对联的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112883709A CN112883709A (zh) | 2021-06-01 |
CN112883709B true CN112883709B (zh) | 2023-07-14 |
Family
ID=76040093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110415428.2A Active CN112883709B (zh) | 2021-04-18 | 2021-04-18 | 一种利用自然语言处理技术自动生成对联的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112883709B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114417893A (zh) * | 2021-12-08 | 2022-04-29 | 成都理工大学 | 一种语言对联信息处理系统、方法及构建方法 |
CN114519359A (zh) * | 2022-01-13 | 2022-05-20 | 维沃移动通信有限公司 | 译文确定方法、装置及电子设备 |
CN114580408B (zh) * | 2022-03-10 | 2024-05-07 | 浙江理工大学 | 基于双层注意力联合学习的下联生成方法和装置 |
CN115600646B (zh) * | 2022-10-19 | 2023-10-03 | 北京百度网讯科技有限公司 | 语言模型的训练方法、装置、介质及设备 |
CN116561254B (zh) * | 2023-05-05 | 2024-08-23 | 重庆大学 | 结合CNN和Transformer的多特征融合对联生成方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108228571A (zh) * | 2018-02-01 | 2018-06-29 | 北京百度网讯科技有限公司 | 对联的生成方法、装置、存储介质及终端设备 |
WO2019169992A1 (zh) * | 2018-03-08 | 2019-09-12 | 腾讯科技(深圳)有限公司 | 文本信息生成方法、装置、存储介质及设备 |
CN111797611A (zh) * | 2020-07-24 | 2020-10-20 | 中国平安人寿保险股份有限公司 | 对联生成模型、对联生成方法、装置、计算机设备及介质 |
-
2021
- 2021-04-18 CN CN202110415428.2A patent/CN112883709B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108228571A (zh) * | 2018-02-01 | 2018-06-29 | 北京百度网讯科技有限公司 | 对联的生成方法、装置、存储介质及终端设备 |
WO2019169992A1 (zh) * | 2018-03-08 | 2019-09-12 | 腾讯科技(深圳)有限公司 | 文本信息生成方法、装置、存储介质及设备 |
CN111797611A (zh) * | 2020-07-24 | 2020-10-20 | 中国平安人寿保险股份有限公司 | 对联生成模型、对联生成方法、装置、计算机设备及介质 |
Non-Patent Citations (1)
Title |
---|
双向GRU和自注意力机制下微博情感倾向性分析;杨凡;薛佳奇;;智能计算机与应用(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112883709A (zh) | 2021-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112883709B (zh) | 一种利用自然语言处理技术自动生成对联的方法 | |
CN109670041A (zh) | 一种基于双通道文本卷积神经网络的带噪非法短文本识别方法 | |
CN110232439B (zh) | 一种基于深度学习网络的意图识别方法 | |
US8369612B2 (en) | System and methods for Arabic text recognition based on effective Arabic text feature extraction | |
CN111382580A (zh) | 一种面向神经机器翻译的编码器-解码器框架预训练方法 | |
CN108804397A (zh) | 一种基于少量目标字体的汉字字体转换生成的方法 | |
CN111858932A (zh) | 基于Transformer的多重特征中英文情感分类方法及系统 | |
CN102236639B (zh) | 更新语言模型的系统和方法 | |
CN111160452A (zh) | 一种基于预训练语言模型的多模态网络谣言检测方法 | |
CN111460147A (zh) | 一种基于语义增强的标题短文本分类方法 | |
CN109992770A (zh) | 一种基于组合神经网络的老挝语命名实体识别方法 | |
CN109918991A (zh) | 基于深度学习的软笔书法临摹评价方法 | |
CN107832307B (zh) | 基于无向图与单层神经网络的中文分词方法 | |
CN109543036A (zh) | 基于语义相似度的文本聚类方法 | |
CN112989848B (zh) | 一种领域适应医学文献神经机器翻译模型的训练方法 | |
CN111368563A (zh) | 一种融合聚类算法的维汉机器翻译系统 | |
CN115310429B (zh) | 一种多轮倾听对话模型中的数据压缩与高性能计算方法 | |
CN117216008A (zh) | 一种基于知识图谱的档案多模态智能编纂方法及系统 | |
CN114722829A (zh) | 一种基于语言模型的修辞古诗自动生成方法 | |
CN113516041A (zh) | 一种藏文古籍文档图像版面分割、识别方法及系统 | |
CN113627152B (zh) | 一种基于自监督学习的无监督机器阅读理解训练方法 | |
CN118035698A (zh) | 一种基于大语言模型的诗歌数据增强方法 | |
CN111488725B (zh) | 一种机器智能辅助的扎根理论编码优化方法 | |
CN115905500B (zh) | 问答对数据的生成方法及装置 | |
CN113420555A (zh) | 一种基于软约束的诗词自动生成方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A method for automatically generating couplets using natural language processing technology Granted publication date: 20230714 Pledgee: China Construction Bank Shenyang Hunnan sub branch Pledgor: SHENYANG YAYI NETWORK TECHNOLOGY CO.,LTD. Registration number: Y2024210000102 |