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.

Funciones objetivo de optimización bayesiana

Sintaxis de función objetiva

intenta minimizar una función objetiva.bayesopt Si, en su lugar, desea maximizar una función, establezca la función objetiva en el negativo de la función que desea maximizar. Ver.Maximizar las funciones (MATLAB)

pasa una tabla de variables a la función objetiva.bayesopt Las variables tienen los nombres y tipos que usted declara; Ver.Las variables para una optimización bayesiana

La función objetiva tiene la siguiente firma:

[objective,coupledconstraints,userdata] = fun(x)
  1. — El valor de la función objetiva en un escalar real.objectivex

  2. — Valor de las restricciones acopladas, si existe (salida opcional), un vector de valores reales.coupledconstraints Un valor negativo indica que se satisface una restricción, un valor positivo indica que no se satisface. Para obtener más información, consulte.Restricciones acopladas

  3. : Datos opcionales que la función puede devolver para usos adicionales, como el trazado o el registro (salida opcional).userdata Para ver un ejemplo, vea.Funciones de trazado de optimización bayesiana

Ejemplo de función objetiva

Esta función objetiva devuelve la pérdida en un ajuste con validación cruzada de un modelo SVM con parámetros y.boxsigma El objetivo también devuelve una función de restricción acoplada que es positiva (inviable) cuando el número de vectores de soporte excede 100 (100 es factible, 101 no lo es).

function [objective,constraint] = mysvmfun(x,cdata,grp) SVMModel = fitcsvm(cdata,grp,'KernelFunction','rbf',...     'BoxConstraint',x.box,...     'KernelScale',x.sigma); objective = kfoldLoss(crossval(SVMModel)); constraint = sum(SVMModel.SupportVectors) - 100.5;

Errores de función objetiva

considera que su función objetiva devuelva un error cuando la función objetiva devuelva cualquier cosa que no sea un escalar real finito.bayesopt Por ejemplo, si la función objetiva devuelve un valor complejo, o una matriz con más de una entrada, entonces considera que los errores de la función objetiva.NaNInfbayesopt Si encuentra un error, sigue optimizándose y actualiza automáticamente un modelo bayesiano de puntos que conducen a errores.bayesopt Este modelo bayesiano es el. incorpora el modelo error como una restricción acoplada.Modelo de errorbayesopt Ver.Restricciones acopladas

Cuando existan errores, puede trazar el modelo de error estableciendo el par nombre-valor.bayesoptPlotFcn@plotConstraintModels O puede llamar retrospectivamente los resultados de una optimización bayesiana e incluir.plot@plotConstraintModels

Temas relacionados