Журнал «Вокруг Света» №10 за 2007 год - страница 22

стр.

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

Всякий раз, когда сеть вырабатывает ошибочный ответ, самые главные нейроны, которые формируют окончательное решение на выходе сети, получают наказание — штраф. Они разбираются, какой из нейроновподчиненных способствовал принятию неправильного решения, и снижают такому уровень доверия, а тем, кто «голосовал» против, рейтинг повышают. Получившие по заслугам нейроны второго уровня аналогичным образом наводят порядок в своем хозяйстве, и так до тех пор, пока не дойдет до самых первых нейронов (предполагается, что циклов в нейронной сети нет). После этого процедуру обучения повторяют на новом примере.

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

Но как ей это удается? Возьмем отдельный нейрон из середины сети и попробуем понять: почему он реагирует на сигналы соседей так, а не иначе? Увы, в сложной сети это совершенно безнадежное дело. Ее «опыт» не локализован в отдельном нейроне, им обладает только сеть в целом. Можно перепрограммировать нейрон и посмотреть, какие ошибки станет делать сеть. Так изучают и человеческий мозг — смотрят, какие изменения вызывает стимуляция тех или иных центров. Но, даже поняв функции отдельных нейронов, обычно нельзя объяснить, почему эти функции выполняются именно при такой настройке.

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

Генетические алгоритмы

Есть еще один способ создания систем ИИ, имитирующий биологическую эволюцию. Задача кодируется на специальном языке, напоминающем генетический код. В код случайным образом вносятся «мутации», и оценивается, насколько хорошо каждая из версий кода («особь») приспособлена для решения задачи. Наименее приспособленные «вымирают», а остальные «скрещиваются», обмениваясь фрагментами кода, порождая новое «поколение» кодов, которое подвергается новому циклу отбора. Так повторяется, пока не исчерпается время, отпущенное на эволюцию. Генетические алгоритмы применяются для задач оптимизации, таких как поиск кратчайшего пути, составления расписаний, выбора игровой стратегии. Отличительная особенность таких задач — существование огромного числа возможных решений, найти которые очень просто, но среди них нужно выбрать как можно лучшее.