在应用层面了解迁移学习的原理及其优势
两年前,吴恩达在 NIPS 2016 的 Tutorial 上曾说“在监督学习之后,迁移学
习将引领下一波机器学习技术商业化浪潮。”现实中不断有新场景的出现,迁移学习可以
帮助我们更好地处理遇到的新场景。迁移学习到底有哪些优点,能够成为现在机器学习算
法的新焦点?本文将通过与深度学习进行对比,让大家在应用层面了解迁移学习的原理及
其优势。
前言
深度学习在许多很难用其它方法解决的问题上取得了长足的进步。深度学习的成功归功于
它与传统的机器学习的几个关键不同点,这使得它在处理非结构化数据的时候能够大放异
彩。如今,深度学习模型可以玩游戏,检测癌症,与人类交谈,以及驾驶汽车。
但是,使深度学习强大的这几个不同点同时也使得其成本巨大。你可能听说过深度学习的
成功需要庞大的数据量,昂贵的硬件设施,甚至更加昂贵的精英工程人才。现在,一些公
司开始对那些可以减少成本的创新想法和技术特别兴奋。比如多任务学习(Multi-task
learning),这是一种可以让机器学习模型一次性从多个任务中进行学习的方法。这种方法
的其中一种好处就是,可以减少对训练数据量的需求。
在这篇文章中,我们将会介绍迁移学习(transfer learning),一种可以让知识从一个任务迁
移到另一个任务中的机器学习方法。迁移学习不需要为你的问题重新开发一个完全定制的
解决方案,而是允许你从相关问题中迁移知识,以帮助你更轻松地解决您的自定义问题。
通过迁移知识,你可以利用用于获取这些知识所需的昂贵资源,包括训练数据,硬件设备,
研究人员,而这些成本并不需要你来承担。下面让我们看看迁移学习何时以及是怎样起作
用的。
深度学习与传统机器学习的不同点
迁移学习并不是一项新技术,它也不是专门为深度学习服务的,但是鉴于最近在深度学习
方面取得的进展,它很令人兴奋。所以首先,我们需要阐明深度学习究竟和传统的机器学
习在哪些方面有所不同。