|
|
|
机器之心报道
# q) \' \# r( @7 J/ P$ f8 G% w参与:杜伟、张倩前几天,OpenAI 发布了 7.74 亿参数量的新一版 GPT-2,并表示将在几个月之内发布 15.58 亿参数量的完整版本。但还没等到完整版官宣,有人就已经等不及了,索性自己动手复制了一个 15 亿参数量的 GPT-2,并将其命名为 OpenGPT-2。项目作者是来自布朗大学的两位硕士研究生,他们复制 GPT-2 的花费大约是 5 万美元。 4 O) h: u* L# Z4 e
& m0 |8 L- G. ^/ I% P
项目的两位作者:Aaron Gokaslan 和 Vanya Cohen 。( y1 A3 _# G4 p5 |& ^; x3 u& g
读者可以在 Google Colab 上访问该模型并生成文本。; O$ X0 r# ]7 z# }
Google Colab 地址:https://colab.research.google.com/drive/1esbpDOorf7DQJV8GXWON24c-EQrSKOit* s$ O% J1 {. Z' h4 R
* J" |: t5 c0 u3 y模型权重:https://drive.google.com/drive/u/0/folders/1KfK5MXtvgH8C615UUZoKPIUVJYIdJxX1) K: k- p% t4 ^3 P7 k5 ?
作者表示,复制 GPT-2 没有那么难,论文中的很多结果都是他们两人可以复制的,并且二人并没有语言建模的经验。所以,只要你感兴趣(壕),你也能自己复制一份。% D' i4 t# J2 G
3 H& U$ |2 V: h# r3 ]1 y; N
) R9 C& Q2 U k, ~复制方法和成本
$ m `- K8 J6 }' I# E; F9 c" B. e
OpenGPT-2 的实现基于 Grover 模型,通过修改它们的代码库来达到 GPT-2 的语言建模训练目标。由于 Grover 模型是在类似的大型语料库上进行训练,所以很多代码和超参数很容易重复使用。他们也没有对 Grover 的超参数进行大量修改。
d! H, |$ L3 Y0 t7 x% \* V) O/ E4 x
至于成本嘛,他们使用自己的代码从零开始训练 GPT-2 模型大约花费了 5 万美元。但需要注意的是,5 万美元只是云计算的估算成本,没有包含更细微的内在成本(在其他效率更低的易用计算资源上训练模型的效果会更差)。
: W! d0 R- j$ G# [) O/ |7 Y4 V8 ^- ?$ x, k' B& j/ q" ^: Z4 l+ P
数据集' r4 [5 {- _5 Z' }/ [! P$ t& @
7 H4 A- g! I5 [7 |. J/ A d
OpenAI GPT-2 的原始论文中有对清理数据集的详解。在该论文中,Open AI 的研究人员用到了一个名为 WebText 的数据集,其中包含数百万个网页。
2 D+ u' ^, z' a, L4 i$ x& a3 Q. J2 Q& [; p" W4 }* v) w
论文地址:https://d4mucfpksywv.cloudfront.net/better-language-models/language_models_are_unsupervised_multitask_learners.pdf
/ p/ i9 q! X9 j6 Z. M5 P
$ u3 B4 g3 S; h/ n: n$ K* s如 WebText 一样,本文中的两位研究者首先解析 Reddit 上 3 个 up-vote 以上的所有链接。同时,他们利用了 Pushshift Reddit scrape 数据集,该数据集集合了持续更新的 Reddit 帖子、评论和有关元数据。然后,作者对这些链接进行过滤,删除那些不太可能包含有用文本或 HTML 的文件类型(即视频文件、PDF 和 CSS 格式文件)的直接链接。
4 i" d/ ?% I2 f( k% p6 j' G% P6 H7 l$ h% Z/ Y( h% d, g% b
此外,作者还过滤了网页,以删除被各种评估基准和数据集所使用的 Wikipedia 内容。他们并不能确定自己的过滤方法是否符合 OpenAI 的标准。因此,他们使用 Newspaper Python 库从 HTML 网页上提取文本,然后使用 fastText Python 库只过滤掉英文文本。; h9 v, _4 d9 k. ?& y
& ?& c5 K# Z5 ?+ ~ L* l具体来说,作者使用了 WhatTheLang python Wrapper。他们利用局部敏感哈希(locally sensitive hashing,LSH)删除这些文档。最后,他们将这些文档散列到了 5-gram 的集合中,并删除了相似度阈值大于 0.5 的所有文档。
" P0 B% i. u/ Q$ y* n1 z( g$ J; _8 o9 r" K1 l
作者还从数据集中删除了 token 数少于 128 的文档。这些短文档往往质量较低。作者将这一数据集作为 OpenWebTextCorpus 发布。
5 g- O0 K9 o2 i+ j& F/ @' W
1 N: G& {, ]- q. C8 t4 x5 r% t# }数据集链接:https://skylion007.github.io/OpenWebTextCorpus/
1 ?5 N9 O7 {/ i) s8 q) ]/ S2 y+ n6 ~- e* m% M* d7 I0 o1 ^
在编码数据集时,作者使用了 Radford 等人发布的适用于小模型的 Binary Pattern 编码器。他们还利用 OpenWebText 网页爬取代码库的修订版作为自身数据集集合的起始点。
$ U/ r( v6 @6 r' D2 r" \
: o: C7 E3 D1 }7 t' D' n& B9 Y从公开发布的 WebText 的 26 万篇文档的集合来看,作者发现所有文档的双字节编码(BPE)长度最小为 40,最大为 1024。而 OpenWebText 的不同之处在于作者将文档长度的最低值设为 128 个 token(替代 BPE),并且不限制文档最大长度。此外,原始 WebTextCorpus 是在这些样本可用之前发布的,因此作者没有使用这些信息来生成清理启发式。
' S7 z" X# W+ }* F: @, ^# h- Q( M4 p7 N2 v4 F, e
尽管在训练分布上存在差异,作者依然得出了与多数数据集接近的困惑度。
( d3 T* Z+ ]5 k4 q+ | ]0 M
' ^( |$ Q" d( \" R- z
$ ?4 R2 F+ z2 B- o效果$ z6 l d, ?1 ~' L
4 Y% K ^! R+ i1 F8 v2 L
两位作者在 medium 博客中展示了 OpenGPT-2 的生成效果。他们提供给模型的提示为:「Recycling is good for the world. NO! YOU COULD NOT BE MORE WRONG!!」,输入模型之后得到了以下输出:, p' B9 A2 G- t$ j, e, \
/ f9 a( m6 d7 T) X
8 e( U1 K1 w* I3 E& X0 L
8 q$ X- B* q+ D" Mreddit 网友也根据作者给出的连接进行了测试,并将测试结果与 OpenAI 前几天公布的 7.74 亿参数量版本进行了对比。有人表示:
7 d7 ^1 k0 K( [# E' }5 ~" H 我使用相同的提示分别测试了 OpenGPT-2 和 OpenAI 的 GPT-2 7.74 亿参数版本,结果还是 OpenAI 的输出效果更好,所以作者的复制过程或许存在一些问题。 * _6 w7 B5 O* V& X. C& Z
, ^* `; Y* M. w
当然,也有人认为 OpenGPT-2 的效果更好:
2 c. N, G/ f' J# X7 U! e2 p1 B& J+ }+ k8 W3 Z. u6 d( Y
4 j( A$ T. i% s1 a; c我认为作者的 OpenGPT-2 效果优于 OpenAI 的 GPT-2 7.74 亿参数版本,但还不足以用来制造令人信服的假新闻。几次尝试输入「Shocking revelation! Vladimir Putin and Donald Trump are」,我得出了以下效果最佳的文本。该文本能够更长时间地保持语义连贯性,语句也更有意义,但还是比较容易被识破。但不可否认,OpenGPT-2 对研究确实很有帮助。
' Z2 K- G" q" E! a3 Y' l5 c9 T! p2 g* t0 g9 p& x, E9 E8 X- R
但我还有一个疑问,OpenGPT-2 到底只是把它读过的文本随机组合到一起,还是真正地创造出了新文本。 + @: U- j+ ]* v+ l
( N- h% [0 Z& F, r7 N
$ s/ a! w# S! b8 U7 C, G, v Q
) ]! c' Y! Z, n至于 OpenGPT-2 的生成效果究竟如何,大家可以根据文中提供的链接测试一下。5 |# y, `5 H- Y6 w5 M: Z
8 E/ R; p; b: m; q8 y) ^
参考链接:' b# K7 v* W9 g' Q
0 [# z/ H2 L, V5 I
* V7 `6 y' F2 X" K+ F) O6 Y( d3 x$ `" T9 [! |% C* V" J" p* _
https://www.reddit.com/r/MachineLearning/comments/cu9xgi/p_opengpt2_we_replicated_gpt2_because_you_can_too/ w9 S+ G. q: s+ C
https://medium.com/@vanya_cohen/opengpt-2-we-replicated-gpt-2-because-you-can-too-45e34e6d36dc; x- U+ Y. G, L
( f# q- Y5 o, I4 K4 Y. y0 n
6 o' Y, d. ^6 V3 L6 _# h5 R$ z* B. _9 F
WAIC 2019 开发者日 将于 8 月 31 日在上海世博中心举办,包含 1 个主单元、4 个分单元、黑客马拉松比赛和开发者诊所互动区。
, Y+ R7 Q h. @4 }+ v) m ; ~ b# ?% @; l; g. F$ b. Z0 F
届时,全球顶尖 AI 专家、技术大牛、知名企业代表以及数千名开发者将齐聚上海,围绕人工智能前沿理论技术和开发实践进行分享与解读。
9 V1 X- d$ f q! z点击阅读原文,立即报名。
) o L5 k- ^' j7 T/ D
8 B0 X! ~- z9 N9 n! Y8 @. L
- d& { m8 X v2 T来源:http://mp.weixin.qq.com/s?src=11×tamp=1566630003&ver=1809&signature=lixpkgck3Jci-PJs9nuYQ2-e-AoYyRsK9T2JfY8UTHbrfqeLiSdjvkGmvntU-OVvGe8*llf7XPaBdBKSdmrL7CrALKS1LX-KQs*HOTH8twOu5W3TN*s6mdYxiqgYsckc&new=1
1 Q3 [% d5 m0 E$ v免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|