官术网_书友最值得收藏!

Summary

The first concept is symbolic computing, which consists in building graph, that can be compiled and then executed wherever we decide in the Python code. A compiled graph is acting as a function that can be called anywhere in the code. The purpose of symbolic computing is to have an abstraction of the architecture on which the graph will be executed, and which libraries to compile it with. As presented, symbolic variables are typed for the target architecture during compilation.

The second concept is the tensor, and the operators provided to manipulate tensors. Most of these were already available in CPU-based computation libraries, such as NumPy or SciPy. They have simply been ported to symbolic computing, requiring their equivalents on GPU. They use underlying acceleration libraries, such as BLAS, Nvidia Cuda, and cuDNN.

The last concept introduced by Theano is automatic differentiation—a very useful feature in deep learning to backpropagate errors and adjust the weights following the gradients, a process known as gradient descent. Also, the scan operator enables us to program loops (while..., for...,) on the GPU, and, as other operators, available through backpropagation as well, simplifying the training of models a lot.

We are now ready to apply this to deep learning in the next few chapters and have a look at this knowledge in practice.

主站蜘蛛池模板: 从江县| 嘉禾县| 成都市| 华蓥市| 温泉县| 衡水市| 庐江县| 宁国市| 平阴县| 平度市| 武安市| 资中县| 梓潼县| 寿光市| 西青区| 永寿县| 治县。| 呼和浩特市| 深泽县| 丘北县| 莱西市| 大姚县| 霍林郭勒市| 方城县| 稻城县| 龙江县| 永寿县| 顺平县| 和平区| 界首市| 夏邑县| 潍坊市| 句容市| 黄陵县| 会东县| 柳林县| 左权县| 金门县| 通城县| 沙洋县| 浮梁县|