推荐序一
近年来,几乎整个智能学科的研究者们都注意到一个技术名词——深度学习(Deep Learning)。这个略带神秘色彩的名字和其代表的前沿性技术被著名的《MIT技术评论》评选为2013年世界10大突破性技术之首。而在此之前,包括Google、Microsoft、Facebook等公司在内的诸多信息科技巨头都已争相在此技术上投入了前所未有的重视力度和战略资源,继而高调宣布布局智能应用领域。学术界和工业界不遗余力地抢占相关研究和技术的制高点,人们并没有感到奇怪,因为所有人都明白:这也许是人类在探索人工智能的伟大旅程和漫漫征途上的重要一刻。
关于人工神经网络的研究可以追溯到20世纪40年代。在其漫长的历史上经历了数次戏剧性的波折。然而近年来,随着大量数据的获得、先进理论的发现,以及高性能并行计算技术的发展,以深度神经网络为载体的特征学习技术相继在语音、视觉、语言等诸多研究领域中取得了突破性的成果,并且正以不可阻挡之势“入侵”传统技术占领的各个领域。
随着深度学习技术在学术界和工业界得到广泛认可,越来越多的人开始参与到深度学习的相关研究和实践中来。然而,由于存在一定的技术门槛,快速入手深度学习的研究并不是一件容易的事情。其中的一个重要原因是,深度学习中的许多问题非常依赖于实践。然而长期以来,学术界和工业界缺少一款专门为深度学习而设计的,兼具性能、灵活性和扩展性等诸多优势于一身的开源框架。这使得无论是快速实现算法,还是复现他人的结论,都存在着实践上的困难。研究人员和工程师们迫切需要一套通用而高效的深度学习开源框架。
2013年,一款叫作“Caffe”的深度学习框架由加州大学伯克利分校的@贾扬清博士在Github上发布。发布伊始,Caffe框架就得到了广泛的关注。Caffe框架以“层”为单位对深度神经网络的结构进行了高度的抽象,通过一些精巧的设计显著优化了执行效率,并且在保持高效实现的基础上不失灵活性。无论在结构、性能上,还是代码质量上,Caffe都是一款十分出色的开源框架。更重要的是,它将深度学习的每一个细节都原原本本地展现出来,供人们学习和实践。可以说,Caffe框架的发布极大地降低了深度学习研究和开发的难度。
正是由于上述的诸多优势,Caffe框架迅速流行起来,并且逐步形成了强大的用户社区。经过两年多的版本迭代,Caffe框架已经在学术界和工业界得到了广泛的认可。在学术界,目前每天都有以Caffe框架作为底层实现的研究成果发布;而在工业界,已经有许多产品使用Caffe作为其深度学习算法实现的内核。从学术界到工业界,大家可以共享同一套底层代码,基于同一套平台进行研究、交流和生产,这是一件令人愉悦的事情。可以说,Caffe开源项目对于促进整个深度学习研究领域的快速发展具有不可磨灭的贡献。
对于刚刚接触深度学习的朋友们来说,通过结合Caffe的代码来加深对理论的理解,也许是一种事半功倍的方法。Caffe框架天然的清晰层次和良好的代码可读性,为入手深度学习的朋友们提供了教科书般的实践指导。然而,由于Caffe中有大量技术细节是在论文中无法找到的,想要快速理解Caffe框架内部的种种精要往往需要费一番周折。幸好,有一些先行者为大家分享了相关的知识。
几天前,我有幸接到好友@卜居的邀请,为他的《深度学习:21天实战Caffe》新书做序。这本书是国内第一本在代码级别上全面剖析Caffe框架的指导书,同时也是一本真正的实战手册。本书涉及深度学习的基本理论、Caffe的设计思想、Caffe中各模块的具体实现,以及各种实例等内容。书中对Caffe框架的分析非常细致,涵盖的内容也颇为丰富,可以说是一本入手Caffe实践的技术手册,因此特别适合于Caffe的初学者阅读。相信本书可以帮助朋友们少走许多弯路。有关Caffe的诸多奥秘,@卜居将会在书中为您一一呈现。
感谢创立和推动深度学习研究的科学家们,感谢Caffe框架的作者贾扬清博士,感谢本书的作者@卜居,以及所有为深度学习技术的发展而奋斗的朋友们。我们的征途是星辰与大海,让我们一起努力,向着实现人工智能的伟大目标前进!
辛淼
北京航空航天大学博士生
Caffe中国用户社区(caffecn.cn)创始人