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

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

Биологические основы.

1943 год – ученые Мак Каллок и Питтс предложили модель нейрона.

1949 год – Хэбб предложил алгоритм обучения.

50-60 годы – бурное развитие нейронных сетей.

1969 год – работа Минского и Пейнерта книга «Персептроны»  показали ограниченность сетей (не могли решить задачу рисования 1 линии).

К 70 годам- появились новые модели нейрон сетей + новые алгоритмы получения (многослойный нейрон сети, 2 линии – решили задачу).

Модели нейронов

В зависимости от функции различают виды нейронов:

— персептрон(формула)

— сигмоидальный нейрон(формула)

— гиперболический тангенс(формула)

Многослойный персептрон

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

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

Пример: сеть для решения задачи XOR.

Однослойные нейронные сети

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

Пример: задача END.

Обучение однослойных сетей

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

Существует 2 вида обучения:

— обучение с учителем (роль учителя в том, что ему известны эталонные выходы, т.е. то , что будет на выходе).

— обучение без учителя

Обучение персептрона с учителем

В процессе обучения необходимо минимизировать среднеквадратичную ошибку.

E(w)=1/2*e2

Е – это ошибка, которая равна d-y

D – эталонное значение

Y – реальный выход

W – вектор

Е=d-f(Сумма от i=0 по n от wixi)

Метод наискорейшего спуска (градиентного спуска)

Лямда в этой формуле – это коэффициент скорости обучения. Малое альфа – получение точного ответа. Большая альфа  – дает возможность проскочить минимальное и точное значение мы можем проскочить. Альфа выбирается из диапазона от 0 до 1. В случае пороговой функции произвольная функция не определена и не входит в формулу обучения.

Алгоритм обучения персептрона

  1. при первоначально выбранных (случайно) весах Wij на вход нейрона I подается обучающий вектор х и рассчитывается выходной сигнал Yi.
  2. если значение Yi совпало в ожидаемым значением Di, то весовые коэффициенты не изменяются.
  3. если Yi не равно Di, то значения весов уточняются по 

— если функция пороговая ,

— если функция непрерывная 

Возможности однослойных сетей:

— не способны решить задачу XOR (линейно неразделимые задачи)

Возможности двуслойных сетей:

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

Трехслойные сети способны представить любую функцию с разрывами.

Проблемы обучения:

— переобучение ( надо разделить крестики и нулики, можно посчитать что проблема очень сложная, но сеть строит кривую вместо прямой – это сложнее).

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

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

Book-Science
Добавить комментарий