目录

摘要

Abstract

1 评估指标

1.1 回归任务

1.2 分类任务

1.3 排序任务

1.4 生成任务

2 T5模型

2.1 方法及创新

2.2 评估实验

3 总结


摘要

本周首先对各类任务的评估指标进行了整理,在厘清部分概念的同时接触了新的评估指标,如MAP、BLEU等;其次通过论文学习了T5模型的核心思想、实验探索过程与评估结果,了解了其思想、方法上的创新点。

Abstract

This week, I first organized evaluation metrics for various tasks, clarifying certain concepts while learning about new metrics such as MAP and BLEU. Secondly, I studied the core ideas of the T5 model through a research paper, including its experimental exploration process and evaluation results, and gained an understanding of its innovations in concepts and methodologies.

1 评估指标

在阅读论文时,发现许多性能评估指标并不了解,故本节对此进行整理,便于后续学习。

1.1 回归任务

回归任务预测连续值,其评估指标主要衡量的是预测值与真实值之间的误差,主要包括:

均方误差(MSE)是最常用的指标,但由于误差被平方放大,所以对异常值非常敏感,其公式为:

MSE=\frac{1}{n}\sum_{i=1}^{n}(y_{i}-\hat{y_{i}})^{2}

均方根误差(RMSE)是MSE的平方根,其量纲与原始数据一致,解释性更好。同样对异常值敏感,其公式为:

RMSE = \sqrt{MSE}

平均绝对误差(MAE)对异常值比前两者更鲁棒因为它没有平方操作,其公式为:

MAE=\frac{1}{n}\sum_{i=1}^{n}\left |y_{i}-\hat{y_{i}} \right |

p.s. 鲁棒性衡量的是一个系统在不理想条件下的稳定性和可靠性。

决定系数衡量模型对目标变量方差的解释比例,其值越接近1,表示模型拟合效果越好。通俗来讲,它指的是与简单使用均值作为预测的基线模型相比,我们的模型性能提升了多少。其公式为:

R^{2}=1-\frac{\sum_{i}(y_{i}-\hat{y_{i}})^{2}}{\sum_{i}(y_{i}-\bar{y})^{2}}

1.2 分类任务

分类任务的评估指标大多都基于混淆矩阵,除了前面提过的、基于混淆矩阵的精确率、召回率、F1分数与PR曲线以外,还包括:

ROC曲线,它以假正率(FPR) 为横轴,真正率(TPR,即召回率) 为纵轴。AUC值指的是ROC曲线下的面积,它越接近1,代表模型性能越好。其优点是对类别分布不敏感,适用于不平衡数据集。但当正例非常稀少时,PR曲线可能比ROC曲线更能反映模型的真实性能;

p.s. 假正率(FPR)是指预测为正例且真实为负例的样本在所有真实为负例的样本中的占比。

对数损失,直接衡量模型输出的概率与真实标签之间的差异,不仅关心预测是否正确,更关心预测的“把握度”。它是一个非常严格的指标,一个错误预测就会受到非常严重的惩罚。其公式为:

LogLoss = -\frac{1}{N} \sum_{i=1}^{N} [y_{i}log(p_{i})-(1-y_{i})log(1-p_{i})]

1.3 排序任务

排序任务主要用于推荐系统、信息检索等领域。,其评估指标主要包括:

平均精度均值(MAP)是多个查询的平均精度(Average Precision, AP)的平均值。它不仅关心相关物品是否被检索出来,更关心它们被排在多靠前的位置,同时考虑了推荐结果的相关性和排序位置,是推荐系统中最核心的指标之一。

p.s. AP是对单个查询的排序结果进行评估的指标,它考虑了每个相关文档的排序位置。

归一化折损累计增益(NDCG)衡量的则是带权重的排序质量,不仅关心物品是否相关,还关心相关的程度,并且对排在前面的物品赋予更高的权重。它的计算方式是用实际的累计折损增益(DCG,位置越靠后,增益的权重折损越多)除以理想排序下的累计折损增益(IDCG),并进行归一化,使结果在0到1之间。当物品的相关性有等级之分时,NDCG是最合适的指标。

p.s. 两者对于排在前面的理解是不一样的。MAP只关心是否相关,相关的都要排在不相关的前面;而NDCG则更关心排序本身对应的相关性程度。

1.4 生成任务

对于文本生成、图像生成等任务,评估更具挑战性,其指标包括:

BLEU,比较模型生成的文本与人工参考译文之间的 n-gram 重合度,重合度越高,分数越高。它主要用于机器翻译。其优点在于快速、低成本、客观且与人工评估有较高的相似性,但它只衡量表面字词的重合,无法评估语义流畅性和逻辑性。

ROUGE,思想与BLEU类似,但更关注召回率,即参考摘要中的 n-gram 有多少被模型生成的摘要所覆盖。它主要用于文本摘要。

p.s. n-gram 是文本中一段连续的、长度为 n 的单词序列(gram代表词元),用于分析和捕捉局部的、连续的语言模式。

困惑度主要用于评估语言模型预测样本的好坏程度,困惑度越低,表示模型对下一个词的出现越不困惑,模型越好。

另外,对于生成式任务,由于机器指标的局限性,人工评估仍然是黄金标准,通常会从流畅性、相关性、一致性、事实准确性等维度进行评估。

2 T5模型

T5模型的核心思想是将所有NLP任务都重新定义为文本到文本(Text-to-Text)的格式 ,它的提出很大一部分是为了弥补 Bert 模型只能进行各种文本分类任务,而无法进行生成任务的局限。

