贝叶斯优化——导出底层模型你好,
我一直很喜欢尝试新的贝叶斯优化平台。不过,我想把结果和一些机器学习模型的结果进行比较。我看到输出结果中确实有“留一法”R²,但这真的是基于随机选取的一行数据吗?还是说在后台对数据集进行了训练集和验证集的分割?我能知道具体是哪一行(或哪些行)被选作了保留行吗?
另外,能否查看实际的模型?我使用了“保存所有模型拟合”和“保存脚本以供下次迭代”功能,但我不确定这些是否是完整的模型。我想看看模型对新数据的预测效果如何,尽管我知道这可能并非该平台的主要功能。
或者,我能否将最优高斯过程模型“加载”到高斯过程中?我目前还没有找到简便的方法,尤其是我有多个θ值,但如果我能在高斯过程平台运行生成的最优高斯过程,这或许就能解决所有这些问题!
高级统计建模回复:贝叶斯优化——导出底层模型你好@abmayfield ,
由于目前关于贝叶斯优化的文档非常有限,可能很难回答您的问题。
经典高斯过程 (GP) 和基于贝叶斯优化的高斯过程 (GP-OB) 的 GP 的拟合/验证策略似乎有所不同:前者是贝叶斯优化高斯过程,后者是独立高斯过程。虽然两种平台都使用了留一法交叉验证 (Leave-One-Out) 策略,但结果的聚合方式可能不同:经典高斯过程使用刀切法 (Jackknife),而基于贝叶斯优化的高斯过程则使用经典的留一法交叉验证。
我也觉得无法保存 OB 模型中的预测公式很令人沮丧。不过,我找到了一个近似 OB 平台模型的变通方法:由于可以从 OB 平台(在 Gaussian Process 模型报告中)访问参数值,我重新启动了经典 Gaussian Process 平台,但强制使用 OB 模型中的 theta 值。这并不完美,因为两个模型的截距会不同,但至少我能够近似地得到 OB 平台中的预测模型。

希望第一个回答能对您有所帮助。
回复:贝叶斯优化——导出底层模型感谢您的想法。虽然能看到底层模型仍然很有帮助,但我认为,只要我添加一些额外数据(作为验证),重新运行模型(或生成一个新模型),并且拟合优度和最优解都没有太大变化,我就可以得出结论,这个模型是好的。相反,如果我添加了一些新数据,而新的解完全不同,我就会得出结论,旧模型存在问题,并接受新模型(无论如何都会生成新模型)。但我确实希望能够保留多个样本,或许如果我进行足够多的迭代,就能更好地了解实际的验证 R² 值(?)。