|
|
|
机器之心报道
( x- |# K# j# C+ Z8 U参与:杜伟、张倩前几天,OpenAI 发布了 7.74 亿参数量的新一版 GPT-2,并表示将在几个月之内发布 15.58 亿参数量的完整版本。但还没等到完整版官宣,有人就已经等不及了,索性自己动手复制了一个 15 亿参数量的 GPT-2,并将其命名为 OpenGPT-2。项目作者是来自布朗大学的两位硕士研究生,他们复制 GPT-2 的花费大约是 5 万美元。 * I$ f/ p7 x, [( ~5 R
3 Z5 o% y5 q- c s* K" \. K4 @( d项目的两位作者:Aaron Gokaslan 和 Vanya Cohen 。6 s. u1 S- ?* i8 g+ g
读者可以在 Google Colab 上访问该模型并生成文本。
+ d" N4 N$ L: c' l6 VGoogle Colab 地址:https://colab.research.google.com/drive/1esbpDOorf7DQJV8GXWON24c-EQrSKOit
1 i$ p5 W( m/ t# T, s6 a5 v. S4 U+ Y) x. K
模型权重:https://drive.google.com/drive/u/0/folders/1KfK5MXtvgH8C615UUZoKPIUVJYIdJxX1
1 d% C7 u2 J) D% W. v7 ^7 x% m作者表示,复制 GPT-2 没有那么难,论文中的很多结果都是他们两人可以复制的,并且二人并没有语言建模的经验。所以,只要你感兴趣(壕),你也能自己复制一份。
: X+ F5 @1 J: e- S$ j6 Y' n0 e% v4 d- k/ u$ q
7 U( R8 k7 d. x9 Q- g1 E* Y复制方法和成本
0 F1 S' l1 ^- r- P+ t8 n# O2 j: { J4 i+ a; a! ^9 E5 W3 k) c2 d
OpenGPT-2 的实现基于 Grover 模型,通过修改它们的代码库来达到 GPT-2 的语言建模训练目标。由于 Grover 模型是在类似的大型语料库上进行训练,所以很多代码和超参数很容易重复使用。他们也没有对 Grover 的超参数进行大量修改。
. [+ x) _9 s# p1 O1 |, Y+ r$ w
0 z! i. i1 e7 q/ |' P至于成本嘛,他们使用自己的代码从零开始训练 GPT-2 模型大约花费了 5 万美元。但需要注意的是,5 万美元只是云计算的估算成本,没有包含更细微的内在成本(在其他效率更低的易用计算资源上训练模型的效果会更差)。
5 _0 O, `; l' ]* G# n" [8 R& p; i/ |4 [, e) Z
数据集; K, _! j6 ]4 F
% _1 T8 H( y- U& e A8 Y8 ]OpenAI GPT-2 的原始论文中有对清理数据集的详解。在该论文中,Open AI 的研究人员用到了一个名为 WebText 的数据集,其中包含数百万个网页。
- C3 K c: v1 m3 t- ]# x3 n
* h: A- A3 n9 w# q论文地址:https://d4mucfpksywv.cloudfront.net/better-language-models/language_models_are_unsupervised_multitask_learners.pdf
) h ]& d, R6 t# Z) F! U& S. A2 K: M7 T1 a9 G ]- q. |% J$ r
如 WebText 一样,本文中的两位研究者首先解析 Reddit 上 3 个 up-vote 以上的所有链接。同时,他们利用了 Pushshift Reddit scrape 数据集,该数据集集合了持续更新的 Reddit 帖子、评论和有关元数据。然后,作者对这些链接进行过滤,删除那些不太可能包含有用文本或 HTML 的文件类型(即视频文件、PDF 和 CSS 格式文件)的直接链接。
/ L$ g, j% s) m8 m( M8 h6 M% c& v5 I- w0 b$ m) N, ?4 T# P
此外,作者还过滤了网页,以删除被各种评估基准和数据集所使用的 Wikipedia 内容。他们并不能确定自己的过滤方法是否符合 OpenAI 的标准。因此,他们使用 Newspaper Python 库从 HTML 网页上提取文本,然后使用 fastText Python 库只过滤掉英文文本。1 a! \3 h; ^0 C$ D6 K' l
# S( b& K4 ^, n) D8 H
具体来说,作者使用了 WhatTheLang python Wrapper。他们利用局部敏感哈希(locally sensitive hashing,LSH)删除这些文档。最后,他们将这些文档散列到了 5-gram 的集合中,并删除了相似度阈值大于 0.5 的所有文档。
3 R$ B. b& L G7 B
- a. M; {+ i: M$ M. m$ R作者还从数据集中删除了 token 数少于 128 的文档。这些短文档往往质量较低。作者将这一数据集作为 OpenWebTextCorpus 发布。: u: Z6 g% w e9 M, p' Z, u
5 }" F- z5 h5 ^* d+ X数据集链接:https://skylion007.github.io/OpenWebTextCorpus/, Q, a, ]7 q% e+ |1 c
- _" u) J6 t% @& m+ y, R% g
在编码数据集时,作者使用了 Radford 等人发布的适用于小模型的 Binary Pattern 编码器。他们还利用 OpenWebText 网页爬取代码库的修订版作为自身数据集集合的起始点。; h3 |5 @1 _! D4 Z5 [
! k- {' o) E b4 I从公开发布的 WebText 的 26 万篇文档的集合来看,作者发现所有文档的双字节编码(BPE)长度最小为 40,最大为 1024。而 OpenWebText 的不同之处在于作者将文档长度的最低值设为 128 个 token(替代 BPE),并且不限制文档最大长度。此外,原始 WebTextCorpus 是在这些样本可用之前发布的,因此作者没有使用这些信息来生成清理启发式。
/ G2 k" r- c9 O, Q: ~% q6 F# }# c
% } P& n# q2 t8 d! c尽管在训练分布上存在差异,作者依然得出了与多数数据集接近的困惑度。, ^) Q; x5 Q9 H4 @2 M1 {- v! t' i
) l6 h& `( S5 L3 D! ?& t) B1 }4 m6 M
! a2 H/ Q9 Q/ ^1 v1 q0 C* [
效果8 ^$ h ?9 P* F. D- _% A
6 E* [% I2 N( C两位作者在 medium 博客中展示了 OpenGPT-2 的生成效果。他们提供给模型的提示为:「Recycling is good for the world. NO! YOU COULD NOT BE MORE WRONG!!」,输入模型之后得到了以下输出:; k0 y% @, S5 [+ \
. g" C+ T6 u! a$ p7 R4 U! Q
9 x2 t+ t: f8 g4 K
' C% v7 T1 ~( ]2 ]' xreddit 网友也根据作者给出的连接进行了测试,并将测试结果与 OpenAI 前几天公布的 7.74 亿参数量版本进行了对比。有人表示: Y6 ]' f4 w W1 V) s/ B
 我使用相同的提示分别测试了 OpenGPT-2 和 OpenAI 的 GPT-2 7.74 亿参数版本,结果还是 OpenAI 的输出效果更好,所以作者的复制过程或许存在一些问题。 # h2 t7 j2 z7 C: ~1 I; S
; Y9 A" K& u* f& k
当然,也有人认为 OpenGPT-2 的效果更好:! R6 Q3 @! N0 S- C8 N0 S9 x
7 o1 S( B6 Q7 y, n. l$ k8 n, M
我认为作者的 OpenGPT-2 效果优于 OpenAI 的 GPT-2 7.74 亿参数版本,但还不足以用来制造令人信服的假新闻。几次尝试输入「Shocking revelation! Vladimir Putin and Donald Trump are」,我得出了以下效果最佳的文本。该文本能够更长时间地保持语义连贯性,语句也更有意义,但还是比较容易被识破。但不可否认,OpenGPT-2 对研究确实很有帮助。
6 l) R, W5 V/ [
8 V$ k3 X! e/ W# K, L0 a+ l但我还有一个疑问,OpenGPT-2 到底只是把它读过的文本随机组合到一起,还是真正地创造出了新文本。 * C+ P" I9 j1 U* a% t' Q6 k1 ~
' r3 T; E$ T) D2 d8 T8 Y& l' v! f2 e7 n
d# ^5 X8 ~ x$ C至于 OpenGPT-2 的生成效果究竟如何,大家可以根据文中提供的链接测试一下。
, a1 N$ ]- q8 j9 h# E* h; [) G; [' n: I5 |" n7 k0 N0 O
参考链接:
) K e. Y5 `- P, W* z% G [ I2 R' C' H" M$ B0 s* r5 a
7 j$ P+ T" }( p: `: v
% D2 y" F) ~; i( y$ ^; N' p% Ehttps://www.reddit.com/r/MachineLearning/comments/cu9xgi/p_opengpt2_we_replicated_gpt2_because_you_can_too/; C# X, s9 a$ L5 s X5 c: p
https://medium.com/@vanya_cohen/opengpt-2-we-replicated-gpt-2-because-you-can-too-45e34e6d36dc; i, G; T7 ?! W: R
: Z3 Q! _' D) G, i3 @
( K l. W. H+ q3 j/ }6 h
* f- j. c: C6 o; ]# p0 d* vWAIC 2019 开发者日 将于 8 月 31 日在上海世博中心举办,包含 1 个主单元、4 个分单元、黑客马拉松比赛和开发者诊所互动区。 8 _5 z6 N% B+ s4 C- n
O( D8 W p) U
届时,全球顶尖 AI 专家、技术大牛、知名企业代表以及数千名开发者将齐聚上海,围绕人工智能前沿理论技术和开发实践进行分享与解读。 5 r6 s( X+ S0 w# V
点击阅读原文,立即报名。 1 T! x( z7 v: X/ `) m' x
0 f: K; A5 Z3 m' T& P( A+ M4 C( q# 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
8 H) X! q9 F2 o6 A" f免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|