
AutoKeras长时实验实用技巧中断恢复、搜索预算控制与常见问题FAQ清单【免费下载链接】autokerasAutoML library for deep learning项目地址: https://gitcode.com/gh_mirrors/au/autokerasAutoKeras 是基于 Keras 的 AutoML 深度学习库支持图像、文本和结构化数据的自动模型搜索。长时实验默认最多 100 次模型试验常遇到中断、超预算、选模困惑等问题。本文整理 6 条 AutoKeras 长时实验实用技巧如何用overwrite参数一键中断恢复、用max_trials与epochs控制搜索预算、4 种 Tuner 怎么选以及一份常见问题 FAQ 清单。为什么长时实验容易翻车AutoKeras 的搜索过程会依次尝试多个不同超参数组合的模型称为 trial每个 trial 都进行训练并用早停EarlyStopping加速探索搜索结束后将最优模型用全部数据完整重训一次再保存。整个过程由 autokeras/engine/tuner.py 中的search方法驱动。数据量大、trial 多时跑几个小时甚至几天都很常见——所以中断恢复和预算控制是实战必备技能。技巧一中断恢复一键续跑长时搜索核心参数overwrite默认FalseoverwriteFalse发现同名项目目录时不覆盖自动加载已有进度继续之前被中断的搜索overwriteTrue清空重来开启全新搜索。 也就是说任务被 kill 掉、机器重启、网络断开之后只需重新运行同一段代码AutoKeras 会自动从上次的断点继续不会丢失已完成的 trial。import autokeras as ak # overwrite 默认 False重跑同一代码即可续跑 clf ak.ImageClassifier(max_trials100) clf.fit(x_train, y_train)相关参数定义见 autokeras/tasks/image.py所有任务 APITextClassifier、StructuredDataClassifier等和 autokeras/auto_model.py 中的AutoModel均支持。配套建议场景做法想续跑旧实验保持project_name不变overwriteFalse重跑想推倒重来overwriteTrue实验目录指定在哪directorymy_experiments避免散落在当前目录技巧二搜索预算控制时间与 trial 双限流长时实验最贵的是时间。三个关键阀门1️⃣max_trials控制试验次数默认 100 个 trial可按数据规模和算力调小clf ak.ImageClassifier(max_trials20) # 小数据集建议 10~302️⃣epochs控制每个 trial 的训练轮数不传epochs时AutoKeras 最多训 1000 轮但验证损失 10 轮不提升就早停搜索结束后最优模型会按最佳 trial 所用轮数完整重训见 autokeras/engine/tuner.py 的_get_best_trial_epochs。3️⃣max_model_size防止搜索出超大模型限制模型参数量上限避免某些 trial 因模型太大拖慢整个实验。Tuner 选择影响预算消耗速度AutoModel支持 4 种 Tuner映射表见 autokeras/auto_model.pyTuner适用场景预算敏感度greedy默认通用收敛稳中bayesian预算较少、要高效利用 trial低省 trialhyperband想快速剪掉差模型低省时间random基线对照、调试高任务 API 默认使用任务专属 Tuner——先评估该任务最常用的模型再探索其他模型见 autokeras/tuners/task_specific.py。自定义 Tuner 可继承 autokeras/engine/tuner.py 中的AutoTuner。技巧三用 objective 让好模型定义更准默认按val_loss选最优模型但业务上更常看准确率等指标clf ak.ImageClassifier( max_trials30, objectiveval_accuracy, metrics[val_accuracy], )objective支持任意验证指标名如val_auc带val_前缀自定义指标可封装成 Keras Tuner 的 Objective 传入示例见官方 FAQdocs/templates/tutorial/faq.md。小提示换指标时保持metrics与objective一致日志里才能对照看到目标指标的变化。技巧四跑完自动取最优模型与管线搜索结束后产物都在项目目录下best_model.keras完整重训后的最优模型路径属性见 autokeras/engine/tuner.pybest_pipeline与最优模型配套的数据预处理管线预测时务必使用保证训练/推理一致。clf.fit(x_train, y_train) best_model clf.tuner.get_best_model() best_pipeline clf.tuner.get_best_pipeline()FAQ 常见问题清单Q1任务被杀掉了怎么续跑重跑同一代码即可。overwrite默认FalseAutoKeras 自动加载同名项目并继续。官方说明见 docs/templates/tutorial/faq.md。Q2怎么自定义 metrics 和 loss直接传给任务 APIak.ImageClassifier(metrics[mse], lossmse)见 docs/templates/tutorial/faq.md。Q3怎么用自定义指标如 F1选最优模型自定义函数 kerastuner.Objective(val_f1_score, directionmax)传入objective同时加入metrics示例见 docs/templates/tutorial/faq.md。Q4搜索为什么比预期慢检查三点max_trials是否过大、epochs是否没限制、数据是否需要抽样调试。先用小max_trials 抽样数据验证流程再上满预算。Q5project_name和directory有什么区别project_name是实验名续跑匹配依据directory是项目目录父路径。两者一致才能保证续跑命中同一实验。Q6环境要求是什么Python 3.7TensorFlow 2.8.0安装方式为pip3 install autokeras见 README.md。长时实验检查清单 ✅project_name固定不变续跑的前提max_trials按预算设置默认 100 通常偏大明确objective与业务指标对齐directory指向有足够磁盘的空间非交互环境下用verbose2逐行日志适合重定向到文件搜索结束后记得用best_pipeline做数据变换再预测更多可运行示例可参考 examples/ 目录如 examples/cifar10.py、examples/imdb.py批量评估基准见 benchmark/performance.py。【免费下载链接】autokerasAutoML library for deep learning项目地址: https://gitcode.com/gh_mirrors/au/autokeras创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考