这款“狗屁不通”文章生成器火了,效果确实比GPT 2差太远
整理 | 夕颜
出品 | AI科技大本营(ID:rgznai100)
【导读】最近,一个名字相当接地气的“狗屁不通”文章生成器(BullshitGenerator)火了,截至目前 GitHub 上 Star 数已超过 3200,还上了微博热搜。这个神器可以生成各种各样奇葩文章,比如领导专用“彩虹屁”万字长文。只有你想不到,没有这个神器写不成的文章。但是,生成的文章确实也是“狗屁不通”。这次我们就来解读一下,这个生成器是怎么运行的,以此为例,延展探讨一下文本生成未来还有哪些改进的方向。
由于下拉十多下没滑到底,让人失去了截全图的耐心,文章也实在看不下去,因为它真的是一篇逻辑不通的 bullshit。
AI科技大本营(ID:rgznai100)也用这个生成器尝试了几个大家都会思考的主题,比如:
试完之后笔者发现,文章本身是没什么探讨的必要性了,不信你可以自己试试:
生成器地址:https://suulnnka.github.io/BullshitGenerator/index.html
但是关于生成器的工作原理,相信很多人是比较感兴趣的。
运行原理是什么?
据贡献者介绍,本项目最初的目的是用于中文文字 GUI 开发时测试文本渲染,用 Python 3 版本写成,目前共有 7 位贡献者。
鉴于目前 AI 用于文字生成非常流行,这个项目是否也用到了 AI 相关算法呢?答案是否定的,作者表示,BullshitGenerator 没有用到任何自然语言处理相关算法,只是简单地撸代码就可以达到效果。
那 BullshitGenerator 运行的原理是怎样的?AI科技大本营采访了CSDN博客专家@小宋是呢进行解读:
“狗屁不通生成器”是一个文本生成器,用来生成一些中文文字用于 GUI 开发时测试文本渲染。由于此项目的目的只是用于 GUI 开发时测试文本渲染,所以对文本的连贯性和含义要求不高,这也就是“狗屁不通”的含义了
if __name__ == "__main__":
xx = input("请输入文章主题:")
for x in xx:
tmp = str()
while ( len(tmp) < 6000 ) :
分支 = random.randint(0,100)
if 分支 < 5:
tmp += 另起一段()
elif 分支 < 20 :
tmp += 来点名人名言()
else:
tmp += next(下一句废话)
tmp = tmp.replace("x",xx)
print(tmp)
从源码中可以看出,生成文本的方式就是从本地读取到的文本中按照一定规律随机读取,并且替换掉文本中“x”为指定的主题文本,并未使用深度学习方法。不难发现,生成的文本会存在句子不连贯、重复性高的特点。
issue 中有人发表了对这个项目的评价:
可以看到,大家对这个项目的评价还是以正面居多。其中,有人提到了希望与 GPT 2 进行整合:
很快有人对这个想法提出疑问,比如算力的问题。那么,BullshitGenerator 与 GPT 2 整合的想法可行吗?或者是否有必要?@小宋是呢给出的看法如下:
个人觉得“狗屁不通生成器”与“GPT”结合意义不大,这两个项目的目标和特点差异很大。“狗屁不通生成器”是为了快速用来生成一些中文文字用于 GUI 开发时测试文本渲染,而“GPT”文本生成器目标是生成高质量连贯文本,“GPT”的特点是模型大速度慢质量高,并不满足“狗屁不通生成器”的设计需求。
GPT 2 是 OpenAI 推出的一个中文生成模型,由加拿大工程师 Adam King 制作的网站上,任何人都能调教简化版的 GPT-2,它能够识别从新闻、歌词、诗歌、食谱、代码的各种输入,甚至还为《复仇者联盟》写了一个细节丰富的续集,内容可读性相当高。
令人振奋的是,这个史上最强的 NLP 模型今天正式全部开源,OpenAI 正式放出了 GPT 2 的最后一部分代码。
开源地址:https://github.com/openai/gpt-2。
作为 GPT 2 分段发布中的最后一轮,此次公开的完整 GPT-2 包含 15 亿条参数,其中包含用于检测 GPT-2 模型输出的全部代码及模型权重。
当然,关于 GPT 2 的讨论仍在继续,比如它的实用性,生成假新闻被滥用引发的安全问题等,都是后续还有待改善的关键点。
此外,GPT 2 还有一个中文版本,相比之下,GPT2 与 BullshitGenerator 不同之处在于前者使用了 BERT 或 BPE 编译器,但同样不需要算法基础,只要简单 clone 运行即可,技术上的实现难度更大一些。
“GPT”是比较标准的自回归语言模型了,Transformer 出现前都是通过 RNN 的方法,之前比较火的“CharRNN”深度学习作诗与作曲都属于这个范畴。“GPT”将 Transformer 替换了 RNN,使得提取特征的能力与运算速度都得到很大提升,当然使用大规模数据训练模型也是“GPT”效果好的一个重要因素。
相较于“GPT”,“狗屁不通生成器”实现就简单很多,主要代码就几十行,基本上只用到了Python 编程技术。体现在文本的连贯性和含义上,虽然生成文本的质量不高,但它也满足了生成一些中文文字用于 GUI 开发时测试文本渲染的要求。
GPT2 中文项目:https://github.com/Morizeyao/GPT2-Chinese
文本生成的未来
GPT 2 的横空出世让大家看到了 AI 在文本生成方面的潜力。正如 Open AI 官博所说,虽然 GPT 2 还面临检测等方面的挑战,但它的潜力还很大, Open AI 表示,未来这个模型还将继续进行改进,他们期望语言模型能够在性能上有更大的提升,以此提供更高的输出质量和准确性。
BullshitGenerator 项目也公布了下一步计划:
防止文章过于内容重复
加入更多啰嗦话.
加入马三立<开会迷>里的内容
加入手写体直接渲染出图片的功能(仅仅用于测试本人的打印机是否工作正常, 请勿做它用).
本文特邀专家:小宋是呢 @CSDN博客专家&知乎深度学习专栏作家(微信公众号 ID:aideepmiss)。在校前两年半时间,获得省级一等奖(以上)奖项十次,毕业时,第一作者授权实用新型&发明专利共计二十余项。
目前研究方向:自然语言处理与自动语音识别、图像识别与自动检测、图神经网络与推荐系统。
(*本文为AI科技大本营原创文章,转载请微信联系 1092722531)
◆
精彩推荐
◆
12月6-8日,深圳!2019嵌入式智能国际大会,集聚500+位主流AIoT中坚力量,100+位海内外特邀技术领袖!9场技术论坛布道,更有最新芯片和模组等新品展示!点击链接或扫码,输入本群专属购票优惠码CSDNQRSH,即可享受6.6折早鸟优惠,比原价节省1000元,学生票仅售399元。
推荐阅读
这款“狗屁不通”文章生成器火了,效果确实比GPT 2差太远相关推荐
- 狗屁不通文章生成器写的文章,评分软件赞不绝口
本文转载自 大数据文摘,作者 王烨 高三,议论文,万千学子的噩梦. 我们见过大神引经据典,每一句都有出处:我们也记得自己绞尽脑汁,每一句都胡诌瞎编. 什么叫议论文? 议论文,又叫说理文,是一种剖析事物 ...
- 前端遍历列表生成表格_源码剖析狗屁不通文章生成器
前段时间,有一个叫"狗屁不通文章生成器"的项目一下子吸引了大家的兴趣,还引起各大科技媒体:36Kr.新浪专栏IT之家都不约而同的刊文报道.然而,综看整个项目,除去README.LI ...
- python狗屁不通文章生成器_狗屁不通文章生成器,GitHub火爆的万字啰嗦文章瞬间生成...
记得前两年自媒体刚爆发的时候,UC/网易新闻出现很多文不对题.标题夸张.内容无逻辑.与事实不符,一度怀疑是文章生成器生成的内容.最近在GitHub有一个狗屁不通「文章生成器」(英文叫"Bul ...
- “狗屁不通文章生成器”项目登顶GitHub热榜~
点击上方"IT平头哥联盟",选择"置顶或者星标" 你的关注意义重大! 前言 GitHub 被誉为全球最大的同性交友网站,--,陪伴我们已经走过 10+ 年时间, ...
- 【低智版狗屁不通文章生成器】Python 基于一条语法随机生成简单中文句子的小练习
在某人工智能培训班看到这个预热练习,来玩一下,感觉跟之前很火的狗屁不通文章生成器有异曲同工之妙,不过这个是纯基于规则啦 Writing a programming which could genera ...
- 狗屁不通文章生成器在线网页版(2023年最新)
今天给大家分享一个在线小工具:狗屁不通文章生成器,顾名思义,使用这个小工具可快速生成一篇狗屁不通的文章,默认是生成6000字,还挺有意思的. 一.先看效果 只需在输入框里面给定想要生成的文章主题,然后 ...
- GitHub狗屁不通文章生成器
原文地址:http://1t.click/bgNy 今天星选哥要教大家用GitHub找一些牛X的东西~ 适合普通人了解的GitHub~ GitHub是什么? 可能有的人听说过GitHub,有的人甚至还 ...
- 开源项目学习笔记(1)——狗屁不通文章生成器(BullshitGenerator)
参考资料:1.Python中用json.load() json.loads()加载json数据的方法:https://blog.csdn.net/xiongchengluo1129/article/d ...
- GitHub开源:狗屁不通文章生成器
万字申请,废话报告,魔幻形式主义大作怎么写?GitHub开源狗屁不通文章生成器了解一下, 只要输入一句话,系统就会给你一篇万字长文. 查看源代码编写风格清新脱俗,并且毫无算法,简单暴力,直接在关键语句 ...
最新文章
- JS中Base64的编码与解码
- 【MongoDB】docker mongo 数据备份
- 学术写作强力推荐语法检查神器:marking mate
- SAP Cloud for Customer(C4C)的一些学习资料(持续更新)
- Visual Studio 2017迎来F# 4.1
- x-shell 通过堡垒机连接 ssh多个机器 自动化脚本
- 国内RISC-V产学研基地成立,Intel、Arm、RISC-V将三分天下?
- Guns 切换Oracle分支
- java中string和int的相互转换
- mongodb数据库在centos 下启动
- SCDPM 2012R2之保护SQL SERVER
- 【优化调度】基于matlab粒子群算法求解水火电系统经济、环境运行单目标调度优化问题【含Matlab源码 1138期】
- 杭电HDUacm2098
- 这是我转载的一篇,真的是不错《把SWF变回FLA》大家可以试试
- vue-quill-editor 富文本 自定义图片上传操作
- swift 中使用 Alamofire+Moya+ObjectMapper,并做了一些功能封装
- 克罗内克函数Kronecker Delta【OI Pharos 6.2.1】
- 【阿里云·云原生架构·白皮书】保姆级解读 一、 云原生架构定义
- CyclicBarrier: 循环栅栏
- java聊天系统异常问题_聊天室bug问题
热门文章
- 计算机专业大一新生,写给计算机专业大一新生
- PMP计算题公式知识点整理
- linux查看orc文件,ORC 文件扩展名: 它是什么以及如何打开它?
- Android 手势锁/锁屏/Pin解锁,一种精简高大上且实用的手势锁
- 干法读书心得:第一章 7、坚持“愚直地、认真地、诚实地”工作
- 联想7400打印机如何与手机连到一起_联想打印机力度空前的眼红优惠来袭 这波福利可不能再错过了...
- Android 4.4 Kitkat Phone工作流程浅析(三)__MO(去电)流程分析
- IPsec VPN 的基本配置
- 找不到适合自己的工作很迷茫怎么办?
- 政策变局催生进口车商三大变化