Однослойный персептрон (пример)
Материал из MachineLearning.
м (→Постановка задачи) |
(→Описание алгоритма) |
||
Строка 8: | Строка 8: | ||
== Описание алгоритма == | == Описание алгоритма == | ||
- | + | Для настройки вектора весов воспользуемся методом стохастического градиента. Возьмем квадратичную функцию потерь: <tex>Q(w) = \sum_{i=1}^{\ell}(a(x_i)-y_i)^2</tex>, а в качестве функции активации возьмем сигмоидную функцию: <tex>\varphi(z) = \frac{1}{1+e^{-z}}</tex>. Согласно принципу минимизации эмпирического риска задача сводится к поиску вектора, доставляющего минимум функционалу <tex> Q(w) \rightarrow \min_w</tex>. Применим для минимизации метод градиентного спуска: | |
+ | <center><tex>w:=w - \eta \nabla Q(w)</tex>, где <tex>\eta > 0</tex></center> - величина шага в направлении антиградиента, называемая также темпом обучения (learning rate). Будем выбирать прецеденты <tex>(x_i, y_i)</tex> по одному в случайном порядке, для каждого делать градиентный шаг и сразу обновлять вектор весов: | ||
+ | <center><tex>w:= w - \eta(a(x_i,w)-y_i)(1-\varphi(\langle w,x_i \rangle))\varphi(\langle w,x_i \rangle)x_i</tex></center>. Значение функционала оцениваем: <center><tex>Q = (1-\lambda)Q+\lambda \eps_i</tex></center>, где <tex>\eps_i = (a(x_i,w) – y_i)^2</tex>. | ||
+ | Процедура останавливается после того, как изменение значения функционала функционала <tex>Q</tex> становится меньше заданной константы: <center><tex>|Q_n – Q_{n-1}< \delta</tex></center> | ||
+ | |||
== Вычислительный эксперимент == | == Вычислительный эксперимент == | ||
TODO | TODO |
Версия 09:44, 29 апреля 2009
|
Однослойный персептрон — TODO
Постановка задачи
Пусть - пространство объектов;
- множество допустимых ответов. Будем считать, что
, где
- признаковое описание объекта, а
- дополнительный константный признак;
. Задана выборка
. Значения признаков
рассматриваются как импульсы, поступающие на вход нейрона, которые складываются с весами
. Если суммарный импульс превышает порог активации
, то нейрон возбуждается
и выдаёт на выходе 1, иначе выдаётся 0. Таким образом, нейрон вычисляет
-арную булеву функцию вида
Описание алгоритма
Для настройки вектора весов воспользуемся методом стохастического градиента. Возьмем квадратичную функцию потерь: , а в качестве функции активации возьмем сигмоидную функцию:
. Согласно принципу минимизации эмпирического риска задача сводится к поиску вектора, доставляющего минимум функционалу
. Применим для минимизации метод градиентного спуска:
Вычислительный эксперимент
TODO
Исходный код
TODO
Смотри также
TODO
Литература
- Bishop, C. Pattern Recognition And Machine Learning. Springer. 2006.
![]() | Данная статья является непроверенным учебным заданием.
До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}. См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |