GPT
- pre-training:给一个序列预测序列的下一个词
- semi-supervised 半监督学习(往后也称self- supervised)
-
第一部分:pre-training
损失函数L1

k表示上下文长度【序列长度/窗口大小】,使用前k个字和模型θ\thetaθ预测第i个字是uiu_iui的概率;将每一个字
的预测i(从0-句子末尾)的损失相加(取e就是连乘得到联合概率) -
第二部分:下游子任务fine-tune
把预训练学到的表征迁移到子任务transfer learned representations to the target task。
损失函数L2:input tokens { x1x^1x1,x2x^2x2,x3x^3x3,…xmx^mxm } (其中还会根据子任务类别加入start、delim、extract的独特标记,此标记不能和真实文本混淆)
label y (序列标号根据子任务类别确定)分类损失函数


-
合并目标函数
L3(C)=L2(C)+λL1(C)L_3(C) = L_2(C) + \lambda L_1(C)L3(C)=L2(C)+λL1(C)
- transformer 解码器

GPT in NLP 经典任务
- 分类:分类一段文字
- 蕴含:判断前面的话是否支持后面的假设(三分类:支持、不支持、既不支持也不反对)
- 相似:判断两端文本是否相似
- 多选:从n个答案中选出最正确的答案
- 其他任务
reading comprehension
translation
summarization
question answering
GPT2
- 下游任务时不再进行fine-tune而是使用zero-shot
zero-shot具体形式: prompt!
(translate to French, English text , French text)
(answer the question, document, question, answer)
借助prompt使得预训练模型适应下游任务 - multitask learning 多任务学习:训练模型时使用多个数据集、多损失函数 (reddit dataset…)
GPT3
使用few shot,适应子任务时和zero-shot一样也不需要计算梯度
- zero-shot: task description + prompt =>
- one-shot: task description + 1 example + prompt 【上下文学习】【模型推理】
从中间的example抓取有用的信息进行下游任务的适应 **few-shot learning**:task description + few examples(1-100) + prompt
meta- learning、in-context learning
fine-tune:预训练模型在新的数据上进行梯度微调,学习率较小
common crawl 质量差
common crawl(负类)+ reddit (正类) logistical regression来训练出判断质量的数据模型
去重: lsh算法(判断集合和集合间的相似度)
本文探讨了GPT模型的预训练方法,包括L1k损失函数和上下文预测,以及如何通过fine-tune、zero-shot和few-shot学习在下游任务中迁移和适应。同时提及了Transformer解码器的应用,涉及多种NLP任务如分类、相似性判断和阅读理解等。
2136

被折叠的 条评论
为什么被折叠?



