2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 RBF аппроксимация
Сообщение11.11.2007, 18:07 
Я делаю аппроксимацию на основе радиальных базисных функций. В качестве, которых взял гауссовскую:
$$G(x_i, c_j)=g(||x_i - c_j||)$$
$$g(r) = \exp(-\beta r^2)$$
Смотрел литературу и примеры по данной теме и вот вопрос.
Иногда берут $\beta = 1$, а иногда считают выборочную дисперсию, и по ней вычисляют \beta.
Как правильно? Т.к. сам был уверен в правильности 2-го варианта, но некоторые примеры сбили меня.

 
 
 
 
Сообщение11.11.2007, 18:48 
Аватара пользователя
Тут один из главных подвохов такой - устанавливаете ли Вы ограничение сверху на количество ядер? Если нет, а параметр $\beta$ не фиксирован, то может получиться так (и скорее всего так и получится), что каждое ядро будет захватывать ровно по одной точке обучающего набора. На обучающей выборке при этом получится нулевая ошибка, но обобщающая способность будет никакая.

 
 
 
 
Сообщение11.11.2007, 19:30 
Количество ядер огрничено, пусть будет $k$.
Выполняется кластеризация на $k$ кластеров. В вопросе я говорил про оценку $\beta_1 \dots \beta_k $.

 
 
 
 
Сообщение11.11.2007, 19:48 
Аватара пользователя
Если количество ядер ограничено и невелико, то тогда все их параметры, вообще говоря, лучше обучать из данных. Только это будет не совсем кластеризация, области ядер могут вполне пересекаться.

 
 
 
 
Сообщение11.11.2007, 21:45 
Уточните пожалуйста, что Вы понимаете под "лучше обучать из данных"?
Я сейчас опишу, как сейчас все делаю, поправьте если что не так.
Пусть задано множество из $m$ векторов $X = {x_1, \dots, x_m}, x_i \in \mathbb{R}^n $, каждому вектору соответствует значение $d_i \in \mathbb{R} $
Будем аппроксимировать следующим образом:
Выполним кластеризацию на $k$ кластеров $X_i$, тогда пусть $c_i$ центр $i$го кластера.
$$f(x) = \sum_{i=1}^k w_i  \varphi_i(x) $$
$$\varphi_i(x) = \exp(-\beta || x - c_i ||^2) $$
где $\beta$ вычисляется из оценки дисперсии $|| x - c_i ||, x \in X_i$
Пусть матрица $G = (g_{ij}), g_{ij} = G(x_i, c_j) $. $d = (d_1, \dots, x_m)^T$
Тогда вектор параметров $w = (w_1, \dots, w_k)^T $ найдем из $w=G^+d$.
Нормально?

 
 
 
 
Сообщение16.11.2007, 21:19 
так я все правильно делаю?

 
 
 
 
Сообщение21.11.2007, 23:32 
Аватара пользователя
Дошли руки посмотреть на тему. Мне это не очень понятно. Подход получается какой-то неестественный, если числа $d_i$ заданы произвольно и не связаны с расположением точек в пространстве.

Допустим, что $k=2$ и точки действительно хорошо делятся на две кучки. Каждый гауссиан сядет на свою кучку, его параметры получатся статистической оценкой... Точки, близкие к центрам, будут иметь большее значение $\varphi$, ближе к краям - меньшее. И не очень понятно, почему при этом мы должны получить аппроксимацию значений $d_i$, которые взяты, вообще говоря, с потолка.

 
 
 [ Сообщений: 7 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group