我有一个想法,但或许这并不容易实现。首先,使用一组相应X和Y火车模型最优参数,例如fitcknn算法得到最优hyperparameters(),然后使用模型作为目标函数,并使用bayesopt()来选择下一个20 X值范围,和correspoing Y值,并使用(X, Y)的20组实验数据训练算法,反对重复这个过程一次又一次,最后,得到最优的结果,我将这样做,如果任何人都可以给我建议,我将非常感谢,因为我不熟悉算法,该算法选择应该对最终结果有影响~
注意,(X, Y)完全实验结果,所以它们之间没有明显的关系~
一个简单的情况下,但似乎bayesopt()函数不能用Md1训练模型,为什么?有什么问题~
rng默认的
X = unifrnd(30 0, 10日,3);
Y = unifrnd(0, 2000, 30岁,1);
Mdl = fitcknn (X, Y,“OptimizeHyperparameters”,“汽车”,…
“HyperparameterOptimizationOptions”,…
结构(“AcquisitionFunctionName”,“expected-improvement-plus”));
sat1 = optimizableVariable (“s1 '(0,10),“类型”,“真实”的);
sat2 = optimizableVariable (“s2”(0,10),“类型”,“真实”的);
sat3 = optimizableVariable (“s3”(0,10),“类型”,“真实”的);
var = (sat1 sat2 sat3];
有趣= @ (z)预测(Mdl [z.s1, z.s2 z.s3]);
bayesObject = bayesopt (var,有趣…
“MaxObjectiveEvaluations”,20岁,…
“详细”1);