深度学习入门

迁移学习:站在巨人的肩膀上

10 分钟

会骑自行车的人学电动车

没有人从零学骑电动车——会骑自行车,平衡、转弯、刹车全都会,花十分钟熟悉电门就上路了。迁移学习就是把这个套路用在深度学习上:拿一个在大数据上练好的模型当起点,只针对新任务微调,而不是从零训练。

怎么做,为什么灵

以图像为例:下载一个在 ImageNet 120 万张图片上练好的 ResNet,它的浅中层已经会认边缘、纹理、形状——这些本领对所有看图任务都通用,不用重学。你要做的:砍掉最后的分类头,换上你自己的(比如 5 类宠物),冻结前面大部分层,只用你的几百张照片微调最后几层。一下午就能得到一个 95% 准确率的分类器——从零训练需要几万张图和好几天,迁移学习只要百分之一的数据和时间。

这招早已无处不在

医学影像识别:医院没那么多标注片子,全靠迁移学习起步;手机的拍照场景识别(美食、夜景、宠物)也是大模型微调而来;语言领域更彻底——第一章的词嵌入是预训练的起点,今天的大模型全是「预训练 + 微调」的玩法,这门课最后一讲会展开。《动手学深度学习》在「微调」一节给了完整代码。

常见误区

迁移不是「随便换个头就行」:源任务和新任务差太远(语音模型转去看 CT 片),底层特征就不通用;微调时学习率要调小,否则一把火把巨人的知识烧光。

练一练:找一个你的旧技能帮你快速学会新技能的例子,说说哪些「底层能力」被迁移了。

小纸条

举一个自己用旧技能快速学会新技能的例子,指出被迁移的底层能力是什么。

登录 后可看答案