“举一隅不以三隅反,则不复也。“这是孔子曾对自己学生说的一句话,意思是说:“我举出一个方面,你们应该要能灵活地推想到另外几个方面,如果不能的话,我也不会再教你们了。”我们老师也会时常教育我们,做题时要学会举一反三,学会一样东西后要灵活思考,将他运用到其它类似的方面上。我们人类都是有很强大的举一反三能力的。就像我们学会解一元一次方程后,我们就可以很容易学会解一元二次方程,我们学会下象棋后就很容易学会下国际象棋。
我们前面说过深度学习是通过计算机来模拟人类大脑思考而发明出来的,那我们可不可以用计算机模拟我们人类的举一反三能力呢?答案是可以的,这就是我们今天的主题——迁移学习。
顾名思义,迁移学习就是利用数据、任务或模型之间的相似性,将在旧的领域学习过或训练好的模型,应用于新的领域这样的一个过程。就比如我们一开始通过100000张猫的图片训练出一个猫脸识别的模型。现在我们有一个新的任务,要求训练一个狗脸识别的模型,而且狗的图片只有一千张。那我们该怎么做呢?
对于传统的机器学习,就是一切从头开始,所有参数都重设,重新用1000张狗图片来建立模型。这样子不仅要花费较长的时间而且由于狗的图片较少,建立出来的模型识别准去率也不高。
而对于迁移学习,我们可以利用已有的猫脸识别模型来训练狗脸识别模型。这样子不仅可以缩短训练时间,而且即使我们的狗图片只有一千张,但是我们已经利用了猫模型中的一些特征,所以我们训练出来的狗脸识别模型识别准确率也是非常高的。
总的来说迁移学习是一种知识(权重)共享技术,它减少了构建深度学习模型所需的训练数据、计算能力和工程人才的数量。前百度首席科学家、斯坦福的教授吴恩达(Andrew Ng)曾说过:“迁移学习将会是继监督学习之后的下一个机器学习商业成功的驱动力“。DeepMind Technologies首席执行官Demis Hassabis也曾说过。“Transfer也是最有前途的技术之一。“可以看出迁移学习是具有十分广阔前景的。
参考文献:
[1] 阿里云云栖号.什么是迁移学习,这个领域历史发展前景如何?https://www.zhihu.com/question/41979241, 2018-11-26