Правило Дельты
В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
В машинном обучении правило дельты — это правило обучения градиентного спуска для обновления весов входных данных искусственных нейронов в однослойной нейронной сети . [1] Его можно получить как алгоритм обратного распространения ошибки для однослойной нейронной сети со среднеквадратичной функцией потерь ошибок.
Для нейрона с функцией активации , дельта-правило для нейрона 's -й вес дается
где
- это небольшая константа, называемая скоростью обучения
- это функция активации нейрона
- является производной от
- целевой результат
- - это взвешенная сумма входов нейрона
- это фактический результат
- это -й вход.
Он утверждает, что и .
Дельта-правило обычно формулируется в упрощенной форме для нейрона с линейной функцией активации как
Хотя правило дельты похоже на правило обновления перцептрона , его вывод отличается. Персептрон использует ступенчатую функцию Хевисайда в качестве функции активации. , и это означает, что не существует в нуле и равен нулю в другом месте, что делает невозможным прямое применение дельта-правила.
Вывод правила дельты
[ редактировать ]Правило дельты выводится путем попытки минимизировать ошибку на выходе нейронной сети посредством градиентного спуска . Ошибка для нейронной сети с результаты могут быть измерены как
В этом случае мы хотим перемещаться по «весовому пространству» нейрона (пространству всех возможных значений всех весов нейрона) пропорционально градиенту функции ошибок по отношению к каждому весу. Для этого мы вычисляем частную производную ошибки по каждому весу. Для вес, эту производную можно записать как
Поскольку нас интересует только -th нейрон, мы можем заменить приведенную выше формулу ошибки, опуская суммирование:
Далее мы используем цепное правило , чтобы разделить это на две производные:
Чтобы найти левую производную, мы просто применяем правило степени и правило цепочки:
Чтобы найти правильную производную, мы снова применяем цепное правило, на этот раз дифференцируя по общему входному значению: , :
Обратите внимание, что вывод нейрон, , это всего лишь функция активации нейрона применяется ко входу нейрона . Поэтому мы можем написать производную от относительно просто как первая производная:
Далее мы переписываем в последнем члене как сумма по всем вес каждой гири умножить соответствующий ввод :
Поскольку нас интересует только вес, единственный член суммирования, который имеет значение, это . Четко, давая нам окончательное уравнение для градиента:
Как отмечалось выше, градиентный спуск говорит нам, что наше изменение для каждого веса должно быть пропорционально градиенту. Выбор константы пропорциональности и исключив знак минус, чтобы мы могли переместить вес в отрицательном направлении градиента, чтобы минимизировать ошибку, мы приходим к нашему целевому уравнению:
См. также
[ редактировать ]- Стохастический градиентный спуск
- Обратное распространение ошибки
- Модель Рескорлы – Вагнера – происхождение правила дельты
Ссылки
[ редактировать ]- ^ Рассел, Ингрид. «Правило Дельты» . Университет Хартфорда. Архивировано из оригинала 4 марта 2016 года . Проверено 5 ноября 2012 г.