CFA LogoCFA Logo Computer
Новости Статьи Магазин Драйвера Контакты
Новости
RSS канал новостей
В конце марта компания ASRock анонсировала фирменную линейку графических ускорителей Phantom Gaming. ...
Компания Huawei продолжает заниматься расширением фирменной линейки смартфонов Y Series. Очередное ...
Компания Antec в своем очередном пресс-релизе анонсировала поставки фирменной серии блоков питания ...
Компания Thermalright отчиталась о готовности нового высокопроизводительного процессорного кулера ...
Компания Biostar сообщает в официальном пресс-релизе о готовности флагманской материнской платы ...
Самое интересное
Программаторы 25 SPI FLASH Адаптеры Optibay HDD Caddy Драйвера nVidia GeForce Драйвера AMD Radeon HD Игры на DVD Сравнение видеокарт Сравнение процессоров

АРХИВ СТАТЕЙ ЖУРНАЛА «МОЙ КОМПЬЮТЕР» ЗА 2003 ГОД

Нервные компьютеры

Сергей БОРМОТОВ serg_bormotov@rambler.ru

От тех машин родились машины разумные, которые измыслили машины совершенные, ибо как атом, так и Галактика — суть машины, и нет ничего, кроме машины, ее же царствию не будет конца.

«Сказки роботов» Станислав Лем

Нейрокомпьютеры

Вы когда-нибудь задумывались над тем, какими будут компьютеры лет через 20–30? Будут ли они строится по классической технологии, согласно закону Мура вмещая все новые объемы транзисторов в чипах? Или перейдут на новые ступени развития? Если хотите узнать, читайте.

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

Нейронный ликбез

Немного теории. Человеческий мозг содержит порядка несколько миллиардов вычислительных элементов, называемых нейронами. Нейроны связаны между собой в сложную сеть. Эта сеть отвечает за все явления, которые мы называем мыслями, эмоциями, познанием и т.д., то есть образует то ,что мы называем «интеллект». Каждый нейрон состоит из трех основных частей: самой клетки (сомы) и двух типов древовидных отростков —дендритов (их обычно очень много) и аксонов (обычно он один). (Вообще-то, для мозга позвоночных :-) характерны мультиполярные нейроны. В таком нейроне от клеточного тела отходят несколько дендритов и аксон. По правде говоря, структура, размеры и форма нейронов сильно варьируются. Например, периферические чувствительные нейроны вовсе не идентичны нейронам, составляющим мозг. —Прим. ред.) Дендриты выполняют роль своеобразных «входов» для нервных импульсов, а аксон — «выхода».

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

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

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

Тип соединения нейронов и их количество в нейронной сети полностью определяет возможности последней: ее мощность и спектр задач, которая она призвана решать. В настоящее время существует более 200 разновидностей нейронных сетей. Но основной, самой распространенной и простой является многослойный перцептрон. (Персептрон, перцептрон (от лат. perceptio — понимание, познавание, восприятие) — математическая модель процесса восприятия. Модель восприятия (персептивная модель) может быть представлена в виде трех слоев нейронов: рецепторного слоя, слоя преобразующих нейронов и слоя реагирующих нейронов. —Прим. ред.). Перцептрон состоит из слоя входных нейронов, слоя выходных и нескольких промежуточных слоев. Такая сеть изображена на рисунке 2.

Рис. 1.   Рис. 2.

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

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

День сегодняшний

Сейчас нейросетевые технологии применяют во многих областях. Например, когда необходимо решить задачи такого рода: неизвестен алгоритм решения, но имеются множество примеров; исходные данные искажены или противоречивы; имеются большие объемы входной информации. Нейронные сети применяются для решения задач классификации, распознавания образов, оптимизации, прогнозирования и для многих других. Нейротехнологии используются также для распознавания текста со сканеров, проверок достоверности подписей, прогнозирования экономических показателей (например, прогнозирования курса доллара), управления технологическими процессами и робототехникой, и прочее, прочее, прочее…

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

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

Нейрожелезо

Для того чтобы ускорить программы, моделирующие работу нейросетей, были разработаны различные модели нейропроцессоров. Да-да, уже сегодня вы можете купить нейроускоритель и проапгрейдить своего боевого коня :-). В 1989 г. Intel представил свою модель нейропроцессора —I80170NX ETANN (Electrically Trainable Analog Neural Network). (Процессор I80170NX эмулирует работу 64 биологических нейронов, каждый из которых имеет 128 входов. Данные, поступающие на входы и выходы процессора, аналоговые, но функции управления, установки и чтения весовых коэффициентов — цифровые. —Прим. ред.) Вышедшая несколько позже, в 1993 г., модель i80160NC была уже полностью цифровой. Кроме того, в ней присутствовал алгоритм обучения, отсутствовавший у ее предшественницы. Понятно, что с тех пор утекло много воды. Фирмой Intel выпускаются специализированные нейрочипы, которые применяются в военно-прикладных задачах НАТО, что не позволяет приподнять над ними завесу секретности :-). Такие изделия используются в системах наведения высокотехнологичного оружия, комплексах криптоанализа, программах идентификации по отпечаткам пальцев и т.п.

Нашим ответом империализму :-) был разработанный НТЦ «Модуль» NM6403 (рис. 3), появившийся на мировом рынке нейропроцессоров в 1998 году. Нейропроцессор, созданный российскими инженерами, выпускается фабриками Samsung и позволяет решать ряд уникальных задач. Его технические характеристики следующие: тактовая частота — 40 МГц; напряжение питания — от 3.0 до 3.6 В; потребляемая мощность — до 1.6 Вт. Основные вычислительные узлы — управляющие RISC-ядро и векторный сопроцессор. Производительность нейропроцессора составляет 120 млн. операций в секунду для 32-битовых операнд. Более полную информацию вы можете получить на сайте производителя —http://www.module.ru. К слову, НТЦ «Модуль» продает свое детище. Стоит сравнительно недорого — около $50. Спросите как-нибудь в компьютерном салоне :-).

