resubPredict

Класс: RegressionGP

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

Синтаксис

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

Описание

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

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

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

[ypred,ysd,yint] = predict(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, содержит предполагаемое стандартное отклонение нового ответа, соответствующего значениям предиктора в i th наблюдение в обучающих данных.

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

Примеры

развернуть все

Этот пример использует набор данных "Корпуса" [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') метод приближения с Matern 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] Харрисон, D. и D.L., Рубинфельд. "Гедонистические цены и спрос на чистый воздух". J. Окружить. Экономика & управление. Vol.5, 1978, стр 81-102.

[2] Личмен, M. Репозиторий Машинного обучения UCI, Ирвин, CA: Калифорнийский университет, Школа Информатики и вычислительной техники, 2013. http://archive.ics.uci.edu/ml.

Смотрите также

| | |

Введенный в R2015b