简介
Theano 基于 Python,是最早的深度学习开源框架,在深度学习框架中是祖师级的存在。
它的开发始于 2007,是在BSD许可证下发布的一个开源项目,诞生于加拿大魁北克蒙特利尔大学的LISA实验室,是用一位希腊数学家的名字命名的。它也被大量地运用于教育行业和自我学习提升(例如:加拿大蒙特利尔大学的深度学习课程)。
Theano 严格来说是一个高效定义,优化,估算擅长处理多维数组的 Python 库,十分适合与其它深度学习库结合起来进行数据探索,高效地解决多维数组(numpy.ndarray)的计算问题。它设计的初衷是为了执行深度学习中大规模神经网络算法的运算。其实,Theano 可以被更好地理解为一个数学表达式的编译器:用符号式语言定义你想要的结果numpy.ndarray是什么,该框架会对你的程序进行编译,在 GPU 或 CPU 中高效运行。在解决包含大量数据的问题时,使用Theano可实现比手写C 语言更快的编程速度。 而通过GPU加速,Theano甚至可以比基于CPU计算的C语言快上好几个数量级。
它具有以下这些特征:
是Numpy库的紧密整合:在Theano编译中使用numpy.ndarray
操作GPU:数据的紧凑性计算比CPU的效率高
高效的象征性差异:Theano一个或者多个输入时使用派生函数
高效、稳定优化
动态C代码产生:评估表达式的快速
大范围的单元测试和自我证实:检查和判断很多类型的错误,容错性好
Theano结合了计算机代数系统(Computer Algebra System,CAS)和优化编译器,还可以为多种数学运算生成定制的C语言代码。对于包含重复计算的复杂数学表达式任务,计算速度很重要,因此这种CAS和优化编译器的组合是很有用的。
对于需要将每种不同数学表达式都计算一遍的情况,Theano能够实现编译/解析计算量的最小化,但仍然会给出如自动微分那样的符号特征。
在过去很长一段时间内,Theano是深度学习开发与研究的行业标准。而且由于诞生于学界,Theano最初是为学术研究而设计的, 深度学习领域的许多学者至今仍在使用Theano。
但随着TensorFlow在谷歌的支持下强势崛起,Theano日渐式微,使用的人越来越少。在这个过程中标志性事件是:Theano创始者之一Ian Goodfellow放弃Theano转去谷歌开发TensorFlow了。
2017年9月28日,在Theano 1.0正式版发布前夕,LISA实验室负责人、深度学习三巨头之一的 Yoshua Bengio宣布Theano将停止继续开发:“Theano is Dead.”
尽管Theano正慢慢退出历史舞台,但作为第一个Python深度学习框架,Theano很好地完成了自己的使命,为深度学习研究人员早期拓荒提供了极大的帮助,同时也为之后深度学习框架的开发奠定了基本设计方向:以计算图为框架的核心,采用GPU加速计算。
Theano的下载
Theano现在可从Pypi上获取,也可以通过命令easy_install Theano, pip install Theano来安装;或者通过下载安装包,然后使用命令python setup.py install 进行安装
如果你对theano其他特性比较感兴趣,您可以直接到github上下载源码:
git clone git://github.com/Theano/Theano.git
您可以通过$PYTHONPATH去放置和检查目录或者使用python setup.py develop安装.pth到您的site-packages目录numpy.ndarray是什么,这样你就可以直接自动地拉取github上的theano代码了。想要了解更多关于theano的安装和配置信息,请参阅Theano的安装部分
限时特惠:本站每日持续更新海量展厅资源,一年会员只需29.9元,全站资源免费下载
站长微信:zhanting688