MetaICL:消除训练前和下游ICL使用之间的差距。
https://github.com/facebookresearch/metaicl
通过简单地调整一些训练示例,没有参数更新或任务特定的template。
证明了MetaICL是对人工编写的指令的补充,并且通过结合这两种方法可以获得最好的性能。
2 Related Work
通过多任务学习的元学习:先前的研究表明,无论是进一步finetune还是zero-shot上,在大量任务上的多任务学习可以在新任务上取得更好的表现。
3 MetaICL
(1)MetaICL (Meta-training for In-Context Learning)
大致的结构框架:包括训练和推理的过程。
其关键思想是在大量的元训练任务集合上使用多任务学习方案。
多任务学习就是让一个model被灌输多个任务去训练。(任务训练是串行的)
(2)另外引入了一种有噪声的元的信道变体,称为Channel MetaICL。
4 Experimental Setup
数据集:CROSSFIT and UNIFIEDQA
都有些什么任务?
text classification, question answering (QA), natural language inference (NLI) and paraphrase detection.
文本分类、问答(QA)、自然语言推理(NLI)和转述检测。
HR→LR (High resource to low resource): 我们认为使用高资源数据集进行元训练 和 低资源数据集作为目标是few-shot learning学习的一个现实和实用的设置。
X→X (X={Classification, QA}):我们实验了两种设置,即元训练和目标任务共享的任务格式,尽管在任务中没有重叠。
Non-X→X (X={Classification, QA, NLI, Paraphase}):最后,我们实验了四种设置,其中元训练任务在任务格式和所需能力上与目标任务不重叠。这些设置需要最具挑战性的泛化能力。
评价指标:
任务就是有标签的任务,所以好衡量一些。
- Micro F1^2(Classification任务)
- Accuracy(non-Classification任务)
5 Experimental Results
主要结论
All Tasks:所有用于元学习的任务;
Target Tasks in Unseen Domains:未见过的目标任务。
证明的主要结论是:Channel MetaICL 和 MetaICL的性能优于其他baseline,其中Channel MetaICL更优一些。
Comparison to fine-tuning :它表明目标参数更新的模型可以匹敌或优于监督模型。
在不更新参数的情况下学习的方法仍有改进的空间。
消融实验:
对ICL有影响的因素:
(1)任务的多样性很重要。多样性越多越好。
(2)任务的数量对元学习有实质性的影响,数量越多越好
(3)training examples的数量K越大约好。
Instructions是必要的吗?
(1)学习In-context学习(MetaICL)的表现优于学习从Instruction中学习;
(2)MetaICL和使用Instruction在很大程度上是互补的
(3)MetaICL实际上比使用Multi-task 0-shot从Instruction中获益更多。
6 Conclusion
总结 + 局限和展望。
局限和未来工作:
● 提供了训练数据的连接,在元训练和推理中通常需要更长的上下文的上下文学习方法,因此与不使用上下文学习的基线相比效率较低;
● 实验的模型不够大,可用于更大的模型中
● 我们的实验集中于分类和多项选择任务,其中给出了一组候选选项。之后可以提供更广泛的任务,包括自由生成generation
● 进一步改进MetaICL,使其通过元训练优于监督模型,识别哪些元训练任务有利于目标任务。
● 如何更好地结合人为Instruction和MetaICL。