How neural networks learn for you and where they are applied?
Machine learning and neural networks - today these definitions are often heard on presentations and forums. For most people, they look like synonymous to some machinery with a magic functions, which is able to write music, process photos, and drive cars. What place do neural networks occupy in the modern world and why are they being used more actively than it seems at first sight?
What is neural network?
Neural network is the Space. It is a typical users’ answer. In a nutshell the neural network can be described as a mathematical model, imitating the nerve cells of a living organism. The model can implemented at the software and hardware levels. Let’s have a look at the simplest network unit - a cell (synapse).
Each cell has a wide input several hidden, and one output layers. Numerous input signals are “mixed” in hidden neurons and form an output signal. Artificial neural network is a network of synapses, just like the human nervous system. Each synapsis has its “weight” and has different impact on the characteristics of the output signal.
The easiest way to describe the principle of the network using the example of a palette of colors.
Let’s say that there are three colors: blue, yellow and red. Suppose there are three colors: blue, yellow and red. These are three input signals with different weights, the blue color hat the maximum weight, and red has the minimum. They both get into the hidden layers area (on the "palette") and are mixed in different proportions. The output is a single color - brown.
There are many such “palettes” in the neural network. Moreover, each "neuron" performs simple operations, but in conjunction, the network impresses with its computational capabilities. It implements a simple principle - to break a big task, like in photo processing- into many small ones.
The main difference between a neural network and ordinary computational algorithms is the ability to learn. Over time, it is able to find the correct coefficients, reveal patterns between the input and output data. Soon this leads to the fact that the network gives the correct solution even in case of the lock of input data.
Can the neural network be wrong?
In the early stages of the creation of the ANN are like a child. They do not see interconnections, do not know how to single out the main thing, and need a teacher. The mentor starts with simple tasks and compares results with correct ones. If necessary, it "corrects" the network. The most commonly used method is back propagation of an error, which corrects the weight of the input parameter.
When the neural network "grows up" a little, it is shifted to self-study. The easiest way to do this in games. The ANN studies the games and competes with other players, evaluating the sequence of moves that leads to the victory. Having a lot of input data, the network, considers the "weight", gives the moves which are more likely to lead to win.
When working with images, convolutional neural networks are used. For example, we have a task to distinguish images of dogs among others.To do this, over a million of images of dogs are uploaded to the network. It can be drawings, collages, toys, animated characters of dogs or etc.. And then only pictures of real animals are selected. After repetitions and training, the system will be able to select the required images without the help of a human.
Large companies, such as Microsoft and Google, have uploaded compiled image sets for those who want to train their neural network. It turned out that for recognition of objects a network of about 20 layers is needed. The more layers are used, the more computing power is needed and the smarter the network is.
So, can the neural network be wrong? It depends on the stage of training and the capacities obtained. Neural networks capacities are far from the capabilities of the human brain, but they are already used in those areas where minimization of errors is needed. For example, self-learning production processes, drones, image processing systems, security functions, analytics, robotics, quality monitoring, etc.
Do not forget that the neural network is not artificial intelligence. They are "trained" for certain tasks. The network is not capable to work beyond the particular set of tasks.
How do neural networks evolve?
Now is the third stage of the neural networks development, one of the most successful. Technical parameters finally allowed to make large-scale operations. First and foremost, a breakthrough was made possible thanks to graphics cards - GPUs.
Turned out, that for the neural networks learning video cards are more suitable that the central processor. GPUs breaks large task into many small ones, since it consists of hundreds of small nuclei. They are not suitable for all kinds of operations, but for neural networks they suit perfectly. After learning and uploading the necessary data to the application, the network no longer needs large capacities and the result of some simple operations can be obtained on a smartphone.
A reliable assistant of GPU is RAM. It allows to save solid amounts of data and upload them to the video card. The results can be saved again to the RAM and run tasks several times. This increased the volume of neural networks exponentially, making them accessible to ordinary users.
So far, users are familiar with neural networks by simple functions - Internet search, image processing, including in real time, and translation of text information.
Does future belong to video cards?
This is the most approachable alternative so far. We chose GPUs for machine learning as they provide the maximum opportunity for parallel data processing. At the same time arrays of video cards require much smaller infrastructure.
“Thanks to the GPU, pre-recorded speech or multimedia content can be played much faster. In comparison with CPU, we can perform recognition up to 33 times faster.”
- Professor Ian Lane, Carnegie Mellon University
At the end of August, Nvidia introduced a new generation of graphics accelerators under the general labeling RTX 2000. Not all characteristics of the devices have been announced yet, but it is known that the flagship GeForce RTX 2080 Ti is equipped with 4,352 CUDA cores, 11 GB of GDDR6 video memory. TDP of video cards is approaching 250W lately. This is a limit for modern cooling systems (on air). Further expansion and complication of heat removal systems will increase the cost of video cards and reduce its lifespan.
Thus, with all the known advantages of video cards for neural networks, two main points should be considered - power consumption and the cooling system. And if the first parameter is set by the manufacturer, the second one requires creativity. Ideal solution must be capable in efficient heat removal from operating video card arrays in 24/7 mode. But manufacturers of video cards use common developments in their cooling systems, not working on its improvement. However, BiXBiT has a solution for cooling devices and beneficial use of the generated heat.
BiXBiT equipment for cooling neural networks
BiXBiT company uses a unique, scalable modular design to cool equipment and recycle heat. Its distinctive feature lies in ability to grow along with your neural network. You can start with a cell on 24 video cards, which takes only 0.13 cubic meters. Immersion liquid is developed specifically for computing equipment. The benefits of this cooling system are the following:
- immersion cooling saves energy;
- eliminates dust and reduces noise;
- prolongs lifespan of the equipment;
- density of the equipment is 2-3 times higher in comparison with devices based on standard air cooling;
- all the necessary infrastructure for operation is placed inside the cell, only a cooling tower is installed outside (if necessary);
- suitable for 99% of modern video cards;
- the cell is isolated from the external environment.
From the elementary unit you can upgrade to the rack solution, designed for 96 video cards (includes 4 cells). With such kit, you can get additional profit from several sources:
- smart heat utilization - it is possible to use the heat generated by the equipment for heating, water heating, agricultural and industrial needs, organization of small business;
- an opportunity to save on maintenance and fans replacement, while making an order on video cards with the dismantled air cooling system;
- temperature control of equipment in a given temperature corridor ensures stable functioning even at elevated ambient temperatures;
- the ability to switch video cards to mining. Our installation will not be idle if you give the neural network a break from learning. It can be switched to mining and earn some money.
The maximum level of our installations is equipment placed on the basis of 10, 20, and 40 feet ISO-containers. It accommodates 8, 16 or 32 racks respectively. Each container accommodates 1,566 or 3,072 video cards. This is a huge computing array that will allow you to train a complex neural network. In addition to the features listed, you can:
- change the location of the neural network if necessary;
- abandon air conditioners and complex cooling systems;
- protect equipment from theft and fire;
- use the heat generated for industrial purposes, including heating large premises;
- rent the unused capacities out
Thus, BiXBiT company offers a ready-made solution based on immersion cooling for neural networks You can select the required equipment according to your financial capacity and scale gradually as the network grows. Prior to launching a project, you can save on cooling and air conditioning systems, personnel, consumables, receive additional income through the smart heat utilization and mining, renting out your equipment. All that matter is neural networks to develop according to the required tasks. And if largest manufacturers (such as Nvidia and AMD) take over the video cards (“brains”) evolution, then we will care of cooling and obtaining additional profit.