首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Weka中的参数优化算法

Weka中的参数优化算法
EN

Data Science用户
提问于 2019-10-16 12:38:08
回答 2查看 492关注 0票数 1

在Weka中,我使用了网格算法和随机搜索参数整定算法,但不幸的是,当我们使用ML算法(支持向量回归、线性回归等)而没有任何优化算法时,它们的性能(在更好的预测精度方面)最差。我想知道这怎么可能?我的意思是说,一种算法(网格算法或随机搜索算法)的性能应该比其他算法好或差,但与没有任何参数优化算法的算法相比,它们的性能最差。我甚至尝试了在Weka和MultiSearch选项的混合,但即使是这两者的混合具有最差的性能。如果有人能根据他们在这方面的经验提供意见,请见谅。

EN

回答 2

Data Science用户

发布于 2019-10-16 13:32:16

假设您将调优算法的性能称为算法性能的改进(准确性、误差等)。对于不同的算法,参数优化(或调优)的效果不同。许多论文已经讨论过它,奥尔森等人已经展示了几种算法的性能可能会有多大的变化。SVM和LR (您在问题中提到的那些)在调优后并没有得到很大的改进。

如果您尝试过的几种算法性能较差,那么问题可能不是在调优算法中,而是在您的特性-目标集中。我建议你看看多明戈斯的报纸,这是一个很好的阅读,以建立一个成功的模型。

票数 1
EN

Data Science用户

发布于 2019-10-16 16:18:09

有许多可能性,但我怀疑调优算法正过度适合您的模型。multisearch/gridsearch等算法正在选择一个组合的超参数来优化您所选择的度量,例如AUC/F1/MCC或类似的东西。如果您正在优化训练数据,调优算法将选择训练分数最高的模型,但这可能会被过度拟合。

如果没有调优算法,您可以偶然地选择在训练数据上性能更差但在测试数据上性能更好的超参数。如果您没有许多可用于培训/测试的实例,则尤其如此;如果您没有多个培训实例,则过度拟合的可能性更大。此外,如果您的测试集非常小,运气将成为一个更大的因素。

你的特征也会导致过度适应。例如,假设您有一百万个特性,但只有100个训练实例。如果每个实例的特性都有很大的偏差,那么您的模型可以非常有选择地优化培训数据,但这会导致很差的泛化。如果您有更多的特征比训练实例,您应该使用降维算法,如PCA,以创建一个更好的搜索空间。

为了获得优化算法的最佳结果,您应该将数据划分为培训、验证和测试集。多搜索/网格搜索应该评估验证集上的模型,以便鼓励泛化,而不是过度适应培训数据。

此外,对网格搜索的间隔选择也很重要。假设使用带有RBF核的支持向量机,网格搜索伽马和C参数,网格单元可能会以指数形式偏离。11x11网格可能是:C \in \{10^{-3}, 10^{-2},...,10^7\} \gamma \in \{10^{-9},10^{-8},...,10\} 。如果您想要更细的粒度,在为您的网格创建一个分数热图之后,您可以通过执行另一个具有更小域间隔的网格搜索来“放大”一个高分区域。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/61819

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档