virtual_ensembles_predict
virtual_ensembles_predict 方法,允许使用虚拟集成方法对给定数据集进行预测。
方法调用格式:
virtual_ensembles_predict(model, data, prediction_type=None, virtual_ensembles_count=1, ntree_start=0, ntree_end=0, eval_period=1, thread_count=-1, verbose=None)
参数:
model: 训练好的 CatBoost 模型。必填参数。data: 特征值数据。格式取决于输入对象的个数:- 多个对象:矩阵状数据,形状为 (object_count, feature_count)。
- 单个对象:数组。 数据类型可以是
catboost.Pool、列表的列表、numpy.ndarray、pandas.DataFrame、pandas.SparseDataFrame、pandas.Series、catboost.FeaturesData或scipy.sparse.spmatrix(除dia_matrix外的所有子类)。必填参数。[类似于staged_predict的参数描述]
prediction_type: 所需的预测类型。支持的预测类型:Probability、Class、RawFormulaVal、Exponent、LogProbability。默认为None(对于 Poisson 和 Tweedie 损失函数为Exponent,对于所有其他损失函数为RawFormulaVal)。[类似于staged_predict的参数描述]virtual_ensembles_count: 虚拟集成的数量。类型为int,默认为 1。ntree_start: 要使用的第一棵树的索引(包含在范围内)。索引从 0 开始。默认为 0。[类似于staged_predict的参数描述]ntree_end: 要使用的最后一棵树的索引(不包含在范围内)。默认为 0(表示使用到模型的最后一棵树)。[类似于staged_predict的参数描述]eval_period: 树的步长。类似于staged_predict中的描述。默认为 1。[类似于staged_predict的参数描述]thread_count: 用于计算预测的线程数。优化执行速度。此参数不影响结果。默认为 -1(线程数等于处理器核心数)。[类似于staged_predict的参数描述]verbose: 是否将测量的评估指标输出到 stderr。默认为None。[类似于staged_predict的参数描述]
返回值:
一个生成器,它生成使用模型中树的子集依次递增,以及不同虚拟集成组合的预测。生成值的类型取决于输入对象的个数以及 prediction_type 参数,类似于 staged_predict 的返回值。不同之处在于,virtual_ensembles_predict 会为每个虚拟集成生成一组预测。
虚拟集成方法:
虚拟集成是一种通过组合多个模型的预测来提高预测准确性的方法。virtual_ensembles_predict 方法通过创建多个虚拟集成并对每个集成进行预测来实现这一点。