Сеть радиальных базисных функций

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Сеть радиальных базисных функций)
Строка 1: Строка 1:
-
'''Радиальные функции''' - это функции <tex>f(x)</tex>, зависящие только от расстояния между x и фиксированной точ-
+
'''Радиальные функции''' — это функции <tex>f(x)</tex>, зависящие только от расстояния между x и фиксированной точ-
-
кой пространства X. <br /> <br />
+
кой пространства X. <br /> <br />
Гауссиан <tex>p_j(x) = N(x; \mu _j ,\Sigma _j)</tex> с диагональной матрицей <tex>\Sigma _j</tex> можно записать в виде <br /> <br />
Гауссиан <tex>p_j(x) = N(x; \mu _j ,\Sigma _j)</tex> с диагональной матрицей <tex>\Sigma _j</tex> можно записать в виде <br /> <br />
-
<tex>~p_j(x) = N_j exp(-1/2 \rho ^2 _j (x, \mu _j)</tex> <br /> <br />
+
<tex>~p_j(x) = N_j exp(-1/2 \rho ² _j (x, \mu _j)</tex> <br /> <br />
-
где <tex>N_j = (2\pi )^ {-n/2)(\sigma _{j1} ... \sigma _{jn})^{-1}</tex> - нормировочный множитель,<br />
+
где <tex>N_j = (2\pi)^ {-n/2)(\sigma _{j1} \sigma _{jn})^{-1}</tex> — нормировочный множитель,<br />
-
<tex>\rho _j(x, x')</tex> - взвешенная евклидова метрика в n-мерном пространстве X:<br />
+
<tex>\rho _j(x, x')</tex> — взвешенная евклидова метрика в n-мерном пространстве X:<br />
-
<tex>~\rho ^2 (x, x') = \Sigma ^n _{d = 1} \sigma ^{-2} _{jd} |\xi _d - \xi _d '| ^2</tex>, <br />
+
<tex>~\rho ² (x, x') = \Sigma ^n _{d = 1} \sigma ^{-2} _{jd} |\xi _d — \xi _d '| ²</tex>, <br />
<tex> x = (\xi _1, . . . ,\xi _n), x' = (\xi _1 ', . . . , \xi _n')</tex>. <br /> <br />
<tex> x = (\xi _1, . . . ,\xi _n), x' = (\xi _1 ', . . . , \xi _n')</tex>. <br /> <br />
Чем меньше расстояние <tex>\rho _j(x, \mu _j)</tex>, тем выше значение плотности в точке x. По-
Чем меньше расстояние <tex>\rho _j(x, \mu _j)</tex>, тем выше значение плотности в точке x. По-
Строка 18: Строка 18:
смесей <tex>k_y</tex> компонент. Каждая компонента имеет n-мерную гауссовскую плотность
смесей <tex>k_y</tex> компонент. Каждая компонента имеет n-мерную гауссовскую плотность
с параметрами <br />
с параметрами <br />
-
<tex>\mu _{yj} = (\mu _{yj1}, \dots , \mu _{yjn}), \Sigma _{yj} = diag(\sigma ^2 _{yj1}, \dots , \sigma ^2 _{yjn})</tex> <br />
+
<tex>\mu _{yj} = (\mu _{yj1}, \dots , \mu _{yjn}), \Sigma _{yj} = diag(\sigma ² _{yj1}, \dots , \sigma ² _{yjn})</tex> <br />
<tex>j = 1, . . . , k_y</tex>:<br /><br />
<tex>j = 1, . . . , k_y</tex>:<br /><br />
<tex> p_y(x) = \sum ^{k _y} _{j = 1} \omega _{yj} p _{yj}(x), </tex>
<tex> p_y(x) = \sum ^{k _y} _{j = 1} \omega _{yj} p _{yj}(x), </tex>
Строка 27: Строка 27:
Запишем байесовское решающее правило, выразив плотность каждой компоненты <tex>p_{yj}(x)</tex> через взвешенное евклидово расстояние от объекта x до центра компоненты <tex>\mu _{yj}</tex> :<br /><br />
Запишем байесовское решающее правило, выразив плотность каждой компоненты <tex>p_{yj}(x)</tex> через взвешенное евклидово расстояние от объекта x до центра компоненты <tex>\mu _{yj}</tex> :<br /><br />
-
<tex>a(x) = argmax _{y \in Y} \lambda _y P _y \sum ^{k_y} _{j = 1} N _{yj} exp(-1/2 \rho ^2 _{yj} (x, \mu _{yj}))</tex> <br /> <br />
+
<tex>a(x) = argmax _{y \in Y} \lambda _y P _y \sum ^{k_y} _{j = 1} N _{yj} exp(-1/2 \rho ² _{yj} (x, \mu _{yj}))</tex> <br /> <br />
-
где <tex>N _{yj} = (2\pi)^{-n/2} (\sigma _{yj1},\dots , \sigma _{yjn})^{-1}</tex> - нормировочные множители. Алгоритм имеет вид
+
где <tex>N _{yj} = (2\pi)^{-n/2} (\sigma _{yj1},\dots , \sigma _{yjn})^{-1}</tex> — нормировочные множители. Алгоритм имеет вид
-
суперпозиции, состоящей из трёх уровней или слоёв (см рисунок).<br />
+
суперпозиции, состоящей из трёх уровней или слоёв.<br />
Первый слой образован <tex>k_1 + \dots+ k_M</tex> гауссианами <tex>p_{yj}(x), y \in Y , j = 1, \dots, k_y</tex>.
Первый слой образован <tex>k_1 + \dots+ k_M</tex> гауссианами <tex>p_{yj}(x), y \in Y , j = 1, \dots, k_y</tex>.
На входе они принимают описание объекта x, на выходе выдают оценки близости
На входе они принимают описание объекта x, на выходе выдают оценки близости

Версия 20:11, 5 января 2010

Радиальные функции — это функции f(x), зависящие только от расстояния между x и фиксированной точ- кой пространства X.

Гауссиан p_j(x) = N(x; \mu _j ,\Sigma _j) с диагональной матрицей \Sigma _j можно записать в виде

~p_j(x) = N_j exp(-1/2 \rho ² _j (x, \mu _j)

где N_j = (2\pi)^ {-n/2)(\sigma _{j1} … \sigma _{jn})^{-1} — нормировочный множитель,
\rho _j(x, x') — взвешенная евклидова метрика в n-мерном пространстве X:
~\rho ² (x, x') = \Sigma ^n _{d = 1} \sigma ^{-2} _{jd} |\xi _d — \xi _d '| ²,
 x = (\xi _1, . . . ,\xi _n), x' = (\xi _1 ', . . . , \xi _n').

Чем меньше расстояние \rho _j(x, \mu _j), тем выше значение плотности в точке x. По- этому плотность p _j(x) можно рассматривать как функцию близости вектора x к фик- сированному центру \mu _j .

Сеть радиальных базисных функций

Пусть теперь Y = {1, . . . ,M}, каждый класс y \in Y имеет свою плотность распределения p_y(x) и представлен частью выборки X ^l _y = \{(x_i, y_i) \in X ^l | y_i = y \}.

Гипотеза
Функции правдоподобия классов p_y(x), y \in Y , представимы в виде смесей k_y компонент. Каждая компонента имеет n-мерную гауссовскую плотность с параметрами
\mu _{yj} = (\mu _{yj1}, \dots , \mu _{yjn}), \Sigma _{yj} = diag(\sigma ² _{yj1}, \dots , \sigma ² _{yjn})
j = 1, . . . , k_y:

 p_y(x) = \sum ^{k _y} _{j = 1} \omega _{yj} p _{yj}(x), p_{yj}(x) = N(x; \mu _{yj} ,\Sigma _{yj}),  \Sigma ^{k_y} _{j = 1} \omega _{yj} = 1, \omega _{yj} > 0 ;

Алгоритм классификации
Запишем байесовское решающее правило, выразив плотность каждой компоненты p_{yj}(x) через взвешенное евклидово расстояние от объекта x до центра компоненты \mu _{yj} :

a(x) = argmax _{y \in Y} \lambda _y P _y \sum ^{k_y} _{j = 1} N _{yj} exp(-1/2 \rho ² _{yj} (x, \mu _{yj}))

где N _{yj} = (2\pi)^{-n/2} (\sigma _{yj1},\dots , \sigma _{yjn})^{-1} — нормировочные множители. Алгоритм имеет вид суперпозиции, состоящей из трёх уровней или слоёв.
Первый слой образован k_1 + \dots+ k_M гауссианами p_{yj}(x), y \in Y , j = 1, \dots, k_y. На входе они принимают описание объекта x, на выходе выдают оценки близости объекта x к центрам \mu _{yj} , равные значениям плотностей компонент в точке x.
Второй слой состоит из M сумматоров, вычисляющих взвешенные средние этих оценок с весами w_{yj} . На выходе второго слоя появляются оценки принадлежности объекта x каждому из классов, равные значениям плотностей классов p_{yj}(x).
Третий слой образуется единственным блоком argmax, принимающим окончательное решение об отнесении объекта x к одному из классов.
Таким образом, при классификации объекта x оценивается его близость к каж- дому из центров \mu _{yj} по метрике \rho _{yj}(x, \mu _{yj}), j = 1, \dots, k_y. Объект относится к тому классу, к чьим центрам он располагается ближе.

Описанный трёхуровневый алгоритм классификации называется сетью c радиальными базисными функциями или RBF-сетью (radial basis function network). Это одна из разновидностей нейронных сетей.

Обучение RBF-сети

Обучение сводится к восстановлению плотности каждого из классов p_y(x) с помощью EM-алгоритма. Результатом обучения являются центры \mu _{yj} и дис- персии \Sigma _{yj} компонент j = 1, . . . , k_y. Интересно отметить, что, оценивая дисперсии, мы фактически подбираем метрики \rho _{yj} , с помощью которых будут вычисляться рас-стояния до центров \mu _{yj} . При использовании Алгоритма 1.4 для каждого класса определяется оптимальное число компонент смеси.

Личные инструменты