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

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

Перейти к: навигация, поиск

Радиальные функции — это функции 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 для каждого класса определяется оптимальное число компонент смеси.

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