模型选择
派生自 _OrthoLearner
的估计器会在数据的不同折叠 (folds) 上拟合第一阶段的干扰模型 (nuisance models),然后拟合最终模型。在许多情况下,对多个第一阶段模型进行模型选择是合理的,库通过允许灵活地指定第一阶段模型来简化此过程,可以指定为以下任一类型:
一个与 sklearn 兼容的估计器
如果估计器是已知类,并且通过交叉验证(例如
LassoCV
)执行自己的超参数选择,则此过程将执行一次,然后将选定的超参数用于每个折叠上的交叉拟合 (cross-fitting)如果使用自定义类,则它应支持 `fit` 方法;如果目标是连续的,则应支持 `predict` 方法;如果目标是离散的,则应支持 `predict_proba` 方法。
以下字符串之一;每个关键字支持的具体模型集可能因包的版本而异
"linear"
选择 L1 或 L2 范数正则化的线性模型
"poly"
选择具有不同阶多项式特征的正则化线性模型
"forest"
选择随机森林模型
"gbf"
选择梯度提升模型
"nnet"
选择神经网络模型
"automl"
选择上述所有模型(请注意,这可能会非常耗时)
上述任何项组成的列表
ModelSelector
的一个实现,这是一个支持两阶段模型选择和拟合过程的类(库内部使用,通常不建议终端用户直接使用)。
大多数子类也将字符串 `“auto”`` 用作特殊默认值,以自动从比 “automl” 生成的子集更小的适当模型子集中选择模型。