Реферат: Нейроинформатика и ее приложения
Нейроинформатика и ее приложения
Александр Горбань, [email protected]
Вычислительный центр СО РАН, Красноярск-36
Что такое нейронные сети?
Задачи для нейронных сетей
Примеры приложений
Истинные преимущества нейронных сетей?
Каждый, кто впервые знакомится с нейронными сетями, задает себе вопрос: что такое нейроинформатика? Ответить на него можно по-разному. Можно сказать, что нейроинформатика это способ решения всевозможных задач с помощью искусственных нейронных сетей, реализованных на компьютере. Такой ответ, объясняющий только внутреннюю сущность нейроинформатики, почти никого не удовлетворяет, даже если подробно рассказывать о нейронных сетях, задачах и способах их решения. На самом деле требуется еще определить место нейроинформатики среди других способов решения задач и разобраться, в чем же истинные преимущества нейронных сетей, если таковые существуют?
Безусловно, те же самые задачи можно решать и другими способами?
Нейросетевые методы далеко не всегда эффективнее традиционных. К тому же, многие нейросетевые методы это просто новая редакция известных математических подходов.
Почему же тогда многие предпочитают нейросети? Одни чтобы заработать на модной новинке, другие чтобы поиграть в новую интеллектуальную игрушку, не отстать от моды попробовать новую технологию и так далее.
Так в чем же реальные преимущества нейронных сетей? Чтобы ответить на этот вопрос, во-первых, обратимся к десятилетнему опыту применения данной технологии красноярской группой НейроКомп, а во-вторых, попытаемся разгадать логику мирового нейросетевого «бума».
Что такое нейронные сети?
Термин «искусственные нейронные сети» у многих ассоциируется с фантазиями об андроидах и бунте роботов, о машинах, заменяющих и имитирующих человека. Это впечатление усиливают многие разработчики нейросистем, рассуждая о том, как в недалеком будущем, роботы начнут осваивать различные виды деятельности, просто наблюдая за человеком.
Если переключиться на уровень повседневной работы, то нейронные сети это всего-навсего сети, состоящие из связанных между собой простых элементов формальных нейронов. Большая часть работ по нейроинформатике посвящена переносу различных алгоритмов решения задач на такие сети.
В основу концепции положена идея о том, что нейроны можно моделировать довольно простыми автоматами, а вся сложность мозга, гибкость его функционирования и другие важнейшие качества определяются связями между нейронами. Каждая связь представляется как совсем простой элемент, служащий для передачи сигнала. Коротко эту мысль можно выразить так: «структура связей все, свойства элементов ничто».
Совокупность идей и научно-техническое направление, определяемое описанным представлением о мозге, называется коннекционизмом (connection связь). С реальным мозгом все это соотносится примерно так же, как карикатура или шарж со своим прототипом. Важно не буквальное соответствие оригиналу, а продуктивность технической идеи.
С коннекционизмом тесно связан следующий блок идей:
· однородность системы (элементы одинаковы и чрезвычайно просты, все определяется структурой связей);
· надежные системы из ненадежных элементов и «аналоговый ренессанс» использование простых аналоговых элементов;
· «голографические» системы при разрушении случайно выбранной части система сохраняет свои свойства.
Предполагается, что широкие возможности систем связей компенсируют бедность выбора элементов, их ненадежность и возможные разрушения части связей.
Для описания алгоритмов и устройств в нейроинформатике выработана специальная «схемотехника», в которой элементарные устройства (сумматоры, синапсы, нейроны и т.п.) объединяются в сети, предназначенные для решения задач. Для многих начинающих кажется неожиданным, что ни в аппаратной реализации нейронных сетей, ни в профессиональном программном обеспечении эти элементы вовсе не обязательно реализуются как отдельные части или блоки. Используемая в нейроинформатике идеальная схемотехника представляет собой особый язык описания нейронных сетей и их обучения. При программной и аппаратной реализации выполненные на этом языке описания переводятся на более подходящие языки другого уровня.
Самый важный элемент нейросистем адаптивный сумматор, который вычисляет скалярное произведение вектора входного сигнала x на вектор параметров a. Адаптивным он называется из-за наличия вектора настраиваемых параметров a.
Нелинейный преобразователь сигнала получает скалярный входной сигнал x и переводит его в заданную нелинейную функцию f(x).
Точка ветвления служит для рассылки одного сигнала по нескольким адресам. Она получает скалярный входной сигнал x и передает его на все свои выходы.
Стандартный формальный нейрон состоит из входного сумматора, нелинейного преобразователя и точки ветвления на выходе.
Линейная связь синапс отдельно от сумматоров не встречается, однако для некоторых рассуждений бывает удобно выделить этот элемент. Он умножает входной сигнал x на «вес синапса» a.
Итак, мы коротко описали основные элементы, из которых состоят нейронные сети. Перейдем теперь к вопросу о формировании этих сетей. Строго говоря, их можно строить как угодно, лишь бы входы получали какие-нибудь сигналы. Обычно используется несколько стандартных архитектур, из которых путем вырезания лишнего или (реже) добавления строят большинство используемых сетей. Для начала следует определить, как будет согласована работа различных нейронов во времени. Как только в системе появляется более одного элемента, встает вопрос о синхронизации функционирования. Для обычных программных имитаторов нейронных сетей на цифровых ЭВМ этот вопрос не актуален только из-за свойств основного компьютера, на котором реализуются нейронные сети. Для других способов реализации он весьма важен. Мы же будем рассматривать только те нейронные сети, которые синхронно функционируют в дискретные моменты времени: все нейроны срабатывают «разом».
В зоопарке нейронных сетей можно выделить две базовых архитектуры слоистые и полносвязные сети.
Слоистые сети. Здесь нейроны расположены в несколько слоев. Нейроны первого слоя получают входные сигналы, преобразуют их и через точки ветвления передают нейронам второго слоя. Далее срабатывает второй слой и т.д. до слоя k, который выдает выходные сигналы для интерпретатора и пользователя. Если противное не оговорено, то каждый выходной сигнал слоя i подается на вход всех нейронов слоя i+1. Число нейронов в каждом слое может быть любым и никак заранее не связано с количеством нейронов в других слоях. Стандартный способ подачи входных сигналов: все нейроны первого слоя получают каждый входной сигнал. Особенно широко распространены трехслойные сети, в которых каждый слой имеет свое наименование: первый входной, второй скрытый, третий выходной.
--> ЧИТАТЬ ПОЛНОСТЬЮ <--