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