Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

predict

Predecir la respuesta del modelo de regresión del proceso Gaussiano

Sintaxis

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

Descripción

ypred = predict(gprMdl,Xnew) Devuelve las respuestas previstas para el modelo de regresión de proceso Gaussiano completo o compacto (GPR) y los valores predictores en.ypredgprMdlXnew

[ypred,ysd] = predict(gprMdl,Xnew) también devuelve las desviaciones estándar estimadas para las nuevas respuestas en los valores predictores de un modelo GPR entrenado.Xnew

[ypred,ysd,yint] = predict(gprMdl,Xnew) también devuelve los intervalos de predicción de 95%, para las respuestas verdaderas correspondientes a cada fila de.yintXnew

[ypred,ysd,yint] = predict(gprMdl,Xnew,Name,Value) también devuelve los intervalos de predicción con opciones adicionales especificadas por uno o más argumentos de par.Name,Value Por ejemplo, puede especificar el nivel de confianza del intervalo de predicción.

Argumentos de entrada

expandir todo

Modelo de regresión de proceso Gaussiano, especificado como un objeto (completo) o (compacto).RegressionGPCompactRegressionGP

Nuevos valores para los predictores que utiliza en el entrenamiento del modelo GPR, especificado como una o una por matriz. es el número de observaciones y es el número de variables predictoras en los datos de entrenamiento.fitrgptablemdmd

Si ha entrenado en un, entonces debe ser un que contiene todas las variables predictoras utilizadas para entrenar.gprMdltableXnewtablegprMdl

Si ha entrenado en una matriz, debe ser una matriz numérica con columnas.gprMdlXnewd

Tipos de datos: single | double | table

Argumentos de par nombre-valor

Especifique pares de argumentos separados por comas opcionales. es el nombre del argumento y es el valor correspondiente. deben aparecer dentro de las cotizaciones.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como.Name1,Value1,...,NameN,ValueN

Nivel de significancia para los intervalos de predicción, especificado como el par separado por comas que consta de y un valor escalar en el rango de 0 a 1.'Alpha'

Ejemplo: especifica 99% intervalos de predicción.'Alpha',0.01

Tipos de datos: single | double

Argumentos de salida

expandir todo

Valores de respuesta previstos, devueltos como un vector-by-1.n

La desviación estándar estimada de los nuevos valores de respuesta, devuelta como un vector-por-1, where (), = 1, 2,...,, contiene la desviación estándar estimada de la nueva respuesta correspondiente a los valores predictores en elnysdiinith fila del modelo GPR entrenado.Xnew

Intervalos de predicción para los valores de respuesta verdaderos correspondientes a cada fila de, devueltos como una matriz-by-2.Xnewn La primera columna de contiene los límites inferiores y la segunda columna contiene los límites superiores de los intervalos de predicción.yint

Ejemplos

expandir todo

Genere los datos de ejemplo.

n = 10000; rng(1) % For reproducibility x = linspace(0.5,2.5,n)'; y = sin(10*pi.*x) ./ (2.*x)+(x-1).^4 + 1.5*rand(n,1);

Ajuste un modelo GPR utilizando la función de kernel Matern 3/2 con escala de longitud separada para cada predictor y un tamaño de conjunto activo de 100. Utilice el subconjunto del método de aproximación regresivos para la estimación de parámetros y el método condicional totalmente independiente para la predicción.

gprMdl = fitrgp(x,y,'KernelFunction','ardmatern32',... 'ActiveSetSize',100,'FitMethod','sr','PredictMethod','fic');

Calcule las predicciones.

[ypred,~,yci] = predict(gprMdl,x);

Trace los datos junto con las predicciones y los intervalos de predicción.

plot(x,y,'r.'); hold on plot(x,ypred); plot(x,yci(:,1),'k--'); plot(x,yci(:,2),'k--'); xlabel('x'); ylabel('y');

Cargue los datos de muestra y almacene en un.table

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

Ajuste un modelo GPR utilizando la primera medida como la respuesta y las otras variables como los predictores.

mdl = fitrgp(tbl,'meas1');

Calcule las predicciones y los intervalos de confianza del 99%.

[ypred,~,yci] = predict(mdl,tbl,'Alpha',0.01);

Trace la respuesta verdadera y las predicciones junto con los intervalos de predicción.

figure(); plot(mdl.Y,'r.'); hold on; plot(ypred); plot(yci(:,1),'k:'); plot(yci(:,2),'k:'); legend('True response','GPR predictions',... 'Lower prediction limit','Upper prediction limit',... 'Location','Best');

Cargue los datos de ejemplo.

load(fullfile(matlabroot,'examples','stats','gprdata.mat'));

Los datos contienen datos de entrenamiento y prueba. Hay 500 observaciones en los datos de entrenamiento y 100 observaciones en los datos de prueba. Los datos tienen 8 variables predictoras. Se trata de datos simulados.

Ajuste un modelo GPR utilizando la función de kernel exponencial cuadrada con una escala de longitud separada para cada predictor. Estandarizar predictores en los datos de entrenamiento. Utilice los métodos exactos de ajuste y predicción.

gprMdl = fitrgp(Xtrain,ytrain,'Basis','constant',... 'FitMethod','exact','PredictMethod','exact',... 'KernelFunction','ardsquaredexponential','Standardize',1);

Predecir las respuestas de los datos de prueba.

[ytestpred,~,ytestci] = predict(gprMdl,Xtest);

Trace la respuesta de prueba junto con las predicciones.

figure; plot(ytest,'r'); hold on; plot(ytestpred,'b'); plot(ytestci(:,1),'k:'); plot(ytestci(:,2),'k:'); legend('Actual response','GPR predictions',... '95% lower','95% upper','Location','Best'); hold off

Sugerencias

  • Puede elegir el método de predicción mientras entrena el modelo GPR utilizando el argumento de par nombre-valor en.PredictMethodfitrgp El método de predicción predeterminado es para ≤ 10000, donde está el número de observaciones en los datos de entrenamiento y (descenso de coordenadas de bloque), de lo contrario.'exact'nn'bcd'

  • No se admite el cálculo de desviaciones estándar, y los intervalos de predicción, cuando es.ysdyintPredictMethod'bcd'

  • Si es un objeto, no puede calcular desviaciones estándar, o intervalos de predicción, para igual o.gprMdlCompactRegressionGPysdyintPredictMethod'sr''fic' Para calcular y para igual a o, utilice el objeto de regresión completa ().ysdyintPredictMethod'sr''fic'RegressionGP

Alternativas

Puede utilizar resubPredict para calcular las respuestas previstas para el modelo GPR entrenado en las observaciones de los datos de entrenamiento.

Capacidades ampliadas

Introducido en R2015b