You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Vertex AI超参数调优中配置逻辑回归不同求解器的超参数

在Vertex AI单个超参数调优任务中兼容scikit-learn逻辑回归的不同求解器参数

完全可以在单个调优任务中配置不同求解器对应的专属超参数,不需要拆分任务。核心是利用Vertex AI超参数调优的条件参数配置功能,让不同求解器自动匹配合法的超参数组合。

具体实现思路

  • 先定义求解器的可选范围(CategoricalParameterSpec),比如包含lbfgs和liblinear
  • 为依赖于求解器的参数(比如penalty)设置条件规则:当求解器是lbfgs时,仅允许l2惩罚;当求解器是liblinear时,允许l1和l2惩罚
  • 全局通用的参数(比如正则化强度C)可以直接定义,无需附加条件

代码示例

from google.cloud import aiplatform
from google.cloud.aiplatform.hyperparameter_tuning import (
    CategoricalParameterSpec,
    HyperparameterTuningJob,
)

# 1. 定义求解器的可选值
solver_param = CategoricalParameterSpec(values=["lbfgs", "liblinear"])

# 2. 定义带条件的惩罚项参数:默认仅支持l2,当求解器为liblinear时扩展支持l1
penalty_param = CategoricalParameterSpec(
    values=["l2"],
    conditional_parameter_specs=[
        {
            "parent_parameter": "solver",
            "parent_values": ["liblinear"],
            "values": ["l1", "l2"],
        }
    ],
)

# 3. 定义通用的正则化强度参数
c_param = CategoricalParameterSpec(values=[0.01, 0.1, 1, 10, 100])

# 4. 构建超参数调优任务
hpt_job = HyperparameterTuningJob(
    display_name="lr-hyperparameter-tuning",
    project="你的项目ID",
    region="你的区域",
    max_trial_count=20,
    parallel_trial_count=5,
    parameter_spec={
        "solver": solver_param,
        "penalty": penalty_param,
        "C": c_param,
    },
    # 指定scikit-learn训练容器(或自定义训练脚本)
    training_task_definition="gs://cloud-aiplatform-training/scikit-learn-1.0:latest",
    training_task_inputs={
        "python_package_gcs_uri": "gs://你的存储桶/training-code.tar.gz",
        "python_module_name": "trainer.task",
    },
)

# 启动调优任务
hpt_job.run()

关键说明

  • conditional_parameter_specs是实现参数依赖的核心:通过指定父参数(parent_parameter)和父参数值(parent_values),动态调整当前参数的可选范围
  • 这种方式能避免无效的参数组合(比如给lbfgs求解器分配l1惩罚),调优过程中会自动生成符合规则的参数组合进行试验
  • 除了penalty,其他依赖求解器的参数(比如multi_class)也可以用同样的条件配置方式处理

内容的提问来源于stack exchange,提问作者dbkoop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 12:12:14