python process参数_Python利用Gausian Process对Hyper-parameter进行调参

导语

在做模型的时候发现调参尤其是调Hyper-parameter真是惆怅T T……像Logistic Regression、SVM这类参数少的还能凭感觉手动调调,遇上Random Forest、AdaBoost这些参数多的咬着牙也能调出好结果,说到神经网络,那就真是无语泪先流了……是时候考虑如何才能高效调参了(握拳)!

1. Grid Search

顾名思义,Grid Search将所有参数划分成网格,网格中任意一个点所代表的参数组合都有可能最优参数搭配。

Grid Search一个明显的优势在于它能完全遍历(brute-force search method)所有用户所指定的参数搭配,但也因此引发了它最大的缺点:效率低,因此也无法普适地有效解决Hyper-parameter调参问题。

The number of grid points increases exponentially with the number of decision variables, which makes it computationally very costly.

Source: Parameter Tuning Using Gaussian Processes (Jinjin Ma, The university of Waikato, 2012)

Flowchart of general search algorithm for two parameters

Source: Parameter Tuning Using Gaussian Processes (Jinjin Ma, The university of Waikato, 2012)

2. Randomized Search

Randomized Search为模型随机选取参数(Stochastic Search Process),选取用户指定次数后,从中选择效果最好的参数搭配。其中选取的参数点来源于通过网格划分所得到的参数点(划分过程与Grid Search同)。事实上,对于很多数据集和一些常用的算法,Random Search都表现不俗。

Grid Search vs. Randomized Search

Source: Random Search for Hyper-Parameter Optimization (James Bergstra & Yoshua Bengio, 2012)

3. Gaussian Process Optimization

关于利用高斯过程调参,一个不得不提到的概念就是Expected Improvement。

The basic idea underlying EI is to estimate the improvement of possible candidate points over the current best value and to sample at the particular point next where the expected improvement is maximum.

而利用高斯过程进行优化的目标就是在尽可能少的尝试中挑选出最佳的参数组合。

不知死活的笔者发现了一个大牛运用Gaussian Process实现的Bayesian Optimization。但是不知道为什么,当笔者用这个包对几个以前已经调好参的模型进行调参时,结果并不如之前的结果好,所以在这一方面还有待于更深入的研究。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值