Theano
Theano是一个Python库和优化的编译器,用来操纵和求值数学表达式特别是矩阵值表达式[2]。在Theano中,计算使用NumPy形式的语法来表达并被编译,用来在CPU或者GPU架构上高效的运行。
![]() | |
開發者 | 蒙特利尔大学的蒙特利尔学习算法研究所(MILA) |
---|---|
初始版本 | 2007年 |
穩定版本 | 1.0.5[1] ![]() |
源代码库 | github |
编程语言 | Python, CUDA |
系統平台 | Linux, macOS, Windows |
类型 | 机器学习 函式库 |
许可协议 | 3条款BSD许可证 |
网站 | www |
历史
Theano是开源项目[3],主要由蒙特利尔大学的蒙特利尔学习算法研究所(MILA)开发[4]。软件名字取自古代哲学家Theano。
在2017年9月28日,Pascal Lamblin发布了来自约书亚·本希奥的一则信息,MILA负责人:由于更强大的工业参与者的竞争,主要的开发在1.0发行之后将会停止[5]。Theano 1.0.0随后在2017年11月15日发行[6]。在2018年5月17日,Chris Fonnesbeck代表PyMC3开发团队写道:PyMC开发者将在他们退场后取得对Theano维护的控制权[7]。
样例代码
下列代码是最初的Theano的例子。它定义具有类型double
的2个标量a
和b
及在它们上的运算(加法)的一个计算图,并接着建立一个Python函数f
来进行实际计算[8]。
import theano
from theano import tensor
# 声明2个符号浮点标量
a = tensor.dscalar()
b = tensor.dscalar()
# 建立一个简单的表达式
c = a + b
# 将这个表达式转换成一个可调用对象,
# 它接收(a, b)值作为输入并计算出一个值给c
f = theano.function([a, b], c)
# 绑定1.5至'a',2.5至'b',并求值'c'
assert 4.0 == f(1.5, 2.5)
参见
- 深度学习软件比较
- 可微分编程
引用
- . 2020年7月27日 [2020年7月28日].
- Bergstra, J.; O. Breuleux; F. Bastien; P. Lamblin; R. Pascanu; G. Desjardins; J. Turian; D. Warde-Farley; Y. Bengio. (PDF). Proceedings of the Python for Scientific Computing Conference (SciPy) 2010. 30 June 2010 [2020-11-06]. (原始内容存档 (PDF)于2020-11-01).
- . [2020-11-06]. (原始内容存档于2020-11-16).
- . [2020-11-06]. (原始内容存档于2017-12-13).
- Lamblin, Pascal. . theano-users (邮件列表). 28 September 2017 [28 September 2017]. (原始内容存档于2011-01-22).
- . [2020-11-06]. (原始内容存档于2020-09-14).
- Developers, PyMC. . Medium. 2019-06-01 [2019-08-27]. (原始内容存档于2020-08-06) (英语).
- (PDF). LISA lab, University of Montreal: 22. 21 November 2017 [31 August 2018]. (原始内容 (PDF)存档于2020-08-05).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.