📜 ⬆️ ⬇️

“You're just a robot, imitation. Can a robot write a symphony? ”- interview about AI with Dmitry Soshnikov, Microsoft

The development of elements of artificial intelligence systems is actively developing and becoming the trend of the present time, and now only lazy people do not write smart bots. That is why we interviewed Dmitry shwars Soshnikov, one of the country's best AI experts. He is a technological evangelist of Microsoft, the author of books, articles and textbooks, as well as a teacher and coordinator of student programs, a specialist in functional programming, neural networks and artificial intelligence.



- Dmitry, please tell us a few words about yourself and your work.

Dmitry Soshnikov : As an evangelist of Microsoft, I promote and introduce the most modern technologies of the company, now these are primarily technologies related to artificial intelligence. This includes speaking at conferences, working with students and teachers, start-ups, sometimes participating in hackfests and programming system prototypes in conjunction with developers of different companies. I also promote functional programming and F #, teach at MIPT, HSE and MAI, develop online courses for MVA and Coursera.
')
In my opinion, neural networks and artificial intelligence as a whole are a very interesting area, the rapid development of which in recent years has already made it possible to solve a number of problems that previously had no solution, such as automatic determination of a person’s age from his photograph. And the future prepares us many more interesting possibilities.

Neural networks - fashion or tool?


- What exactly prompted the recent active development of neural network technology?

Dmitry Soshnikov : Several factors have been successfully superimposed here simultaneously.
First, the available computing power appeared. Moreover, cloud services played a big role, because instead of investing in infrastructure for rendering neural networks, you can now rent it only for the duration of the calculations, and then abandoning the lease. In addition, they began to use graphics processors, which were originally designed for computer graphics. It turned out that they are well suited for artificial intelligence tasks.

Secondly, thanks to the Internet, huge amounts of data began to accumulate in many areas. Consider, for example, the previously mentioned problem of recognizing a person’s age from a photograph. To train a neural network to solve it requires several hundred thousand examples. Now you can take any social network where people themselves publish their photos and account data (age) - and we immediately get the data for training.
Thirdly, of course, some interesting studies have appeared, including new neural network architectures that allow solving existing problems. But this point is probably a consequence of the first two. When resources and technologies are available, naturally, the region begins to actively develop.

Here a large number of tools appeared that allow these neural networks to be used. If earlier it was necessary to have a lot of knowledge and a lot of programming to solve problems of artificial intelligence, now services are available that can be taken and used.

- The topic of artificial intelligence is very popular today. How much is this popularity deserved? Is the technology really that impressive, or is the fashion contribution great? And is this “fashion” not detrimental to development?

Dmitry Soshnikov : There really are great successes in the field of AI, about which they write a lot, so the phrase “artificial intelligence” is well known. Due to this, new developers appear - someone goes and learns a new area, i.e. there are more people who understand this area. On the other hand, people are more attentively looking for those tasks where it is possible to apply artificial intelligence technologies. From this point of view, all this is in principle good, because we have a chance to automate some areas that we could not automate before.

For example, we can solve the problem of receiving orders in the MacAuto window. The solution of such problems is always trying to reduce the cost. For example, in the United States, an American first sat there, then there was an attempt to outsource this by transferring a voice to a country with cheap labor (where, again, a person sits and deciphers). And now it can do the computer.

- Do market participants have high expectations? Are there any predictions that, in your opinion, will not come true in the near future?

Dmitry Soshnikov : Of course, there is. Firstly, the field of artificial intelligence is a bit romantic. There are a sufficient number of films - for example, “The Matrix” or “Terminator” - where the robots revolt and take everything under control. Therefore, there are some people waiting for another 5 years and computers will take over the world. These expectations, apparently, are still far from reality. Now, the solution of some classes of tasks related to pattern recognition, speech, and machine learning is very well automated. But to understand how the whole thinking of a person is arranged, it is necessary to go far enough. Therefore, before creating such an artificial intelligence, which will think like a person, to operate with accumulated knowledge, it is still necessary to work a lot. While it is not very clear how to do it.

- What about expectations in terms of financial investments, and not the embodiment of science fiction scenarios?

Dmitry Soshnikov : It seems to me that for such a conversation it is necessary to break up the topic of artificial intelligence into separate components, since this is a very broad area.

If we consider computer vision, then there are already tremendous successes that are now being introduced into the business, increasing its efficiency and bringing economic benefits. Computer vision already recognizes an image better than a person, not to mention that it is significantly cheaper.

In other areas, such as understanding natural language and the ability to reason on arbitrary topics, progress is more modest.

- Are there factors that, in your opinion, hamper the development of the industry?

Dmitry Soshnikov : Honestly, I don’t see any obvious factors. It seems to me that this is the fastest growing area now.
Nevertheless, I want to note that artificial intelligence is an area that still requires some qualifications. Working in this direction is a bit more difficult than just learning how to program. A person, having graduated from school and not getting higher education, can probably start successfully working in the field of standard development. With artificial intelligence, the level of entry is higher, although it is gradually decreasing, including through the efforts of participants in this industry. In particular, one of the things Microsoft is working on is the so-called democratization of artificial intelligence . By this is meant the transformation of technology into the accessible for the widest possible range of consumers.

In practice, not only Microsoft, but many other companies are working in this direction, providing, for example, tools for solving intellectual, cognitive tasks in the form of ready-made services. For example, services to determine the sex, age and mood of a person from a photo, you can simply call and get a result. The same applies to machine translation, etc. As part of the report on DotNext 2017, we will talk about it: how can you, without even understanding how it works, just use the results.

And .NET can?


- Let's talk about the place of the .NET platform in the artificial intelligence segment. How is it generally suitable for solving such problems? Are there any features that help or, conversely, interfere with the work with neural networks?

Dmitry Soshnikov : AI methods can be implemented on any technology. Nevertheless, there are some established ecosystems around similar tasks. For example, Python and R languages ​​and their associated libraries are very popular among data processing specialists. Those. there are already a lot of developments in the community. From the point of view of these developments, of course, .NET is a bit behind, as well as other similar platforms. Nevertheless, on .NET there is already a certain set of tools, which I will just talk about in my report.

In general, platforms are now integrating in some sense, including among themselves. The same R language integrates very well with F #, which is native to the .NET platform. Accordingly, if we need to use some machine learning tools, we can take advantage of such a chain, using the capabilities and libraries of the R language. This will be quite transparent and easy to happen.

In general, if we talk specifically about neural networks, Microsoft has a tool called Cognitive Toolkit, which allows you to train neural networks. And since it was originally created in the Microsoft ecosystem, it works very well with .NET.

- Does this tool stand out from its counterparts from other manufacturers ?

Dmitry Soshnikov : Essentially, Cognitive Toolkit is a Microsoft-like counterpart of TensorFlow, Caffe, etc. frameworks.

All of them are in principle very similar ideologically. But Microsoft Cognitive Toolkit was the first to start supporting a very distributed learning environment, when you can train a neural network not only on a single graphics processor, but on several graphics processors or even on several graphics stations. Those. can make a neuronet learning farm.

As far as I know, Cognitive Toolkit plays on other learning speed frameworks. Plus it is very convenient to use. Most of the frameworks are somehow related to the Python language, and the Cognitive Toolkit initially went a little different way. It was originally possible to describe the architecture of a neural network in a special language, and then train it without building any models in Python. It was a bit easier. Now Cognitive Toolkit supports both options, i.e. is quite flexible.

- Probably, there are moments in which the Cognitive Toolkit loses its counterparts?

Dmitry Soshnikov : In general, such frameworks are lower-level tools, above which you can train arbitrary neural networks. Like its counterparts, the Cognitive Toolkit supports a certain basic level, over which you can build networks of arbitrary complexity. Therefore, the range of tasks solved by various tools is approximately the same.

The choice of the framework is largely determined by some personal preferences, availability of reference materials. And here, the Microsoft framework lags a little bit behind, since it appeared a little later, so there is no such large amount of materials on it, in particular, online courses. But the situation, of course, is leveling off.

Together with the Moscow Institute of Physics and Technology we plan to launch an online course dedicated to the tasks related to the use of artificial intelligence in practice. And some share of information on the Cognitive Toolkit will also go there.

Near future


- Is it possible to predict now in which direction is the development of the artificial intelligence segment?

Dmitry Soshnikov : Probably, it is still too early to build forecasts completely, since in 2011-2012, an extremely rapid development of technologies began. Since then, recognition methods have been improved, neural network architectures have improved, i.e. The accuracy of problem solving increases.

There are still many unresolved issues in this segment. The tasks of image and voice recognition are already solved at a fairly high level. Next, perhaps the most interesting thing is to try to extract some meaning from the text. Here too there are quite staggering successes. For example, you can train a neural network on fragments of conversations from films and get a robot that can somehow support the dialogue. But at the same time there will not be much meaningful dialogue. How to translate knowledge into meaning, how to combine the implicit representation of knowledge in neural networks with symbolic reasoning is not yet clear. This is the direction of research that scientists will be engaged in.

As for the tools, they are now actively developing. In a sense, tool makers are trying to follow scientific advances in the relevant field. New network architectures are appearing - their support appears in the tools, i.e. The functionality is expanding all the time.

As I said earlier, from the developer’s point of view, there is a noticeable trend towards democratization of artificial intelligence, including tools. In addition to the Microsoft Cognitive Toolkit I mentioned, there is an interesting Azure Machine Learning tool that allows you to apply them to real data without a deep understanding of the implementation of all machine learning algorithms and see if you can select any patterns and use them further in your products. This tool is also developing quite intensively - new methods and algorithms are inserted there.

In general, technologies are becoming more affordable. Complex things are simplified so that they can be used in the widest possible set of projects.
Another point I would like to mention is the first cloud experiments using more efficient hardware solutions that implement algorithms of artificial intelligence. We will not speak about this on Dotnext, but the topic was discussed in detail at the Microsoft Ignite conference. In the cloud, Microsoft plans to offer not only classic computing resources, but also programmable logic integrated circuits: FPGA or FPGA. If to simplify, these are microcircuits that can be flashed to perform certain logical operations, and which will perform these operations very quickly. With such a scheme, we can calculate the neural network much faster. During the experiments, the processor was “flashed” into translation from one language to another; as a result, the novel “War and Peace” is translated from one language to another in 2 seconds. If you take all the many processors that Microsoft has in the cloud, you can translate Wikipedia from one language to another while the person blinks.



Dmitry will give more practical information on the use of neural networks and artificial intelligence technologies in real projects (including .NET) in his report on DotNext 2017 Piter (“ Accessible artificial intelligence on the .NET platform: from chat bots and cognitive services to deep neural networks ”).

Source: https://habr.com/ru/post/326188/


All Articles