Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Алгоритмы обратного распространенияСодержание книги
Поиск на нашем сайте Сложнее обстоит дело с многослойными сетями, так как изначально неизвестны желаемые выходы слоев сети (за исключением последнего) и их невозможно обучить, руководствуясь только величиной ошибок на выходе сети, как это было с однослойной сетью. Наиболее приемлемым вариантом решения проблемы стала идея распространения сигнала ошибки от выхода сети к ее входу, слой за слоем. Алгоритмы, реализующие обучение сети по этой схеме, получили название алгоритмов обратного распространения. Наиболее распространенный вариант этого алгоритма мы и рассмотрим. Алгоритм требует дифференцируемости активационной (или как ее по-другому называют, сжимающей) функции на всей оси абсцисс. По этой причине, функция единичного скачка не может использоваться и в качестве сжимающей функции обычно применяют упомянутый выше сигмоид (логистическую функцию), хотя существуют и другие варианты. Рассматриваем «классический вариант» многослойной сети, где синаптические связи могут определяться любыми действительными числами, а выход нейрона – действительными числами из интервала от 0 до 1. В качестве активационной функции используем сигмоид. Число слоев произвольное.
1. Определяем M матриц весовых коэффициентов W размером NxN, где M – число слоев, N – число нейронов в одном слое. Wi, j, k будет обозначать вес j-го входа k-го нейрона в i-м слое. Инициализируем матрицы некоторыми малыми случайными (не одинаковыми) значениями. 2. Подаем на входы сети определенные значения X, для которых известны правильные значения выходов сети Y*. 3. Вычисляем значения выходов сети для текущего состояния матриц W. То есть для входного вектора X вычисляется выходной вектор Y. Для этого необходимо последовательно вычислить выход для каждого слоя сети с первого по последний. Для i-го слоя в векторном виде это можно записать так: Oi=F(ХWi), если i – не первый слой. Oi=F(Oi-1Wi), если i – не первый слой. где Oi – вектор выхода i-го слоя, F – активационная функция, X – вектор входов, Oi-1 – вектор выхода (i-1)-го слоя, Wi – матрица весовых коэффициентов i-го слоя. 4. Вычисляем вектор ΔY=Y-Y* 5. Если ΔY меньше заданной погрешности, переходим к шагу 9. 6. Для слоя с номером M (т.е. в последнем слое) производим следующие операции: 6.1. Для всех нейронов в слое с номера 1 по N производим следующие операции: 6.1.1. Для всех весов нейрона с номера 1 по N производим следующие операции: 6.1.1.1. Рассчитываем вектор δM=X(1-X)ΔY 6.1.1.2. Рассчитываем величину ΔWM,j,k=ηδM,kOi-1,j, где η – коэффициент скорости обучения (от 0.01 до 1.0) 6.1.1.3. Корректируем величину весового коэффициента, добавляя к WM, j, k величину ΔWM,j,k 7. Для слоев с номером M-1 по первый последовательно производим следующие операции: 7.1. Для всех нейронов в слое с номера 1 по N производим следующие операции: 7.1.1. Для всех весов нейрона с номера 1 по N производим следующие операции: 7.1.1.1. Рассчитываем вектор
7.1.1.2. Рассчитываем величину ΔWi,j,k= ηδi,kOi-1,j, где Δ – коэффициент скорости обучения (от 0.01 до 1.0) 7.1.1.3. Корректируем величину весового коэффициента, добавляя к WM, j, k величину ΔWM,j,k 8. Переход к шагу 3. 9. Конец (обучение окончено).
Описанный алгоритм применяется достаточное количество раз, чтобы все варианты выходных значений могли правильно выходить при задании произвольных значений входа с заданной вероятностью ошибки. Это алгоритм может быть усовершенствован. Например, выяснилось, что обычный диапазон для входов и выходов от 0 до 1 не является оптимальным. Из за того, что ΔWi,j,k прямо пропорционален выходному уровню нейрона, нулевой выходной уровень приводит к нулевому значению ΔWi,j,k, то есть величина веса не изменяется и обучение не происходит. Выход состоит в приведении входов к значениям от -0.5 до 0.5. Активационная функция должна приобрести вид: F(S) = (-0.5)+1/(1+e-s). После того, как сеть будет надлежащим образом обучена, она может быть использована для распознавания, в том числе, для распознавания звуков. Подаем на вход сети параметры звукового сигнала и получаем на выходе последовательность значений от -0.5 до 0.5 (или – после обратной корректировки – от 0 до 1), по которым и определяем звук (каждому звуку сопоставляется уникальная комбинация выходов до начала процесса обучения, и, собственно по ней мы на этапе обучения и определяем, правильно ли определен звук).
Лекция 8 Тема. Построение классификаторов распознавания речевых сигналов на основе алгоритма динамического искажения времени DTW для распознавания речевых команд.
|
|||||||||||
|
Последнее изменение этой страницы: 2022-09-03; просмотров: 108; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.11 (0.009 с.) |