|
|
|
机器之心报道 * Q% ^- j1 P: u0 m% Z
参与:杜伟、张倩前几天,OpenAI 发布了 7.74 亿参数量的新一版 GPT-2,并表示将在几个月之内发布 15.58 亿参数量的完整版本。但还没等到完整版官宣,有人就已经等不及了,索性自己动手复制了一个 15 亿参数量的 GPT-2,并将其命名为 OpenGPT-2。项目作者是来自布朗大学的两位硕士研究生,他们复制 GPT-2 的花费大约是 5 万美元。
+ Q9 p% w% q% j& p9 N
% W: f9 h9 l$ x3 g2 ]1 C项目的两位作者:Aaron Gokaslan 和 Vanya Cohen 。2 i% _4 Y2 E+ p* o+ S" a, e
读者可以在 Google Colab 上访问该模型并生成文本。' I1 f* Y4 q+ x9 u1 d v6 U
Google Colab 地址:https://colab.research.google.com/drive/1esbpDOorf7DQJV8GXWON24c-EQrSKOit, ~7 |4 ~& }7 u% j" H2 ]) }# t
& z$ ?. X' Z9 x) ^( x& F. ^
模型权重:https://drive.google.com/drive/u/0/folders/1KfK5MXtvgH8C615UUZoKPIUVJYIdJxX1
0 w; p# Z$ C# ]4 e; [ a1 i作者表示,复制 GPT-2 没有那么难,论文中的很多结果都是他们两人可以复制的,并且二人并没有语言建模的经验。所以,只要你感兴趣(壕),你也能自己复制一份。. z. D4 L3 s: G3 R- t
/ I$ u7 d+ _/ I% C8 f5 E
@) I* M0 C0 I( M2 R" n复制方法和成本# o- \6 c% s) |
1 j) x, b, i# ?% N dOpenGPT-2 的实现基于 Grover 模型,通过修改它们的代码库来达到 GPT-2 的语言建模训练目标。由于 Grover 模型是在类似的大型语料库上进行训练,所以很多代码和超参数很容易重复使用。他们也没有对 Grover 的超参数进行大量修改。
) b8 F6 p3 W0 `8 h" Z9 B8 Y y j4 E4 t8 B9 o
至于成本嘛,他们使用自己的代码从零开始训练 GPT-2 模型大约花费了 5 万美元。但需要注意的是,5 万美元只是云计算的估算成本,没有包含更细微的内在成本(在其他效率更低的易用计算资源上训练模型的效果会更差)。
5 A2 w; u3 u9 U7 c9 V+ E. g3 Q1 y& t. @; h2 Q
数据集3 ^& l+ {/ G+ x& a0 I6 p5 ]1 _' u
( M/ b; ?$ J8 v2 r/ z' R/ p0 v- P
OpenAI GPT-2 的原始论文中有对清理数据集的详解。在该论文中,Open AI 的研究人员用到了一个名为 WebText 的数据集,其中包含数百万个网页。( X4 y) }4 e3 h% K, u# y
: e. _1 D: e1 a
论文地址:https://d4mucfpksywv.cloudfront.net/better-language-models/language_models_are_unsupervised_multitask_learners.pdf
1 z$ C7 K* w ]# ]4 e5 f3 c' d( `) q: }
如 WebText 一样,本文中的两位研究者首先解析 Reddit 上 3 个 up-vote 以上的所有链接。同时,他们利用了 Pushshift Reddit scrape 数据集,该数据集集合了持续更新的 Reddit 帖子、评论和有关元数据。然后,作者对这些链接进行过滤,删除那些不太可能包含有用文本或 HTML 的文件类型(即视频文件、PDF 和 CSS 格式文件)的直接链接。
, k, l1 C% O- M5 K5 h
6 f7 W- s) @3 ]% K/ T' ~此外,作者还过滤了网页,以删除被各种评估基准和数据集所使用的 Wikipedia 内容。他们并不能确定自己的过滤方法是否符合 OpenAI 的标准。因此,他们使用 Newspaper Python 库从 HTML 网页上提取文本,然后使用 fastText Python 库只过滤掉英文文本。$ H) _" _, r6 \7 E0 U5 ]
' C0 c5 w1 F- `% k具体来说,作者使用了 WhatTheLang python Wrapper。他们利用局部敏感哈希(locally sensitive hashing,LSH)删除这些文档。最后,他们将这些文档散列到了 5-gram 的集合中,并删除了相似度阈值大于 0.5 的所有文档。1 y& j. i H% o6 x1 V% M! m5 ` F
: S I$ L3 ] r- S" _
作者还从数据集中删除了 token 数少于 128 的文档。这些短文档往往质量较低。作者将这一数据集作为 OpenWebTextCorpus 发布。
, i k0 P; Z3 M0 Z) W0 k9 n1 n$ c3 h( ~1 x7 s
数据集链接:https://skylion007.github.io/OpenWebTextCorpus// {; }' ]- h, y+ F! C3 m% `* U# N
2 V# A4 d7 V! H9 O- m- P0 g1 r/ F在编码数据集时,作者使用了 Radford 等人发布的适用于小模型的 Binary Pattern 编码器。他们还利用 OpenWebText 网页爬取代码库的修订版作为自身数据集集合的起始点。
2 g& |6 R! \8 p3 I( A) Y
0 O# w- M# m/ R$ R* }1 z5 H: D从公开发布的 WebText 的 26 万篇文档的集合来看,作者发现所有文档的双字节编码(BPE)长度最小为 40,最大为 1024。而 OpenWebText 的不同之处在于作者将文档长度的最低值设为 128 个 token(替代 BPE),并且不限制文档最大长度。此外,原始 WebTextCorpus 是在这些样本可用之前发布的,因此作者没有使用这些信息来生成清理启发式。2 C' E1 c8 G, w; S: O" z
( |& n8 b9 A/ u( E1 x$ i尽管在训练分布上存在差异,作者依然得出了与多数数据集接近的困惑度。
+ x0 L! L) D0 _3 N5 e
2 j4 W/ V& s5 D+ N9 Y, j# P2 |
. A) N" N, C$ n- ]效果
% e& |9 }9 K2 G9 ?9 S3 Y" P# ^. q% i1 Q- D1 ?4 Z* F
两位作者在 medium 博客中展示了 OpenGPT-2 的生成效果。他们提供给模型的提示为:「Recycling is good for the world. NO! YOU COULD NOT BE MORE WRONG!!」,输入模型之后得到了以下输出:
/ A2 w, h+ u% F5 S" h% ~2 k+ X+ q$ `4 c6 Z; y5 g
- @2 M' t0 @5 m$ @1 D
/ u* U1 L& W( r9 p. F- m. f8 oreddit 网友也根据作者给出的连接进行了测试,并将测试结果与 OpenAI 前几天公布的 7.74 亿参数量版本进行了对比。有人表示:
% L) P- A! S8 e% ^8 D( j' A 我使用相同的提示分别测试了 OpenGPT-2 和 OpenAI 的 GPT-2 7.74 亿参数版本,结果还是 OpenAI 的输出效果更好,所以作者的复制过程或许存在一些问题。
9 y }8 H, |" ]3 d
. p* ~. j, h6 t$ D当然,也有人认为 OpenGPT-2 的效果更好:, x& o. F2 }- ?6 q+ ?5 J$ K. @: V7 t
/ e6 B3 Y3 A( ]' s0 }! h( x
# ?2 w* g, k1 d* w* L2 Z8 e: s
我认为作者的 OpenGPT-2 效果优于 OpenAI 的 GPT-2 7.74 亿参数版本,但还不足以用来制造令人信服的假新闻。几次尝试输入「Shocking revelation! Vladimir Putin and Donald Trump are」,我得出了以下效果最佳的文本。该文本能够更长时间地保持语义连贯性,语句也更有意义,但还是比较容易被识破。但不可否认,OpenGPT-2 对研究确实很有帮助。* i8 j" _, B1 c3 H
6 J2 A* _7 t+ f" V0 }" G' f/ Z9 m5 H但我还有一个疑问,OpenGPT-2 到底只是把它读过的文本随机组合到一起,还是真正地创造出了新文本。
9 v1 J* O6 ]& u2 M
4 f) Y, D% p5 `2 Y+ Z1 }, d
4 b' y9 Z6 L; u9 x3 {
1 J2 _7 }' q8 w- ]9 r5 m至于 OpenGPT-2 的生成效果究竟如何,大家可以根据文中提供的链接测试一下。) A, G: c6 ]/ g7 o
( M+ q6 y! M% C* Z3 |4 Z% J7 ^" T
参考链接:" f m3 ~/ e. ]
4 D% p- }6 ]( }# l
! u" ]3 u! a. ?1 O
^. Q5 K: \, W t. ~( Lhttps://www.reddit.com/r/MachineLearning/comments/cu9xgi/p_opengpt2_we_replicated_gpt2_because_you_can_too/4 h8 G- H; o4 f) B. W
https://medium.com/@vanya_cohen/opengpt-2-we-replicated-gpt-2-because-you-can-too-45e34e6d36dc
6 N4 z& P9 s( I8 j' D6 f9 e$ i) w1 x8 ]
' V/ f' Q% ]* l# J8 K0 g
/ v% l' N) x8 V9 C; gWAIC 2019 开发者日 将于 8 月 31 日在上海世博中心举办,包含 1 个主单元、4 个分单元、黑客马拉松比赛和开发者诊所互动区。 8 y4 X& \" F$ E; j
& Q- @4 X+ n& z- K1 `, K
届时,全球顶尖 AI 专家、技术大牛、知名企业代表以及数千名开发者将齐聚上海,围绕人工智能前沿理论技术和开发实践进行分享与解读。 7 R: L" |5 @" I% T1 {/ ?
点击阅读原文,立即报名。 : {, g1 Z( ~/ I; ?: }
: M; a: j# }' Z1 y: F# Y
) L" c/ F+ b% s& |
来源:http://mp.weixin.qq.com/s?src=11×tamp=1566630003&ver=1809&signature=lixpkgck3Jci-PJs9nuYQ2-e-AoYyRsK9T2JfY8UTHbrfqeLiSdjvkGmvntU-OVvGe8*llf7XPaBdBKSdmrL7CrALKS1LX-KQs*HOTH8twOu5W3TN*s6mdYxiqgYsckc&new=1: \4 b% S; L7 n1 E! |( U
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|