本文长度为 5986 字,45 图表截屏
建议阅读 30 分钟
从 2018 年 10 月到 2019 年 6 月,NLP 三大模型横空出世,分别是 Google 的 BERT,OpenAI 的 GPT-2 和 CMU 和 Google 联手的 XLNet。
除了模型强大,我们从新闻里看到最多的是就是训练时间长,而且费用惊人的贵。
BERT-large 模型在 16 个 Cloud TPU v3 下训练 4 天
GPT-2 模型在 32 个 Cloud TPU v3 下训练一周多
XLNet-large 模型在 128 个 Cloud TPU v3 下需要训练 2 天半
证据如下:
Training of BERT_LARGE was performed on 16 Cloud TPUs (64 TPU chips total). Each pretraining took 4 days to complete. -- BERT Paper
To clarity, it's 256 cores (8 cores per Cloud TPU). Training took a bit over a week. -- Open AI Author on Reddit
We train XLNet-Large on 512 TPU v3 chips for 500K steps with an Adam optimizer, linear learning rate decay and a batch size of 2048, which takes about 2.5 days. -- XLNet Paper
TPU v3 就是第三代 (2018) TPU,样子如下。
而第一代 (2015) 和第二代 (2017) 的 TPU 样子如下 。
查了下第三代 TPU 每个核心的价格是每小时 8 美元。
那么来计算一下 BERT, GPT-2 和 XLNet 的训练成本,它们分别用了 16、32、128 个 Pod,每个 Pod 含有 8 个核心 (core),计算
BERT:16 × 8 × 24 × 4 = 12288 美元
GPT-2:32 × 8 × 24 × 7 = 43008 美元
XLNet:128 × 8 × 24 × 2.5 = 61440 美元
和新闻里面的报道吻合:
BERT-large 模型在 16 个 Cloud TPU v3 下训练 4 天,花费 1.2 万美元
GPT-2 模型在 32 个 Cloud TPU v3 下训练一周多,花费 4.3 万美元
XLNet-large 模型在 128 个 Cloud TPU v3 下需要训练 2 天半,花费 6.1 万美元