学习范式
元学习(meta-learning)
/ MET-uh-LER-ning /
一位做过几百道菜的老练厨师,瞥一眼一道全新的菜,就能即兴做得很像样,因为他学会的是「烹饪是怎么回事」,而不只是某一张食谱。元学习——「学会学习」——就想把这种本事给机器:系统不去精通某一项任务,而是横跨许多任务来训练,好让自己擅长在数据极少的情况下迅速上手新任务。
它的架子搭在普通训练之上一层。你喂给系统的不是一份数据集,而是一整族小任务。在「内层」,它练习去解每一个小任务;在「外层」,它调整自身,好让这种练习下一次变得更快、更省力。一种著名的做法,是学出一组模型参数的起点,这个起点恰好处在最易于适应的位置——在任何新任务上走几步训练,它就已经像模像样了。元学习的产物并不是某一件活儿的成品模型;而是一个「擅长把新活儿做好」的模型。
这正是少样本学习背后的主引擎——系统得从一小把例子里学会一个新类别。坦白说说它的边界:元学习只能迁移到那些与训练任务相似的新任务上——碰到一类真正陌生的问题,那点起跑优势就荡然无存。它还很难训(嵌套的内外循环既不稳定又吃算力);而且对许多实际问题来说,干脆拿一个大的预训练模型来微调,往往同样管用,还省心得多。
在成千上万个小任务上训练一个系统,每个任务都是「从每种各五张照片里学会区分两个新动物物种」。经过这番练习,系统学会了「如何适应」。如今给它看五张貘的照片和五张㺢㹢狓的照片——都是它训练时从没见过的动物——它几乎立刻就能正确地把两者分开。
它的产物不是某一个训好的模型,而是「快速适应」的能力。
元学习只在与训练任务相像的任务上换来起跑优势;一个真正新奇的问题会把它打回原点。「学会学习」并不是一台无所不能的万能学习机。
又称
另见