今天看啥  ›  专栏  ›  桃子说产品

BERT 详解(五)

桃子说产品  · 简书  ·  · 2019-12-30 23:41

Fine-tuning 微调

微调阶段根据不同任务使用不同网络模型。在微调阶段,大部分模型的超参数跟预训练时差不多,除了 batchsize,学习率,epochs。

训练参数:

  • Batch size: 16, 32
  • Learning rate (Adam): 5e-5, 3e-5, 2e-5
  • Number of epochs: 3, 4

1. 文本长度

随着文本长度的增加,所需显存容量也会随之呈现线性增加, 运行时间也接近线性,对于不同任务而言, 文本长度所带来的影响也不相同。对于分类问题, 到一定的文本长度后,模型表现就几乎没有变化了,这个时候再去提升文本长度意义就不大了。

预训练 BERT 模型的文本长度最多支持 512, 这是由于 Position Embedding 决定的,如果你的文本长度很长, 你就需要采用截断或分批读取的方式来读入。

2. 截取文本

由于 BERT 支持最大长度为 512 个 token,有三种方式截取文本:

  • head-only: 保存前 510 个 token (留两个位置给 [CLS] 和 [SEP] )
  • tail-only: 保存最后 510 个token
  • head + tail : 选择前128个 token 和最后382个 token

这三种思路都值得一试。




原文地址:访问原文地址
快照地址: 访问文章快照