resubPredict

Класс: RegressionGP

Предсказание реституции из обученной модели регрессии Гауссова процесса

Синтаксис

ypred = resubPredict(gprMdl)
[ypred,ysd] = resubPredict(gprMdl)
[ypred,ysd,yint] = resubPredict(gprMdl)
[ypred,ysd,yint] = resubPredict(gprMdl,Name,Value)

Описание

ypred = resubPredict(gprMdl) возвращает предсказанные отклики, ypred, для обученной модели регрессии Гауссова процесса (GPR), gprMdl.

[ypred,ysd] = resubPredict(gprMdl) также возвращает предполагаемые стандартные отклонения предсказанных откликов, соответствующих строкам gprMdl.X.

[ypred,ysd,yint] = resubPredict(gprMdl) также возвращает 95% интервалов предсказания, yint, для истинных ответов, соответствующих каждой строке обучающих данных, gprMdl.X.

[ypred,ysd,yint] = resubPredict(gprMdl,Name,Value) возвращает интервалы предсказания с дополнительными опциями, заданными одной или несколькими Name,Value аргументы в виде пар. Для примера можно задать уровень доверия интервала предсказания.

Входные параметры

расширить все

Гауссовская регрессионая модель процесса, заданная как RegressionGP объект.

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Уровень значимости для интервалов предсказания, заданный как разделенная разделенными запятой парами, состоящая из 'Alpha' и скалярное значение в области значений от 0 до 1.

Пример: 'Alpha',0.01 задает 99% интервалов предсказания.

Типы данных: single | double

Выходные аргументы

расширить все

Предсказанные значения отклика, возвращенные как вектор n -by-1, где n - количество наблюдений в обучающих данных.

Стандартное отклонение предсказанных значений отклика, соответствующих строкам gprMdl.X, возвращенный как вектор n -by-1. ysd(i), i = 1, 2,..., n, содержит предполагаемое стандартное отклонение нового отклика, соответствующее значениям предиктора в ith наблюдение в обучающих данных.

Интервалы предсказания для истинных значений отклика, соответствующих строкам gprMdl.X, возвращенная как n -by-2 матрица, где n - количество наблюдений в обучающих данных. Первый столбец yint содержит нижние пределы, а второй столбец содержит верхние пределы интервалов предсказания.

Примеры

расширить все

Этот пример использует набор данных «Housing» [1] из архива машинного обучения UCI [2], описанного в http://archive.ics.uci.edu/ml/datasets/Housing. Загрузите данные и сохраните их в текущей директории как файл данных с именем housing.data.

Набор данных имеет 506 наблюдений. Первые 13 столбцов содержат значения предиктора, а последний - значения отклика. Цель состоит в том, чтобы предсказать медианное значение домов, занятых владельцами в пригороде Бостона, как функцию от 13 предикторов.

Загрузите данные и задайте вектор отклика и матрицу предиктора.

load('housing.data');
X = housing(:,1:13);
y = housing(:,end);

Обучите модель GPR, используя подмножество регрессоров ('sr') метод приближения с Матерном 3/2 ('Matern32') функцию ядра. Предсказать с помощью полностью независимого условного ('fic') метод.

gprMdl = fitrgp(X,y,'KernelFunction','Matern32',...
'FitMethod','sr','PredictMethod','fic');

Предсказать ответы используя обученную модель GPR. Вычислите 99% интервалы предсказания.

[ypred,~,yint] = resubPredict(gprMdl,'Alpha',0.01);

Постройте график фактических значений отклика вместе с предсказаниями из модели GPR.

figure;
h1 = area([yint(:,1) yint(:,2)-yint(:,1)],-8,...
'FaceColor',[0.85,0.85,0.85],'EdgeColor',[0.85,0.85,0.85]);
hold on;
h1(1).FaceColor = 'none'; % remove color from bottom area
h1(1).EdgeColor = 'none';
h2 = plot(y,'r'); % Plot original response values
h3 = plot(ypred,'b--'); % Plot predicted response values
legend([h2 h3 h1(2)],'Actual response','Predicted response',...
'Prediction intervals','Location','South');
axis([0 510 -7 65]);
hold off

Серая область показывает 99% интервалов предсказания.

Совет

  • Можно выбрать метод предсказания во время настройки модели GPR с помощью PredictMethod аргумент пары "имя-значение" в fitrgp. Метод предсказания по умолчанию является 'exact' для n ≤ 10000, где n - количество наблюдений в обучающих данных, и 'bcd' (блок координатного спуска), в противном случае.

  • Расчет стандартных отклонений, ysd, и интервалы предсказания, yint, не поддерживается, когда PredictMethod является 'bcd'.

Альтернативы

Чтобы вычислить предсказанные отклики для новых данных, используйте predict.

Ссылки

[1] Харрисон, Д. и Д. Л., Рубинфельд. «Гедонические цены и спрос на чистый воздух». Дж. Энвирон. Экономика и менеджмент. Vol.5, 1978, с. 81-102.

[2] Лихман, M. UCI Machine Learning Repository, Irvine, CA: University of California, School of Information and Computer Science, 2013. http://archive.ics.uci.edu/ml.

См. также

| | |

Введенный в R2015b