Рис. 3.

Также выпускается ряд «нейроплат» на базе NM6403 в формате PCI, CompactPCI, VME с драйверами под «Окна» и «Пингвинов». Вся продукция комплектуется специализированным софтом и технической поддержкой. Продукцией НТЦ «Модуль» заинтересовались крупнейшие мировые производители в сфере информационных технологий и связи. Так, Fujitsu планирует применять нейропроцессорную архитектуру для средств связи, требующих обработки и передачи видеосигналов в реальном времени. Нейрочип показал себя высокопроизводительным процессором широкого применения для встраиваемых систем. Особенно он хорош для криптографии, обработки видеоданных и радиолокации.

Нейронные ожидания

Чем грозит простому пользователю нашествие нейротехнологий? Во-первых, появлением в скором времени операционных систем, реализованных на этом принципе. Их отличие от обычных ОС заключается в том, что они смогут подстраиваться под конкретного пользователя, будут очень редко сбоить и глючить (:-) —прим. ред.). Кстати, по заявлению Билла Гейтса, Microsoft собирается в ближайшее время выпустить операционную систему, 90% ресурсов которой будет занято распознаванием образов с целью подстройки ОС под конкретную конфигурацию компьютера и конкретного пользователя. Готовьтесь! А топ-менеджер Intel Роберт Экельман признался, что лидер рынка микропроцессоров серьезно готовится к новому технологическому прорыву и проводит дорогостоящие исследования в области биочипов, которые должны заменить в компьютерах будущего обычные процессоры. Операционные системы и программное обеспечение на основе нейронной сети потребуют установки в системные платы компьютеров нейропроцессоров или, по крайней мере, нейроускорителей. Обычные дискретные процессоры, вероятнее всего, отойдут на второй план, и будут применяться в качестве сопроцессоров.

Нейрософт

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

Для того чтобы поэкспериментировать с нейронной сетью и решить с ее помощью какую-либо задачу, не обязательно учиться в МГУ или работать в НИИ. Надо просто установить один из пакетов моделирования нейросетей. Обычно в них приводится теория и рассмотрены примеры, достаточные для успешной работы. А вот и сами программы.

NeuroSolution. На сайте производителя этого продукта NeuroDimenSion (http://www.neurosolution.com) выложена демо-версия программы (12 Мб). В целом демка очень даже ничего. Ее внешний вид показан на рисунке 4. Меня поначалу смутило отсутствие русскоязычного интерфейса, но развитая система подсказок, интуитивно понятный интерфейс, четкий и содержательный хелп (теория и работа с программой) позволяют забыть об этом неудобстве. Красочные картинки, соответствующий инструментарий, возможность строить сети мышкой создают ощущение игры. К тому же программа довольно шустро работает по своему прямому назначению — есть программные ускорители и много других фишек. В общем, разберетесь сами. NeuroSolution можно рекомендовать для быстрого построения, экспериментирования и дальнейшего применения нейросетей при наличии начальных знаний о них. Читайте хелпы и книги :-). В зависимости от комплектации и предоставляемых возможностей цена продукта от $195 до $4495.

NeuroOffice. Скачать демку можно с сайта производителя — российской фирмы АльфаСистем (http://user.cityline.ru/~alphasys/indexr.html, 1.29 Мб). Ну что можно сказать. Интерфейс русскоязычный, что весьма меня порадовало (рис. 5). Однако его нельзя назвать дружественным и интуитивно понятным. Один из недостатков заключается в том, что каждую связь между нейронами приходится задавать вручную. Не впечатляет и отсутствие диагностических сообщений во время работы, не облегчает жизнь и запутанный хелп. Хотя, может, для специалиста в самый раз, но пользователю со скромными знаниями придется помучится. Разработчики рекомендуют применять продукт при прогнозировании, для построения экспертных систем, распознавания образов, цифровой обработки сигналов. В целом, программа хорошо проявила себя в работе. Полная версия продается от $100 (для образовательных учреждений России и СНГ) и до $300–400 (для иностранных пользователей).

Рис. 1.   Рис. 5.

Из этих двух утилит мне больше понравился NeuroSolution. Хелпы я перевел «Сократом», в программе разобрался методом тыка :-). Не думайте, что кроме этих двух продуктов, другого ПО не существует. Существует, и очень много. Поищите в Сети, может, какой эксклюзив найдете — подбросите ссылочку!

Нейросети в Интернете

Нейросетевые технологии привлекают некоторыми возможностями.

Параллельная обработка информации, глобальность связей между нейронами. До обучения эти связи произвольны и малы. Обучение формирует структуру сети под конкретную задачу.

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

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

Заинтересовавшимся подброшу несколько ссылочек:

http://www.neuroproject.ru — сайт компания «Нейропроект», которая производит нейросетевое ПО. Ресурс содержит много информации как для новичков, так и для специалистов;

http://neurnews.iu4.bmstu.ru/neurnews.html — новости с российского рынка нейрокомпьютеров.

Рекомендуем ещё прочитать:






Данную страницу никто не комментировал. Вы можете стать первым.

Ваше имя:
Ваша почта:

RSS
Комментарий:
Введите символы или вычислите пример: *
captcha
Обновить





Хостинг на серверах в Украине, США и Германии. © sector.biz.ua 2006-2015 design by Vadim Popov