Нейронные сети — первая искусственная технология, которая действительно напоминает интеллект. Нейросети порождают никогда до этого не существовавшие слова и тексты, пишут картины, успешно управляют беспилотными машинами в незнакомой местности, распознают объекты на снимках гораздо точнее человека, а также видят в данных сложные закономерности. Часто разработчики сами плохо понимают, как обученные ими нейросети получают настолько хорошие результаты.
Идею алгоритма люди подсмотрели в устройстве мозга. Искусственные нейроны, из которых состоят современные нейросети, построены по модели нервных клеток. У биологических нейронов есть дендриты, по которым поступает нервный сигнал, и аксон, по которому сигнал передается или не передается дальше. Искусственный нейрон — это просто математическая функция, но у нее тоже есть несколько параметров (несколько входов) и выход, который передает или не передает выходное значение в зависимости от содержания входных сигналов.
Однако не стоит думать, что искусственный нейрон — это копия или хотя бы адекватная модель биологического нейрона. Как самолет не является копией птицы, а машина — копией лошади, так и искусственные нейросетевые алгоритмы в своей механике очень далеки от живых (или, как иногда говорят программисты, «мокрых») нейросетей.
В чем же разница?
- Размер. Человеческий мозг содержит порядка 86 миллиардов нейронов, между которыми есть свыше 100 триллионов связей (а по некоторым оценкам — до триллиарда!). Искусственные нейросети до такого не доросли — в современных алгоритмах число нейронов обычно идет на тысячи. Даже миллион искусственных нейронов требует огромных компьютерных мощностей, пока такие нейросети создают только в рамках (очень дорогих) экспериментов. А для простых задач может быть достаточно 5-10 искусственных нейронов. Впрочем, сравнивать напрямую здесь вообще нельзя из-за других различий.
- Топология. В искусственных нейросетях слои нейронов срабатывают по очереди, последовательно; при обучении информация распространяется в обратном направлении, но также последовательно, от слоя к слою. В человеческом мозге обмен информацией между нейронами идет параллельно и асинхронно. Нейроны мозга образуют сложные структуры связанных кластеров (сообществ) и не выстраиваются в последовательные линейные цепочки. Даже более продвинутые нейросетевые алгоритмы, в которых информация может передаваться не только вперед, но и назад в процессе работы (рекуррентные нейросети) или сохраняться в кратковременной памяти нейрона (LSTM), все-таки остаются гораздо более иерархизированными и линейными, чем биологические нейросети.
- Пропускная способность и скорость. Биологические нейроны могут находиться в фазе бездействия (т.н. рефракторный период), когда ионные каналы закрыты и сигнал не принимается. Скорость работы биологических нейросетей зависит от возраста, пола, количества сна и т.п. Разные сигналы движутся с разной скоростью (от 0,61 м/с до 119 м/с).
Искусственные нейросетевые алгоритмы не имеют отдельного физического воплощения. В сущности они представляют собой многократное перемножение матриц — и скорость тут зависит только от производительности компьютерного «железа». Вычисления могут быть распараллелены и дополнительно ускорены при помощи графических процессоров (видеокарт).
- Изменчивость архитектуры. Мозг пластичен, нейронные связи в нем могут возникать и исчезать. Искусственные нейросети, как правило, не меняют свою архитектуру в ходе работы алгоритма: обучение происходит через перераспределение «весов» связей, которые обеспечивают распространение сигнала.
- Энергопотребление. Мозг потребляет около 20% энергии тела и по энергоэффективности легко обыгрывает современные компьютеры. Гигантская нейросеть в нашей голове требует для работы всего 20 ватт — как одна слабая лампочка. Современные видеокарты, на которых обычно обучают нейросети, имеют мощность в несколько сотен ватт и греются гораздо сильнее, чем мозг.
- Возможность наблюдения и контроля. Исследовать мозг начали давно, однако многое в его тонкой и сложной работе по-прежнему невозможно отследить и изучить. В случае с искусственными нейросетями вся работа полностью на виду:в каждый момент исполнения алгоритма у нас есть полная информация о том, в каком состоянии он пребывает, как распределены веса и что получается на выходе.
В целом искусственные нейронные сети являются гораздо более простой моделью, чем созданный миллионами лет эволюции человеческий мозг. Однако как в случае с самолетами и птицами, проще — не значит хуже. Обученная под конкретную задачу нейросеть может легко превзойти человека. Уже сегодня нейросети лучше людей играют в игры, которые нельзя просчитать математически (вроде го), диагностируют некоторые болезни и распознают объекты на фотографиях. Завтра к этому списку наверняка добавится что-то еще.
Подробнее узнать об особенностях искусственных нейронных сетей можно здесь.