📕changtianml库

tabular_incrml类提供了一系列用于处理表格数据、模型训练和预测的方法。以下是该类的公开API及其使用说明。

构造函数

init

init(path: str)

【说明】

初始化 tabular_incrml 类的实例。

【参数】

  • path (str): 指向 changtianml 训练结果所在目录的路径。

【返回】

预测函数

predict

predict(test_path: Union[str, pd.DataFrame]) -> np.ndarray

【说明】

使用模型对测试数据进行预测。

【参数】

  • test_path (str or pd.DataFrame): 提供如下三种加载方式:

(1)输入csv数据集的地址;

(2)输入文件夹,文件夹中仅包含csv文件;

(3)直接输入pd.DataFrame

【返回】

  • np.ndarray: 预测结果的一维 numpy 数组。

predict_proba

predict_proba(test_path: Union[str, pd.DataFrame]) -> np.ndarray

【说明】

获取分类任务中,模型对每个类别的预测概率。

【参数】

  • test_path (str or pd.DataFrame): 提供如下三种加载方式:

(1)输入csv数据集的地址;

(2)输入文件夹,文件夹中仅包含csv文件;

(3)直接输入pd.DataFrame

【返回】

  • np.ndarray: 预测概率的二维 numpy 数组。

数据处理函数

preprocess

preprocess(input: Union[str, pd.DataFrame], return_y: bool = False) -> pd.DataFrame

【说明】

对输入的数据进行预处理,包括特征组合等操作。

【参数】

  • input (Union[str, pd.DataFrame]): 输入数据,可以是CSV文件的路径或已加载的DataFrame

  • return_y (bool, optional): 指示是否返回标签列,默认为 False。如果为True,则返回的DataFrame包含标签。如果数据没有标签,那么始终都不会返回标签信息。

【返回】

  • pd.DataFrame: 预处理后的数据。

labelencode

labelencode(X: Union[pd.Series, pd.DataFrame], feature_name: Optional[str] = None) -> pd.Series

【说明】

对分类特征进行编码,转换为模型可以处理的格式。

【参数】

  • X (Union[pd.Series, pd.DataFrame]): 需要进行编码的数据。

  • feature_name (Optional[str], optional): 特征名,当 XDataFrame 时必填。

【返回】

  • pd.Series: 编码后的数据。

labeldecode

labeldecode(X: Union[pd.Series, pd.DataFrame], feature_name: Optional[str] = None) -> pd.Series

【说明】

对编码后的特征进行解码,还原为原始格式。

【参数】

  • X (Union[pd.Series, pd.DataFrame]): 需要进行解码的数据。

  • feature_name (Optional[str], optional): 特征名,当 X 为 DataFrame 时必填。

【返回】

  • pd.Series: 解码后的数据。

获取函数

get_train_validation_data

get_train_validation_data(path: Optional[str] = None) -> tuple(pd.DataFrame, pd.DataFrame, pd.Series, pd.Series)

【说明】

获取训练集和验证集。

【参数】

  • path (str, optional): 提供如下四种加载方式:

(1)输入csv数据集的地址;

(2)输入文件夹,文件夹中仅包含csv文件;

(3)输入None,并在此之前调用了load_training_data加载数据;

(4)直接输入DataFrame

【返回】

  • tuple(pd.DataFrame, pd.DataFrame, pd.Series, pd.Series): 返回包含X_train, X_val, y_train, y_valDataFrame

obtain_model_configuration

obtain_model_configuration()

【说明】

获取并返回 changtianml 模型的配置信息。此函数提取模型的类型以及其最佳配置参数。以确保参数信息的准确性和可用性。

【返回】

  • dict: 包含以下键值对的字典:

    • model_type: AutoML 选择的最佳模型类型。

    • model_params: 该模型的最佳配置参数。对某些参数进行了适当的名称转换和格式调整。

    • task: 模型的任务类型,主要是分类和回归。

画图函数

plot_box

plot_box(X: pd.DataFrame, y: pd.DataFrame, feature_name: str, target_name: str, path: Optional[str] = None)

【说明】

绘制箱线图,用于分析特征和目标之间的关系。

【参数】

  • X (pd.DataFrame): 包含特征的DataFrame

  • y (pd.Series): 目标变量。

  • feature_name (str): 要分析的特征名称。

  • target_name (str): 目标变量的名称。

  • path (Optional[str], optional): 保存图表的路径,如果为 None,则不保存图表。

【返回】

plot_kde

plot_kde(X: pd.DataFrame, feature_name: str, path: Optional[str] = None)

【说明】

绘制核密度估计图,以估计特征的分布。

【参数】

  • X (pd.DataFrame): 包含特征的DataFrame

  • feature_name (str): 要进行核密度估计的特征名称。

  • path (Optional[str], optional): 保存图表的路径,如果为 None,则不保存图表。

【返回】

plot_trend_comparison

plot_trend_comparison(X: pd.DataFrame, feature_name: str, target_name: str, path: Optional[str] = None)

【说明】

绘制特征与目标之间的趋势图。

【参数】

  • X (pd.DataFrame): 包含数据的DataFrame

  • feature_name (str): 要分析趋势的特征名称。

  • target_name (str): 目标变量的名称。

  • path (Optional[str], optional): 保存图表的路径,如果为 None,则不保存图表。

【返回】

plot_roc_curve

plot_roc_curve(y_true: Union[pd.Series, np.ndarray], y_score: Union[pd.Series, np.ndarray], n_classes: Optional[int] = None, roc_type: str = 'both', path: Optional[str] = None)

【说明】

绘制接收者操作特征(ROC)曲线,用于评估分类模型性能。

【参数】

  • y_true (pd.Series, np.ndarray): 真实的标签值。

  • y_score (pd.Series, np.ndarray): 模型预测的概率值或得分。

  • n_classes(int, optional): 分类任务中的类别数。如果不指定,将根据数据自动计算。

  • roc_type (str, optional): ROC曲线类型。可选项包括 'both'(同时绘制宏观和微观ROC曲线),'macro''micro'。默认为 'both'

  • path (Optional[str], optional): 保存图表的路径,如果为 None,则不保存图表。

【返回】

plot_confusion_matrix

plot_confusion_matrix(y_true: Union[pd.Series, np.ndarray], y_pred: Union[pd.Series, np.ndarray], normalize: bool = False, title: Optional[str] = None, cmap = plt.cm.Blues, path: Optional[str] = None)

【说明】

绘制混淆矩阵,用于展示分类模型的预测准确性和错误类型。

【参数】

  • y_true (pd.Series, np.ndarray): 真实的标签值。

  • y_pred (pd.Series, np.ndarray): 模型的预测结果。

  • n_classes (int, optional): 分类任务中的类别数。如果不指定,将根据数据自动计算。

  • normalize (bool, optional): 是否对混淆矩阵进行归一化。默认为False

  • title (str, optional): 图表的标题。默认为None

  • cmap (Colormap, optional): 使用的颜色映射。默认为plt.cm.Blues

  • path (Optional[str], optional): 保存图表的路径,如果为 None,则不保存图表。

【返回】

plot_regression_scatter

plot_regression_scatter(y_true: Union[pd.Series, np.ndarray], y_pred: Union[pd.Series, np.ndarray], model_name: str = 'Model', path: Optional[str] = None)

【说明】

绘制回归任务的散点图,比较模型的预测值和实际值。

【参数】

  • y_true (pd.Series, np.ndarray): 真实的目标值。

  • y_pred (pd.Series, np.ndarray): 模型的预测值。

  • model_name (str, optional): 图例中使用的模型名称。默认为'Model'

  • path (Optional[str], optional): 保存图表的路径,如果为 None,则不保存图表。

【返回】

最后更新于

这有帮助吗?