Что стоит за нейросетями?

Елена Конюшкова
Что стоит за нейросетями?

Строго говоря, данная статья понятна скорее программистам, занимающимся или интересующимся программными нейросетями. Но, тем не менее, т.к. нейросети срисованы с реальной работы мозга, то всё это касается каждого из нас и эти процессы так важны, что хотелось бы это донести до более широкого круга.

Изучая многочисленные примеры работы программных нейросетей, я не могла отделаться от мысли, что все это что-то мне напоминает. Чем больше примеров, тем прозрачнее становилась картина.  И я поняла, что именно напоминает: поиск функции, описывающей процесс, по результатам итераций. Но я не встречала в описаниях работы нейросетей подобных выводов.

Разумеется, нейросети для разного типа задач имеют свою специфику, но общий подход к решению остается. Вообще нейросети это, в сущности, простая штука в смысле своей конфигурации. Там нет никакой навороченной логики присущей обычному для нас программированию. Результат достигается с помощью такого подбора конфигурации нейронов, чтобы путем многократных итераций получить из входных данных приемлемые выходные. Этот длительный процесс называется обучением нейросети.

Я беру самый простой и обобщенный пример для общего понимания. На входы нейросети поступают группы входных данных, описывающих некий процесс. Далее они переходят к новому слою, усиливая или ослабляя свои значения специально подобранными коэффициентами (весами, как там говорят) и  некоторыми специальными, но довольно  простыми  функциями. В зависимости от типа задачи эта процедура может производиться много раз. Можно назвать это итерациями. Так происходит до тех пор, пока на выходе, после этих многократных обработок, не получаем устраивающий результат.

На самом деле в этих процессах много премудростей, типа корректировки начальных значений, обратного распространения, подбора обрабатывающих функций и так далее. В зависимости от поставленной задачи используются совершенно разные подходы. И далеко не всегда в результате получаются приемлемые результаты. Тогда приходится начинать сначала.

Очень обобщенно говоря, нужный результат достигается путем многоуровневых  приближений от значений на входе к желаемым или допустимым значениям на выходе, что и есть обучение. Занятие, надо сказать, нудное, но результаты порою впечатляющие.  Добившись нужного результата на одних данных следует повторять его на других, расширяя функционал данной нейросети. Чем больше данных, тем шире применение. Упор не на программирование, но на обработку большого количества данных. Так сказать, «кругозор» нейросети расширяется. В сущности, именно обработкой полученных данных нейросети и занимаются.

В разных сферах это работает со своей спецификой. Поскольку нейросети содраны с мозга (хотя и очень приблизительно) в процессе экспериментов, то и разнообразные движения тела испытуемого обладателя мозга, несомненно, должны находить свое отражение в работе его нейросети. Полагаю, что математическая модель нейросети включила в себя отражение подобной активности. То есть, я двигаю рукой, а нейроны моего мозга из-за этого приходят в активное состояние. Или  даже наоборот: я имею намерение поднять руку, и мозг предварительно обрабатывает это мое намерение. Тут возможны варианты.

Например, ребенка обучают езде на велосипеде. Он валится то направо, то налево, не может удерживать руль, падает и получается не езда, а какой-то ужас. Но все это постепенно меняется в процессе обучения и получения подсказок. И вот после ряда неудач закономерно следует успех. Цель достигнута, теперь он может кататься и получать от этого удовольствие.

Обучению ребенка, надо думать, соответствовали в его мозге некие процессы, подобные тем, которые получили нейробиологи, наблюдая за  другими испытуемыми. Но что же конкретно? Похоже, нейросети подбирали варианты управления телом через подбор неких параметров, чтобы придти к пониманию того, как именно мозг должен управлять движением тела в подобной ситуации. И наконец, результат достигнут. Теперь при  следующих поездках уже нет необходимости обучения, а ребенок прыгает на велосипед и мчится сразу.

Он обучился, т.е. приобрел некий навык. Теперь, даже если велосипед другой, и дорога другая, он сядет и свободно поедет. Что произошло в его мозге? Он, судя по всему,  запомнил результат этого обучения, чтобы в следующий раз сразу же вспомнить его на уровне реакций тела. Но запоминать где-то все эти цифры, разбросанные по нейронам в фактической  бесконечности мозга, есть дело невероятное, с учетом того, что нам чуть ли не ежедневно (особенно в детстве) приходится попадать в ситуации для себя новые и требующие  освоения новых навыков и, соответственно, запоминать все новые варианты коэффициентов.

Судя по всему, произошла простая вроде бы вещь: в момент достижения результата все эти навороченные многоуровневые цифры перекодировались в некие математические формулы, которыми реально описывается процесс езды и в таком виде запомнились где-то в памяти. В следующие разы они сразу вспоминаются телом. Ибо формулы сжато отображают результаты и позволяют быстро к ним вернуться.

Мы живем в нашем мире и обычно не сильно задумываемся о том, каким образом мы столь ловко владеем нашим телом в нашей повседневной жизни. Нам это кажется само собой разумеющимся. На самом же деле это совсем не так просто, и люди, склонные к философии и познанию, думали об этом и писали в своих трудах. В том числе, известные ученые, поверьте на слово. Не хочу отклоняться глубоко в эту тему, а то из нее не выберешься, и никто не дочитает этот текст.

Любое наше движение сопряжено с работой мозга по передаче нужных указаний и параметров тем органам, которые участвуют в движении. Ведь не просто так в медицине нередко бывают случаи, когда человек не способен управлять всеми своими конечностями, а порою и перестает их ощущать. Это означает, что связь между мозгом и определенным органом нарушена. Это давно общеизвестно.

