Последние годы характеризуются бурным развитием систем искусственного интеллекта на основе глубинного обучения нейронных сетей — они широко используются для распознавания образов и речи, а также для финансового прогнозирования и не только. Между тем сама идея обучаемых нейросетей была впервые предложена еще в 1944 году Уорреном Маккалоком и Уолтером Питтсом, научными сотрудниками Чикагского университета, которые в 1952 году перешли в МТИ и основали в нем кафедру когнитивных наук.
Нейросеть построена по образцу головного мозга человека — она состоит из множества тесно взаимосвязанных простейших вычислительных узлов. Каждый такой узел может быть соединен с несколькими на предыдущем слое, передающем ему данные, и с несколькими на следующем. Каждому из входящих соединений узел присваивает некоторое число — «вес». В процессе работы нейросети узел получает по каждому из соединений разные числа и умножает на соответствующий вес, а получившиеся произведения складывает. Если сумма больше определенного порогового значения, она передается на следующий уровень по всем исходящим соединениям узла.
Первый перцептрон построил Фрэнк Розенблатт, психолог Корнельского университета, в 1957 году Источник: Jose-Luis Olivares/MIT |
Изначально веса и пороговые значения выбираются случайным образом, а в процессе обучения они постоянно корректируются, пока учебные данные с одинаковыми метками, подаваемые на вход сети (нижний слой), не будут выдавать одинаковые значения на выходе из нее.
Первая обучаемая нейросеть, перцептрон, была создана Фрэнком Розенблаттом, психологом Корнельского университета, в 1957 году. В отличие от современных, она имела лишь один слой между входным и выходным. Уже в то время было предсказано, что с помощью перцептрона можно решать практически любые стандартные математические задачи, и до 1969 года нейросети оставались областью активных исследований. Но затем математики МТИ Марвин Минский и Сеймур Пейперт опубликовали результаты исследования, показавшего, что выполнение стандартных вычислительных операций с помощью перцептрона будет отнимать неприемлемо много времени. После этого интерес к нейронным сетям угас и возродился только к 1980-м, когда были разработаны алгоритмы корректировки весов и порогов, позволившие преодолеть ограничения.
Нынешнему взрыву развития машинного обучения помогла эволюция графических процессоров, которые содержат множество относительно простых ядер, которые можно использовать в качестве узлов нейросети. Современные видеочипы позволяют строить нейросети не из одного, как в 1960-х, и не из двух-трех, как в 1980-х, а из гораздо большего количества слоев. Именно поэтому глубинное обучение получило свое название: глубина — это число слоев нейросети.