Abs

  1. 2 ways for pretrained lm to down-stream tasks:
    1. ElMo: 基于特征 对每一个下游任务构造一个跟这个任务相关的神经网络。预训练好的表示(额外的特征)和预训练一起输入,作为特征表达
    2. GPT: fine-tuning 下游,权重微调 二者单向
  2. 贡献
    1. 双向
    2. 微调

unsupervised fine-tuning GPT

unlabeled 句子对训练好bert模型,对每一个下游任务训练,权重初始化来源于训练好的模型。labeled数据

Method

  1. 可学习参数
    1. 输入是字典大小 输出(hidden size) H
    2. 输入30K,embedding后是H,self-attention 头(H*(H/h)*3 一共有h个头
  2. embedding
    1. 片段 子序列
    2. CLS 开头 表示句子的信息
    3. 区分每个句子:
      1. 在每个句子后面放一个词SEP
      2. 学一个嵌入层 学习是第一个句子还是第二个

预训练和微调不一样

1.train 替换为mask 2. 不能做seq2seq 的生成式(机器翻译,文本摘要)做分类很好做

即使不同token 有相同type,每一个token有一个embedding contextualized word embedding

ELMO

预测下一个token contextualized word embedding

训练一个反向

根据不同任务学出不同的weight

Bert

作为character输入 更合适(字典大小固定

cls经过classifier之后 输出两个句子是否接在一起(CLS看到整个句子的信息)

同时使用qpproach 1 & 2

Linear从头学,Bert微调: QA: 输出答案在文章中的位置

output 矛盾无解

GPT