教育和學習︰ Up《grade》【五】

猶記去年介紹音樂資訊檢索 MIR 時,曾想說

 Neural networks are a category of machine learning models which have seen a resurgence since 2006. So-called deep learning is the recent area of machine learning which combines many neuron layers (e.g. 20, 50, or more) to form a “deep” neural network. In doing so, a deep neural network can accomplish sophisticated classification tasks that classical machine learning models would find difficult.

Keras

Keras is a Python package for deep learning which provides an easy-to-use layer of abstraction on top of Theano and Tensorflow.

 

筆記本,也能禮敬

Theano (software)

Theano is a numerical computation library for Python.[1] In Theano, computations are expressed using a NumPy-esque syntax and compiled to run efficiently on either CPU or GPU architectures.

Theano is an open source project[2] primarily developed by a machine learning group at the Université de Montréal.[3]

On 28 September 2017, Pascal Lamblin posted a message from Yoshua Bengio, Head of MILA: major development would cease after the 1.0 release due to competing offerings by strong industrial players.[4] Theano 1.0.0 was then released on 15 November 2017.[5]

 

之多年持續貢獻也◎

MILA and the future of Theano

 

 Dear users and developers,

After almost ten years of development, we have the regret to announce that we will put an end to our Theano development after the 1.0 release, which is due in the next few weeks. We will continue minimal maintenance to keep it working for one year, but we will stop actively implementing new features. Theano will continue to be available afterwards, as per our engagement towards open source software, but MILA does not commit to spend time on maintenance or support after that time frame.

The software ecosystem supporting deep learning research has been
evolving quickly, and has now reached a healthy state: open-source
software is the norm; a variety of frameworks are available, satisfying
needs spanning from exploring novel ideas to deploying them into
production; and strong industrial players are backing different software stacks in a stimulating competition.

We are proud that most of the innovations Theano introduced across the years have now been adopted and perfected by other frameworks. Being able to express models as mathematical expressions, rewriting computation graphs for better performance and memory usage, transparent execution on GPU, higher-order automatic differentiation, for instance, have all become mainstream ideas.

In that context, we came to the conclusion that supporting Theano is no longer the best way we can enable the emergence and application of novel research ideas. Even with the increasing support of external
contributions from industry and academia, maintaining an older code base and keeping up with competitors has come in the way of innovation.

MILA is still committed to supporting researchers and enabling the
implementation and exploration of innovative (and sometimes wild)
research ideas, and we will keep working towards this goal through other means, and making significant open source contributions to other projects.

Thanks to all of you who for helping develop Theano, and making it
better by contributing bug reports, profiles, use cases, documentation, and support.

Yoshua Bengio,
Head of MILA

無奈卻因『樹莓派跑不動』而作罷矣。

up@up-UP-CHT01:~$ ipython3
Python 3.5.2 (default, Nov 23 2017, 16:37:01) 
Type 'copyright', 'credits' or 'license' for more information
IPython 6.2.1 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import theano
WARNING (theano.tensor.blas): Using NumPy C-API based implementation for BLAS functions.

In [2]: print(theano.__version__)
1.0.1

In [3]: from theano import tensor

In [4]: a = tensor.dscalar()

In [5]: b = tensor.dscalar()

In [6]: c = a + b

In [7]: f = theano.function([a,b], c)

In [8]: assert 4.0 == f(1.5, 2.5)

In [9]: f(1.5, 2.5) == 4.0
Out[9]: True

In [10]: 

 

MILA will stop developing Theano.

To install the package, see this page:
http://deeplearning.net/software/theano/install.html
For the documentation, see the project website:
http://deeplearning.net/software/theano/
Related Projects:
https://github.com/Theano/Theano/wiki/Related-projects

It is recommended that you look at the documentation on the website, as it will be more current than the documentation included with the package.

In order to build the documentation yourself, you will need sphinx. Issue the following command:

python ./doc/scripts/docgen.py

Documentation is built into html/

The PDF of the documentation can be found at html/theano.pdf