Найти в Дзене
Data and Intelligence

Нейронные Сети #1 Введение

Всем привет. С вами блог «Data and Intelligence» - Блог обо всем, что связанно с Искусственным интеллектом и обработкой данных. Нейронные сети, алгоритмы, обработка и представление данных… Все это в этом блоге. Добро пожаловать. Сегодня мы начнем рассмотрение обширнейшей темы – нейронных сетей.

Видеоверсия:

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

Развитие нейронных ЭВМ началось еще в 50-е, с развитием пороговой логики. Это привело к появлению в 60-е и 70-е ряда экспериментальных нейронных ЭВМ.

Сам термин «Нейронные ЭВМ» или «Нейрокомпьютеры» никак не связан с нервной системой человека или животного. Он связан с наименованием порогового элемента с настраиваемыми или фиксированными весами, который и реализует простейшую передаточную функцию нейрона-клетки.

Скачек развития технологий и появление СБИС в начале 80-х позволил по-новому взглянуть на проблему нейронных ЭВМ. Это позволило реализовать не только множество элементов-нейронов, но и множество связей между ними, что ранее было невозможно.

Основной идеей создания нейронной ЭВМ является идея построения аналого-цифрового вычислителя, где быстрая аналоговая часть будет выполнять многомерные операции в пороговом базисе.

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

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

Реализуются нейронные ЭВМ следующими способами: 1. Программная симуляция нейронных алгоритмов на стандартных вычислительных средствах, ПК или микроконтроллерах. 2. Программно-аппаратная эмуляция на цифровой элементной базе. 3. Аппаратная реализация на элементной базе, характерной для нейронных алгоритмов.

С точки зрения Архитектуры, нейронные ЭВМ являются мелкозернистыми, эволюционным развитием систем МКМД (много потоков команд много потоков данных) и МОКМД (множественный вариант ОКМД – один поток команд много потоков данных).

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

При построении нейронной ЭВМ решаются следующие задачи: 1. Разработка структуры сети и методы ее реализации, адекватные решаемой задаче. 2. Разработка алгоритма настройки нейронной сети.

Структура однородной сети выбирается по следующим причинам: 1. Возможно массовое параллельное выполнение большого числа операций. 2. Реализует достаточно сложное и гибкое преобразование входного пространства в выходное. 3. Допускает аналитическое описание преобразования. 4. Позволяет организовать контролируемый процесс настройки.

Способы настройки весовых коэффициентов нейронных сетей классифицируются следующим образом: 1. Технологические на этапе производства. 2. Схемотехнические на этапе до начала эксплуатации. 3. Системотехнические – в процессе работы.

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

Принципиальным моментом появления нейрокомпьютеров является отказ от булевского логического базиса в пользу пороговой логики. Работы по пороговой логике известны еще с 60-х годов, там предлагалось использовать для построения отдельных блоков и узлов ЭВМ нейроны. Осуществлялось при этом следующее преобразование входных сигналов в выходные.

Это простейшая передаточная функция нейрона. Здесь y – значение на выходе нейрона, ai – весовые коэффициенты, а xi – значение на входе нейрона. Значение весового коэффициента a0, при котором входное значение всегда равно 1, называют смещением, или порогом.

-2

Передаточная функция может принимать совершенно разнообразные формы, но мы пока рассмотрим пороговые. Как правило пороговые функции используют одной из 2 форм: 0 или1 на выходе, или -1 / 1 на выходе.

-3

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

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

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

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

-4

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

-5

Ну, для начала хватит, в следующий раз будем разбираться с иными активационными функциями, и возможно, немного затронем структуру нейронных сетей. Если вам интересна эта тема – ставьте лайк, напишите в комментарии свое мнение, это блог «Data and Intelligence» - всем пока.