Нейронные сети

Міністерство освіти і науки України

Запорозький національний технічний університет

















Кафедра КСМ





















РЕФЕРАТ





Тема:                                        НЕЙРОННЫЕ СЕТИ















Виконав: студент групи ІОТ-526                                                                     Д.С.Барсуков



Перевірив:                          							       В.О. Рибін           























Запоріжжя

2008
СОДЕРЖАНИЕ



	Введение	3

	Аппаратная реализация нейронных сетей	5

	Нейрочипы: анализ и сравнительные характеристики.	11

	Источники информации	17


Введение

Параллели из биологии

Нейронные сети возникли из исследований в области искусственного интеллекта, а именно, из попыток воспроизвести способность биологических нервных систем обучаться и исправлять ошибки, моделируя низкоуровневую структуру мозга (Patterson, 1996). Основной областью исследований по искусственному интеллекту в 60-е - 80-е годы были экспертные системы. Такие системы основывались на высокоуровневом моделировании процесса мышления (в частности, на представлении, что процесс нашего мышления построен на манипуляциях с символами). Скоро стало ясно, что подобные системы, хотя и могут принести пользу в некоторых областях, не ухватывают некоторые ключевые аспекты человеческого интеллекта. Согласно одной из точек зрения, причина этого состоит в том, что они не в состоянии воспроизвести структуру мозга. Чтобы создать искусственных интеллект, необходимо построить систему с похожей архитектурой.

Мозг состоит из очень большого числа (приблизительно 10,000,000,000) нейронов, соединенных многочисленными связями (в среднем несколько тысяч связей на один нейрон, однако это число может сильно колебаться). Нейроны - это специальная клетки, способные распространять электрохимические сигналы. Нейрон имеет разветвленную структуру ввода информации (дендриты), ядро и разветвляющийся выход (аксон). Аксоны клетки соединяются с дендритами других клеток с помощью синапсов. При активации нейрон посылает электрохимический сигнал по своему аксону. Через синапсы этот сигнал достигает других нейронов, которые могут в свою очередь активироваться. Нейрон активируется тогда, когда суммарный уровень сигналов, пришедших в его ядро из дендритов, превысит определенный уровень (порог активации).

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

Таким образом, будучи построен из очень большого числа совсем простых элементов (каждый из которых берет взвешенную сумму входных сигналов и в случае, если суммарный вход превышает определенный уровень, передает дальше двоичный сигнал), мозг способен решать чрезвычайно сложные задачи. Разумеется, мы не затронули здесь многих сложных аспектов устройства мозга, однако интересно то, что искусственные     нейронные сети способны достичь замечательных результатов, используя модель, которая ненамного сложнее, чем описанная выше.

 Базовая искусственная модель

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

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

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

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

Это было описание отдельного нейрона. Теперь возникает вопрос: как соединять нейроны друг с другом? Если сеть предполагается для чего-то использовать, то у нее должны быть входы (принимающие значения интересующих нас переменных из внешнего мира) и выходы (прогнозы или управляющие сигналы). Входы и выходы соответствуют сенсорным и двигательным нервам - например, соответственно, идущим от глаз и в руки. Кроме этого, однако, в сети может быть еще много промежуточных (скрытых) нейронов, выполняющих внутренние функции. Входные, скрытые и выходные нейроны должны быть связаны между собой.

Ключевой вопрос здесь - обратная связь (Haykin, 1994). Простейшая сеть имеет структуру прямой передачи сигнала: Сигналы проходят от входов через скрытые элементы и в конце концов приходят на выходные элементы. Такая структура имеет устойчивое поведение. Если же сеть рекуррентная (т.е. содержит связи, ведущие назад от более дальних к более ближним нейронам), то она может быть неустойчива и иметь очень сложную динамику поведения. Рекуррентные сети представляют большой интерес для исследователей в области нейронных сетей, однако при решении практических задач, по крайней мере до сих пор, наиболее полезными оказались структуры прямой передачи, и именно такой тип нейронных сетей моделируется в пакете ST Neural Networks.

