about TensorFlow
The TensorFlow is an open source software library that uses a data flow graph (graphs) for numerical calculations. A node (Nodes) represents a mathematical operation in a diagram, and a line (edges) in the graph represents a multidimensional array of data that is interconnected between nodes, that is, tensor (tensor). Its flexible architecture allows you to expand calculations on multiple platforms, such as one or more CPUs (or GPUs), servers, mobile devices, and so on, on a desktop computer. TensorFlow was originally developed by researchers and engineers at Google's Brain group (affiliated to the Google Machine Intelligence Research Institute) for Research on machine learning and deep neural networks, but the versatility of the system makes it widely available in other computing areas as well.
The graph of graphs is used to describe mathematical calculations using the "node" (nodes) and the "line" (edges) graph. A "node" is typically used to denote an applied mathematical operation, but it can also represent the end point of the start/output (push out) of a data input (feed in), or the end of a read/write persistent variable (persistent variable). Lines represent the input/output relationships between nodes. These data "lines" can be shipped "size dynamically adjustable" of the multidimensional data array, namely "tensor" (tensor). The visual image through which the tensor flows from the graph is the reason why this tool is named "TensorFlow". Once all the tensor on the input is ready, the node will be assigned to various computing devices to perform the operation asynchronously and in parallel. (Refer to click to open link)
Learning materials Link: http://wiki.jikexueyuan.com/project/tensorflow-zh/ tensorflow v1.0.0-rc2:http:// WWW.OPEN-OPEN.COM/NEWS/VIEW/41C75DC0
about Theano
Theano is an open source project under the BSD license, developed by the Lisa Group (now Mila) at the University of Montreal in Quebec, Canada (Yoshua Bengio Home). It was named after the name of a Greek mathematician.
The core Theano of Python is a compiler for mathematical expressions. It knows how to get your structure and make it a very efficient code that uses numpy, efficient local libraries, such as Blas and native code (c + +), to run as fast as possible on the CPU or GPU.
It cleverly uses a range of code optimizations to grab as much performance from the hardware as possible. If you are interested in the basic facts of mathematical optimization in the code, take a look at this interesting list.
The actual syntax of the Theano expression is symbolic and can be pushed to beginners for general software development. Specifically, expressions are defined in an abstract sense, compiled and later used for computation.
It is designed specifically for the calculations needed to deal with large neural network algorithms in deep learning. It is one of the firsts of this type of library (development began in 2007) and is considered an industry standard for deep learning research and development.
Like TensorFlow, Theano is a relatively low-level library. It is therefore not suitable for deep learning and is more suitable for numerical calculation optimization. It supports automatic function gradient calculations, with Python interfaces and integrated Numpy, making it one of the most commonly used libraries in the General deep learning field from the very beginning. Today, Theano still works well, but because it does not support multi-GPU and horizontal scaling, in the TensorFlow craze (they target the same field), Theano is already forgotten.
Learning Materials Link: http://outlace.com/Beginner-Tutorial-Theano/
about Keras Keras is a very high-level library that can work on Theano and TensorFlow (configurable). In addition, Keras emphasizes minimalism-you can build a neural network in just a few lines of code.
Learning Materials Link: http://keras-cn.readthedocs.io/en/latest/backend/