|
|
|
机器之心报道 # M; y% Q4 c$ ^' Q$ G
参与:杜伟、张倩前几天,OpenAI 发布了 7.74 亿参数量的新一版 GPT-2,并表示将在几个月之内发布 15.58 亿参数量的完整版本。但还没等到完整版官宣,有人就已经等不及了,索性自己动手复制了一个 15 亿参数量的 GPT-2,并将其命名为 OpenGPT-2。项目作者是来自布朗大学的两位硕士研究生,他们复制 GPT-2 的花费大约是 5 万美元。
7 I" q% \ H) M3 v, U {, `+ B
, l3 M& @3 E/ R8 R* j2 Y% s/ M项目的两位作者:Aaron Gokaslan 和 Vanya Cohen 。( Z; [+ z" U: R! j/ H
读者可以在 Google Colab 上访问该模型并生成文本。7 u) E6 [8 E2 R( j8 P3 W. y# R
Google Colab 地址:https://colab.research.google.com/drive/1esbpDOorf7DQJV8GXWON24c-EQrSKOit
Z" `2 R8 i" R0 n/ B" j
0 [& f( T- I9 i1 S5 E模型权重:https://drive.google.com/drive/u/0/folders/1KfK5MXtvgH8C615UUZoKPIUVJYIdJxX1& }9 z$ n+ m5 Z! _5 Y1 s
作者表示,复制 GPT-2 没有那么难,论文中的很多结果都是他们两人可以复制的,并且二人并没有语言建模的经验。所以,只要你感兴趣(壕),你也能自己复制一份。
5 t( ^" L4 @ h. H% n6 X+ b$ W
5 t5 `& j* f" t1 U" K+ W' Z" o- k! v) |
复制方法和成本) S/ a6 V3 p% U
; b( E* E/ G7 F% L' f- MOpenGPT-2 的实现基于 Grover 模型,通过修改它们的代码库来达到 GPT-2 的语言建模训练目标。由于 Grover 模型是在类似的大型语料库上进行训练,所以很多代码和超参数很容易重复使用。他们也没有对 Grover 的超参数进行大量修改。4 I5 d- _4 S2 ?! E5 {3 `% B
: n0 G8 V* B7 ~* y4 F至于成本嘛,他们使用自己的代码从零开始训练 GPT-2 模型大约花费了 5 万美元。但需要注意的是,5 万美元只是云计算的估算成本,没有包含更细微的内在成本(在其他效率更低的易用计算资源上训练模型的效果会更差)。$ T9 u+ A( V! w) N0 f( i0 y
. F( P! _+ M8 O& h! ?
数据集+ {* N ~3 j+ {8 a. t: ^
. M& r! o2 F0 K$ U7 w) O0 q8 [
OpenAI GPT-2 的原始论文中有对清理数据集的详解。在该论文中,Open AI 的研究人员用到了一个名为 WebText 的数据集,其中包含数百万个网页。; K+ ~4 {& F1 N" B, A% n+ S4 h# d
0 Q2 _( t) K$ P' D9 E6 I
论文地址:https://d4mucfpksywv.cloudfront.net/better-language-models/language_models_are_unsupervised_multitask_learners.pdf
( a8 s; \2 b' B( M/ i
" }( F1 i. F9 v, B8 d如 WebText 一样,本文中的两位研究者首先解析 Reddit 上 3 个 up-vote 以上的所有链接。同时,他们利用了 Pushshift Reddit scrape 数据集,该数据集集合了持续更新的 Reddit 帖子、评论和有关元数据。然后,作者对这些链接进行过滤,删除那些不太可能包含有用文本或 HTML 的文件类型(即视频文件、PDF 和 CSS 格式文件)的直接链接。
5 M x2 a* M# Y$ k7 B2 T: @7 l
7 _( k' b7 q: n+ Z' [此外,作者还过滤了网页,以删除被各种评估基准和数据集所使用的 Wikipedia 内容。他们并不能确定自己的过滤方法是否符合 OpenAI 的标准。因此,他们使用 Newspaper Python 库从 HTML 网页上提取文本,然后使用 fastText Python 库只过滤掉英文文本。7 ~+ g& C8 S' [) u! U2 P
8 r) t* Q: ^3 @) G+ \' v具体来说,作者使用了 WhatTheLang python Wrapper。他们利用局部敏感哈希(locally sensitive hashing,LSH)删除这些文档。最后,他们将这些文档散列到了 5-gram 的集合中,并删除了相似度阈值大于 0.5 的所有文档。 z/ ^9 |: D: x v$ B5 u, t
, G& |1 ]" k5 U) {7 y% x6 [6 \
作者还从数据集中删除了 token 数少于 128 的文档。这些短文档往往质量较低。作者将这一数据集作为 OpenWebTextCorpus 发布。! Y& G+ P% @- s9 V0 ~# d; H) l, h
, G+ A) y& h5 B2 {$ Y; G
数据集链接:https://skylion007.github.io/OpenWebTextCorpus/" t1 w) }% i' \: o! b
1 `. u/ u: m7 J; M3 B
在编码数据集时,作者使用了 Radford 等人发布的适用于小模型的 Binary Pattern 编码器。他们还利用 OpenWebText 网页爬取代码库的修订版作为自身数据集集合的起始点。
; o1 v% A" F. \. I. Y
2 F0 _1 K. S K. @: N! k7 T1 N从公开发布的 WebText 的 26 万篇文档的集合来看,作者发现所有文档的双字节编码(BPE)长度最小为 40,最大为 1024。而 OpenWebText 的不同之处在于作者将文档长度的最低值设为 128 个 token(替代 BPE),并且不限制文档最大长度。此外,原始 WebTextCorpus 是在这些样本可用之前发布的,因此作者没有使用这些信息来生成清理启发式。
/ x2 v- c5 y% G- S6 ]# a3 u# y) O; P, ]* N( Z3 F' n
尽管在训练分布上存在差异,作者依然得出了与多数数据集接近的困惑度。
9 V6 p; d/ P& P5 E5 I4 W( v( C# K' z& l2 [' x
4 i& Y7 H) i( G/ y7 B6 C效果
& F) j) L! Y$ {+ ?4 I, p: S7 w. A2 W' A8 _
两位作者在 medium 博客中展示了 OpenGPT-2 的生成效果。他们提供给模型的提示为:「Recycling is good for the world. NO! YOU COULD NOT BE MORE WRONG!!」,输入模型之后得到了以下输出:- {, N4 i; W" U8 w) r; s
& j3 A! d5 J+ R+ A0 G5 K3 @4 g X2 t" Y7 N" r
~9 |" S9 d! z& Z5 o9 P, }- w! Mreddit 网友也根据作者给出的连接进行了测试,并将测试结果与 OpenAI 前几天公布的 7.74 亿参数量版本进行了对比。有人表示:
: [! R& Z( ?. ]; V3 q* g3 I 我使用相同的提示分别测试了 OpenGPT-2 和 OpenAI 的 GPT-2 7.74 亿参数版本,结果还是 OpenAI 的输出效果更好,所以作者的复制过程或许存在一些问题。
+ n- g. K5 @9 a U5 _. t/ r) P0 L4 r; k
当然,也有人认为 OpenGPT-2 的效果更好:* U$ V E7 p& ?+ b1 _4 q3 k
S W' c2 x9 Q- f9 \5 [
5 D9 B0 ^$ H9 F/ z/ {6 r. b% X
我认为作者的 OpenGPT-2 效果优于 OpenAI 的 GPT-2 7.74 亿参数版本,但还不足以用来制造令人信服的假新闻。几次尝试输入「Shocking revelation! Vladimir Putin and Donald Trump are」,我得出了以下效果最佳的文本。该文本能够更长时间地保持语义连贯性,语句也更有意义,但还是比较容易被识破。但不可否认,OpenGPT-2 对研究确实很有帮助。
* [6 P3 n7 {/ Q; P. g
6 @4 q0 ?8 `2 _- X/ J& }" `但我还有一个疑问,OpenGPT-2 到底只是把它读过的文本随机组合到一起,还是真正地创造出了新文本。 / P. C, w! C6 F8 B7 o
4 t) N* O& _5 r6 J; _8 f. M, e+ w
& m9 |; c7 Z5 a* [0 f: ?, L) ^
% Z! R" }/ v% w, A& v! ^3 f至于 OpenGPT-2 的生成效果究竟如何,大家可以根据文中提供的链接测试一下。( V) {- Y( Y& S- M# }, ?" m( C
; V9 E6 o9 }0 ~5 _/ S
参考链接:
& |2 j. s" I& b/ m# t/ x
- E- i) |8 ?( M$ O% B D
1 K! M3 K- n8 i( K. N
, z) u: U, j* _. B& x8 ?https://www.reddit.com/r/MachineLearning/comments/cu9xgi/p_opengpt2_we_replicated_gpt2_because_you_can_too/
) F9 z R2 N' n. R; p3 `https://medium.com/@vanya_cohen/opengpt-2-we-replicated-gpt-2-because-you-can-too-45e34e6d36dc
+ ?% _8 T7 H, k! _! c+ L1 t+ I" R3 {) X
3 a- o( {; ]% e# C% R: ]
% I8 Z, f/ g; t. g' K9 T, MWAIC 2019 开发者日 将于 8 月 31 日在上海世博中心举办,包含 1 个主单元、4 个分单元、黑客马拉松比赛和开发者诊所互动区。 * z8 k" R) z4 Y) r& M% y$ S
@: p% c, I" |0 A届时,全球顶尖 AI 专家、技术大牛、知名企业代表以及数千名开发者将齐聚上海,围绕人工智能前沿理论技术和开发实践进行分享与解读。 & B$ G( m& V9 Y& I
点击阅读原文,立即报名。 5 A6 R3 V" }& ^; S+ E, v% P, ], {
- C" K6 v( j6 s$ Q3 Y, ?6 q
' Z6 S! e5 u- 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# \# F t0 f4 Z' Y& o' g
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|