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.

resume

Reanude una optimización bayesiana

Descripción

ejemplo

newresults = resume(results,Name,Value) reanuda la optimización que se produjo con opciones adicionales especificadas por uno o más argumentos de par.resultsName,Value

Ejemplos

contraer todo

Este ejemplo muestra cómo reanudar una optimización bayesiana. La optimización es para una función determinista conocida como función de Rosenbrock, que es un caso de prueba bien conocido para la optimización no lineal. La función tiene un valor mínimo global de en el punto.0[1,1]

Cree dos variables reales delimitadas por y.-55

x1 = optimizableVariable('x1',[-5,5]); x2 = optimizableVariable('x2',[-5,5]); vars = [x1,x2]; 

Crear la función objetiva.

 function f = rosenbrocks(x)  f = 100*(x.x2 - x.x1^2)^2 + (1 - x.x1)^2;  
fun = @rosenbrocks; 

Para reproducibilidad, establezca la inicialización aleatoria y establezca la función de adquisición en la optimización.'expected-improvement-plus'

rng default results = bayesopt(fun,vars,'Verbose',0,...     'AcquisitionFunctionName','expected-improvement-plus'); 

Ver el mejor punto encontrado y el objetivo mejor modelado.

results.XAtMinObjective results.MinEstimatedObjective 
 ans =    1x2 table        x1        x2       ______    ______      1.2421    1.5299   ans =     -9.5402  

El mejor punto es algo parecido al óptimo, pero el modelo de función es impreciso. Reanudar la optimización para 30 puntos más (un total de 60 puntos), esta vez diciendo al optimizador que la función objetiva es determinista.

newresults = resume(results,'IsObjectiveDeterministic',true,'MaxObjectiveEvaluations',30); newresults.XAtMinObjective newresults.MinEstimatedObjective 
 ans =    1x2 table        x1        x2       ______    ______      1.0526    1.1098   ans =     -0.0041  

El modelo de función objetiva está mucho más cerca de la verdadera función esta vez. El mejor punto está más cerca del verdadero óptimo.

Argumentos de entrada

contraer todo

Resultados de la optimización Bayesiana, especificadas como un objeto.BayesianOptimization

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

Ejemplo: resume(results,'MaxObjectiveEvaluations',60)

Puede usar cualquier par de nombre-valor aceptado con excepción de los que empiezan por.bayesoptInitial Ver el.bayesoptArgumentos de entrada

Nota

Los pares nombre-valor significan tiempo o evaluaciones, por encima de los números almacenados.MaxObjectiveEvaluationsMaxTimeadditionalresults Así, por ejemplo, el número predeterminado de evaluaciones es además de la especificación original.30

Además, puede usar el siguiente par nombre-valor.

Modifique la variable, especificada como un objeto.OptimizableVariable

Solo puede cambiar las siguientes propiedades de una variable en una optimización.

  • de variables reales o enteras.Range Por ejemplo,

    xvar = optimizableVariable('x',[-10,10]); % Modify the range: xvar.Range = [1,5];
  • entre y.Type'integer''real' Por ejemplo,

    xvar.Type = 'integer';
  • de variables reales o enteras entre y.Transform'log''none' Por ejemplo,

    xvar.Transform = 'log';

Argumentos de salida

contraer todo

Resultados de la optimización, devueltos como un objeto.BayesianOptimization

Consulte también

|

Introducido en R2016b