От изучения работы математической (программной) модели нейросети мы вернулись к ее прародителю, т.е. нашему собственному мозгу. И если на этапе обучения все выглядит похоже, как для программных нейросетей, так и для наших собственных мозгов, то этап завершения обучения, т.е. преобразования данных в формулы, не отражен, насколько мне известно, должным образом в математической модели нейросети. Я думаю, нейробиологи почему-то пропустили его в реальных мозгах. Может, в силу того, что в этом процессе задействованы какие-то другие отделы мозга. Так или иначе, но в математическую модель нейрона он не попал.

Замечу, что математические формулы, вполне вероятно, пригодны не для всех задач, решаемых с помощью как биологических, так и программных нейросетей. Но они точно используются в большинстве тех процессов в реальном организме, на основе которых и получена математическая модель нейросетей. И потому их актуальность несомненна.

А теперь главный философский, я бы сказала, вопрос: каким образом в мозге происходит эта замена результатов обучения (условно, массива коэффициентов) на формулы? То, что она происходит, представляется мне очевидным, потому как мгновенный успех последующих попыток, говорит о том, что работает технология явно отличная от длительной технологии обучения. Откуда мозг берет эти формулы?

У каждого из нас в голове тайно хранится математический справочник плюс руководство, как именно извлекать оттуда нужные формулы? Можно допустить. Но как-то не похоже на правду, тогда бы все были математиками с пеленок. А в жизни и в школе математика, даже простая, многим дается с великим трудом. А то и вообще не дается. Я уже молчу о высшей математике, которая в основном и описывает в деталях многие реальные процессы. Да и не читала я нигде о подобных находках в мозге.

Можно сказать, дескать, да, мы еще не знаем, как извлекается формула и как она хранится, но математика все же в голове у каждого зашита. Не думаю. Да, наша математика создана нашей цивилизацией в процессе наблюдения за окружающим миром и осмысления. Но создавалась она постепенно. Один математик доказал одну теорему, другой – другую, ну и так далее. За тысячелетия образовалась наука. Говорить, что она вся в наших головах неявно всегда была, это примерно так же, как говорить, что художественная литература, которая тоже создавалась веками отдельными людьми, тоже вся неявно есть в наших головах. Бред же, каждому ясно.    

Кажется, попахивает серой. Или чем там попахивает при проявлении метафизики? Что же получается? Где-то в неведомых пространствах витает себе громадный математический справочник, привязанный к нашему миру и с возможностью быстрой настройки на все физические процессы нашего мира? Этакий колл-центр: девушка, дайте-ка мне настроечку на то, как быстро взобраться на пальму и удержаться там подольше, а то какой-то лев взбесившийся внизу преследует, боюсь, сожрет ведь...

Шутки шутками, а дело серьезное. Я не знаю, как без метафизики (в широком смысле этого слова) решить такую проблему.  Я понимаю, что подобными выводами можно ошарашить любого. Прекрасно, я согласна, что все это выглядит странно. Сама в крайнем изумлении существую с того момента, как осознала эту проблему. Может, кто-то расскажет мне, как иначе разрешить ее?    

Вспоминается разве что давно уже установленная электромагнитная активность мозга. То есть мозг (или нейросети) все-таки может подавать какие-то сигналы за пределы черепной коробки и получать какие-то ответные сообщения. Ну и что с того? Он, может, таким образом как раз команды органам своего тела посылает. Вполне вероятная гипотеза на мой взгляд. Но справочник-то по математике вблизи не всегда найдется, чтобы его таким образом считывать, правда ведь?
 
Тут уместно отклониться от технического разбора нейросетей и задуматься о мироздании с философской точки зрения. Эволюция или творение Божье – такова давняя дилемма философии. Божественная гипотеза меня не устраивает, хотя бы потому, что она просто переадресует вопрос и ничего не проясняет.

Большинство ученых, в том числе, занимающихся нейросетями, ссылается именно на эволюцию, как автора тех же нейросетей. Мне представляется, что так можно говорить, только не задумываясь о самом предмете обсуждения. Просто не желая вникать и вступать в ненужные дискуссии. Можно понять.

В конце концов, нейросети – это программа. Эволюция не умеет программировать, потому как для того надобно сначала изобрести те средства, которыми реализуются программы. В нашей цивилизации на данный момент это – абстрактные языки программирования. Непосильный труд для эволюции. В более высокоразвитых это, вероятно, как-то прогрессирует, но, думаю, проще не становится. 

Нейросети в наших мозгах, очевидно, были кем-то созданы до нашего появления как вида. Мы не знаем кем. Для меня очевидно одно – неким продвинутым разумом. Мы можем сколько угодно отворачиваться от этого вопроса, но он уже стоит перед нами во весь рост. Не уклониться.

Похоже, вышеупомянутая философская дилемма имеет неожиданное третье решение. Я склонна к популярной в последнее время теории вложенных миров, когда каждая цивилизация, развиваясь до определенного уровня и изучая себя, творит по образу и подобию новые цивилизации. Размножение путем почкования, если хотите. 
 
Как они организовали доступ к этой математике из наших мозгов, я понятия не имею. Но от фактов не отвернешься. Будущие поколения разберутся. Если выживут. Впрочем, гипотезы можно выдвигать уже теперь. Задача интересная, достойная мирового признания.