.Типичный пример сети с прямой передачей сигнала показан на рисунке. Нейроны регулярным образом организованы в слои. Входной слой служит просто для ввода значений входных переменных. Каждый из скрытых и выходных нейронов соединен со всеми элементами предыдущего слоя. Можно было бы рассматривать сети, в которых нейроны связаны только с некоторыми из нейронов предыдущего слоя; однако, для большинства приложений сети с полной системой связей предпочтительнее.



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

Аппаратная реализация нейронных сетей

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

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

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

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

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

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

Типы аппаратного обеспечения на основе ИНС 

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

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

Разного типа ускорители и другие карты расширения для ПК (PC accelerators). Такие устройства представляют собой стандартные карты расширения для шины, например, ISA или PCI, с тем лишь отличием, что обработку данных осуществляет ИНС. Такие устройства обладают некоторыми преимуществами нейрокомпьютеров, но в более узком или специализированном диапазоне выполняемых задач, а, соответственно, и низком ценовом диапазоне. 

Чипы (Chips). Тип аппаратной реализации ИНС, применяемый для построения вышеназванных форм реализации, а также предназначенный для совместного использования с другими стандартными устройствами для расширения свойств последних. 

Клеточные библиотеки (Cell libraries). Такой тип предназначен для обеспечения совместной работы специализированного чипа и некоторых дополнительных возможностей и функций, предоставляемых другими устройствами. Широко применяется при построении сложных комплексных систем. 

Встроенные микрокомпьютеры (Embedded microcomputers). Такие устройства способны выполнять определенный круг задач с помощью ИНС, но без участия периферийных устройств (клавиатуры, монитора и т. д.). 

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

Категории аппаратного обеспечения ИНС 

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

По типу логики их можно разделить на цифровые, аналоговые и гибридные. 

По типу реализации нейроалгоритмов: с полностью аппаратной реализаций и с программно-аппаратной реализацией (когда нейроалгоритмы хранятся в ПЗУ). 

По характеру реализации нелинейных преобразований: на нейрочипы с жесткой структурой нейронов (аппаратно реализованных) и нейрочипы с настраиваемой структурой нейронов (перепрограммируемые). 

По возможностям построения нейросетей: нейрочипы с жесткой и переменной нейросетевой структурой (т.е. нейрочипы в которых топология нейросетей реализована жестко или гибко). 

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

В отдельный класс следует выделить так называемые нейросигнальные процессоры, ядро которых представляет собой типовой сигнальный процессор, а реализованная на кристалле дополнительная логика обеспечивает выполнение нейросетевых операций (например, дополнительный векторный процессор и т.п.). 

Обобщенная классификация нейрочипов приведена на рис.





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

Цифровое исполнение 

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

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

Каскадируемая архитектура. Рассматриваемая архитектура практически идентична методам построения обычных цифровых процессоров, другими словами, нейронная сеть любого размера и архитектуры строится посредством стандартных блоков. Реализованными примерами такой архитектуры могут служить чип Philips Lneuro, MD1220 от Micro Devices, а также Neuralogix NLX-420 Neural Processor. 

Мультипроцессорные чипы. В этом случае подход состоит в размещении в одном чипе множества простейших процессоров. Такие решения могут быть разделены на две группы, известные как SIMD (Single Instruction, Multiple Data) и так называемые систолические сети. В случае SIMD, все процессоры выполняют одну и ту же инструкцию параллельно с вектором данных. Во втором случае каждый процессор неоднократно исполняет один шаг вычислений перед передачей результата следующему (или нескольким) процессору в сети. Примерами SIMD-архитектуры являются чип Inova N64000, содержащий 64 элемента обработки, чип HNC 100NAP, включающий в себя 4 обрабатывающих элемента, Siemens внедрила в свой мультипроцессор MA 16 микрочипов. Такая архитектура предназначена, главным образом, для исполнения различных действий над матрицами. 

Архитектура RBF (Radial Basis Function). Согласно этой архитектуре, функционирование сети определяется управлением эталонными векторами, определяющими области, на которые влияют данные при обучении. Преимуществом RBF ИНС является их быстрое обучение и относительно простое построение сетей прямого распространения. К коммерческим изделиям относятся чипы IBM ZICS и Nestor Ni1000. Интересным фактом является также и то, что произведенные в США чипы семейства IBM ZICS были разработаны в Европе. 

Другие цифровые проекты. Ряд существующих архитектур не подходят ни под одну из вышеназванных категорий. К примеру, разработка фирмы Micro Circuit Engineering MT19003 NISP, — по существу, RISC-процессор (Redu-ced Instruction Set Computer, тип архитектуры микропроцессора, ориентированный на быстрое и эффективное выполнение относительно небольшого набора встроенных команд), осуществляющий семь инструкций, оптимизированных для построения многослойных сетей. Еще одним примером, реализующим другой подход, может служить чип Hitachi Wafer Scale Integration. Чипы этого семейства предназначены для реализации сетей обратного распространения и сетей Хопфилда. 

Аналоговое исполнение 

К преимуществам этой категории аппаратных средств реализации ИНС следует отнести высокие скорости обработки информации и возможности высокой плотности расположения элементов. Однако тут же дают о себе знать и недостатки — сложность в получении высокой точности, обусловленная различиями в компонентах из-за системы допусков при производстве, различные характеры тепловых и электромагнитных помех, искажающих полезный сигнал. Еще одной проблемой является сложность в долгосрочном хранении весовых коэффициентов и организации операций аналогового умножения. 

В качестве примера можно привести разработку Intel — 8017NW ETANN (Electrically Trainable Analogue Neural Networks), содержащий 64 нейрона и 10280 весовых коэффициентов. ИНС, реализованная в продукте Synaptics Silicon Retina, обрабатывает изображение, моделируя процессы, происходящие в сетчатке глаза. Подход заключается в создании аналогового исполнения, где ИНС пытается наиболее точно воспроизвести поведение биологических нейронов. Реализованные аналоговые нейросети представляют набор компонентов, размеры которых меньше размеров биологического нейрона, и предполагается, что вышеназванные недостатки компенсируются взаимосвязями между аналоговыми нейронами. 

Гибридное исполнение 

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

В качестве примера приведем чип Bellcore CLNN-32, который хранит весовые коэффициенты в цифровой форме, а производит моделирование ИНС, используя аналоговую схему. Существуют проекты, в которых весовые коэффициенты хранятся в конденсаторах, периодически подзаряжающихся от внутренних источников тока. Также примерами гибридных систем могут служить SU3232 Synapse и NU32 Neuron, разработанные в лабораториях Neural Semiconductor, и RN-100, представленный Ricoh. 

Пути развития 

В дальнейшем развитие аппаратных средств на основе ИНС может пойти следующими путями: 

Путем усовершенствования методов для реализации нейросетевых методов на FPGA (Field Programmable Gate Array, ПЛИС, Программируемая Логическая Интегральная Схема), VLSI (Very Large Scale Integration, СБИС, уровень интеграции, при котором количество элементов на одной микросхеме исчисляется тысячами и миллионами). 

Благодаря исследованиям и внедрению инновационных алгоритмов построения ИНС, которые осуществимы аппаратными средствами. 

Разработкой промышленного стандарта нейросетевых алгоритмов высокого уровня в промышленности.

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

А согласно указанным направлениям развития, все более вероятен переход на новые технологии. Отметим, что Япония по скорости внедрения новых интеллектуальных технологий шагает далеко впереди, обогнав как страны СНГ, так и страны Европы. Особенно это хорошо заметно в области бытовой электроники, где чипы на основе нейронных сетей устанавливаются в микроволновые печи (Sharp), пылесосы, фото- и видеокамеры. 

Приведем краткий список фирм, уже применяющих ИНС в их аппаратном исполнении: Ericsson (Англия и Швеция), Philips Research (Нидерланды), Siemens AG Munich, Siemens/Nixdorf Bonn, 3M Laboratories (Europe) GmbH Neuss, XIONICS Document Technologies GmbH Dortmund, Robert Bosch GmbH Reutlingen, Spectrum Microelectronics Siek, Fiat, Domain Dynamics Ltd. 

Применение 

Ниже приведен далеко не полный список возможных и перспективных аппаратных реализаций и сфер применения: 

Системы коммуникаций, модуляторы/демодуляторы, интеллектуальные антенны, полупроводники для применения в космической отрасли. 

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

Анализ человеческого характера, идентификация говорящего, распознавание речи, распознавание рукописного текста. 

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

Для оценки производительности нейровычислителей используются следующие показатели: 

CUPS (connections update per second) - число измененных значений весов в секунду (оценивает скорость обучения). 

CPS (connections per second) - число соединений (умножений с накоплением) в секунду (оценивает производительность). 

CPSPW = CPS/Nw, где Nw - число синапсов в нейроне. 

CPPS - число соединений примитовов в секунду, CPPS=CPS*Bw*Bs, где Bw, Bs - разрядность весов и синапсов. 

MMAC - миллионов умножений с накоплением в секунду. 

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



Нейрочипы: анализ и сравнительные характеристики.

Характеристики нейрочипов. 

Наименование

Фирма изготовитель

Разряд-ность, бит

Максимальное количество синапсов*

Максимальное число слоев**

Примечание

MA16

Siemens

48 (умножители и сумматоры)

- 

-

400 ММАС.

NNP (Neural Networks Processor)

Accurate Automation

Nx16

-

-

MIMD, N - число процессоров.

СNAPS-1064

Adaptive Solutions

16

128 Кбайт 

64

 

100 NAP Chip

HNC

32

512 Кбайт

4

Плав. Арифм. 4 процессорных элемента

Neuro Matrix NM6403, Такт. частота 50 МГц.

Модуль, Россия

64 (вект. процессор), 32 RISC ядро

4096 шт.

24 

Совместим с портами TMS320C4x

Neuro Matrix NM6404, Такт. частота 133 МГц.

Модуль, Россия

64 (вект. процессор), 32 RISC ядро

4096 шт.

~48 

Совместим с портами TMS320C4x

CLNN 32 CLNN 64

Bellcore

32
64

496
1024

32 нейрона

108 перекл./с 2 x 108 перекл./с

NC 3001

NeuriGam

16

4096 шт.

32 

 

ZISC 036 (Zero Instruction Set Computer)

IBM

64 разр. входного вектора

-

36 нейронов

Частота 20МГц, Векторно-прототипный нейрочип 

ETANN 80170NW

Intel

64 входа

Два банка весов 64х80

64 нейрона в слое, 3 слоя.

Аналоговая

MD-1220 

Micro Devices

16

64 шт.

8 

8 нейронов

MT 19003 - Neural Instruction Set Processor 

Micro Circuit Engineering (MCE)

16 разр. Умножитель 35 разр. сумматор 

-

1

RISC МП c 7 специальными командами

Neuro Fuzzu

National Semiconductor

-

-

-

 

NI 1000

Nestor

5-16 (одного нейрона)

-

1024 прототипных 256 мерных векторов 

Векторно-прототипный нейрочип

NLX420 (NLX 110, 230)

Adaptive Logic

16

1 Мбайт

16

16 процессорных элементов

OBL Chip

Oxford Computer

16

16 Мбайт 

-

 

L-Neuro 1.0
L-Neuro 2.3

Philips 

16
16


1536

16 нейронов
192 (12х16) 

26 МГц
60 МГц

RSC (Speech Recognition Chip) - 164

Sensory Circuits

-

-

-

 

ORC 110xx (Object Recognizer Chip)

Synaptics

-

-

-

 

Pram-256 Chip

UCLi Ltd.

8 (одного нейрона)

-

256 нейронов

33МГц.

SAND

Datafactory

16

-

4

200 MCPS

ACC

 

16

-

-

 

Геркулес

Россия

16

1 Мбайт

64

 

Neuro Classifier

Университет Твента, DESY

70 вх. нейронов 

-

6 (внутр) 1 вх., 1 вых.

2 х 1010 перекл./с

ANNA

AT&T

Число нейроннов 16-256

4096 весов 

-

Число входов у нейрона 256-16.

WSC (Wafer Scale Integration)

Hitachi

- 

64 связи на нейрон

576 нейронов 

 

SASLM2

Mitsubishi

2 (одного нейрона)

-

4096(64x64) нейронов

50 МГц

TOTEM

Kent (Univer UK), di Trento (Italy)

16 (одного нейрона)

-

64 нейрона

30 МГц

Neuron 3120, Neurom 3150

Echelon (США)

8 бит (шина данных)

-

-

Наличие параллельных, последовательных и коммуникацинных портов

* - максимальное число синапсов определяет размер внутрикристалльной памяти весов. 

** - максимальное число слоёв определяется числом операций умножения с накоплением, выполняемых за один такт для операндов длиной 8 бит. 

Нейроускорители НТЦ “Модуль”

За период с 1989 по 1999 гг. в НТЦ “Модуль” разработан ряд образцов нейрокомпьютерных вычислительных систем на современной элементной базе ведущих зарубежных фирм и на основе нейропроцессоров NeuroMatrix 6403 и 6404, созданного в НТЦ “Модуль” [4]. Среди широкой линейки различных ускорителей можно выделить: нейроускорители на основе универсальных сигнальных процессоров (в основном, используется TMS320C4x) и нейроускорители на базе специализированного нейросигнального процессора NeuroMatrix, созданного в НТЦ “Модуль”. Примерами ускорителей первого типа являются ускорительные платы М1и М2.

Ускорительная плата Ml

М1 выполнена на цифровых сигнальных процессорах TMS320C40 фирмы TEXAS INSTRUMENTS, связанных по высокоскоростным линкам. Имеется возможность каскадирования — подключения по линкам аналогичных плат. Структурная схема платы представлена на рис.

 



Основные характеристики:

ISA-интерфейс;

до четырёх TMS320C40 с частотой 50 МГц;

пиковая производительность — 100 MIPS, 200MFLOPS, 1100 MOPS;

объём SRAM — 5 Мб (по 1 Мб на процессор + 1 Мб разделяемый с IBM PC), время выборки — 20 нс;

объём DRAM — до 32 Мб;

8 внешних связей (скорость — 20 Мб/с).

Ускорительная плата М2

Многопроцессорный модуль М2 цифровой обработки сигналов выполнен на цифровых сигнальных процессорах TMS320C40 фирмы Texas Instruments и представляет собой одноплатную многопроцессорную вычислительную машину. Модуль предназначен как для автономной работы, так и для функционирования в составе ПЭВМ с системной шиной VMEbus, в том числе состоящей из нескольких таких же модулей. Конструктивно блок выполнен в соответствии с механическим стандартом VMEbus IEEE 1014 (6U). 

Модуль М2 содержит:

VME-bus контроллер;

master/slave интерфейс;

до шести TMS320C40 с частотой 50 МГц;

до 2 Мб SRAM на процессор;

до 64 Мб DRAM на плате;

FLASH EEPROM до 0,5 Мб;

6 внешних связей (скорость — 20 Мб/с);

JTAG-интерфейс;

RS-232-интерфейс;

общая производительность — до 300 MFLOPS.

Структурная схема ускорителя М2 приведена на рис.



 

Нейроускорители на базе нейрочипов

Кроме нейроускорителей на базе 
ПЛИС и DSP, в последнее время всё большее распространение находят нейроускорители на базе специализированных нейросигнальных и нейросетевых процессоров. Проанализируем особенности их реализации на конкретных примерах.

Двухпроцессорный встраиваемый модуль МЦ4.01 (NM1)

Встраиваемый модуль цифровой обработки сигналов МЦ4.01 (NM1) производства НТЦ “Модуль” [4] предназначен для решения различных задач нейронными и нейроподобными алгоритмами, а также задач цифровой обработки сигналов и ускорения векторно-матричных вычислений (рис. 7). Модуль выполнен на спроектированных и разработанных в НТЦ цифровых сигнальных процессорах NeuroMatrix® NM6403 и представляет собой одноплатный нейроускоритель. Конструктивно выполнен в виде платы, вставляемой в стандартный слот шины PCI.



Нейроускоритель содержит:

2 нейропроцессора NM6403;

от 2 до 8 Мбайт статической памяти (SRAM);

64 Мбайт динамической памяти (EDO DRAM);

4 внешних ком. порта с темпом обмена 20 Мбайт/с каждый.

Производительность:

векторные операции — 1,9 млрд. операций с байтовыми операндами в секунду;

скалярные операции — до 320 млн. операций в секунду.

Конструктивное выполнение: стандарт PCI (версия 2-1) с темпом обмена до 132 Мбайт/с.

Нейроускоритель МЦ4.02 содержит один процессор NM6403 и обладает масштабируемой производительностью от 40 до 11500 ММАС, обеспечивает обработку данных переменной разрядности от 1 до 64 бит. Модуль предназначен для работы в составе комплекса с системной шиной PCI, блок статической памяти модуля доступен для записи и чтения как со стороны процессора, так и со стороны шины PCI. На внешние разъёмы модуля выведены два комуникационных порта, аппаратно совестимых с портами TMS320C4x. Соединение коммуникационных портов нескольких модулей позволяет создавать мультипроцессорные системы различной конфигурации. Сейчас ведутся разработки по созданию модулей на базе процессора NM6404.

Нейровычислители Synapse

Компания Siemens Nixdorf Infor-mationssysteme (SNI) — дочернее предприятие концерна Siemens в сотрудничестве с Маннгеймским университетом создала нейрокомпьютер под названием Synapse 1, который появился на рынке в середине 1994 г., в дальнейшем были выпущены нейроускорители Synapse 2 и Synapse 3. Таким образом, SNI стала первой европейской фирмой, выпустившей нейрокомпьютеры. В настоящее время нейроускорители распространяются французской фирмой Tiga Technologies (gouimenou.tiga@wanadoo.fr).

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

Эти системы обладают скалярной многопроцессорной архитектурой и наращиваемой памятью.

В состав Synapse 2 входят: один нейрочип МА16 (40 Гц), управляющий сигнальный процессор TMS320C50 (55 МГц), модуль целочисленной обработки на базе TMS320C50 (55 МГц), память образцов (Y-memory) и память весов (W-memory). Структурная схема нейроускорителя Synaps 2 представлена на рис. 8. 

Серийно выпускаемые нейроускорители Synapse 3 поставляются с двумя процессорами МА 16. Пиковая эффективность одной нейроплаты Synapse 3 — 2,4 млрд.оп./с. Программное обеспечение работает в среде UNIX/XWIND и реализовано на C++. Нейронная сеть тоже описывается на С++ или может вводиться интерактивно с помощью графического интерфейса типа OSF/Motif, что позволяет визуализировать конфигурацию СБИС после отображения на неё структуры сети. Средства тестирования и эмуляции развиты очень хорошо.

Сравнительная диаграмма производительности нейроплат и Pentium200 на матричных операциях приведена на рис.



Нейроплата CNAPS/PC-128 фирмы Adaptive Solutions

Плата CNAPS/PC была анонсирована в США в ноябре 1995 года. Она обладает рядом характеристик, которые на первый взгляд кажутся фантастическими. При обучении на сложных данных нейроплата превосходит ПК на базе Pentium по быстродействию в несколько сотен раз (на отдельных тестах — до 1000). Нейроплата позволяет прогнозировать заведомо “гиблые” задачи — текущую ситуацию на мировом валютном рынке, динамику политических событий в регионах и даже исход футбольных матчей.

Старшая модель семейства имеет пиковое быстродействие 2,27 млрд.соединений/с, что позволяет сократить время аналитической обработки данных. Для сравнения: при решении нейросетевых задач стандартные персональные компьютеры показывают следующее быстродействие:

486 / 50 MГц — 750 тыс.соед./с; 

Pentium / 90 MГц — 1980 тыс.соед./с.

Конструктивно нейроплата CNAPS/PC представляет собой полноразмерную плату, вставляемую в слот расширения PC (поддерживаются шины ISA и PCI). На плате размещены 2 либо 4 нейроБИС, реализующие 64 либо 128 нейропроцессоров, соответственно. Кроме того, плата содержит 512 Кбайт быстродействующей кэш-памяти и стандартный SIMM ОЗУ — 4 Мб (может быть расширен до 36 Мб).

 

Нейроускорители фирмы IBM

ISA ускоритель с 16 x ZISC 036

ZISC/ISA предназначен для IBM PC совместимых компьютеров. Ускоритель построен на 16 ZISC036 процессорах и имеет 576 нейронов. Возможна установка нескольких карт, одна из которых работает в режиме Master, а другие — в Slave.

PCI ускоритель на ZISC 036

IBM PCI ZISC ускоритель — высокопроизводительный нейровычислитель, предназначенный для работы в PCI-слоте:

рабочая частота — 33 MГц;

производительность — 165000 оп./с.

Ускоритель может содержать 1, 7, 13 или 19 ZISC036.

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

Источники информации

http://md-it.ru

http://chipnews.gaw.ru

http://www.citforum.ru

http://www.statsoft.ru