TabularPredictor.predict¶
- TabularPredictor.predict(data: DataFrame | str, model: str | None = None, as_pandas: bool = True, transform_features: bool = True, *, decision_threshold: float | None = None) Series | ndarray [source]¶
使用训练好的模型对新数据生成标签列值的预测。
- 参数:
data (
pd.DataFrame
或 str) – 用于生成预测的数据。应包含与训练数据相同的列名并遵循相同的格式(可能包含 Predictor 不会使用的额外列,包括标签列本身)。如果传入 str,data 将使用该 str 值作为文件路径加载。model (str (可选)) – 用于获取预测的模型名称。默认为 None,此时使用验证集上得分最高的模型。可以通过调用 predictor.model_names() 来列出此 predictor 中的有效模型。
as_pandas (bool, 默认 = True) – 是否将输出作为
pd.Series
(True) 或np.ndarray
(False) 返回。transform_features (bool, 默认 = True) –
如果为 True,则在使用模型预测前对数据进行预处理。如果为 False,则跳过全局特征预处理。
如果您已经调用了 data = predictor.transform_features(data),这有助于节省推理时间。
decision_threshold (float, 默认 = None) – 用于将预测概率转换为预测的决策阈值。仅与二元分类相关,否则忽略。如果为 None,则默认为 predictor.decision_threshold。有效值范围为 [0.0, 1.0] 您可以通过先调用 predictor.calibrate_decision_threshold() 来获得优化的 decision_threshold。对于 balanced_accuracy 和 f1 等指标,将其设置是有用的,因为 0.5 通常不是最优阈值。预测通过以下逻辑计算正类:1 if pred > decision_threshold else 0
- 返回类型:
预测数组,每个元素对应给定数据集中的一行。根据 as_pandas 参数,返回类型为
np.ndarray
或pd.Series
。