如何优化变量的回归模型
7视图(30天)
显示旧的评论
你好,
我已经创建了一个回归模型使用统计和机器学习的工具箱,依赖于6个变量。以工作区导出模型之后,我现在想确定函数的全局最小值使用“surrogateopt”。
我的代码,解决不同的属性在指定的时间间隔,但结果输出的“fval”不会改变。
谁能帮助我解决一下这个问题吗?
objconstr = @ (x) trainedModel.predictFcn(数据);
磅= (-10,-10,-10,-10,-10,-10];
乌兰巴托= [10、10、10、10、10、10];
[x, fval] = surrogateopt (objconstr磅,乌兰巴托);
trainedModel。predictFcn函数的名称
数据表6属性
最好的
西蒙
0评论
接受的答案
艾伦·韦斯
2021年8月9日
我认为你需要联系你的
数据
参数给你
x
论点。是这样的:
函数f = objconstr (x, trainedModel)
% x转换为正确的类型的一个表。
例如,%
mytable = array2table (x,“VariableNames”,…
(“name2”“name1 name3”“name4”“name5”“name6”);%放入适当的名称
y = trainedModel.predictFcn (mytable);
结束
然后调用
surrogateopt
在目标函数
@ (x) objconstr (x, trainedModel)
。
艾伦·韦斯
MATLAB数学工具箱文档
2的评论
艾伦·韦斯
2021年8月16日
请执行以下实验。得到
trainedModel
到你的工作区,并确保
objconstr
在MATLAB路径。然后定义
有趣的=
@ (x) objconstr (x, trainedModel)
。然后将
x = 0 (1,6);%或任何其他可行点
瓦尔(x) =乐趣
是否这将同样的错误。如果是这样,那么你必须找出原因之前试图优化
有趣的
。如果不是,那么我认为你是好的,使用
有趣的
内部
surrogateopt
。
艾伦·韦斯
MATLAB数学工具箱文档