Однослойный персептрон (пример)
Материал из 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 в учебном процессе.  | 

