Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
нейросети.docx
Скачиваний:
47
Добавлен:
04.02.2016
Размер:
90.88 Кб
Скачать

Ускорительные модули на tms-процессорах

(Сазанов В.М.)

Построение ускорительных плат возможно на основе сигнальных процессоров типа TMS320, в качестве базовой операции позволяющих выполнять операции умножения с накоплением.

Структурная схема такой платы с 4-мя TMS-процессорами приведена ниже.

 

 

 

 

 

 

 

 

 

 

 

 

 

TMS320

 

TMS320

 

TMS320

 

 

TMS320

 

Хост-интерфейс

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Разработка нейрокомпьютеров на программируемых матрицах

Быстро и недорого реализовать нейросетевой алгоритм позволяет использование программируемых логических интегральных схем (ПЛИС) с последующим переходом к выпуску нейрочипа на базовых матричных кристаллах (БМК).

Мощные современные программные пакеты автоматизации проектирования XILINX  и ALTERA включают следующие готовые модули для модульного проектирования:

-         быстрое преобразование Фурье;

-         цифровые фильтры;

-         умножители;

-         корреляторы;

-         схемы интерфейса с хост-машиной, клавиатурой, пользователем;

-         интерфейсы с аналого-цифровыми и цифро-аналоговыми преобразователями.

Пакет проектирования программируемых логических схем XILINX Foundation включает в себя весь комплекс средств проектирования, начиная с описания внутреннего содержимого всего устройства до загрузки конфигурации ПЛИС и отладки не печатной плате. (см. А.И.Галушкин. Нейрокомпьютеры. Книга 3) 

Основные составляющие пакета:

- схемотехнический редактор;

- редактор диаграмм состояний; 

- VHDL-синтезатор;

- VHDL-моделятор;

- топологический редактор;

- графический редактор временной оптимизации;

- трассировщик;

- утилиты работы с программатором.

Более эффективный подход предполагает создание нейроплат для решения задач определенной прикладной направленности. Эти платы включаются в состав универсальных цифровых компьютеров на правах сопроцессоров. Таких встроенных плат в составе компьютера может быть несколько. Возможно сочетание цифрового хост-компьютера с дополнительным блоком, включающим набор нейроплат, или нескольких хост-компьютеров с дополнительной стойкой, содержащей несколько блоков нейроплат. Нейроплаты, реализующие выполнение нейросетевых алгоритмов, отличаются друг от друга своей архитектурой и используемой элементной базой. Основным элементом нейроплаты является нейрочип, реализующий нейронную сеть определенной архитектуры. Он может быть цифровым или аналоговым. Цифровой нейрочип можно реализовать в виде заказной СБИС. Но гораздо дешевле это сделать на базе СБИС ПЛ или БМК. Аналоговый нейрочип, в отличие от цифрового, позволяет добиться максимального быстродействия, ибо реализует существенный параллелизм, свойственный аналоговому принципу вычислений.

 

В докладе представлен краткий обзор аппаратных реализаций нейрокомпьютеров в России и перспективы их развития.

Необходимость изменения последовательной Фон-неймановской архитектуры классических вычислений диктовалось все возрастающими требованиями к вычислительным ресурсам со стороны новых сложных задач, которые возникали в связи с развитием перспективных технологий. Нейросетевые технологии являются одним из наиболее интенсивно развиваемых направлений определения и реализации параллельных вычислений. Эти технологии позволяют не только более эффективно решать старые сложные задачи, но и позволяют реализовывать плохо формализуемые или неформализованные задачи, решение которых ранее не представлялось возможным. Соответственно, аппаратная реализация нейросетевых алгоритмов изменяет логическую основу вычислительной математики и является естественным стремлением получить требуемую производительность. Практическая реализация аппаратной поддержки нейросетевых вычислений зависит от требований конкретной задачи и возможна лишь в том случае, когда все другие подходы не могут быть использованы. В основном, аппаратная реализация требуется тогда, когда параллельные нейросетевые алгоритмы не могут быть достаточно эффективно реализованы с помощью традиционных вычислительных средств, включая кластерные конфигурации.С самого начала использования нейросетевых подходов к решению отдельных задач (более 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 млн. вентилей на кристалле.

Параллельно с этим была реализована разработка континуального нейрокомпьютера для распознавания сигналов по форме в виде трехслойной нейронной сети. Первый слой содержал восемь континуальных аналого-цифровых нейронов с весовой функцией, загружаемой в аналоговый умножитель из ПЗУ через ЦАП.

В настоящее время уделяется значительное внимание анализу состояния и определению перспектив разработок нейрочипов во всем мире. К наиболее важным направлениям этих работ можно отнести:

  • цифровые нейрочипы;

  • аналоговые и аналого-цифровые нейрочипы;

  • клеточные нейрочипы;

  • нейрочипы с частотно-импульсной модуляцией сигналов;

  • специализированные нейрочипы;

  • оптические и оптоэлектронные нейрочипы.

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

Литература

  1. Галушкин А. И. Нейрокомпьютеры. Серия “Нейрокомпьютеры и их применение” книга 3, Изд-во “Радиотехника”, М., 2002 г.

  1. Практическое применение нейросетевых технологий.

Практическое применение нейросетевых технологий целесообразно при решении задач, у которых имеются следующие признаки:

1) Отсутствие алгоритма решения задач, но есть масса примеров;

