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. В случае пороговой функции произвольная функция не определена и не входит в формулу обучения.
Алгоритм обучения персептрона
- при первоначально выбранных (случайно) весах Wij на вход нейрона I подается обучающий вектор х и рассчитывается выходной сигнал Yi.
- если значение Yi совпало в ожидаемым значением Di, то весовые коэффициенты не изменяются.
- если Yi не равно Di, то значения весов уточняются по
— если функция пороговая ,
— если функция непрерывная
Возможности однослойных сетей:
— не способны решить задачу XOR (линейно неразделимые задачи)
Возможности двуслойных сетей:
— могут представить любую непрерывную функцию с произвольной точностью (при условии наличия достаточно большого скрытого слоя).
Трехслойные сети способны представить любую функцию с разрывами.
Проблемы обучения:
— переобучение ( надо разделить крестики и нулики, можно посчитать что проблема очень сложная, но сеть строит кривую вместо прямой – это сложнее).
— сеть обучается тому, чему проще всего обучиться (пример про танки – нейронную сеть обучали распознавать танки с помощью фото, когда в реальных условиях стали показывать – начали появляться ошибки. Причина – фото с танками светлые, темные без танка).
Спонсор статьи — центр тестирования «Upmark» — предлагает дистанционно проверить свои знания IT-технологий посредством онлайн тестирования. В случае успешного прохождения теста вы получите сертификат на русском и английском языках, подтверждающий уровень ваших знаний.