BigQueryML逻辑回归模型L1正则化(Lasso)参数取值问题咨询
BQML 逻辑回归L1正则化参数取值方案
BQML中用于指定L1正则化强度的参数逻辑和sklearn的alpha参数完全一致,均为非负浮点数,你可以按照以下逻辑取值:
- 基础规则:参数值越大,正则化强度越高,越容易将不重要特征的系数压缩为0;取值为0时等同于关闭L1正则化,和无正则的逻辑回归效果一致。
- 初始测试参考值:如果你没有明确的调优方向,可以先用sklearn默认的L1正则强度
1作为初始值跑通流程,再根据模型效果调整。 - 手动调优范围:手动调参时优先在
1e-8到10的对数区间选择候选值,推荐按数量级梯度测试:0.0001、0.001、0.01、0.1、1、10,可以快速锁定最优值的数量级范围。 - 自动调优方案:不想手动试值的话可以直接开启BQML自带的超参数调优功能,平台会自动搜索适配你的数据集的最优取值,参考语句如下:
CREATE MODEL `你的项目ID.你的数据集.模型名称` OPTIONS( MODEL_TYPE = 'LOGISTIC_REG', INPUT_LABEL_COLS = ['标签列名'], L1_REG = HP_RANGE(0.0001, 10, 6), -- 代表在0.0001到10的区间内,按对数间隔取6个候选值测试 NUM_TRIALS = 6, MAX_PARALLEL_TRIALS = 2 ) AS SELECT * FROM `你的训练数据表路径`
- 场景适配调整:如果你的数据集特征数量远大于样本量,或者需要通过L1正则实现特征筛选,可以适当提高参数值;如果出现模型训练集拟合不足、欠拟合的情况,就降低参数值即可。
内容的提问来源于stack exchange,提问作者Ryan
相关产品推荐
相关产品推荐

