T5模型和GPT2模型初步对比

之前试着用GPT2模型训练了一个诗词对联生成程序(训练诗词生成模型)。
这个周末初步试了一下用T5模型做同样的事,是想对比一下看看两个模型的区别。

这两种模型都是基于经典的 Transformer 模型该进来的,都比最初的 Transformer 强大复杂的多。最大的区别是 GPT2 只有解码器,T5 同时有编码器和解码器。理论上T5这种模型比较善于应对给定输入,产生对应的输出的应用:比如翻译,知识问答等。GPT2 比较善于自由创作,比如写一篇短文等。还有一类只有编码器的模型,擅长处理分类问题。但实际上,只要模型够强大,各种NPL问题都能用同一个模型就解决。(比如我在GPT3模型的网站上大致测试了一下它的功能,它在写作、翻译、对话、分类等各种应用中的表现都非常出色。)

T5模型总体上比GPT2模型大不少。我这次测试的是最小型的T5模型,但也比我上次测试的小型GPT2规模大了一倍以上。我用的是与训练GPT2模型大致相同的数据集。训练了个把小时。只对于T5这么庞大的模型来说,可能是有些不够的。所以我也就不做定量分析了,只大致比较一些GPT2和T5预测诗词的效果。

结果和我预想的差不多。T5的对联生成效果稍好于GPT2的效果;但是GPT2的诗词生成效果远好于T5。
T5这种模型非常适合给定上文然后生成相对固定的下文。比如用于中英翻译,上文是“我喜欢打游戏”,下文基本就可以确定为“I like to play video games”,最多用词上时态上稍有变化。这种对应关系是非常明确的。对联的上下联之间也是有比较明确的对应关系的。所以T5处理起来得心应手。GPT2模型生成对联时候,很明显越长的对联,越容易出错。GPT2模型可以明显的感觉到,它在生成新文字时候,更重视附近的单词的影响。这是可以理解的,在一篇文章里,关系越紧密的文字通常距离也越近。但是对于对联中的文字来说,影响最大的却不是附近的字,而是上联中对应位置的哪个字。那个字如果和当前的字间隔了十几个甚至几十个其它的字,GPT2的生成效果就会大受影响。
T5在这方面处理的更好。但是对联和翻译还是不太一样。在翻译任务中,上下文的对应关系十分明确。而一个上联是可以有非常多不同的对应下联的。在这种灵活性上,GPT2反而更有优势。总的来说,普通对联算是个相对简单的问题。T5模型处理的更好,但GPT2也够用了。至于涉及高级技巧的对联,比如拆字联、无情对等等,目前两个模型都还没办法处理好。

