resubLoss

Класс: RegressionGP

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

Синтаксис

L = resubLoss(gprMdl)
L = resubLoss(gprMdl,Name,Value)

Описание

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

L = resubLoss(gprMdl,Name,Value) возвращает потерю перезамены для модели GPR, gprMdl, с дополнительными опциями, заданными одним или несколькими Name,Value парные аргументы. Например, можно задать пользовательскую функцию потерь или веса наблюдения.

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

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

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

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

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

Функция потерь для обученной модели GPR, заданной как 'mse' или указатель на функцию. 'mse' обозначает среднеквадратическую ошибку.

Если вы передаете указатель на функцию, говорите fun, resubLoss вызовы это как: fun(Y,Ypred,W), где Y, Ypred, и W числовые векторы длины n, и n является количеством наблюдений в обучающих данных. Y наблюдаемый ответ, Ypred предсказанный ответ и W веса наблюдения.

Пример: 'lossfun',Fct вызывает функцию потерь Fct.

Типы данных: char | string | function_handle

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

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

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

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

Ошибка перезамены для модели GPR, возвращенной как скалярное значение.

Примеры

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

Этот пример использует набор данных "Корпуса" [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');

Вычислите прогнозы перезамены.

ypred = resubPredict(gprMdl);

Постройте предсказанные значения ответа наряду с фактическими значениями ответа.

plot(y,'r'); % Plot original response values
hold on;
plot(ypred,'b--'); % Plot predicted response values
ylabel('y');
legend('Actual response','Predicted response','Location','SouthWest');
axis([0 510 -10 55]);
hold off

Вычислите потерю перезамены.

L = resubLoss(gprMdl)
L =

    4.8478

Вручную вычислите потерю регрессии.

n = length(y);
L = (y-ypred)'*(y-ypred)/n
L =

    4.8478

Загрузите выборочные данные и хранилище в table.

load fisheriris
tbl = table(meas(:,1),meas(:,2),meas(:,3),meas(:,4),species,...
'VariableNames',{'meas1','meas2','meas3','meas4','species'});

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

mdl = fitrgp(tbl,'meas1');

Предскажите ответы с помощью обученной модели.

ypred = predict(mdl,tbl);

Вычислите среднюю абсолютную погрешность.

n = height(tbl);
y = tbl.meas1;
fun = @(y,ypred,w) sum(abs(y-ypred))/n;
L = resubLoss(mdl,'lossfun',fun)
L = 0.2345

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

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

Ссылки

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

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

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

| | |

Введенный в R2015b