API 参考#
演示数据集#
加载乳腺癌数据集。二分类问题。 |
|
加载客户流失数据集,可用于二分类问题。 |
|
加载糖尿病数据集。用于回归问题。 |
|
加载信用卡欺诈数据集。 |
|
加载澳大利亚日最低气温天气数据集。 |
|
加载葡萄酒数据集。多分类问题。 |
预处理#
预处理工具函数#
在使用 evalml 之前预处理数据的工具函数。
从文件加载特征和目标。 |
|
获取 DataFrame 中每种特定 dtype 的特征数量。 |
|
将数据分割成训练集和测试集。 |
|
获取目标分布。 |
数据分割器#
不将训练数据分割成训练集和验证集。 |
|
sklearn 的 KFold 分割器的包装类。 |
|
sklearn 的 Stratified KFold 分割器的包装类。 |
|
将训练数据分割成训练集和验证集。 |
|
时间序列问题的滚动原点交叉验证。 |
异常#
当 automl 批处理中的所有流水线在主要目标上返回 NaN 分数时引发的异常。 |
|
在组件未先拟合的情况下调用 predict/predict_proba/transform 时应引发的异常。 |
|
当数据检查无法使用给定参数初始化时引发的异常。 |
|
当类没有预期的方法或属性时引发的异常。 |
|
在 all_components() 中找不到组件时引发的异常。 |
|
在列索引或唯一值中找不到 'positive' 类的特定分类标签时引发的异常。 |
|
当 get_objective 尝试实例化目标函数但未提供所需参数时引发的异常。 |
|
指定目标函数不存在时引发的异常。 |
|
偏依赖性可能引发的所有错误都会引发此异常。 |
|
应用流水线时可能引发的错误引发的异常。 |
|
在 automl 搜索结果中找不到特定流水线时引发的异常。 |
|
在流水线未先拟合的情况下调用 predict/predict_proba/transform 时应引发的异常。 |
|
当流水线在对目标函数列表中的任何目标进行评分时出错时引发的异常。 |
警告#
当目标列中存在空值时抛出的警告。 |
|
在初始化期间,流水线参数未在定义的流水线组件图中使用的警告。 |
错误代码#
枚举,用于标识偏依赖性中遇到的错误类型。 |
|
枚举,用于标识应用流水线时遇到的错误类型。 |
|
枚举,用于标识留出验证中遇到的错误类型。 |
AutoML#
AutoML 搜索接口#
自动化流水线搜索。 |
AutoML 工具函数#
获取问题类型的默认主要搜索目标。 |
|
对于给定的 automl 配置和流水线,确定阈值调优目标应是什么,以及是否应进一步分割训练数据以实现适当的阈值调优。 |
|
给定训练数据和机器学习问题参数,计算在 AutoML 搜索期间使用的数据分割方法。 |
|
进一步分割给定流水线的训练数据。二分类流水线需要这样做,以便正确调优阈值。 |
|
给定数据和配置,运行 automl 搜索。 |
|
给定数据和配置,运行 automl 搜索。 |
|
根据 X 和 y 阈值数据调优二分类流水线的阈值。 |
AutoML 算法类#
为 EvalML 提供动力的 AutoML 算法的基类。 |
|
一种包含快、长两种模式的 automl 算法,其中快模式是长模式的子集。 |
|
一种 automl 算法,它首先使用默认参数拟合基础轮次的流水线,然后按性能顺序对每个流水线进行参数调优。 |
AutoML 回调#
将抛出的异常记录为错误。 |
|
引发 AutoMLSearch 对象抛出的异常。 |
|
无操作。 |
AutoML 引擎#
concurrent.futures (CF) 引擎。 |
|
dask 引擎。 |
|
EvalML 引擎的基类。 |
|
AutoML 搜索的默认引擎。 |
流水线#
流水线基类#
所有二分类流水线的流水线子类。 |
|
所有分类流水线的流水线子类。 |
|
所有多分类流水线的流水线子类。 |
|
机器学习流水线。 |
|
所有回归流水线的流水线子类。 |
|
时间序列二分类问题的流水线基类。 |
|
时间序列分类问题的流水线基类。 |
|
时间序列多分类问题的流水线基类。 |
|
时间序列回归问题的流水线基类。 |
流水线工具函数#
根据输入 DataCheckActionOption 列表中每个选项的默认参数返回操作列表。 |
|
创建并返回一个字符串,其中包含运行 EvalML 流水线所需的 Python 导入和代码。 |
|
创建并返回一个字符串,其中包含运行 EvalML 流水线所需的 Python 导入和代码。 |
|
给定输入数据、目标数据、估计器类和问题类型,根据输入生成一个带有推荐的预处理链的流水线类。该流水线将是指定问题类型相应流水线基类的子类。 |
|
创建由组件组成的流水线,用于处理输入的 DataCheckAction 列表。 |
|
创建由组件组成的流水线,用于处理运行数据检查输出的警告和错误。使用所有默认建议。 |
|
获取最接近阈值的数据的行索引。仅适用于二分类问题和流水线。 |
组件图#
作为有向无环图 (DAG) 的流水线组件图。 |
组件#
组件工具函数#
列出特定问题类型允许的模型类型。 |
|
如果为 True,则提供的估计器类无法处理 NaN 值作为输入。 |
|
创建并返回一个字符串,其中包含运行 EvalML 组件所需的 Python 导入和代码。 |
|
返回特定问题类型允许的估计器。 |
|
如有必要,将字符串名称输入标准化为 ComponentBase 子类。 |
|
为过采样器组件创建字典。找到每个类别与多数类别的比率。如果比率小于 sampling_ratio,则我们希望过采样,否则我们根本不希望采样,并保持数据不变。 |
转换器#
转换器是接受数据作为输入并输出转换后数据的组件。
可以自动从日期时间列提取特征的转换器。 |
|
Featuretools DFS 组件,为输入特征生成新特征。 |
|
删除输入数据中指定的列。 |
|
删除包含 NaN 值的行的转换器。 |
|
删除 NaN 值百分比超过指定阈值的特征的转换器。 |
|
删除由行索引指定的行的转换器。 |
|
可以自动从电子邮件提取特征的转换器。 |
|
根据指定的插补策略插补缺失数据。 |
|
一个转换器,使用 0 到 num_classes - 1 之间的值对目标标签进行编码。 |
|
使用线性判别分析减少特征数量。 |
|
对目标数据应用对数变换。 |
|
计算文本输入的潜在语义分析值的转换器。 |
|
可以使用 featuretools 的 nlp_primitives 自动对文本列进行特征工程的转换器。 |
|
一个转换器,将分类特征编码为独热数值数组。 |
|
一个转换器,将有序特征编码为表示类别相对顺序的有序整数数组。 |
|
SMOTE 过采样器组件。将根据组件输入自动选择是使用 SMOTE、SMOTEN 还是 SMOTENC。 |
|
使用主成分分析 (PCA) 减少特征数量。 |
|
根据指定的每列插补策略插补缺失数据。 |
|
通过拟合多项式和移动平均线,从时间序列中去除趋势和季节性。 |
|
将使用新的可空 dtype 的特征替换为 EvalML 中兼容的 dtype 的转换器。 |
|
使用随机森林分类器通过递归特征消除选择相关特征。 |
|
使用随机森林分类器根据重要性权重选择最重要的特征。 |
|
使用随机森林回归器通过递归特征消除选择相关特征。 |
|
使用随机森林回归器根据重要性权重选择最重要的特征。 |
|
在输入数据中按指定的 Woodwork 逻辑类型或语义标签选择列。 |
|
选择输入数据中指定的列。 |
|
根据指定的插补策略插补缺失数据。忽略自然语言列。 |
|
一个转换器,通过去除均值并缩放到单位方差来标准化输入特征。 |
|
使用 STL 算法从时间序列中去除趋势和季节性。 |
|
一个转换器,将分类特征编码为目标编码。 |
|
根据指定的插补策略插补缺失目标数据。 |
|
为时间序列问题延迟输入特征和目标变量的转换器。 |
|
根据指定的时间序列特定插补策略插补缺失数据。 |
|
规范间隔不一致的日期时间列的转换器。 |
|
初始化欠采样转换器,对数据集中的多数类别进行降采样。 |
|
可以自动从 URL 提取特征的转换器。 |
估计器#
分类器#
分类器是输出预测类别标签的组件。
使用指定策略进行预测的分类器。 |
|
CatBoost 分类器,一种使用决策树梯度提升的分类器。CatBoost 是一个开源库,原生支持分类特征。 |
|
决策树分类器。 |
|
Elastic Net 分类器。使用带有 elasticnet 惩罚项的逻辑回归作为基础估计器。 |
|
极度随机树分类器。 |
|
K 近邻分类器。 |
|
LightGBM 分类器。 |
|
逻辑回归分类器。 |
|
随机森林分类器。 |
|
堆叠集成分类器。 |
|
支持向量机分类器。 |
|
XGBoost 分类器。 |
回归器#
回归器是输出预测目标值的组件。
自回归积分滑动平均模型。三个参数 (p, d, q) 分别是 AR 阶数、差分阶数和 MA 阶数。更多信息请参见:https://statsmodels.cn/devel/generated/statsmodels.tsa.arima.model.ARIMA.html。 |
|
使用简单策略进行预测的基线回归器。这对于与其他回归器进行比较作为简单的基线回归器很有用。 |
|
CatBoost 回归器,一种使用决策树梯度提升的回归器。CatBoost 是一个开源库,原生支持分类特征。 |
|
决策树回归器。 |
|
Elastic Net 回归器。 |
|
Holt-Winters 指数平滑预测器。 |
|
极度随机树回归器。 |
|
LightGBM 回归器。 |
|
线性回归器。 |
|
Prophet 是一种基于加性模型的时间序列数据预测方法,该模型使用年度、每周和每日季节性以及假日效应来拟合非线性趋势。它最适用于具有明显季节性效应和数个季节历史数据的时间序列。Prophet 对缺失数据和趋势变化具有鲁棒性,并且通常能很好地处理异常值。 |
|
随机森林回归器。 |
|
堆叠集成回归器。 |
|
支持向量机回归器。 |
|
使用朴素预测方法进行预测的时间序列估计器。 |
|
XGBoost 回归器。 |
模型理解#
指标#
计算已拟合二分类流水线在不同潜在二分类决策阈值下的目标分数。 |
|
计算特征的排列重要性。 |
|
计算原始 dataframe 中某一列的排列重要性。 |
|
二分类和多分类的混淆矩阵。 |
|
获取每个阈值的混淆矩阵和直方图 bin,以及每个目标函数的最佳阈值。仅适用于二分类流水线。 |
|
返回一个 dataframe,显示线性模型中预测能力最强的特征。 |
|
将 y_true 和 y_pred 合并到单个 dataframe 中,并添加一列用于异常值。用于 graph_prediction_vs_actual()。 |
|
获取 prediction_vs_actual_over_time 图所需的数据。 |
|
标准化混淆矩阵。 |
|
计算一阶或二阶偏依赖性。 |
|
给定标签和二分类器预测概率,计算并返回表示精确率-召回率曲线的数据。 |
|
给定标签和分类器预测概率,计算并返回表示接收者操作特征 (ROC) 曲线的数据。适用于二分类或多分类问题。 |
|
使用 t-SNE 将 X 拟合到嵌入空间后,获取转换后的输出。 |
|
从特征重要性 dataframe 中找到最有影响力的特征以及任何有害特征。 |
|
输出训练后的流水线行为的人类可读解释。 |
可视化方法#
生成已拟合二分类流水线的目标分数与决策阈值关系的图表。 |
|
生成并显示混淆矩阵图。 |
|
创建一阶或二阶偏依赖性图。 |
|
生成流水线排列重要性的条形图。 |
|
生成并显示精确率-召回率图。 |
|
生成比较真实值和预测值的散点图。用于回归绘图。 |
|
在 x 轴上绘制目标值和预测值随时间变化的图表。 |
|
为二分类和多分类问题生成并显示接收者操作特征 (ROC) 图。 |
|
使用 t-SNE 将高维数据绘制到低维空间中。 |
预测解释#
创建一个报告,总结输入特征中每个数据点的最重要贡献特征。 |
|
创建一个报告,总结数据集中最佳点和最差点(按与真实标签的误差衡量)的最重要贡献特征。 |
目标#
目标基类#
所有目标的基类。 |
|
所有二分类目标的基类。 |
|
所有多分类目标的基类。 |
|
所有回归目标的基类。 |
领域特定目标#
使用成本-收益矩阵评分。分数量化给定值的收益,因此更高的数值分数代表更好的分数。成本和分数可以是负数,表示该值不利。例如,在货币利润的情况下,负成本和/或负分数代表现金流失。 |
|
计算由于欺诈造成的总交易金额中的损失百分比。 |
|
潜在客户评分。 |
|
低警报率下的敏感性。 |
分类目标#
二分类的准确率分数。 |
|
多分类的准确率分数。 |
|
二分类的 AUC 分数。 |
|
使用宏平均的多分类的 AUC 分数。 |
|
使用微平均的多分类的 AUC 分数。 |
|
使用加权平均的多分类的 AUC 分数。 |
|
二分类的基尼系数。 |
|
二分类的平衡准确率分数。 |
|
多分类的平衡准确率分数。 |
|
二分类的 F1 分数。 |
|
使用微平均的多分类的 F1 分数。 |
|
使用宏平均的多分类的 F1 分数。 |
|
使用加权平均的多分类的 F1 分数。 |
|
二分类的对数损失。 |
|
多分类的对数损失。 |
|
二分类的马修斯相关系数。 |
|
多分类的马修斯相关系数。 |
|
二分类的精确率分数。 |
|
使用微平均的多分类的精确率分数。 |
|
使用宏平均的多分类的精确率分数。 |
|
使用加权平均的多分类的精确率分数。 |
|
二分类的召回率分数。 |
|
使用微平均的多分类的召回率分数。 |
|
使用宏平均的多分类的召回率分数。 |
|
使用加权平均的多分类的召回率分数。 |
回归目标#
回归的解释方差分数。 |
|
回归的平均绝对误差。 |
|
时间序列回归的平均绝对缩放误差。 |
|
时间序列回归的平均绝对百分比误差。缩放 100 以返回百分比。 |
|
时间序列回归的对称平均绝对百分比误差。缩放 100 以返回百分比。 |
|
回归的均方误差。 |
|
回归的均方对数误差。 |
|
回归的中位数绝对误差。 |
|
回归的最大残差。 |
|
回归的决定系数。 |
|
回归的均方根误差。 |
|
回归的均方根对数误差。 |
目标函数工具函数#
获取所有目标名称的列表。 |
|
返回与给定问题类型相关的所有核心目标实例。 |
|
获取所有有效核心目标的列表。 |
|
获取给定问题类型的默认推荐评分指标。 |
|
获取非核心目标类。 |
|
返回与给定目标名称对应的 Objective 类。 |
|
获取用于优化的目标。 |
|
获取用于流水线排名的目标。 |
|
给定每个目标的最大值和最小值,将目标从 [0, inf) 范围转换为 [0, 1] 范围。 |
|
生成要考虑的目标,可选择修改默认值。 |
|
获取仅用于排名的目标类。 |
|
根据一组目标的得分,计算模型的推荐分数。 |
问题类型#
根据目标(二分类、多分类或回归)确定正在解决的问题类型。忽略缺失和空数据。 |
|
处理 problem_type,或者返回 ProblemTypes,或者从字符串转换。 |
|
判断提供的 problem_type 是否为二分类问题类型。 |
|
判断提供的 problem_type 是否为分类问题类型。 |
|
判断提供的 problem_type 是否为多分类问题类型。 |
|
判断提供的 problem_type 是否为回归问题类型。 |
|
判断提供的 problem_type 是否为时间序列问题类型。 |
|
定义支持的机器学习问题类型的枚举。 |
模型族#
处理 model_family,或者返回 ModelFamily,或者从字符串转换。 |
|
机器学习模型族的枚举。 |
调优器#
调优器基类。 |
|
贝叶斯优化器。 |
|
网格搜索优化器,使用网格生成所有可能的搜索点。 |
|
随机搜索优化器。 |
数据检查#
数据检查类#
检查任何目标标签是否不平衡,或者每个目标的数值数量是否小于 CV 折数的 2 倍。用于分类问题。 |
|
检查日期时间列是否具有等间隔且单调递增或递减,以便时间序列估计器支持。 |
|
检查任何特征是否可能是 ID 列。 |
|
检查目标数据是否被认为是无效的。 |
|
检查任何特征集是否可能是多重共线。 |
|
检查目标或任何特征是否没有方差。 |
|
检查输入中是否存在高度空值的数值、布尔、分类、自然语言和未知列以及行。 |
|
使用 IQR 检测输入数据中是否存在异常值,以确定异常分数。 |
|
检查输入中是否存在值稀疏填充的列。 |
|
检查目标数据是否包含某些可能需要在训练前进行转换以提高模型性能的分布。数据集样本数小于等于 5000 时使用 Shapiro-Wilks 检验,否则使用 Jarque-Bera。 |
|
使用互信息、Pearson 相关系数和其他相关性指标检查任何特征是否与目标高度相关。 |
|
检查时间序列参数是否与数据分割兼容。 |
|
检查时间序列目标数据是否与分割兼容。 |
|
检查输入中是否有对于分类问题来说过于唯一或对于回归问题来说不够唯一的列。 |
|
所有数据检查的基类。 |
|
数据检查的集合。 |
|
AutoML 默认使用的一组基本数据检查。 |
数据检查消息#
DataCheck 返回的消息的基类,按名称标记。 |
|
DataCheckMessage 的子类,用于数据检查返回的错误。 |
|
DataCheckMessage 的子类,用于数据检查返回的警告。 |
数据检查消息类型#
数据检查消息类型的枚举:WARNING 或 ERROR。 |
数据检查消息代码#
数据检查消息代码的枚举。 |
数据检查操作#
DataCheck 返回的推荐操作。 |
|
数据检查操作代码的枚举。 |
|
DataCheck 返回的推荐操作选项。 |
工具函数#
通用工具函数#
将描述时间长度的字符串转换为其以秒为单位的长度。 |
|
将 IntegerNullable、BooleanNullable 类型向下转换为 Double、Boolean,以支持 ARIMA、CatBoost 和 LightGBM 等某些估计器。 |
|
删除所有 dataframe 或 series 中包含任何 NaN 的行。 |
|
获取基类的可导入子类。用于动态列出我们所有的估计器、转换器、组件和流水线。 |
|
获取具有关联名称的日志记录器。 |
|
确定给定数据中应作为时间索引的列。 |
|
尝试按名称导入请求的库。如果导入失败,则引发 ImportError 或警告。 |
|
从给定的 list、pandas 或 numpy 输入创建 Woodwork 结构,并为列指定类型。如果未指定列的类型,将由 Woodwork 推断。 |
|
检查给定的 DataFrame 是否只包含数值。 |
|
使用种子生成 numpy.random.RandomState 实例。 |
|
给定一个 numpy.random.RandomState 对象,生成一个表示另一个随机数生成器种子值的整数。或者,如果给定一个整数,则返回该整数。 |
|
在开头的 num_to_pad 行填充 nans。 |
|
将给定值转换为可安全用于 repr 的字符串。 |
|
如果指定,则将 fig 保存到 filepath;否则保存到默认位置。 |