2) Наличие большого числа входной информации, характеризующих исследуемую проблему;

3) Зашумленность, частичная противоречивость, неполнота или избыточность исходных данных.

Применение:

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

Преимущества нейросетей:

1) Способность обучаться на множестве примеров, в тех случаях, когда неизвестны закономерности, отсутствуют зависимости между входными и выходными данными;

2) Нейронные сети способны успешно решать задачи, опираясь на неполную, искаженную, зашумленную и внутренне противоречивую входную информацию;

3) Для использования методов корреляционного анализа необходим профессионал-математик. А при использовании обученной сети, высокий уровень не требуется;

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

5) Внутренний параллелизм, который присущ нейросетям, позволяет практически безгранично наращивать мощность нейросистемы, т.е. можно начать с простого дешевого пакета, потом перейти на профессиональный пакет, потом добавить плату-ускоритель, потом перейти на специальный нейрокомпьютер и все это с гарантией полной преемственности созданного ранее программного обеспечения.

Применение нейросетевых технологий целесообразно при решении задач, имеющих следующие признаки:

отсутствие алгоритмов решения задач при наличии доста­точно большого числа примеров;

наличие большого объема входной информации, характери­зующей исследуемую проблему;

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

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

  1. Особенности аппаратной реализации нейросетей

Технология ПЛИС и ее применение для создания нейрочипов

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

Приборы программируемой логики, яркими представителями которых являются ПЛИС (Программируемые Логические Интегральные Схемы) применяются на протяжении нескольких десятилетий для построения разнообразных интерфейсных узлов, устройств управления и контроля и т.д. Однако, если еще 5 лет назад ПЛИС занимали весьма скромную нишу на рынке электронных компонентов -(в первую очередь из-за небольшого быстродействия и малого количества эквивалентных логических вентилей), то сейчас ситуация изменилась кардинально. Раньше о ПЛИС говорили, в основном, как об «игрушках», недостойных внимания серьезных разработчиков, но с появлением быстродействующих ПЛИС сверхвысокой интеграции, работающих на высоких тактовых частотах, их ниша на мировом рынке значительно расширилась. Современные образцы ПЛИС, выполненные по 0,22-микронной технологии, способны работать на частотах до 300 МГц и реализуют до 3 млн. эквивалентных логических вентилей. Компания Xilinx, один из мировых лидеров в данной области, уже объявила о выпуске ПЛИС в 10 млн. логических вентилей. Столь резкое увеличение мощности ПЛИС позволяет использовать их не только для реализации простых контроллеров и интерфейсных узлов, но и для цифровой обработки сигналов, сложных интеллектуальных контроллеров и нейрочипов. Появление быстродействующих ПЛИС со сверхнизким уровнем энергопотребления открывает широкие возможности по их использованию в системах мобильной связи (в частности, непосредственно в сотовых телефонах и пейджерах), в портативных проигрывателях (например, в МР3-проигрывателях) и т.д.

По целому ряду причин особый интерес вызывает использование ПЛИС для реализации нейрочипов. Приведем эти причины. Во-первых, разработка проектов на ПЛИС оказывается достаточно быстрой, занимая всего несколько месяцев. Во-вторых, ПЛИС на сегодняшний день обладают огромными ресурсами, которые могут быть эффективно использованы при реализации нейрочипов. И, самое главное, нейрочипы - это та область микропроцессорной техники, в которой в настоящее время нет подавляющего лидерства США и Японии, и нишу нейрочипов могут занять другие страны мира, в том числе и Россия.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]