Last week, Amazon Web Services (AWS) and Microsoft introduced the Gluon open machine-learning library. The creators
claim that it will allow developers to easily prototype and deploy complex models of machine learning in the cloud.
/ Flickr / cory doctorow / ccGluon offers a clear and powerful API. The models in the library are defined and managed like any other data. It is also possible to quickly create prototypes and use dynamic graphs of neural networks for new architectures without sacrificing learning speed.
')
According
to AWS’s head of artificial intelligence, Matt Wood, machine learning using neural networks consists of three main components: training data, a neural network model, and a learning algorithm. A neural network is similar to a directed graph: the input data is connected to the output via neural layers, the synapses of which have certain weights. During training, the algorithm adjusts weights based on errors in the output. This is the traditional way of learning network. It can last several days or longer.
Deep learning frameworks help speed up the process. But working with them requires additional efforts from the user: formal definition of the graph, planning and adjustment of weights.
Configure a network in which millions of connections have to manually. Therefore, deep learning networks are cumbersome and difficult to debug. Using their code for other projects is also difficult.
Gluon Features
The developers of Gluon tried to simplify the creation of intelligent technologies. AWS
states that the main advantages of Gluon are dynamic graphs, fast integration and scalable learning.
- Understandable API . Gluon networks are configured using a simple and capacious code. In this case, Gluon supports complex methods: dynamic graphs and flexible structures, but the developer does not need to understand specific details or optimize everything manually.
- Different data types . Gluon supports working with sparse and quantized data. Sparse data is often processed when processing natural language.
- Dynamic networks . In Gluon, networks are defined dynamically, which makes them as flexible as any other data structure. The algorithm dynamically configures the network during the definition and training. This means that developers will be able to use standard cycles and conditions to create networks.
- Performance . Built-in support for loops and non-degenerate tensors allows efficient execution of algorithms for RNN and LSTM models. At the same time, Gluon offers automatic distribution of tasks to several GPUs.
Gluon is an open and free product. You can find it on
github .
Other libraries
In addition to Gluon, several more libraries have appeared in recent months. IBM, using
PowerAI DDL, trained the Resnet-50 neural network on the basis of ImageNet data in 50 minutes. For this, developers have used 64 servers with 4 graphics processors in each.
Google's
Deeplearn.js library allows you to train neural networks in the browser without installing software. The company's developers
claim that the library can become a platform for rapid prototyping, visualization and offline computing.
CatBoost is an algorithm for gradient boosting on decision trees from Yandex developers. The new version of the product CatBoost version 0.2 was released in September and has already been published on
GitHub . CatBoost is based on the principles of the universal MatrixNet algorithm, which Yandex uses for ranking tasks and forecasting.
Related Links
Finally, we offer you a small selection of tools and materials related to the development of intelligent systems. For example, Quora users are advised to pay attention to the following resources:
- TensorFlow ( an interactive environment for TensorFlow).
- As well as Keras , Caffe2 , Paddle , Theano , Torch and MLJAR .
- Libraries for Python: Scikit , Numpy , Scipy , Pandas , NLTK .
- Libraries for Java: Weka , H2O , Java-ML , Apache Mahout .
And users of Reddit offered to view a selection of free resources for
self-learning and a supervised list with frameworks and libraries of
Awesome Machine Learning .
Several frameworks and useful materials can be found at the links
here and
here .
PS What else do we write in our blog: