Optuna
一、项目简介
Optuna 是开源的超参数自动优化框架,支持高效的搜索算法(如 TPE、CMA-ES)、剪枝与可视化,可无缝接入 PyTorch、LightGBM、sklearn 等,也常用于优化 RAG 的切片、检索参数。
二、核心特性
- 自动超参搜索:TPE / 随机 / 网格 / CMA-ES 等;
- 剪枝(Pruning):提前终止无望试验,节省资源;
- 可视化:内置参数重要性与优化历史;
- 框架无关:可接入任意 Python 训练代码;
- 分布式并行搜索;
- 存储后端可插拔。
三、适用场景
- 模型训练超参数调优;
- RAG 系统的切片/检索策略优化;
- 需要自动搜索最佳配置的实验。
四、快速上手
pip install optuna
import optuna
def objective(trial):
lr = trial.suggest_float("lr", 1e-5, 1e-2, log=True)
return train(lr)
study = optuna.create_study(direction="minimize")
study.optimize(objective, n_trials=50)
print(study.best_params)
五、注意事项
- 搜索空间设计直接影响效果;
- 剪枝需配合合理的中间指标;
- 大规模搜索注意计算资源与时间。