诗词生成难度比对联更大。所以总体来说,两个模型产生的效果都还有待提高。相对来说GPT2的结果更顺畅一些。我网页上演示的结果(https://www.qizhen.xyz/)也还是使用的 GPT2 模型。

接续摘录一些生成的结果:

东风吹绿柳,西日映红霞。
人家在何处,月影对芳华。

春风一缕柳丝柔,又见飞花入眼流。
不是东君都解意,只因明月误归舟。

西风吹叶归,秋老金菊黄 。
霜寒衣袖凉,心冷梦魂长 。

长河万里碧,远岫千峰青。山色横江眼,天光上晚星。
朝花香满袖,暮雨露盈庭。回首人生路,孤帆万里行。

红日正当年,欲乘东风追远梦;春光更好处,唯凭彩笔写新篇

其它乱七八糟的结果我就贴在这里了:
http://labview.qizhen.xyz/

T5模型和GPT2模型初步对比相关推荐

  1. utxo模型_什么是UTXO?简析账户/余额模型和UTXO模型

    在比特币社区内,有一种这样的说法:其实并没有比特币,有的只是UTXO.还有一种说法是:如果理解了UTXO,你就理解了比特币. 这两种说法虽然都有不同程度的夸张,但足以体现UTXO之于比特币的重要性.既 ...

  2. 【word2vec】篇二:基于Hierarchical Softmax的 CBOW 模型和 Skip-gram 模型

    文章目录 CBOW 模型 基本结构 目标函数 梯度计算 Skip-gram 模型 基本结构 梯度计算 优缺点分析 系列文章: [word2vec]篇一:理解词向量.CBOW与Skip-Gram等知识 ...

  3. 情感分析的描述、基于词袋模型和word2vec模型的情感分析实现

    情感分析的描述.基于词袋模型和word2vec模型的情感分析实现 以购物评论为例: # 读入原始数据集 import pandas as pddfpos = pd.read_excel('../dat ...

  4. R语言广义加性模型(GAMs:Generalized Additive Model)建模:数据加载、划分数据、并分别构建线性回归模型和广义线性加性模型GAMs、并比较线性模型和GAMs模型的性能

    R语言广义加性模型(GAMs:Generalized Additive Model)建模:数据加载.划分数据.并分别构建线性回归模型和广义线性加性模型GAMs.并比较线性模型和GAMs模型的性能 目录

  5. 【word2vec】篇三:基于Negative Sampling 的 CBOW 模型和 Skip-gram 模型

    系列文章: [word2vec]篇一:理解词向量.CBOW与Skip-Gram等知识 [word2vec]篇二:基于Hierarchical Softmax的 CBOW 模型和 Skip-gram 模 ...

  6. 基于 OData 模型和 JSON 模型的 SAP UI5 表格控件行项目的添加和删除实现

    这是 Jerry 2021 年的第 62 篇文章,也是汪子熙公众号总共第 339 篇原创文章. 龟虽寿曹操神龟虽寿,犹有竟时:腾蛇乘雾,终为土灰.老骥伏枥,志在千里:烈士暮年,壮心不已.盈缩之期,不但 ...

  7. lr模型和dnn模型_建立ML或DNN模型的技巧

    lr模型和dnn模型 机器学习 (Machine Learning) Everyone can fit data into any model machine learning or deep lea ...

  8. 「软件项目管理」成本估算模型——Walston-Felix模型和COCOMO Ⅱ模型

    Walston-Felix模型和COCOMO Ⅱ模型 序言 一.Walston-Felix模型 1. 公式 2. 举例 二.COCOMO模型(Constructive Cost Model) 1. 模 ...

  9. Reactor模型和Proactor模型:同步IO与异步IO

    Table of Contents 服务端的线程模型 2种fd 3种事件 Reactor模型-同步I/O 1.单Reactor单线程模型 2.单Reactor多线程模型 3.主从Reactor多线程模 ...

最新文章

  1. Linux exec与重定向
  2. 马斯克炮轰微软:OpenAI不是你的工具人
  3. C# 判断字符串是否符合十六进制,八进制,二进制和十进制整数格式的正则表达式...
  4. Unity编辑器扩展Texture显示选择框
  5. 9.1 mnist_softmax 交叉熵多分类器
  6. Linux系统性能监控之6个vmstat和6个iostat命令
  7. Java tate只要年月日,Java初學者入門必須掌握的30個基本概念
  8. Spring5的集成兼容
  9. “约见”面试官系列之常见面试题之第六十二篇之IE和兼容下写法(建议收藏)
  10. 复杂性思维 中文第二版 翻译完成
  11. 【leetcode】length of last word (easy)
  12. java版本号分段比较_java 实现比较版本号功能
  13. 亲,你们都在家办公吗?啥感受?hahaha
  14. Rstudio 1.2 新功能介绍
  15. python爬取下载有妖气漫画网站免费漫画
  16. 我今天人品大爆发啊,赚了299美元
  17. 避坑指南:Kafka集群快速扩容的方案总结
  18. React组件进阶--组件通讯介绍,组件的 props特点,组件通讯的三种方式子到父,父到子,兄弟到兄弟组件,Context,回顾练习
  19. 阿⾥云Apsara Clouder云计算专项技能认证:云服务器ECS⼊门【 个⼈所得税年度应纳税额抵扣 3600(0成本)】
  20. 菜鸟后端程序员花了两天半模仿写出了赶集网主页,速来围观!

热门文章

  1. pandas读取excel数据并对重复数据进行标记或者删除
  2. Router-Link详解
  3. 一本《Redis 深度历险》,我能躺挣多少钱?
  4. Office宏病毒Virus.MSExcel.Agent.f的查杀方法
  5. oracle如何总计,按组SQL运行总计(Oracle)
  6. C语言实现LDPC的校验矩阵,非正则LDPC码在AWGN信道中的性能研究
  7. iphone win7无法识别_Win7电脑不能识别iphone苹果设备怎么解决
  8. FC200 长广防盗维修专家
  9. git clean -fd 命令删除文件之后 项目工程文件恢复
  10. Hotel booking -探索性数据分析(EDA)一(seaborn matplot pyecharts)