|
机器之心报道
' k7 c5 z8 d9 s& e, M+ X- b6 ~! J参与:杜伟、张倩前几天,OpenAI 发布了 7.74 亿参数量的新一版 GPT-2,并表示将在几个月之内发布 15.58 亿参数量的完整版本。但还没等到完整版官宣,有人就已经等不及了,索性自己动手复制了一个 15 亿参数量的 GPT-2,并将其命名为 OpenGPT-2。项目作者是来自布朗大学的两位硕士研究生,他们复制 GPT-2 的花费大约是 5 万美元。
3 D; L4 N3 z( P9 C+ _$ O( o3 Y3 \! x, k
项目的两位作者:Aaron Gokaslan 和 Vanya Cohen 。
) D( |/ a+ m# E$ M. y读者可以在 Google Colab 上访问该模型并生成文本。
2 V3 f4 v2 a- u! j$ ~Google Colab 地址:https://colab.research.google.com/drive/1esbpDOorf7DQJV8GXWON24c-EQrSKOit" e; b3 ?+ L2 y$ W
- N+ B0 H9 o# e: X" S模型权重:https://drive.google.com/drive/u/0/folders/1KfK5MXtvgH8C615UUZoKPIUVJYIdJxX1+ I3 ~ j0 G, p" [6 _
作者表示,复制 GPT-2 没有那么难,论文中的很多结果都是他们两人可以复制的,并且二人并没有语言建模的经验。所以,只要你感兴趣(壕),你也能自己复制一份。& Y% E& b& Z R! p6 B
) U" r. j$ A; C6 l$ y# T1 M/ k
. ^' \& w+ h% d/ o% H0 Q复制方法和成本, j' R2 F& T0 e x4 O; t
8 a {- n' b9 l- J SOpenGPT-2 的实现基于 Grover 模型,通过修改它们的代码库来达到 GPT-2 的语言建模训练目标。由于 Grover 模型是在类似的大型语料库上进行训练,所以很多代码和超参数很容易重复使用。他们也没有对 Grover 的超参数进行大量修改。
. ^- _$ L: X# o5 `/ {: m7 ^* G
8 l0 B3 C; P! v' v2 }) }7 ?2 H至于成本嘛,他们使用自己的代码从零开始训练 GPT-2 模型大约花费了 5 万美元。但需要注意的是,5 万美元只是云计算的估算成本,没有包含更细微的内在成本(在其他效率更低的易用计算资源上训练模型的效果会更差)。
; O0 _+ _5 k4 E' q& O2 F; y$ I, ^. `# U; I: B& ?
数据集
& ]# o$ |9 @! J
3 c- a, ~4 P! R' Z: b& yOpenAI GPT-2 的原始论文中有对清理数据集的详解。在该论文中,Open AI 的研究人员用到了一个名为 WebText 的数据集,其中包含数百万个网页。9 Q( N( b" K X f$ r
$ D5 v X, a! C2 R+ U论文地址:https://d4mucfpksywv.cloudfront.net/better-language-models/language_models_are_unsupervised_multitask_learners.pdf
: f1 N; N# r# m9 x' U0 v [% ^9 B3 a( F6 [$ d; V
如 WebText 一样,本文中的两位研究者首先解析 Reddit 上 3 个 up-vote 以上的所有链接。同时,他们利用了 Pushshift Reddit scrape 数据集,该数据集集合了持续更新的 Reddit 帖子、评论和有关元数据。然后,作者对这些链接进行过滤,删除那些不太可能包含有用文本或 HTML 的文件类型(即视频文件、PDF 和 CSS 格式文件)的直接链接。+ K+ v! \" g5 b5 ?
( X# a$ s: \6 {# q! I4 o
此外,作者还过滤了网页,以删除被各种评估基准和数据集所使用的 Wikipedia 内容。他们并不能确定自己的过滤方法是否符合 OpenAI 的标准。因此,他们使用 Newspaper Python 库从 HTML 网页上提取文本,然后使用 fastText Python 库只过滤掉英文文本。
3 l5 T4 {2 `+ k. ?0 m7 z
& I' ^0 D% w3 S) u7 n/ X) f具体来说,作者使用了 WhatTheLang python Wrapper。他们利用局部敏感哈希(locally sensitive hashing,LSH)删除这些文档。最后,他们将这些文档散列到了 5-gram 的集合中,并删除了相似度阈值大于 0.5 的所有文档。/ J+ N- `: c# i7 z O
% D' N2 n0 r1 ^+ l# r. O5 M作者还从数据集中删除了 token 数少于 128 的文档。这些短文档往往质量较低。作者将这一数据集作为 OpenWebTextCorpus 发布。$ E2 l- R; A; R- b
% |% L) \. C& }( [3 b
数据集链接:https://skylion007.github.io/OpenWebTextCorpus/
+ I9 w% [4 v8 g8 O3 h5 Q6 k% W! }
; M8 ^; ^* i1 |# T ^8 K6 K在编码数据集时,作者使用了 Radford 等人发布的适用于小模型的 Binary Pattern 编码器。他们还利用 OpenWebText 网页爬取代码库的修订版作为自身数据集集合的起始点。; @: J# G! g: v% A4 r
+ B) s- A! N/ @/ K Z6 ~
从公开发布的 WebText 的 26 万篇文档的集合来看,作者发现所有文档的双字节编码(BPE)长度最小为 40,最大为 1024。而 OpenWebText 的不同之处在于作者将文档长度的最低值设为 128 个 token(替代 BPE),并且不限制文档最大长度。此外,原始 WebTextCorpus 是在这些样本可用之前发布的,因此作者没有使用这些信息来生成清理启发式。
2 {/ @- @- G d1 V$ d1 ]; N9 q- g6 \5 V- R7 |2 R7 [/ f3 G
尽管在训练分布上存在差异,作者依然得出了与多数数据集接近的困惑度。
8 u2 z' w5 q& M& d j) N% ]. Y$ O: @: @- }
# F$ ~" H; S5 @$ o
效果9 I7 r8 ~ {! I
, w" c& ]3 L: _& E* s3 M
两位作者在 medium 博客中展示了 OpenGPT-2 的生成效果。他们提供给模型的提示为:「Recycling is good for the world. NO! YOU COULD NOT BE MORE WRONG!!」,输入模型之后得到了以下输出:
$ o1 F1 }& {. P7 X: L5 d( @
' J/ X2 J6 W/ m/ u) w8 N3 i3 ~$ K9 D2 e9 t6 P
3 I9 l0 R4 W5 I! T
reddit 网友也根据作者给出的连接进行了测试,并将测试结果与 OpenAI 前几天公布的 7.74 亿参数量版本进行了对比。有人表示:
/ S6 `( D- I. f; @ 我使用相同的提示分别测试了 OpenGPT-2 和 OpenAI 的 GPT-2 7.74 亿参数版本,结果还是 OpenAI 的输出效果更好,所以作者的复制过程或许存在一些问题。 / ?4 S) G# T$ Y4 k! w C F; h
+ {) Y9 L8 [9 ~; q* Q4 K
当然,也有人认为 OpenGPT-2 的效果更好:9 `8 P2 I0 L2 L9 M7 o
( K8 s9 ]6 X g* V
& z% k; \2 v( U9 p+ N# @我认为作者的 OpenGPT-2 效果优于 OpenAI 的 GPT-2 7.74 亿参数版本,但还不足以用来制造令人信服的假新闻。几次尝试输入「Shocking revelation! Vladimir Putin and Donald Trump are」,我得出了以下效果最佳的文本。该文本能够更长时间地保持语义连贯性,语句也更有意义,但还是比较容易被识破。但不可否认,OpenGPT-2 对研究确实很有帮助。
& Q6 [& e. i: Q, R
2 x8 A9 r {7 O2 ~* @2 u/ d$ k' v4 i但我还有一个疑问,OpenGPT-2 到底只是把它读过的文本随机组合到一起,还是真正地创造出了新文本。 & f9 N. e; d5 t: ]9 P+ U3 h1 l
! ~/ e( u2 L) H3 a4 W7 e: C2 b
/ H! c& s V8 _- h9 o7 x7 |$ _7 ^8 A6 v' j
至于 OpenGPT-2 的生成效果究竟如何,大家可以根据文中提供的链接测试一下。
0 f; Q4 Z6 {" I& _" W+ V4 X3 N/ @! g& Z- A
参考链接: b% s* \& h# P6 [" F
# {5 j9 f0 ^0 z1 R! ~
# `6 l/ Q" s4 ?; W7 _& n% A- L+ m. ~( Q$ X0 C4 w, ^9 `
https://www.reddit.com/r/MachineLearning/comments/cu9xgi/p_opengpt2_we_replicated_gpt2_because_you_can_too/
' f! L. X F9 thttps://medium.com/@vanya_cohen/opengpt-2-we-replicated-gpt-2-because-you-can-too-45e34e6d36dc, _, d6 q2 r" B0 s" Z% u
: l4 Z% R/ C! e m2 {
% K' q7 ], e; k7 T, I) D9 _
0 w9 D$ g( K+ s' F h7 ?
WAIC 2019 开发者日 将于 8 月 31 日在上海世博中心举办,包含 1 个主单元、4 个分单元、黑客马拉松比赛和开发者诊所互动区。 . g' o- Y; I7 O* R
0 H |& j* j7 x' A" O- q, `届时,全球顶尖 AI 专家、技术大牛、知名企业代表以及数千名开发者将齐聚上海,围绕人工智能前沿理论技术和开发实践进行分享与解读。
9 B" a* p, V" l) S# o点击阅读原文,立即报名。
+ I, ]5 c6 j! j$ ]/ A7 ~' ~9 O% e! d5 S/ x
, M/ L" C4 a) y- |) r: x
来源:http://mp.weixin.qq.com/s?src=11×tamp=1566630003&ver=1809&signature=lixpkgck3Jci-PJs9nuYQ2-e-AoYyRsK9T2JfY8UTHbrfqeLiSdjvkGmvntU-OVvGe8*llf7XPaBdBKSdmrL7CrALKS1LX-KQs*HOTH8twOu5W3TN*s6mdYxiqgYsckc&new=1, T$ d6 n/ i% X4 H* p( b
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |