Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Многослойные нейронные сети
Алгоритм ОРО является одним из методов обучения многослойных нейронных сетей прямого распространения, называемых также многослойными персептронами. Многослойные персептроны успешно применяются для решения многих сложных задач распознавания в интеллектуальных системах. Рис. 1 Многослойная сеть с обратным распространением ошибки
Обучение алгоритмом ОРО предполагает два прохода по всем слоям сети: прямого и обратного. При прямом проходе входной вектор подается на входной слой нейронной сети, после чего распространяется по сети от слоя к слою. В результате генерируется набор выходных сигналов, который и является фактической реакцией сети на данный входной образ. Во время прямого прохода все веса сети фиксированы. Во время обратного прохода все веса настраиваются в соответствии с правилом коррекции ошибок, а именно: фактический выход сети вычитается из желаемого, в результате чего формируется сигнал ошибки. Этот сигнал впоследствии распространяется по сети в направлении, обратном направлению связей. Отсюда и название – алгоритм обратного распространения ошибки. Веса настраиваются с целью максимального приближения выходного сигнала сети к желаемому. В качестве активационной функции в многослойных персептронах, как правило, используется сигмоидальная активационная функция, в частности логистическая: Рис. 2 График функции активации
Алгоритм решения задачи Обучение сети обратного распространения требует выполнения следующих операций: 1. Выбрать очередную обучающую пару из обучающего множества; подать входной вектор на вход сети. 2. Вычислить выход сети. 3. Вычислить разность между выходом сети и требуемым выходом (целевым вектором обучающей пары). 4. Подкорректировать веса сети так, чтобы минимизировать ошибку. 5. Повторять шаги с 1 по 4 для каждого вектора обучающего множества до тех пор, пока ошибка на всем множестве не достигнет приемлемого уровня. После достаточного числа повторений этих четырех шагов разность между действительными выходами и целевыми выходами должна уменьшиться до приемлемой величины, при этом говорят, что сеть обучилась. Теперь сеть используется для распознавания и веса не изменяются. На шаги 1 и 2 можно смотреть как на «проход вперед», так как сигнал распространяется по сети от входа к выходу. Шаги 3, 4 составляют «обратный проход», здесь вычисляемый сигнал ошибки распространяется обратно по сети и используется для подстройки весов. На шагах 3, 4 применяется дельта-правило. где - коэффициент усилиения. Для ускорения обучения использовать метод добавления нейронного смещения. Это позволяет сдвигать начало отсчета логистической функции, давая эффект, аналогичный подстройке порога персептронного нейрона, и приводит к ускорению процесса обучения. .
Изменение весов в матричном виде:
. . Алгоритм ОРО осуществляет градиентный спуск по поверхности ошибок. В данной точке поверхности находится направление скорейшего спуска, затем делается прыжок вниз на расстояние, пропорциональное коэффициенту скорости обучения и крутизне склона, при этом учитывается инерция, то есть стремление сохранить прежнее направление движения. Несмотря на некоторую случайность в выборе направлений, в результате получается достаточно хорошая аппроксимация спуска по совокупной поверхности ошибок. Определенную трудность здесь представляет вопрос о том, какую нужно брать длину шагов. При большой длине шага сходимость будет более быстрой, но имеется опасность перепрыгнуть через решение или (если поверхность ошибок имеет особо вычурную форму) уйти в неправильном направлении. Искусственные нейронные сети являются важным расширением понятия вычисления. Существует несколько видов нейросетей и способов их обучения. На сегодняшний день они являются одним из приоритетных направлений исследований в области искусственного интеллекта. Но при существующем ажиотаже необходимо четко понимать достоинства и недостатки нейросетей. Достоинства · Возможность обучения. · Параллелизм обработки информации. · Потенциальное сверхвысокое быстродействие · Надежность функционирования. Вывод из строя ограниченного числа нейронов или обрыв некоторых связей не сказываются критическим образом на качестве работы всей сети. · Решение задач при неизвестных закономерностях · Перепрограммируемость. Нейронные сети легко адаптируются к новым условиям экспериментов. · Устойчивость к шумам во входных данных. Недостатки · Долгий процесс обучения (особенно в сетях с ОРО). · Паралич сети. · Локальные минимумы (сеть может попасть в локальный минимум (неглубокую долину), когда рядом имеется гораздо более глубокий минимум). Возможность переобучения сети. При слишком большом количестве нейронов теряется свойство сети обобщать информацию
|