论文链接:[1910.10683] Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer

2.1 方法及创新

首先是建立了统一的文本到文本框架, 将每一个NLP问题都视为一个文本到文本的转换任务,模型接收一段文本作为输入,并生成另一段文本作为输出。

为了告诉模型需要执行什么任务,它在输入文本前会加上一个任务特定的前缀字符串。这种框架包容性很强,使同一个模型、相同的损失函数、相同的训练和解码过程可以应用于翻译、 摘要、分类、问答等几乎所有任务,为后续的系统性比较提供了坚实的基础。

其次,在当时大部分工作都利用大型未标记数据集进行无监督学习的情况下,论文构建并发布了C4数据集用于预训练。它通过Common Crawl的抓取网页文本数据,然后经过一系列严格的启发式清洗,包括但不限于只保留以终止标点结尾的句子、移除包含不文明词汇的页面等操作得到,解决了当时预训练数据不统一、不公开或规模不足的问题,为大规模实验提供了稳定、透明且可复现的数据基础。

然后是基线模型的确立,与前几篇论文提出方法或模型范式再评估性能不同,这篇论文本质上更像一篇实验报告。它采用预训练加微调的范式,以统一的文本到文本框架为基础,系统性地比较了当时各种主流技术以探索各部分的最优方法与模型,最终进行集成。具体如下:

在模型结构上,它比较了Encoder-Decoder结构,LM模型(仅Decoder)以及前缀语言模型(Prefix LM),最终发现Encoder-Decoder结构效果最好;

在输入表示上,它引入了SentencePiece,不将空格作为分隔符,而将字符串作为其原始格式的输入,使用BPE或ULM作为分词器来构建词汇表;

在无监督预训练上,它通过实验比较从语言模型式(GPT-2)、Bert-style式与顺序还原式三者中选择了Bert-style式的预训练方法,这种方法会随机破坏掉一部分内容再进行还原。接着继续通过实验选择文本破坏的策略、占比以及长度,最终采用小段替换法破坏15%的内容,内容中的小段长度为3。

举个例子,对于原始文本 “My friend and I walked to the park yesterday to play a fun game of soccer with our teammates.” ,它带标点一共20个令牌,破坏15%的内容即需破坏3个令牌,随机选择一个连续的3令牌片段(例如 a fun game),并用哨兵令牌<x>替换它,模型输入就将变为“My friend and I walked to the park yesterday to play <x> of soccer with our teammates.”,目标输出将变为 “<x> a fun game”

在微调上,论文专注于两种替代的微调方法,一种是Adapter layers,另一种是Gradual unfreezing。前者在Transformer每个块的前馈神经网络之后,插入一个额外的、小型的前馈神经网络模块作为适配器,使输出与输入维度匹配,在微调时,只更新适配器层和层归一化的参数;后者则避免在微调初期就更新所有参数,即在微调开始时,只训练模型的最后一层,经过一段时间的训练后,解冻并开始训练更下面的一层,依此重复,直至模型的所有层都被解冻并参与训练。不过这两者在性能上还是比不过更新所有模型参数的标准微调方法,如果必须在参数效率和性能之间做出妥协,适配器层会是一个更可控和有效的选择。

论文还在最后加入了多任务学习的部分,不过它只对应于将多种数据集混合在一起,然后从混合后的数据集中采样批次进行训练。它系统比较了三种混合策略,即等比例混合、按样例数比例混合(与对应数据集大小成正比)与温度缩放混合,最后一种引入了温度参数 T 来平滑比例(当 T=1 时,等同于按样例数比例混合,随着 T 的增大,会逐渐趋向等比例混合)。在大部分情况下,T=2的表现是最佳的。

在此基础上,论文找到了多任务预训练加下游微调的方法,主要是先在无监督任务和有监督任务的混合数据上进行多任务预训练,然后再在每个下游任务上单独进行微调。这种方法的性能与标准的无监督预训练加微调不相上下,同时允许在预训练期间直接监控所有下游任务的验证集性能,从而可以像监督学习一样进行早停和模型选择,而无需等待漫长的预训练结束后再进行微调。

另外,进行了规模实验,通过评估增大规模的性能,即使用更大的模型、更多的训练轮数与模型集成,来判断在拥有更多计算资源时如何提升性能。结果发现,单纯增加训练时间或批次大小是有效的,但有瓶颈,而增大模型规模是提升性能最有效的途径之一。除此之外,模型集成是一种成本相对较低的提升性能的技巧,

2.2 评估实验

把前面最佳的方法组合在一起,最终训练了Small、Base、Large、3B与11B五种T5模型。其性能评估如下所示:

除了上节所述探索模型架构的实验与前面的评估外,为了测试模型的泛化能力,论文尝试在预训练时故意省略一个下游任务,然后在预训练结束后再对这个“未见过的”任务进行微调。结果显示,性能下降非常小。这表明通过多任务预训练获得的能力是可迁移和可组合的,模型能够很好地适应新任务。

3 总结

由于之前读其他论文并尝试复现时,接触到了不是很熟悉的评估指标,所以本周首先对此进行了整理,希望能对后续的学习有所帮助;其次学习了T5模型,感觉论文整体思路在学习上很值得参考,找好目标,通过实验选择各模块的方法,再从其中思考创新以更好地达到目标;此外更新了对规模实验的认识,前面可能觉得就像学的那样,规模实验就是单纯判断大规模是否能提升性能,没有思考过大规模实际上意味着对拥有更多计算资源的假设。

更多推荐