探索贝叶斯优化
将贝叶斯优化分解为可理解的技术模块
核心问题
现代机器学习算法常包含大量超参数。为有效使用这些算法,需选择优质超参数值。贝叶斯优化是一组常用于超参数调优的技术,其本质可优化任何黑箱函数。
黄金开采案例
假设在某未知区域勘探黄金分布(呈双峰分布,最大值位于x=5附近)。由于钻探成本高昂,需在有限次数内找到黄金最富集位置。这引出两类问题:
- 主动学习:通过高信息量点位准确估计整体分布
- 贝叶斯优化:快速定位最大值区域
技术实现
高斯过程建模
采用Matern 5/2核的高斯过程作为代理模型,通过贝叶斯规则迭代更新后验分布。主动学习策略选择不确定性最高的点位进行勘探:
|
|
贝叶斯优化框架
- 选择代理模型并定义先验
- 根据观测数据计算后验
- 通过采集函数决定下个采样点:$x_t = \text{argmax} \ \alpha(x)$
- 重复直至收敛
关键采集函数
类型 | 数学表达 | 特性 |
---|---|---|
改进概率(PI) | $\Phi(\frac{\mu_t(x)-f(x^+)-\epsilon}{\sigma_t(x)})$ | 通过$\epsilon$控制探索强度 |
期望改进(EI) | $(\mu_t(x)-f(x^+))\Phi(Z)+\sigma_t(x)\phi(Z)$ | 平衡改进幅度与概率 |
汤普森采样 | 从后验分布采样函数并优化 | 自然平衡探索与利用 |
超参数调优实战
在SVM和随机森林的月球数据集分类任务中,贝叶斯优化表现出显著优势:
- SVM参数优化:在7次迭代内逼近全局最优(C=7.74, γ=3.55)
- 对比实验:随机搜索策略最终准确率落后贝叶斯优化15%
神经网络应用
使用scikit-optim库进行超参数搜索:
|
|
仅需15次迭代即可达到99%准确率,相比网格搜索节省90%计算时间。
核心优势
- 对昂贵评估函数高效优化
- 通过代理模型避免直接计算
- 自适应平衡探索与利用
- 可扩展至高维参数空间