Журнал "Вокруг Света" №4 за 2004 год - страница 14
Так, нейросеть с легкоизменяемыми связями между нейронами оказалась очень удобной операционной средой для подобного моделирования процессов, происходящих в природе. Причем, если результат по каким-то причинам покажется неудовлетворительным, можно запустить новый процесс эволюции, изменив начальную генетическую информацию, процент мутаций и способ наследования положительных признаков. И так до бесконечности.
В математике, в том числе и вычислительной, большое значение имеют разного рода теоремы существования, единственности и возможности. И хотя зачастую они не дают пути для решения конкретной задачи, зато указывают на то, что при определенных затратах сил искомый результат будет достигнут. В рамках работы нейрокомпьютеров существует целый ряд подобных теорем, начиная от сходимости процедуры тренинга (когда обучение в принципе возможно) и заканчивая модифицированной 13-й проблемой Гильберта, говорящей о возможности приближения любых функциональных зависимостей с помощью простейших нейросетей. Занимающиеся такими вопросами — дискретная математика и теория конечных автоматов –– достаточно молодые области исследования, и белых пятен в них, разумеется, много, но успехи теоретиков на этом поприще впечатляют.
В целом между обычными компьютерами и нейрокомпьютерами существует много общего не только в способах хранения информации и технологии производства их микросхем, но и в законах, по которым действуют программы. Одной из наиболее ярких математических проблем, решенных только в конце XX века, стала так называемая «проблема останова». Причем ответ на вопрос, можно ли сделать абсолютно устойчивую вычислительную машину, оказался отрицательным. Увы, но машина всегда может «зависнуть» или зациклиться, не сумев вовремя остановиться, выполняя недопустимую программу. Для всех без исключения вычислительных машин крайне важно, чтобы они могли работать непрерывно, не зависая на пустом переписывании бит, а также на ненужных действиях по умножению и сложению. Математикам очень хотелось доказать, что существует универсальный алгоритм, позволяющий ЭВМ избежать разного рода казусов, возникающих при запуске незнакомых программ и обработке некорректных данных. Но оказалось, что такого надежного алгоритма в принципе не существует, поскольку на любое действие существует противодействие. Как бы ни была умна машина, зная то, как она проверяет корректность команд и инструкций, всегда можно сочинить такую программу, на которой компьютер «собьется» и не сможет остановиться, принимая решение о том, что целесообразнее — приступать к выполнению программы или нет. Так что сегодня с математической точностью доказано, что любая классическая ЭВМ (в том числе и та, на которой набирался и печатался этот текст) может легко «зависнуть» и «сойти с ума», если заставить ее сделать нечто из ряда вон выходящее. Причем если разнообразные вирусы вполне сознательно парализуют работу индивидуальных компьютеров глобальной сети, то стандартное зависание хорошо знакомой операционной системы Windows, как правило, просто следствие некорректной работы с программами. Аналогичные процессы происходят и с нейрокомпьютерами, они тоже «болеют» этой болезнью, да и сам термин «сойти с ума» имеет биологическое происхождение. Правда, применительно к нейросетям обычно употребляют другой медицинский термин — «паралич системы». Так что нейросети бывают не только обученными, но и переобученными, когда они полностью перестают ориентироваться в предлагаемой информации. То же самое, как известно, может происходить и с людьми.
В кибернетике чудес не бывает, и нейросеть, работающая «вахтером», то есть специализирующаяся на различении изображений взрослых мужчин и женщин, почти наверняка даст сбой, если ей для опознания предложат фотографии детей. Известный афоризм, утверждающий, что «правильно поставленный вопрос есть половина ответа», имеет самое непосредственное отношение и к нейрокомпьютерам. Если традиционные электронные калькуляторы при нехватке данных или некорректно поставленных граничных условиях не станут решать задачу, то нейросети могут просто не заметить того, что у них оторвалась пара глаз. Они продолжат анализировать искаженную информацию, будучи «уверенными» в том, что предъявляемые объекты просто не входят в круг интересов хозяина и поэтому их нужно игнорировать. Понятно, что контроль целостности и работоспособности всей системы –– это отдельная задача, и решать ее нужно с помощью другой нейросети, но принципиальное отсутствие критики в отношении к входным данным заставляет разработчиков четко оговаривать тот круг объектов и задач, с которыми может работать их система.