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

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

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

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

Биологические нейронные сети

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

биологическая нейронная сеть

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

составляющие нейрона

По упрощенной теории естественной нейросети рассмотрим составляющие нейрона. Состоит он из тела клетки и ядра. К телу относится множество ответвлений, называемых дендритами. Длинные дендриты называться Аксонами. С их помощью проходит связь между нейронами с помощью синапсов (места контакта двух нейронов, по которым проходит импульс). В этом случае можно уловить закономерность. На дендрит приходит сигнал (значит это вход), по аксону (выход) передается на другую нейронную клетку. В точке синаптической передачи импульса, его частота и амплитуда может изменяться (переменные составляющие сложного уравнения, влияющие на состояние сигнала). Примерно так работает естественная нейросеть в голове каждого человека. В таком случае, почему бы не создать искусственную нейросеть наподобие естественной, откинув биологическую составляющую. Дендрит будет выступать в роли входа, аксон – выход, тело нейрона в виде сумматора, а кодом, состоящим из 0 и 1 можно регулировать частоту, импульс сигнала, перед подачей на сумматор в разделе «Веса». Это основная составляющая нейрона. В целом, математическую и графическую модель нейрона можно записать так.

модель нейрона

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

модель естественной нейросети

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

История нейронных сетей

Развитие искусственной нейросети началось с появлением электронно-вычислительных машин (ЭВМ) в конце 1940 года. В это время, канадский физиолог и нейропсихолог Дональд Хебб создал алгоритм нейронной сети, и заложил принципы его работы в ЭВМ. Затем, важными точками в развитии искусственных нейросетей были такие даты: 1. 1954 год – на рабочей ЭВМ впервые на практике применили нейросеть. 2. 1958 год – американским ученым по нейрофизиологии и искусственного интеллекта, Фрэнком Розенблаттом был разработан алгоритм распознавания образов и предоставлено его краткое изложение для общественности. 3. 1960 год – ЭВМ не могла должным образом из-за слабых мощностей выполнять сложные задачи, возложенные на нее, поэтому интерес к технологии немного угас. 4. За двадцатилетний период полным ходом шла «компьютеризация», и мощности тогдашних компьютеров хватило, чтобы вновь разжечь интерес к нейросетям. В 1980 году появилась система с механизмом обратной связи и начались разработки алгоритмов по самообучению. 5. Спустя следующие 20 лет, мощности компьютеров выросли настолько, что в 2000 году ученые-исследователи смогли применять нейросети во многих сферах. Появились программы распознавания речи, имитация зрения, когнитивного восприятия информации. Нейросеть, машинное обучение, робототехника, компьютеризация стали частью нечто большего, под названием «искусственный интеллект».

Типы нейронных сетей

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

Нейронная сеть

Принцип применения

Обучение с учителем (+) или без(-) или смешанное (с)

Сфера применения

Перцептрон Розенблатта

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

+

Практически любая сфера применения, кроме оптимизации информации

Хопфилда

Сжатие данных и ассоциативная память

Строение компьютерных систем

Кохонена

Кластеризация, сжатие данных, анализ данных, оптимизация

Финансы, базы данных

Радиально-базисных функций (RBF-сеть)

Принятие решений и управление, аппроксимация, прогнозирование

с

Управленческие структуры, нейроуправление

Свёрточная

Распознание образов

+

Обработка графических данных

Импульсная

Принятие решение, распознавание образов, анализ данных

с

Протезирование, робототехника, телекоммуникации, компьютерное зрение

 

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

Сверточные

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

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

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

Рекуррентные

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

Обучение нейронной сети

Один из главных и самый важный критерий – возможность обучения нейросети. В целом, нейросеть – это совокупность нейронов, через которые проходит сигнал. Если подать его на вход, то пройдя через тысячи нейронов, на выходе получится неизвестно что. Для преобразования нужно менять параметры сети, чтобы на выходе получились нужные результаты.

Обучение нейронной сети

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

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

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

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

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

Обучение с учителем

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

Как готовить такие выборки:

  1. Для опознавания лиц создать выборку из 5000-10000 фотографий (вход) и самостоятельно указать, какие содержат лица людей (выход, правильный сигнал).
  2. Для прогнозирования роста или падения акций, выборка делается с помощью анализа данных прошлых десятилетий. Входными сигналами могут быть как состояние рынка в целом, так и конкретные дни.

Учителем не обязательно выступает человек. Сеть нужно тренировать сотнями и тысячами часов, поэтому в 99% случаев тренировкой занимается компьютерная программа.  

процесс обучения нейросети

Обучение без учителя

Концепция состоит в том, что делается выборка входных сигналов, но правильных ответов на выходе вы знать не можете.

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

Сколько нейронным сетям еще до человеческого мозга?

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

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

Почему нейронные сети стали так популярны именно сейчас

мощность вычислительной техники

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

Применение нейронных сетей

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

Поисковые системы

Google

Яндекс и Google не первый год используют нейронные сети для обучения собственный поисковых систем, делая их «умнее». Они адаптируются под конкретного пользователя, узнают о его предпочтениях и выдают максимально релевантные результаты. Тот же принцип применяется и в контекстной и таргетированной рекламе.

Голосовые ассистенты

Системы распознавания речи

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

Автономное управление автомобилем

Автономное управление автомобилем

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

Фотофильтры

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

Заключение

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

future2day.ru