《深度学习与图像识别:原理与实践》—2 图像识别前置技术
第2章
图像识别前置技术
本章将主要讲解目前主流的深度学习平台、如何搭建本书推荐的开发环境以及图像识别的前置技术Numpy。图像处理的大部分场景都需要将图像转换成向量(或者矩阵)以便于进行后续的图像识别处理。Numpy包中提供了非常好的矩阵运算,因此,学习并掌握Numpy,在后续的图像识别学习中会起到重要作用。
本章的要点具体如下。
深度学习平台概述。
搭建图像识别开发环境。
Numpy的使用详解。
2.1 深度学习框架
近几年,深度学习技术的大爆炸式发展,除了理论方面的突破外,还有基础架构的突破,这些都奠定了深度学习繁荣发展的基础。本节将对其中涌现出的几个著名的深度学习平台进行简要介绍。
2.1.1 Theano
Theano是在BSD许可证下发布的一个开源项目,是由LISA集团(现MILA)在加拿大魁北克的蒙特利尔大学开发的,其是以一位希腊数学家的名字命名的。
Theano是一个Python库,可用于定义、优化和计算数学表达式,特别是多维数组(numpy.ndarray)。它的诞生是为了执行深度学习中的大规模神经网络算法,从本质上而言,Theano可以被理解为一个数学表达式的编译器:用符号式语言定义程序员所需的结果,并且Theano可以高效地运行于GPU或CPU中。
在过去很长一段时间内,Theano是深度学习开发与研究的行业标准。而且,由于出身学界,它最初是为学术研究而设计的,这也导致深度学习领域的许多学者至今仍在使用Theano。但随着Tensorflow在Google的支持下强势崛起,Theano日渐式微,使用Theano的人也越来越少。这个转变的标志性事件是:创始者之一的Ian Goodfellow放弃Theano转而去Google开发Tensorflow了。
尽管Theano已退出历史舞台,但作为Python的第一个深度学习框架,它很好地完成了自己的使命,为深度学习研究人员的早期拓荒提供了极大的帮助,同时也为之后的深度学习框架的开发奠定了基本的设计方向:以计算图为框架的核心,采用GPU加速计算。
总结:对于深度学习新手,可以使用Theano来练手;但对于职业开发者,建议使用Tensorflow。
- 点赞
- 收藏
- 关注作者
评论(0)