Модели регрессии Гауссова процесса

Модели регрессии Гауссова процесса (GPR) являются непараметрическими основанными на ядре вероятностными моделями. Можно обучить модель GPR, используя fitrgp функция.

Рассмотрим набор обучающих данных {(xi,yi);i=1,2,...,n}, где xid и yi, полученный из неизвестного распределения. Модель GPR решает вопрос предсказания значения переменной отклика ynew, учитывая новый входной вектор xnew, и обучающих данных. Линейная регрессионая модель имеет вид

y=xTβ+ε,

где εN(0,σ2). Ошибка отклонения σ2 и коэффициенты, β оцениваются из данных. Модель GPR объясняет ответ введением скрытых переменных, f(xi),i=1,2,...,n, из Гауссова процесса (GP) и явных базисных функций, h. Ковариационная функция латентных переменных захватывает плавность отклика и базисные функции проецируют входы x в p -мерное пространство функций.

GP является множеством случайных переменных, таких что любое конечное число из них имеет совместное Гауссово распределение. Если {f(x),xd} является GP, затем задается n наблюдения x1,x2,...,xn, совместное распределение случайных переменных f(x1),f(x2),...,f(xn) Гауссов. GP определяется своей средней функцией m(x) и ковариационную функцию, k(x,x). То есть, если {f(x),xd} является Гауссовым процессом, тогда E(f(x))=m(x) и Cov[f(x),f(x)]=E[{f(x)m(x)}{f(x)m(x)}]=k(x,x).

Теперь рассмотрим следующую модель.

h(x)Tβ+f(x),

где f(x)~GP(0,k(x,x)), то есть f (x) от нуля среднего GP с ковариацией функцией,k(x,x). h (x) являются набором базисных функций, которые преобразуют исходный вектор признака, x в Rd в вектор новой возможности h (x) в Rp. β является вектором p -by-1 коэффициентов базиса функций. Эта модель представляет модель GPR. Образец y отклика может быть смоделирован как

P(yi|f(xi),xi) ~N(yi|h(xi)Tβ+f(xi),σ2)

Следовательно, модель GPR является вероятностной моделью. Для каждого наблюдения введена латентная переменная f (xi)xi, что делает модель GPR непараметрической. В векторной форме эта модель эквивалентна

P(y|f,X)~N(y|Hβ+f,σ2I),

где

X=(x1Tx2TxnT),y=(y1y2yn),H=(h(x1T)h(x2T)h(xnT)),f=(f(x1)f(x2)f(xn)).

Совместное распределение латентных переменных f(x1),f(x2),...,f(xn) в модели GPR представлено следующее:

P(f|X)~N(f|0,K(X,X)),

близко к линейной регрессионной модели, где K(X,X) выглядит следующим образом:

K(X,X)=(k(x1,x1)k(x1,x2)k(x1,xn)k(x2,x1)k(x2,x2)k(x2,xn)k(xn,x1)k(xn,x2)k(xn,xn)).

Ковариационная функция k(x,x) обычно параметризируется набором параметров ядра или гиперпараметров, θ. Часто k(x,x) записывается как k(x,x|θ) для явного указания зависимости от θ.

fitrgp оценивает коэффициенты базиса функций, β, отклонение шума, σ2и гиперпараметры,θ, функции ядра из данных во время настройки модели GPR. Можно задать базисную функцию, ядерную (ковариационную) функцию и начальные значения для параметров.

Поскольку модель GPR является вероятностной, можно вычислить интервалы предсказания с помощью обученной модели (см predict и resubPredict).

Можно также вычислить ошибку регрессии, используя обученную модель GPR (см loss и resubLoss).

Сравнение интервалов предсказания моделей GPR

Этот пример подходит для моделей GPR с набором данных без шума и набором зашумленных данных. Пример сравнивает предсказанные отклики и интервалы предсказания двух подобранных моделей GPR.

Сгенерируйте два набора данных о наблюдении из функции g(x)=xsin(x).

rng('default') % For reproducibility
x_observed = linspace(0,10,21)';
y_observed1 = x_observed.*sin(x_observed);
y_observed2 = y_observed1 + 0.5*randn(size(x_observed));

Значения в y_observed1 не содержат шума и значений в y_observed2 включите некоторый случайный шум.

Подгонка моделей GPR к наблюдаемым наборам данных.

gprMdl1 = fitrgp(x_observed,y_observed1);
gprMdl2 = fitrgp(x_observed,y_observed2);

Вычислите предсказанные отклики и 95% интервалов предсказания с помощью подобранных моделей.

x = linspace(0,10)';
[ypred1,~,yint1] = predict(gprMdl1,x);
[ypred2,~,yint2] = predict(gprMdl2,x);

Измените размер рисунка, чтобы отобразить два графика на одном рисунке.

fig = figure;
fig.Position(3) = fig.Position(3)*2;

Создайте мозаичный график размещения 1 на 2.

tiledlayout(1,2,'TileSpacing','compact')

Для каждой плитки нарисуйте график поля точек наблюдаемых точек данных и графика функций из xsin(x). Затем добавьте график предсказанных GP ответов и закрашенную фигуру интервалов предсказания.

nexttile
hold on
scatter(x_observed,y_observed1,'r') % Observed data points
fplot(@(x) x.*sin(x),[0,10],'--r')  % Function plot of x*sin(x)
plot(x,ypred1,'g')                  % GPR predictions
patch([x;flipud(x)],[yint1(:,1);flipud(yint1(:,2))],'k','FaceAlpha',0.1); % Prediction intervals
hold off
title('GPR Fit of Noise-Free Observations')
legend({'Noise-free observations','g(x) = x*sin(x)','GPR predictions','95% prediction intervals'},'Location','best')

nexttile
hold on
scatter(x_observed,y_observed2,'xr') % Observed data points
fplot(@(x) x.*sin(x),[0,10],'--r')   % Function plot of x*sin(x)
plot(x,ypred2,'g')                   % GPR predictions
patch([x;flipud(x)],[yint2(:,1);flipud(yint2(:,2))],'k','FaceAlpha',0.1); % Prediction intervals
hold off
title('GPR Fit of Noisy Observations')
legend({'Noisy observations','g(x) = x*sin(x)','GPR predictions','95% prediction intervals'},'Location','best')

Figure contains 2 axes. Axes 1 with title GPR Fit of Noise-Free Observations contains 4 objects of type scatter, functionline, line, patch. These objects represent Noise-free observations, g(x) = x*sin(x), GPR predictions, 95% prediction intervals. Axes 2 with title GPR Fit of Noisy Observations contains 4 objects of type scatter, functionline, line, patch. These objects represent Noisy observations, g(x) = x*sin(x), GPR predictions, 95% prediction intervals.

Когда наблюдения свободны от шума, предсказанные отклики GPR подгонки пересекать наблюдения. Стандартное отклонение предсказанной характеристики почти равняется нулю. Поэтому интервалы предсказания очень узки. Когда наблюдения включают шум, предсказанные отклики не пересекают наблюдения, и интервалы предсказания становятся широкими.

Ссылки

[1] Расмуссен, К. Э. и К. К. И. Уильямс. Гауссовы процессы для машинного обучения. MIT Press. Кембридж, Массачусетс, 2006.

См. также

| |

Похожие темы