Почему все автомобили с автоматическим управлением, интеллектуальные колонки и системы оценки дефектов сердца используют нейронные сети? Потому что программисты-люди не могут понять, как именно это делать. Нейронные сети не нуждаются в подробном объяснении. Она просто узнает, как люди это делают.
Как человеческий мозг
Если вы помните уроки биологии или серию «Однажды в жизни», вы можете вспомнить, что мозг состоит из нервных клеток, называемых нейронами. Они связаны друг с другом так называемыми синапсами, которые мы можем рассматривать как электрические провода. Все человеческое мышление скрыто в правильной связи и настройке нейронов. Мы все еще не можем описать и подражать ему, тем более что число возможных связей между нейронами больше, чем число атомов во всей вселенной.
Пока что это выглядит несколько абстрактно и непрактично. Какой программист мог бы просто описать работу десятков нейронов и сотен соединений? К счастью, большая часть этой работы может быть выполнена самой нейронной сетью. Программист предлагает только количество нейронов, их деление на слои и взаимосвязь синапсами.
Не все компьютеры достаточно мощны, чтобы справиться с нейронными сетями. Поэтому умные колонки с Alexa или мобильные телефоны с Siri отправляют входную информацию через Интернет в огромный вычислительный центр - облако. Все расчеты сделаны там, и динамик или мобильный телефон получает готовый результат обратно.
По мере роста числа подобных устройств сложность построения достаточно мощных облаков растет. Поэтому производители ищут способ сделать как можно больше расчетов на месте. Поэтому они разрабатывают специальные чипы, чтобы помочь телефону или динамику в симуляции нейронной сети.
Затем он начинает изучать нейронную сеть. Предположим, он хочет научить ее добавлять маленькие цифры. Во-первых, нейронная сеть выбрасывает три и пять, например. Сеть выводит число 0, что неверно, правильное решение равно 8. Поэтому компьютер настраивает нейроны и синапсы так, чтобы результат был правильным или немного более правильным, чем оригинал. Затем программист отправляет в сеть два других номера, скажем, один и два. Например, сеть в своих текущих настройках ответит числом 5, что неверно, поэтому компьютер отрегулирует соответствующие настройки для нейронов и синапсов.
По мере увеличения объема учебных материалов качество сети постепенно увеличивается. Во-первых, он абсолютно неверно считает, затем не более одного сбивается с толку, тогда результаты размытия одного глаза (и легкого округления) можно считать правильными, и в конечном итоге они отличаются от правильного, возможно, на десятую или сотню.