

鼠年春节,用GPT-2写对联和对对联
source link: http://www.52nlp.cn/鼠年春节-用-gpt2-gpt-2写对联和对对联
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

鼠年春节临近,发现AINLP公众号对话平台对对联的需求在不断上升,而所用的自动对联功能是去年基于深度学习机器翻译思想(seq2seq)上线的一个自动对对联的对话模块: 风云三尺剑,花鸟一床书---对联数据集和自动对联机器人 。
这一年来,以BERT为代表的预训练模型不断推陈出新,席卷整个自然语言处理(NLP)领域,这其中NLP的难题之一自然语言处理生成(NLG)也得到了很大的助力,特别是去年上半年 OpenAI 的 GPT-2 的推出,非常惊艳,不过GPT-2的模型主要是基于英文领域的语料训练的,虽然到目前为止已经发布了含有有15亿参数的完整模型,对于英文领域的自动文本生成非常有帮助,但是对于中文领域的NLG来说还是很受限。
回到中文领域,我们之前推荐过AINLP技术交流群杜则尧同学的开源项目: GPT2-Chinese :《 【Github】GPT2-Chinese:中文的GPT2训练代码 》,这个项目可以针对中文数据进行GPT-2模型的训练,可以写诗,新闻,小说,或是训练通用语言模型。所以对于自动对联生成来说,我能想到的就是基于GPT2-Chinese和对联数据训练一份对联领域的GPT2模型,用于对联自动生成:写对联和对对联。幸运的是,对联数据已经有了,依然是我们去年使用过 couplet-dataset ,特别感谢提供这份数据的同学,这份对联数据包含70多万条对联,唯一可惜的是没有横批,要是有横批,就可以造更完整的自动写对联和对对联系统了。
特别需要说明的是,这里并不是基于一个大的中文 GPT-2 模型进行特定领域 finetune 的,虽然目前已经有了大型的中文 GPT-2 预训练模型: gpt2-ml ,但是和 GPT2-Chinese 是两个体系,而 GPT2-Chinese 目前还不支持这个大模型的迁移。关于如何使用 GPT2-Chinese 进行对联数据的 GPT2 模型训练,这个项目的代码和文档都写得非常清楚,直接参考即可,如果有问题,可以查看一下issue,我遇到的问题基本上就是通过文档和issue解决的,这里提几个注意的点:
1)训练数据可以按GPT2-Chinese训练数据的格式要求写个脚本进行转换;
2)训练时请将参数 min-length 设置为一个较小的数字,默认为128,由于对联数据长度比较短,按默认的设置训练后只会得到乱码,我直接设置为1;
3)根据自己GPU显存的大小调整 batch_size 和配置参数, 这里 batch_size 默认为8,训练时在1080TI的机器上会出现OOM,将其设置为4就可以完全跑通了,其他参数不用动;
对联 GPT-2 模型训练完成后,可以直接基于 GPT2-Chinese 里面的 generate.py 脚本进行测试,很方便,我基于 generate.py 和 flask-restful 写了一个 server 版本,对接到AINLP公众号后台了,感兴趣的同学可以关注AINLP公众号,直接进行测试:
关键词“写对联”触发,例如输入“写对联鼠年”,对联模型会基于“鼠年”进行自动续写,会给出以“鼠年”开头大概3个对联:
关键词“对对联”触发,例如输入“对对联 一帆风顺年年好”,会给出大概3个候选对联:
当然你可以用“上联”触发老的对联版本进行对比:
至于两个版本的效果,欢迎多做对比,如果遇到了很棒的机器对联,也欢迎在评论里分享。最后,欢迎关注AINLP公众号,测试自动生成对联和自动对对联功能:
关于AINLP对话功能模块,感兴趣的同学可以参考:
NLP相关工具及在线测试(公众号对话测试)
五款中文分词工具在线PK: Jieba, SnowNLP, PkuSeg, THULAC, HanLP
中文分词工具在线PK新增:FoolNLTK、LTP、StanfordCoreNLP
AINLP公众号新增SnowNLP情感分析模块夸夸聊天机器人及其他技能
来,试试彩虹屁生成器如果对AINLP公众号感兴趣,也欢迎参考我们的年度阅读清单: AINLP年度阅读收藏清单
Recommend
-
71
每年春节临近,总会有一种广告出现:父母做了一桌子菜,没人回家,叹气哀愁,最后子女突然出现,愁云顿消欢天喜地。其实这是一个死循环的负能价值观导向:父母没有自己的生活,把重心放在子女身上成了理所当然的事,把子女回家看老人变成一种强迫性的...
-
77
本文对联纯属虚构,如有雷同关我屁事。 相亲版 上联:捋顺红橙黄绿,不得美人 下联:远离世纪佳缘,方得始终 横批:欣欣向蓉 年度版 上联:说南道北,几个变量难取名 下联:思前想后,一行注释上头条 横批:穷逼 VIP PHP 版 上联:上班写 JavaScrip
-
28
AI对联作品赏,大家品一品这沙雕对联
-
16
By 超神经 内容提要:到了腊月二十九、三十,家家户户都要开始贴春联了。今年,各种 AI 写春联应用都纷纷上线,帮大家写春联,要试试吗? 关键词:AI 写春联 NLP 春节接近尾声,你是否还沉...
-
9
Masked LM 完成对联模型by vincent2021年3月21日2021年3月21日算法
-
4
叠字对联一则 谢益辉 / 2019-04-11 列弛大人最近又在批阅我的老折子,批完《叠字》一折...
-
3
我给我的小鱼写了对联~ 薯条杀手 楼主 2021-06-30 13:03:13 ...
-
4
沙雕新春对联,太好笑了! 新春对联 时间:2022-01-31 07:00 | 阅读: 31 ...
-
5
过年值班中,上司让去帮忙贴对联,外出一上午被人事扣了全勤和补贴,心里很不舒服怎么处理?年底放假被安排在公司值班,大领导过年不在家,打电话让去他家帮忙贴一下对联。值班也没啥事,就去了。 人事打视...
-
6
一就一寻,李嘉诚办公室对联大有文章 – 土木坛子 华人首富李嘉诚办公室有一幅对联: 发上等愿结中等缘享下等福 择高处立寻平处住向宽处行
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK