Нейрокомпьютер — устройство переработки информации на основе принципов работы естественных нейронныхсистем.
Многолетние усилия многих исследовательских групп привели к тому, что к настоящему моменту накоплено большое число различных «правил обучения» и архитектур нейронных сетей, их аппаратных реализаций и приёмов использования нейронных сетей для решения прикладных задач.
Эти интеллектуальные изобретения[10] существуют в виде «зоопарка» нейронных сетей. Каждая сеть из зоопарка имеет свою архитектуру, правило обучения и решает конкретный набор задач. В последнее десятилетие прилагаются серьёзные усилия для стандартизации структурных элементов и превращений этого «зоопарка» в «технопарк»[11]: каждая нейронная сеть из зоопарка реализована на идеальном универсальном нейрокомпьютере, имеющем заданную структуру.
Основные правила выделения функциональных компонентов идеального нейрокомпьютера (по Миркесу):
1. Относительная функциональная обособленность: каждый компонент имеет чёткий набор функций. Его взаимодействие с другими компонентами может быть описано в виде небольшого числа запросов.
2. Возможность взаимозамены различных реализаций любого компонента без изменения других компонентов.
Постепенно складывается рынок нейрокомпьютеров. В настоящее время широко распространены различные высокопараллельные нейро-ускорители[12](сопроцессоры) для различных задач. Моделей универсальных нейрокомпьютеров на рынке мало отчасти потому, что большинство из них реализованы для спецприменений. Примерами нейрокомпьютеров являются нейрокомпьютер Synapse (Siemens, Германия),[13] процессор NeuroMatrix[14]. Издаётся специализированный научно-технический журнал «Нейрокомпьютеры: разработка, применение»[15]. Проводятся ежегодные конференции по нейрокомпьютерам[16]. С технической точки зрения сегодняшние нейрокомпьютеры — это вычислительные системы с параллельными потоками одинаковых команд и множественным потоком данных (MSIMD-архитектура). Это одно из основных направлений развития вычислительных систем с массовым параллелизмом.
Искусственная нейронная сеть может передаваться от (нейро)компьютера к (нейро)компьютеру, так же как и компьютерная программа. Более того, на её основе могут быть созданы специализированные быстродействующие аналоговые устройства. Выделяются несколько уровней отчуждения нейронной сети от универсального (нейро)компьютера[17]: от сети, обучающейся на универсальном устройстве и использующей богатые возможности в манипулировании задачником, алгоритмами обучения и модификации архитектуры, до полного отчуждения без возможностей обучения и модификации, только функционирование обученной сети.
Одним из способов подготовки нейронной сети для передачи является её вербализация: обученную нейронную сеть минимизируют с сохранением полезных навыков. Описание минимизированной сети компактнее и часто допускает понятную интерпретацию.