当前位置: 首页 > news >正文

超参数调优进阶:Optuna/Bayesian/Early Stopping

超参数调优进阶:Optuna/Bayesian/Early Stopping

1. 调优方法对比

超参数调优方法: ├── 网格搜索(Grid Search):穷举所有组合,慢但全面 ├── 随机搜索(Random Search):随机采样,快但不保证最优 ├── 贝叶斯优化(Bayesian):基于历史结果智能搜索 └── 早停法(Early Stopping):训练中动态停止

2. Optuna 调优

importoptunafromsklearn.ensembleimportRandomForestClassifierfromsklearn.model_selectionimportcross_val_scoredefobjective(trial):params={'n_estimators':trial.suggest_int('n_estimators',50,300),'max_depth':trial.suggest_int('max_depth',3,15),'min_samples_split':trial.suggest_int('min_samples_split',2,20),'min_samples_leaf':trial.suggest_int('min_samples_leaf',1,10),'max_features':trial.suggest_categorical('max_features',['sqrt','log2',None]),}model=RandomForestClassifier(**params,random_state=42)scores=cross_val_score(model,X_train,y_train,cv=5,scoring='accuracy')returnscores.mean()study=optuna.create_study(direction='maximize')study.optimize(objective,n_trials=100,show_progress_bar=True)print(f"最佳参数:{study.best_params}")print(f"最佳分数:{study.best_value:.4f}")

3. XGBoost + Optuna

importoptunaimportxgboostasxgbdefobjective_xgb(trial):params={'n_estimators':trial.suggest_int('n_estimators',50,500),'max_depth':trial.suggest_int('max_depth',3,12),'learning_rate':trial.suggest_float('learning_rate',0.01,0.3,log=True),'subsample':trial.suggest_float('subsample',0.6,1.0),'colsample_bytree':trial.suggest_float('colsample_bytree',0.6,1.0),'reg_alpha':trial.suggest_float('reg_alpha',1e-8,10.0,log=True),'reg_lambda':trial.suggest_float('reg_lambda',1e-8,10.0,log=True),}model=xgb.XGBClassifier(**params,random_state=42,use_label_encoder=False)scores=cross_val_score(model,X_train,y_train,cv=5,scoring='accuracy')returnscores.mean()study=optuna.create_study(direction='maximize')study.optimize(objective_xgb,n_trials=200)

4. Early Stopping

importlightgbmaslgb train_data=lgb.Dataset(X_train,label=y_train)val_data=lgb.Dataset(X_val,label=y_val,reference=train_data)params={'objective':'binary','metric':'binary_logloss','learning_rate':0.05,'num_leaves':31,}callbacks=[lgb.early_stopping(stopping_rounds=50),lgb.log_evaluation(period=10),]model=lgb.train(params,train_data,valid_sets=[val_data],num_boost_round=1000,callbacks=callbacks,)

总结

方法速度精度推荐场景
Grid Search小参数空间
Random Search快速探索
Optuna复杂参数空间
Early Stopping训练中使用
http://www.jsqmd.com/news/1132166/

相关文章:

  • 出行和货运行业正在被智能体重塑,效率提升超过50%
  • PCB布线设计 2025:3W/20H/蛇形线等5大核心规则实战解析与量化验证
  • C++ 线程安全日志系统:策略模式解耦输出端,RAII 实现 glog 风格流式日志
  • 集成隔离电源的RS-485/RS-422收发器:PCB拼接电容设计实战与EMC优化
  • nlpconnect/vit-gpt2-image-captioning 超详细入门解析
  • Java---牛客的ACM模式被卡输入输出时间,如何解决?一个模版即可解决
  • AI 音频生成流水线:异步任务要有进度和取消
  • 基于社交图谱的校园活动与交友系统(SpringBoot + Neo4j + UniApp)
  • 舟山高口碑黄金回收白银回收
  • 2025黑科技!加持会议任务提醒,快准稳颠覆你的认知?
  • Flutter 开发鸿蒙实战:Windows 环境下从 HAP 构建到四 Tab 页面运行
  • MT7621 PCIe WiFi 驱动移植:从 5.4 内核到 OpenWrt 22.03 的 3 个关键步骤
  • 对比聚类 (Contrastive Clustering) 与 SimCLR 深度对比:3 个核心差异与 2 个应用场景分析
  • C++26 std::inplace_vector 详解:零堆分配的定容向量
  • C++26 std::chrono 哈希与 SI 词头详解
  • Want 参数安全:类型、边界、异常兜底怎么写
  • 机器学习系统设计:从原型到生产
  • 开始委托之旅 委托与接口
  • 张掖口碑黄金铂金回收白银回收实体老店
  • 大模型提示词工程分类
  • 加捻织唛与不加捻织标区别及织唛商标行业3大互联网推广方式
  • 高效制作专业幻灯片的完全指南:Marp for VS Code实用教程
  • AI时代,企业核心业务中台化建设思考
  • AI编程实战:从RAG系统构建看大模型应用开发的核心逻辑
  • AI基础概念入门----prompt
  • 卡梅德生物技术快报| KM13 辅助噬菌体的天然 VHH 噬菌体文库全套构建流程与数据验证
  • 2026年7月5日 AI行业最新资讯
  • AutoUnipus终极指南:三步实现U校园全自动答题,学习效率提升500%
  • 模型可解释性:特征重要性/SHAP/LIME
  • javascript的鼠标事件是个比较庞大的家族。常见的有以下8个: