О разработках нейрокомпьютеров в России
Галушкин Александр Иванович
В докладе представлен краткий обзор аппаратных реализаций нейрокомпьютеров в России и перспективы их развития.
Необходимость изменения последовательной Фон-неймановской архитектуры классических вычислений диктовалось все возрастающими требованиями к вычислительным ресурсам со стороны новых сложных задач, которые возникали в связи с развитием перспективных технологий. Нейросетевые технологии являются одним из наиболее интенсивно развиваемых направлений определения и реализации параллельных вычислений. Эти технологии позволяют не только более эффективно решать старые сложные задачи, но и позволяют реализовывать плохо формализуемые или неформализованные задачи, решение которых ранее не представлялось возможным. Соответственно, аппаратная реализация нейросетевых алгоритмов изменяет логическую основу вычислительной математики и является естественным стремлением получить требуемую производительность. Практическая реализация аппаратной поддержки нейросетевых вычислений зависит от требований конкретной задачи и возможна лишь в том случае, когда все другие подходы не могут быть использованы. В основном, аппаратная реализация требуется тогда, когда параллельные нейросетевые алгоритмы не могут быть достаточно эффективно реализованы с помощью традиционных вычислительных средств, включая кластерные конфигурации.
С самого начала использования нейросетевых подходов к решению отдельных задач (более 40 лет назад) проблемам их аппаратной реализации уделялось большое внимание, т.к. значительные вычислительные мощности, не говоря о кластерных конфигурациях, были не доступны. Рост производительности и новые архитектурные решения реализации вычислений только увеличили внимание к данной проблеме, привлекая к ее решению все новые технические средства от использования аналоговых операционных усилителей до применения FPGA большой интеграции как основы для реализации фрагментов нейронных сетей. Соответственно, росла производительность аппаратной поддержки нейросетевых вычислений.
В работе [1] описаны основные аппаратные реализации нейрокомпьютеров с начала их существования (50-ые годы) до 2000 г. За эту книгу автору присуждена Премия Правительства Российской Федерации за 2002 г. Отмечено, что необходимость в аппаратной поддержке нейровычислений возникала каждый раз тогда, когда программная реализация нейрокомпьютеров на универсальных ЭВМ не удовлетворяла требованиям заказчика по времени вычислений или весам и габаритам. Первыми аппаратными реализациями нейрокомпьютеров в России, выполненными еще в конце 60-ых годов прошлого столетия были реализации в виде аналоговых блоков с сетью настраиваемых резисторов и блоком настройки (вычисления значений коэффициентов), реализуемом на универсальной цифровой ЭВМ. Первая такая реализация, выполненная в виде двух аналоговых вычислительных машин МН-4 и специализированного блока, была сделана в 1968 г. и логически представляла собой трехслойную нейронную сеть. Реализация 1970 г. ориентированная на распознавание объектов по характеристикам отраженного радиолокационного сигнала представляла собой более сложную нейронную сеть. Вариант простой трехслойной нейронной сети, ориентированной на два класса образов и пять признаков, предназначался для решения задач медицинской диагностики (1972 г.). Более сложный вариант 1974-ого г. исполнения, был реализован в виде настольного блока с выносным пультом индикации.
В те же годы был реализован макетный образец континуального (с континуумом признаков) аналогово-цифрового нейрокомпьютера, ориентированного на распознавание по форме реограмм. При решении задачи распознавания периодических сигналов по форме, аналогово-цифровое преобразование приводило к значительной размерности пространства признаков (число дискрет на периоде существования сигнала), и следовательно к резкому усложнению цифровой части нейрокомпьютера. Еще в 70-ые годы профессором А.И. Галушкиным было предложено, используя предельный переход: реализовать нейроны первого слоя аналого-цифрового нейрокомпьютера. Эта схема была использована для реализации в середине 70-ых годов аналогового нейрокомпьютера для распознавания патологических реограмм с получением весовых функций на универсальной ЭВМ обработкой архива реограмм. Далее отмечено, что этот принцип был успешно использован через 20 лет на базе современной технологии микроэлектроники при реализации более современного нейрокомпьютера, предназначенного для распознавания сигналов по форме.
Активное развитие микропроцессоров в период с 1975 по 1987 гг. приостановило линию аппаратной реализации нейрокомпьютеров, т.к. наиболее эффективной в эти годы была программная реализация нейрокомпьютеров на микропроцессорах.
Однако в середине 80-ых годов развитие технологии микроэлектроники и высоких технологий, ставящих все более и более сложные задачи, привело к очередному всплеску развития нейрокомпьютеров уже с аппаратной реализацией групп нейронов в кристалле. Переходными здесь были микропроцессорные реализации нейрокомпьютеров в виде специализированных вычислительных систем с архитектурой, адаптированной к нейросетевым операциям (вычислениям). Типичным примером такой разработки был отечественный нейрокомпьютер “Геркулес”.
В начале 90-ых годов экономическая ситуация в России привела к необходимости практически полного отказа от технологии заказных СБИС при реализации нейрочипов. Разработчики пытались сохранить научно-технический потенциал в этой области, используя технологию полузаказных СБИС, базовых матричных кристаллов (БМК) и программируемых логических интегральных схем (ПЛИС). Были сделаны попытки реализовать нейрочипы и нейроплаты на отечественных БМК “Исполин 60Т” и “Такт 100Т”. В середине 90-ых годов в Научном центре нейрокомпьютеров для реализации нейрочипов, нейроплат и нейроблоков была окончательно выбрана линия использования ПЛИС (FPGA фирмы Xilinx). Были реализованы нейрочипы, нейроплаты и нейроблок на FPGA объемом 400 тысяч вентилей на кристалле. В настоящее время ведутся работы использованию для этих целей FPGA Virtex 2 Pro объемом 6-10 млн. вентилей на кристалле.
Параллельно с этим была реализована разработка континуального нейрокомпьютера для распознавания сигналов по форме в виде трехслойной нейронной сети. Первый слой содержал восемь континуальных аналого-цифровых нейронов с весовой функцией, загружаемой в аналоговый умножитель из ПЗУ через ЦАП.
В настоящее время уделяется значительное внимание анализу состояния и определению перспектив разработок нейрочипов во всем мире. К наиболее важным направлениям этих работ можно отнести:
- цифровые нейрочипы;
- аналоговые и аналого-цифровые нейрочипы;
- клеточные нейрочипы;
- нейрочипы с частотно-импульсной модуляцией сигналов;
- специализированные нейрочипы;
- оптические и оптоэлектронные нейрочипы.
При этом важной задачей является поиск для реализации практических задач, требующих для своего решения аппаратной поддержки в виде нейроплат и нейроблоков на базе нейрочипов. Это наиболее сложные задачи, инициируемые развитием высоких технологий и которые невозможно решить вычислительными системами других типов при наличии реальных ограничений на время решения и объемы и веса вычислительной системы.
Литература
- Галушкин А. И. Нейрокомпьютеры. Серия “Нейрокомпьютеры и их применение” книга 3, Изд-во “Радиотехника”, М., 2002 г.
Об авторе: НИИ автоматической аппаратуры Научный центр нейроком, neurocomputer@yandex.ru
Материалы международной конференции SORUCOM 2006 (3-7 июля 2006 года)
Статья помещена в музей 26.12.2007 с разрешения автора