发行说明#
- 未来版本
增强功能
修复
变更
文档变更
测试变更
警告
重大变更
- v0.84.0 2024年6月6日
- v0.83.0 2024年2月2日
警告
重大变更
- v0.82.0 2023年11月3日
警告
重大变更
- v0.81.1 2023年10月16日
警告
重大变更
警告
重大变更
- v0.80.0 2023年8月30日
警告
重大变更
- v0.79.0 2023年8月11日
文档变更
测试变更
警告
重大变更
- v0.78.0 2023年7月10日
- v0.77.0 2023年6月7日
变更
文档变更
- 测试变更
通过 Airflow 在合并时运行 looking glass 性能测试 #4198
- v0.76.0 2023年5月9日
- v0.75.0 2023年5月1日
- v0.74.0 2023年4月18日
- v0.73.0 2023年4月10日
- v0.72.0 2023年3月27日
- v0.71.0 2023年3月17日*
- 修复
修复了
PipelineBase._supports_fast_permutation_importance
在堆叠集成管道中出现的错误 #4083
- v0.70.0 2023年3月16日
- v0.69.0 2023年3月15日
- 增强功能
将 black 移至常规依赖项,并将其用于
generate_pipeline_code
#4005实现了
generate_pipeline_example
#4023为组件特定的可空类型处理添加了新的 downcast 工具,并开始在目标和组件基类上实现 #4024
为需要可空类型不兼容性属性的组件添加了这些属性 #4031
添加了
get_evalml_requirements_file
#4034如果 DFS 特征预先存在,带有 DFS Transformers 的管道将运行快速置换重要性 #4037
在管道级别添加了 get_prediction_intervals() #4052
- v0.68.0 2023年2月15日
- v0.67.0 2023年1月31日
- v0.66.1 2023年1月26日
- v0.66.0 2023年1月24日
- v0.65.0 2023年1月3日
- 变更
向
DateTimeFormatDataCheck
添加了阈值,以考虑过多的重复或 nan 值 #3883更改了
SimpleImputer
和ClassImbalanceDataCheck
对Boolean
列的处理方式,以兼容新的 Woodwork 推断 #3892将 decomposer 的
seasonal_period
参数拆分为seasonal_smoother
和period
参数 #3896由于 403 错误,从断链检查工作流程中排除了 catboost #3899
将 scikit-learn 版本绑定在 1.2.0 以下 #3901
将新创建的 one hot encoded 列转换为
bool
dtype #3913
- 文档变更
在时间序列文档中隐藏了非必要的警告消息 #3890
测试变更
- v0.64.0 2022年12月8日
增强功能
文档变更
测试变更
- v0.63.0 2022年11月23日
- 修复
修复了
TimeSeriesFeaturizer
可能选择特征工程窗口之外的滞后项的 bug #3773修复了
TimeSeriesFeaturizer
无法编码具有非数值类别的 Ordinal 列的 bug #3812更新了演示数据集链接指向新的端点 #3826
更新了
STLDecomposer
,使其在时间索引频率不存在时进行推断 #3829更新了
_drop_time_index
,将时间索引从 X 移动到X.index
和y.index
#3829修复了在偏依赖中,工程特征丢失其 origin 属性导致失败的 bug #3830
修复了偏依赖快速模式处理 DFS Transformer 时无法处理多输出特征的 bug #3830
允许目标在偏依赖的 DFS Transformer 快速模式处理中存在但被忽略 #3830
- v0.62.0 2022年11月1日
- v0.61.1 2022年10月27日
- v0.61.0 2022年10月25日
- v0.60.0 2022年10月19日
警告
- 重大变更
TargetLeakageDataCheck
现在使用参数mutual_info
而不是mutual
#3728
- v0.59.0 2022年9月27日
- v0.58.0 2022年9月20日
文档变更
- v0.57.0 2022年9月6日
- 增强功能
添加了
KNNImputer
类,并为 Imputer 创建了新的 knn 参数 #3662
- v0.56.1 2022年8月19日
- v0.56.0 2022年8月15日
- 修复
由于性能回归,撤销了 Woodwork 0.17.x 兼容性工作 #3664
- v0.55.0 2022年7月24日
- 增强功能
增加了在 transformer 中调用
ww.init()
时传递给 Woodwork 的逻辑类型信息量 #3604增加了在
automl.search()
中记录每个批次和管道耗时长的能力 #3577添加了为 ARIMA 模型设置
sp
参数的选项 #3597更新了时间序列问题的交叉验证分割大小,以匹配预测范围,从而提高性能 #3616
将保留集评估作为 AutoML 搜索和管道排名的一部分 #3499
添加了 Dockerfile.arm 和 .dockerignore,用于 Python 版本和 M1 测试 #3609
添加了
test_gen_utils::in_container_arm64()
fixture #3609
- 修复
修复了迭代图表未出现在文档中的 bug #3592
更新了
load_diabetes()
方法,以考虑 scikit-learn 1.1.1 对数据集的更改 #3591将 woodwork 版本上限限制在 < 0.17.0 #3612
将 scikit-optimize 的最低版本提高到 0.9.0 #3614
涉及回归和不支持数据类型的无效目标数据检查现在会生成不同的
DataCheckMessageCode
#3630更新了
test_data_checks.py::test_data_checks_raises_value_errors_on_init
- 更宽松的文本检查 #3609
文档变更
警告
- 重大变更
重构了遍历所有组件的测试用例,使用
pytest.mark.parametrise
,并将相应的if...continue
块更改为pytest.mark.xfail
#3622
- v0.54.0 2022年6月23日
- v0.53.1 2022年6月9日
- 变更
在
setup.cfg
中将开发状态设置为4 - Beta
#3550
- v0.53.0 2022年6月9日
- 增强功能
将
n_jobs
传递给默认算法 #3548
- v0.52.0 2022年5月12日
- 变更
添加了 featuretools 和 woodwork 的 github 工作流程,使其能够针对 evalml 测试其主分支。 #3504
将 pmdarima 添加到 conda recipe。 #3505
在对 null 值发出警告之前,为
NullDataCheck
添加了阈值 #3507将
NoVarianceDataCheck
更改为仅输出警告 #3506撤销了 XGBoost Classifier/Regressor 的补丁,该补丁要求所有布尔列需要转换为 int。 #3503
更新了
roc_curve()
和conf_matrix()
,使其能够处理 IntegerNullable 和 BooleanNullable 类型。 #3465将
ComponentGraph._transform_features
更改为引发PipelineError
而不是ValueError
。这不是一个重大变更,因为PipelineError
是ValueError
的子类。 #3497将
sklearn
版本上限限制在 1.1.0 #3518
- 文档变更
更新后在 Read the Docs 中安装 prophet extras。 #3509
- 测试变更
将 test recipe 中的 vowpal wabbit 从
evalml-core
包移到evalml
包 #3502
- v0.51.0 2022年4月28日
警告
- v0.50.0 2022年4月12日
警告
- v0.49.0 2022年3月31日
- 修复
修复了 PR 3407 后的 conda build #3429
警告
- 重大变更
将模型理解指标从
graph.py
移至metrics.py
#3417
- v0.48.0 2022年3月25日
- 增强功能
增加了对时间序列分类问题中过采样(oversampling)的支持 #3387
警告
- 重大变更
将部分依赖函数从
graph.py
移动到partial_dependence.py
#3404
- v0.47.0 2022年3月16日
- v0.46.0 2022年3月3日
- v0.45.0 2022年2月17日
- 测试变更
添加每30分钟自动批准依赖项工作流的计划 #3312
- v0.44.0 2022年2月4日
警告
- v0.43.0 2022年1月25日
- 变更
更新了
DataCheck
的validate()
输出,使其操作返回字典而不是列表 #3142更新了
DataCheck
的validate()
API,使其使用新的DataCheckActionOption
类而不是DataCheckAction
#3152取消了 numba 版本的上限,并将其从 requirements 中移除 #3263
将
HighlyNullDataCheck
重命名为NullDataCheck
#3197更新了数据检查
validate()
输出,使其返回警告和错误列表而不是字典 #3244将
pandas
版本上限设置为 < 1.4.0 #3274
- 测试变更
根据 dependabot 反馈,在
test-requirements.txt
中将IPython
的最低版本提高到 7.16.3 #3269
警告
- v0.42.0 2022年1月18日
- 修复
修复了分类管道仅接受具有适当类别数量的目标数据的错误 #3185
在
DefaultAlgorithm
中添加了对时间序列的支持 #3177标准化了特征化组件的名称 #3192
移除了 text_input.ipynb 中的空单元格 #3234
移除了管道预测概率为 1 的类别时可能出现的预测解释失败 #3221
在生成部分依赖网格之前删除了 NaNs #3235
允许预测解释可进行 json 序列化 #3262
修复了
InvalidTargetDataCheck
不会检查时间序列回归目标的错误 #3251修复了
are_datasets_separated_by_gap_time_index
中的错误 #3256
- 测试变更
更新自动批准工作流触发器,并在合并后删除分支 #3265
警告
- 重大变更
将
DateTime Featurizer Component
重命名为DateTime Featurizer
,将Natural Language Featurization Component
重命名为Natural Language Featurizer
#3192
- v0.41.0 2022年1月6日
- v0.40.0 2021年12月22日
警告
- 重大变更
在时间序列问题的
problem_configuration
中,将date_index
重命名为time_index
#3137
- v0.39.0 2021年12月9日
- 修复
修复了
RFRegressorSelectFromModel
和RFClassifierSelectFromModel
的默认参数,以避免选择所有特征 #3110
- 变更
移除了
ARIMARegressor
和ProphetRegressor
对 datetime 索引的依赖 #3104在拟合
ARIMARegressor
时包含了目标泄露检查,以考虑基于ARIMARegressor
的管道中缺乏TimeSeriesFeaturizer
的情况 #3104清理和重构了
InvalidTargetDataCheck
的实现和 docstring #3122从
HighlyNullDataCheck
的validate()
方法输出中移除了索引信息 #3092添加了
ReplaceNullableTypes
组件,为处理 pandas 可空类型做准备。 #3090更新了
make_pipeline
,用于处理预处理管道中的 pandas 可空类型。 #3129移除了未使用的
EnsembleMissingPipelinesError
异常定义 #3131
警告
- v0.38.0 2021年11月27日
- 增强功能
向数据检查操作类添加了
data_check_name
属性 #3034向
TextFeaturizer
添加了NumWords
和NumCharacters
原语,并将TextFeaturizer
重命名为NaturalLanguageFeaturizer
#3030添加了对
scikit-learn > 1.0.0
的支持 #3051要求在
AutoMLSearch
中为时间序列问题指定date_index
参数 #3041允许时间序列管道预测测试数据集,其长度小于或等于
forecast_horizon
。还允许测试集的索引从 0 开始。 #3071使时间序列管道能够预测包含非预知特征的数据 #3094
- 修复
在 fit 和 predict/predict_proba 数据类型不同时添加了错误消息 #3036
修复了集成组件无法转换为 JSON 格式的错误 #3049
修复了具有调优整数超参数的组件无法转换为 JSON 格式的错误 #3049
修复了力图未显示正确特征值的错误 #3044
在
find_confusion_matrix_per_threshold
中包含了管道阈值处的混淆矩阵 #3080修复了 One Hot Encoder 在非分类特征具有缺失值时会出错的错误 #3083
修复了
Delayed Feature Transformer
从分类列创建的特征会被推断为分类的错误 #3083
- 文档变更
更新了文档,使其使用数据检查操作方法而不是手动清理数据 #3050
- 测试变更
更新了集成测试,使其使用
make_pipeline_from_actions
而不是私有方法 #3047
警告
- 重大变更
向数据检查操作类添加了
data_check_name
属性 #3034将
TextFeaturizer
重命名为NaturalLanguageFeaturizer
#3030更新了
Pipeline.graph_json
函数,使其返回“from”和“to”边的字典而不是元组 #3049删除了
predict_uses_y
估计器属性 #3069更改了
AutoMLSearch
中的时间序列问题,使其需要一个非None
的date_index
#3041更改了
DelayedFeatureTransformer
,使其在拟合时如果date_index
为None
则抛出ValueError
#3041将
X=None
传递给DelayedFeatureTransformer
已弃用 #3041
- v0.37.0 2021年11月9日
- 增强功能
向模型理解添加了
find_confusion_matrix_per_threshold
#2972在
AutoMLSearch
期间,限制某些多分类问题的计算密集型模型,允许通过参数allow_long_running_models
选择启用 #2982向预测解释模块添加了对堆叠集成管道的支持 #2971
为数据检查和数据检查操作工作流添加了集成测试 #2883
更改了管道结构,以便在
DefaultAlgorithm
中单独处理分类列 #2986向
DelayedFeatureTransformer
添加了算法以选择更好的滞后 #3005添加了测试以确保序列化管道保留阈值 #3027
添加了 AutoML 函数以访问集成管道的输入管道 ID #3011
添加了在二分类情况下定义哪个类为“正”类的能力,用于标签编码器 #3033
- 变更
更新了
OutliersDataCheck
和UniquenessDataCheck
,并允许暂停可空类型错误 #3018
- v0.36.0 2021年10月27日
- 增强功能
将 LIME 作为
explain_predictions
和explain_predictions_best_worst
的算法选项添加 #2905标准化了数据检查消息,并向数据检查消息详情字典添加了默认的“rows”和“columns” #2869
向管道工具添加了
rows_of_interest
#2908添加了对 woodwork 版本
0.8.2
的支持 #2909增强了
DateTimeFeaturizer
,使其能够处理日期特征中的NaNs
#2909在模型理解工具中添加了对 woodwork 逻辑类型
PostalCode
、SubRegionCode
和CountryCode
的支持 #2946添加了 Vowpal Wabbit 回归器和分类器 #2846
为未来的无监督学习搜索添加了 NoSplit 数据分割器 #2958
添加了将操作转换为预处理管道的方法 #2968
- 修复
修复了部分依赖不尊重 ww 模式的错误 #2929
修复了
StandardScaler
上 datetimes 的calculate_permutation_importance
#2938修复了
SelectColumns
,使其在DefaultAlgorithm
中仅选择可用特征进行特征选择 #2944修复了
DropColumns
组件在DefaultAlgorithm
中未接收参数的错误 #2945修复了
get_pipeline
或clone
未返回训练后的二分类阈值的错误 #2948修复了
Oversampler
选择了 ww 逻辑分类而不是 ww 语义分类的错误 #2946
警告
- 重大变更
标准化了数据检查消息,并向数据检查消息详情字典添加了默认的“rows”和“columns”。这可能会改变数据检查返回的消息数量。 #2869
- v0.35.0 2021年10月14日
警告
- 重大变更
更新了管道,使其使用标签编码器组件而不是在管道级别进行编码。这意味着管道将不再自动编码非数值目标。如果您处理分类问题和非数值目标,请使用标签编码器。 #2821
删除了 scikit-learn 集成器 #2819
IterativeAlgorithm
现在需要 X、y、problem_type 作为必需参数,以及 sampler_name、allowed_model_families、allowed_component_graphs、max_batches 和 verbose 作为可选参数 #2854在
ComponentGraph
中,将fit_features
和compute_final_component_features
的方法名称更改为fit_and_transform_all_but_final
和transform_all_but_final
;在管道类中,将compute_estimator_features
更改为transform_all_but_final
#2902
- v0.34.0 2021年9月30日
- 增强功能
更新以与 Woodwork 0.8.1 配合使用 #2783
在预测解释中添加了
training_data
和training_target
不为None
的验证 #2787在管道和组件图中添加了对仅训练组件的支持 #2776
为
ComponentGraph.instantiate
的 parameters 值添加了默认参数 #2796向
LightGBMRegressor's
的支持问题类型添加了TIME_SERIES_REGRESSION
#2793提供了管道 DAG 结构的 JSON 表示 #2812
对传递给时间序列
predict
和predict_proba
的保留数据添加了验证 #2804在
OutliersDataCheck
中添加了关于哪些行索引是异常值的信息 #2818向顶级
search()
方法添加了 verbose 标志 #2813向
OutliersDataCheck.validate()
的输出添加了“DROP_ROWS”操作 #2820添加了
AutoMLSearch
接受SequentialEngine
实例作为引擎输入的能力 #2838向 EvalML 添加了新的标签编码器组件 #2853
添加了我们自己的部分依赖实现 #2834
- 修复
修复了
calculate_permutation_importance
对于带有目标转换器的管道未计算正确值的错误 #2782修复了时间序列管道中,转换后的目标值未在
fit
中使用的错误 #2780修复了
AutoMLSearch
的score_pipelines
方法不适用于时间序列问题的错误 #2786移除了
TargetTransformer
类 #2833添加了测试以验证管道对
ComponentGraph
的支持 #2830修复了
AutoMLSearch
中基线回归管道的错误参数 #2847修复了
IterativeAlgorithm
中未遵守期望的估计器族顺序的错误 #2850
- 变更
更改了 woodwork 初始化,使其使用部分模式 #2774
将
Transformer.transform()
设为抽象方法 #2744删除了
EmptyDataChecks
类 #2794移除了
make_pipeline
中检查对数分布的数据检查 #2806将
woodwork
的最低版本更改为 0.8.0 #2783将
woodwork
版本锁定到 0.8.0 #2832从
ComponentBase
和转换器中移除了model_family
属性 #2828限制了
scikit-learn
,直到可以解决新特性和错误 #2842在调用 Sklearn 集成器时显示 DeprecationWarning #2859
警告
- v0.33.0 2021年9月15日
- v0.32.1 2021年9月10日
- 增强功能
向
AutoMLSearch
添加了verbose
标志,默认情况下以静默模式运行搜索 #2645向
XGBoostClassifier
添加了标签编码器以消除警告 #2701将
XGBoostClassifier
的eval_metric
设置为logloss
#2741添加了对
woodwork
版本0.7.0
和0.7.1
的支持 #2743更改了
explain_predictions
函数,使其显示原始特征值 #2759向
graph_prediction_vs_actual_over_time
和get_prediction_vs_actual_over_time_data
添加了X_train
和y_train
#2762将
forecast_horizon
作为时间序列管道和AutoMLSearch
的必需参数添加 #2697向时间序列管道添加了
predict_in_sample
和predict_proba_in_sample
方法,用于预测目标已知的数据(例如交叉验证) #2697
- 变更
删除了
drop_nan_target_rows
工具方法 #2737移除了默认日志记录设置和调试日志文件 #2645
将
XGBoostClassifier
和XGBoostRegressor
的默认 n_jobs 值更改为 12 #2757将
TimeSeriesBaselineEstimator
更改为仅适用于带有DelayedFeaturesTransformer
的时间序列管道 #2697将
X_train
和y_train
作为可选参数添加到管道的predict
、predict_proba
方法中。仅用于时间序列管道 #2697将
training_data
和training_target
作为可选参数添加到explain_predictions
和explain_predictions_best_worst
中,以支持时间序列管道 #2697更改了时间序列管道预测,使其不再输出填充 NaNs 的 series/dataframe。对于
X
输入中的每一行,都将返回一个预测结果 #2697
- 测试变更
修复了针对 very_lognormal 分布的
TargetDistributionDataCheck
测试不稳定问题 #2748
警告
- 重大变更
移除了默认日志记录设置和调试日志文件 #2645
向
graph_prediction_vs_actual_over_time
和get_prediction_vs_actual_over_time_data
添加了X_train
和y_train
#2762将
forecast_horizon
作为时间序列管道和AutoMLSearch
的必需参数添加 #2697将
TimeSeriesBaselineEstimator
更改为仅适用于带有DelayedFeaturesTransformer
的时间序列管道 #2697将
X_train
和y_train
作为时间序列管道中predict
和predict_proba
的必需参数添加 #2697将
training_data
和training_target
作为时间序列管道中explain_predictions
和explain_predictions_best_worst
的必需参数添加 #2697
- v0.32.0 2021年8月31日
- 增强功能
允许
AutoMLSearch
的engine
参数使用字符串 #2667将
ProphetRegressor
添加到 AutoML #2619将
DefaultAlgorithm
集成到AutoMLSearch
中 #2634移除了 SVM 的“linear”和“precomputed”核超参数选项,并改进了默认参数 #2651
更新了
ComponentGraph
初始化,当用户尝试对不产生元组输出的组件使用.y
时抛出ValueError
#2662更新以支持 Woodwork 0.6.0 #2690
更新了管道
graph()
,以区分 X 和 y 边 #2654添加了
DropRowsTransformer
组件 #2692将
DROP_ROWS
添加到_make_component_list_from_actions
并清理元数据 #2694添加了新的集成器组件 #2653
警告
- v0.31.0 2021年8月19日
修复
- 测试变更
通过在 GitHub 中将 Prophet 测试拆分到单独的工作流来加快 CI 速度 #2644
警告
- 重大变更
TimeSeriesRegressionPipeline
不再继承自TimeSeriesRegressionPipeline
#2649
- v0.30.2 2021年8月16日
- 修复
更新了更新日志和版本号以匹配发布。版本 0.30.1 是错误发布的,没有更改版本号。0.30.2 将取代它。
- v0.30.1 2021年8月12日
- 增强功能
为时间序列问题添加了
DatetimeFormatDataCheck
#2603将
ProphetRegressor
添加到估计器中 #2242更新了
ComponentGraph
,使其在预测期间不调用采样器的 transform 方法,并更新了采样器的 transform 方法,使得fit_transform
等同于fit(X, y).transform(X, y)
#2583更新了
ComponentGraph
的_validate_component_dict
逻辑,对输入值要求更严格 #2599修补了
xgboost
估计器中的错误,即仅对布尔类型特征矩阵进行预测时会抛出异常。 #2602更新了
ARIMARegressor
,使其使用相对预测来预测值 #2613添加了创建没有估计器作为最终组件的管道的支持,并向管道和组件图添加了
transform(X, y)
方法 #2625更新以支持 Woodwork 0.5.1 #2610
- 文档变更
为避免本地文档构建错误,仅在 ReadTheDocs 构建中添加警告禁用和下载头文件,不在本地添加 #2617
警告
- 重大变更
将 SMOTE 采样器重命名为 SMOTE 过采样器。请使用
SMOTEOversampler
、SMOTENCOversampler
、SMOTENOversampler
代替SMOTESampler
、SMOTENCSampler
和SMOTENSampler
#2595
- v0.30.0 2021 年 8 月 3 日
- 增强功能
新增
LogTransformer
和TargetDistributionDataCheck
#2487当传入的 pipeline 参数未在 pipeline 中使用时,向用户发出警告 #2564
新增 Gini 系数作为目标函数 #2544
为
ComponentGraph
新增repr
#2565新增组件,用于从
URL
和EmailAddress
Logical Types 中提取特征 #2550为
TextFeaturizer
中的 NaN 值添加支持 #2532新增
SelectByType
转换器 #2531在
HighlyNullDataCheck
中为 null 行和 null 列的百分比设置了单独的阈值 #2562为 NaN 自然语言值添加支持 #2577
- 修复
在
partial_dependence
中为URL
、NaturalLanguage
和EmailAddress
类型提高了错误消息级别 #2573
- 变更
更新了
PipelineBase
实现,以从组件列表中创建 pipelines #2549将
get_hyperparameter_ranges
从 automl/utils 模块移动到PipelineBase
类 #2546将
ComponentGraph
的get_parents
重命名为get_inputs
#2540移除了
ComponentGraph.linearized_component_graph
和ComponentGraph.from_list
#2556更新了
ComponentGraph
,强制要求图中的每个组件都必须有 .x 和 .y 输入 #2563将现有集成分类器的实现从
StackedEnsemblers
重命名为SklearnStackedEnsemblers
#2578
- 测试变更
新增测试,确保
split_data
在处理时间序列问题时不打乱数据 #2552
警告
- v0.29.0 2021 年 7 月 21 日
- 增强功能
更新了日期时间特征的一维局部依赖性支持 #2454
添加了关于如何修复由损坏的 ww schema 引起的错误的详细信息 #2466
添加了使用内置 pickle 保存 AutoMLSearch 的能力 #2463
更新了我们的组件和组件图,以使用 ww 0.4.1 的最新功能,例如
concat_columns
和原地删除。 #2465新增了基于 concurrent.futures 的并行 AutoML 引擎 #2506
为 AutoMLSearch 中的新 Woodwork
Unknown
类型添加了支持 #2477更新了我们的组件,增加了一个属性,描述它们是否修改特征或目标,并且可以在 pipeline 初始化的 list API 中使用 #2504
更新了
ComponentGraph
以接受 X 和 y 作为输入 #2507从
DataCheckMessageCode
枚举中删除了未使用的TARGET_BINARY_INVALID_VALUES
,并修复了目标函数文档的格式 #2520新增
EvalMLAlgorithm
#2525为
TextFeaturizer
中的 NaN 值添加支持 #2532
警告
- 重大变更
由于 pandas 升级,Imputer 不再支持 Natural Language 类型中的 NaN 值。 #2477
- v0.28.0 2021 年 7 月 2 日
- 修复
删除了
IterativeAlgorithm
中无法到达的代码行 #2464
- v0.27.0 2021 年 6 月 22 日
- 增强功能
为预测解释添加了力图 (force plots) #2157
移除了
AutoMLSearch
的自引用 #2304为
generate_pipeline_code
添加了对非线性 pipelines 的支持 #2332为 pipelines 添加了
inverse_transform
方法 #2256添加了可选的自动更新检查器 #2350
在
AutoMLSearch
的rankings
和full_rankings
表中添加了search_order
#2345更新了二元分类的阈值优化方法 #2315
更新了 demos,从 S3 拉取数据而非在包中包含 demo 数据 #2387
升级 woodwork 版本到 v0.4.1 #2379
- 修复
在整个 pipeline fit/predict 过程中保留用户指定的 woodwork 类型 #2297
修复了
ComponentGraph
在有组件同时返回 X 和 y 时将 target 追加到final_component_features
的 bug #2358修复了多分类问题中当类别标签是数字时,部分依赖关系图方法失效的 bug #2372
为二元分类问题添加了
thresholding_objective
参数到AutoMLSearch
#2320在 SMOTE Oversamplers 中为
k_neighbors
参数添加了更改,以自动处理小样本 #2375更改了
Logistic Regression Classifier
文件命名 #2399固定 pytest-timeout 版本以修复最低依赖检查器 #2425
将
Elastic Net Classifier
基类替换为Logistsic Regression
以避免NaN
输出 #2420
- 变更
清理了
PipelineBase
的component_graph
和_component_graph
属性。更新了PipelineBase
的__repr__
,并为ComponentGraph
添加了__eq__
#2332在 EvalML 仓库中添加并应用了
black
linting 包,取代autopep8
#2306将 custom_hyperparameters 从 pipelines 中分离,并作为参数添加到
AutoMLSearch
#2317将 allowed_pipelines 替换为 allowed_component_graphs #2364
从
PipelineBase
中移除了私有方法_compute_features_during_fit
#2359更新了
ComponentGraph
中的compute_order
,使其成为只读属性 #2408取消固定 requirements.txt 中的 PyZMQ 版本 #2389
取消限制 requirements.txt 中的 LightGBM 版本 #2405
更新了 plotly 的最低版本 #2415
从核心目标中移除了
SensitivityLowAlert
目标 #2418
- 测试变更
更新了在所有 pull request 上运行的最低单元测试 #2314
传递 token 以授权上传 codecov 报告 #2344
新增
pytest-timeout
。所有运行时间超过 6 分钟的测试都将失败。 #2374将 dask 测试分离到单独的 GitHub action 作业中,以隔离 dask 故障。 #2376
重构了 dask 测试 #2377
重新添加了合并后的 dask/非 dask 单元测试,并重命名了仅包含 dask 的单元测试。 #2382
加快了单元测试速度并将其拆分为单独的作业 #2365
更改 CI 作业名称,为 python 3.9 运行 lint,在美东时间凌晨 3 点为 python 3.8 运行 nightlies #2395 #2398
将运行于 PRs 的 CI 作业的 fail-fast 设置为 false #2402
警告
- v0.25.0 2021 年 6 月 1 日
警告
- v0.24.2 2021 年 5 月 24 日
警告
- v0.24.1 2021 年 5 月 16 日
- 文档变更
将 Sphinx 版本限制在 4.0.0 以下 #2244
- v0.24.0 2021 年 5 月 4 日
- 增强功能
将 date_index 添加为时间序列问题的必填参数 #2217
让
OneHotEncoder
将转换后的列作为布尔值而不是浮点数返回 #2170将 Oversampler 转换器组件添加到 EvalML #2079
将 Undersampler 添加到 AutoMLSearch,以及参数
_sampler_method
和sampler_balanced_ratio
#2128更新了预测解释函数,允许使用带有 XGBoost 估计器的 pipelines #2162
添加了日期时间列的部分依赖支持 #2180
更新了精确率-召回率曲线,添加了正标签索引参数,并修复了二维预测概率 #2090
在
HighlyNullDataCheck
中添加了 pct_null_rows #2211添加了一个独立的 AutoML search 方法以方便使用,该方法运行数据检查然后运行 AutoML #2152
为
BalancedClassficationSampler
添加了采样字典支持 #2235
- 测试变更
使用 machineFL 用户 token 进行依赖项更新 bot,并添加更多审阅者 #2189
警告
- 重大变更
所有基线 pipeline 类(
BaselineBinaryPipeline
、BaselineMulticlassPipeline
、BaselineRegressionPipeline
等)均已删除 #2202更新了 pipeline API,以接受 component graph 和其他类属性作为实例参数。旧的 pipeline API 仍然有效,但不会长期受支持。现在可以通过将 component graph 指定为第一个参数,然后传入可选参数(如
custom_name
、parameters
等)来初始化 pipelines。例如:BinaryClassificationPipeline(["Random Forest Classifier"], parameters={})
。 #2091移除了 EvalML 中所有旧的数据分割器 #2193
删除了工具方法
make_pipeline_from_components
#2218
- v0.23.0 2021 年 4 月 20 日
- 修复
修复了
BalancedClassificationDataCVSplit
、BalancedClassificationDataTVSplit
和BalancedClassificationSampler
,使其使用minority:majority
比例而不是majority:minority
#2077修复了带有分类变量的双向部分依赖图无法正常工作的 bug #2117
修复了使用 list
component_graph
和重复组件的 pipelines 中,hyperparameters
未正确显示的 bug #2133修复了
AutoMLSearch
中的pipeline_parameters
参数未应用于作为allowed_pipelines
传入的 pipelines 的 bug #2133修复了
AutoMLSearch
未将自定义超参数应用于具有 listcomponent_graph
和重复组件的 pipelines 的 bug #2133
- 变更
移除了 Undersampler 中的
hyperparameter_ranges
,并将采样器的balanced_ratio
重命名为sampling_ratio
#2113将
TARGET_BINARY_NOT_TWO_EXAMPLES_PER_CLASS
数据检查消息代码重命名为TARGET_MULTICLASS_NOT_TWO_EXAMPLES_PER_CLASS
#2126修改了分类特征的一维部分依赖图,以条形图形式显示数据 #2117
将
automl.rankings
的score
列重命名为mean_cv_score
#2135移除文档工具输出中的“warning” #2031
警告
- 重大变更
将
BalancedClassificationDataCVSplit
、BalancedClassificationDataTVSplit
、BalancedClassficationSampler
和 Undersampler 的balanced_ratio
重命名为sampling_ratio
#2113删除了 automl 结果中的“errors”键 #1975
删除了
raise_and_save_error_callback
和log_and_save_error_callback
#1975修复了
BalancedClassificationDataCVSplit
、BalancedClassificationDataTVSplit
和BalancedClassificationSampler
,使其使用 minority:majority 比例而不是 majority:minority #2077
- v0.22.0 2021 年 4 月 6 日
- 增强功能
添加了用于
linux_unit_tests
的 GitHub Action #2013为
InvalidTargetDataCheck
添加了推荐操作,更新了_make_component_list_from_actions
以处理新操作,并添加了TargetImputer
组件 #1989更新了
AutoMLSearch._check_for_high_variance
,使其不发出RuntimeWarning
#2024当传递给
explain_predictions
的 pipeline 是Stacked Ensemble
pipeline 时,添加了异常 #2033添加了低警报率下的敏感性作为目标函数 #2001
新增
Undersampler
转换器组件 #2030
测试变更
- v0.21.0 2021 年 3 月 24 日
- 增强功能
将
AutoMLSearch
的optimize_thresholds
默认值更改为 True #1943添加了多种过采样和欠采样方法作为不平衡分类的数据分割器 #1775
为平衡分类数据分割器添加了 params 以提高可见性 #1966
更新了
make_pipeline
,如果输入数据没有数值或分类列,则不添加Imputer
#1967更新了
ClassImbalanceDataCheck
以更好地处理多类不平衡问题 #1986为数据检查的
validate
方法的输出添加了推荐的操作 #1968为
partial_dependence
添加了错误消息,用于特征值大部分相同的情况 #1994更新了
OneHotEncoder
,默认删除具有两个类别的特征的一个冗余特征 #1997新增了
PolynomialDecomposer
组件 #1992新增
DateTimeNaNDataCheck
数据检查 #2039
文档变更
警告
- v0.20.0 2021 年 3 月 10 日
- 增强功能
添加了用于检测依赖项更改的 GitHub Action #1933
为 AutoMLSearch 创建单独的 CV split 来训练堆叠集成模型 #1814
添加了用于 Linux 单元测试的 GitHub Action #1846
新增
ARIMARegressor
估计器 #1894新增
DataCheckAction
类和DataCheckActionCode
枚举 #1896更新了
Woodwork
要求至v0.0.10
#1900将
BalancedClassificationDataCVSplit
和BalancedClassificationDataTVSplit
添加到 AutoMLSearch #1875更新默认分类数据分割器,对高度不平衡数据使用欠采样 #1875
更新了
describe_pipeline
以返回更多信息,包括用于集成模型的 pipeline 的id
#1909添加了工具方法,用于根据
DataCheckAction
列表创建组件列表 #1907更新了
validate
方法,在所有DataCheck``and ``DataChecks
的返回字典中包含action
键 #1916聚合了我们知道来源的预测的 shap 值,例如 OHE、文本和日期时间。 #1901
改进了在
pipeline.score
中将自定义目标作为字符串传入时的错误消息 #1941为
AutoMLSearch
添加了score_pipelines
和train_pipelines
方法 #1913为
pandas
1.2.0 版本添加了支持 #1708为
EngineBase
添加了抽象方法score_batch
和train_batch
,并在SequentialEngine
中实现了它们 #1913添加了在
AutoMLSearch
和DataChecks
中处理索引列的能力 #2138
- 变更
恢复了 Linux 单元测试的 GitHub Action,直到找到报告生成修复为止 #1920
更新了
AutoMLAlgorithm
中的add_results
,使其接受来自AutoMLSearch
的整个 pipeline 结果字典 #1891更新了
ClassImbalanceDataCheck
以寻找严重的类不平衡场景 #1905删除了
explain_prediction
函数 #1915移除了
HighVarianceCVDataCheck
并将其转换为AutoMLSearch
方法 #1928移除了
InvalidTargetDataCheck
中当数字二元分类目标不是 (0, 1) 时返回的警告 #1959
- 文档变更
更新了
model_understanding.ipynb
以演示双向部分依赖功能 #1919
测试变更
警告
- v0.19.0 2021 年 2 月 23 日
- 增强功能
添加了用于 Python windows 单元测试的 GitHub Action #1844
添加了用于检查更新的发布说明的 GitHub Action #1849
添加了用于 Python lint 检查的 GitHub Action #1837
调整了
explain_prediction
、explain_predictions
和explain_predictions_best_worst
以处理时间序列问题。 #1818更新了
InvalidTargetDataCheck
,以检查目标和特征中不匹配的索引 #1816更新了组件返回的
Woodwork
结构,以支持用户设置的Woodwork
逻辑类型覆盖 #1784更新了 estimators,使其在
fit()
期间跟踪输入特征名称 #1794更新了
visualize_decision_tree
,在输出中包含特征名称 #1813为目标函数添加了
is_bounded_like_percentage
属性。如果为 True,则calculate_percent_difference
方法将返回绝对差而不是相对差 #1809为 AutoMLSearch 日志文件添加了完整的错误堆栈跟踪 #1840
更改了
TargetEncoder
以保留数据中的自定义索引 #1836重构了
explain_predictions
和explain_predictions_best_worst
,以便只对需要解释的所有行计算一次特征 #1843为分类问题添加了自定义随机欠采样器数据分割器 #1857
更新了
OutliersDataCheck
实现,以计算没有异常值的概率 #1855添加了
Engines
pipeline 处理 API #1838
- 修复
将 EngineBase random_state 参数更改为 random_seed,用户指南文档中也做了相同更改 #1889
文档变更
警告
- 重大变更
为
explain_prediction
添加了弃用警告。它将在下一次发布中被删除。 #1860
- v0.18.2 2021 年 2 月 10 日
修复
变更
测试变更
- v0.18.1 2021 年 2 月 1 日
测试变更
警告
- v0.18.0 2021 年 1 月 26 日
- 增强功能
在
invalid_targets_data_check
中检查负目标值的同时,将 RMSLE、MSLE 和 MAPE 添加到核心目标函数 #1574在
invalid_targets_data_check
中为具有回归式数据集的二元问题和没有真正多类目标的多元问题添加了验证检查 #1665新增对
make_pipeline
的时间序列支持 #1566新增 pipeline
predict
方法输出的目标名称 #1578在
InvalidTargetDataCheck
中添加了多类检查,以确保每个类有两个示例 #1596新增对
graphviz
v0.16
的支持 #1657增强了时间序列 pipelines 以接受空特征 #1651
将 KNN 分类器添加到 estimators 中。 #1650
为目标函数的列表输入添加了支持 #1663
为
AutoMLSearch
添加了对处理时间序列分类 pipelines 的支持 #1666增强了
DelayedFeaturesTransformer
,使其在延迟分类特征和目标之前对其进行编码 #1691新增了双向依赖图。 #1690
新增了直接迭代 Pipelines 中组件的能力 #1583
- 修复
修复了不一致的属性,并在文档中添加了 Exceptions #1673
修复了
TargetLeakageDataCheck
,改用 Woodwork 的mutual_information
而非 Pandas 的 Pearson 相关性 #1616更新了
load_data
,使其返回 Woodwork 结构,并将index
参数的默认值更新为None
#1610暂时限制 scipy 版本低于 1.6.0,同时我们正在努力添加支持 #1629
修复了
AutoMLSearch
中的数据检查消息格式 #1633通过将默认交叉验证的
shuffle
设置为True
,解决了对scikit-learn
v0.24 支持的堆叠集成组件问题 #1613修复了
Imputer
重置X
索引的错误 #1590修复了在将自定义目标作为主要目标或附加目标传入时
AutoMLSearch
的堆栈跟踪问题 #1575修复了
MAPE
目标函数的自定义索引错误 #1641修复了
TextFeaturizer
和LSA
组件的索引错误 #1644限制了加载到
automl.ipynb
中的load_fraud
数据集大小 #1646在必要时,
add_to_rankings
会更新AutoMLSearch.best_pipeline
#1647修复了时间序列基线估计器在
AutoMLSearch
中未接收gap
和max_delay
参数的错误 #1645修复了 jupyter notebooks,以帮助减少 RTD 构建时间 #1654
将
positive_only
目标添加到了non_core_objectives
#1661修复了 IterativeAlgorithm 的堆叠参数
n_jobs
#1706更新了 CatBoost 估计器,使其在
.fit()
中返回自身而非底层模型,以保持一致性 #1701添加了在
AutoMLSearch
构造函数中初始化管道参数的功能 #1676
测试变更
警告
- v0.17.0 2020 年 12 月 29 日
- 增强功能
添加了
save_plot
,允许保存来自不同后端的图表 #1588将
LightGBM Regressor
添加到回归组件中 #1459添加了用于决策树可视化的
visualize_decision_tree
,并添加了decision_tree_data_from_estimator
和decision_tree_data_from_pipeline
来重新格式化树结构输出 #1511将 DFS Transformer 组件添加到转换器组件中 #1454
将
MAPE
添加到时间序列问题的标准评估指标中,并更新了目标函数 #1510将
graph_prediction_vs_actual_over_time
和get_prediction_vs_actual_over_time_data
添加到时间序列问题的模型理解模块中 #1483添加了一个
ComponentGraph
类,它将支持未来的管道作为有向无环图 #1415更新了数据检查,使其接受
Woodwork
数据结构 #1481为
InvalidTargetDataCheck
添加了一个参数,使其仅显示顶部唯一值而非所有唯一值 #1485添加了多重共线性数据检查 #1515
为时间序列回归问题添加了基线管道和组件 #1496
向用户提供了更多关于
AutoMLSearch
中集成行为的信息 #1527添加 woodwork 支持以提供更多实用工具和图方法 #1544
更改了
DateTimeFeaturizer
,使其将特征编码为整数 #1479从
AutoMLSearch.best_pipeline
返回训练好的管道 #1547添加了一个实用方法,用户无需直接了解 Woodwork 即可设置特征类型 #1555
添加了用于降维的线性判别分析转换器 #1331
为
partial_dependence
和graph_partial_dependence
添加了多类别支持 #1554添加了
TimeSeriesBinaryClassificationPipeline
和TimeSeriesMulticlassClassificationPipeline
类 #1528添加了
make_data_splitter
方法,以便更轻松地自定义 automl 数据分割 #1568将
ComponentGraph
类集成到 Pipelines 中,以完全支持非线性管道 #1543更新
AutoMLSearch
构造函数,使其接受训练数据而非search
和add_to_leaderboard
#1597更新
split_data
辅助方法的参数 #1597添加问题类型工具方法
is_regression
、is_classification
、is_timeseries
#1597将
AutoMLSearch
的data_split
参数重命名为data_splitter
#1569
- 修复
修复 AutoML 未将交叉验证折叠传递给
DefaultDataChecks
以供ClassImbalanceDataCheck
使用的问题 #1619修复 Windows CI 作业:通过 conda 安装
numba
,这是shap
所必需的 #1490为 reset-index-get_prediction_vs_actual_over_time_data 添加了自定义索引支持 #1494
修复
generate_pipeline_code
,使其考虑 Python 和 JSON 之间布尔值和 None 的差异 #1524 #1531设置 plotly 和 xgboost 版本上限,同时我们正在调试较新版本引起的 CI 失败 #1532
取消对 plotly 的版本限制 #1533
通过更新
setuptools
版本修复 ReadTheDocs 构建 #1561在 AutoMLSearch 中将数据分割器的
random_state
设置为接受整数,以保持分割结果的一致性 #1579暂时限制 sklearn 版本,同时我们正在努力添加支持 #1594
暂时限制 pandas 版本低于 1.2.0,同时我们正在努力添加支持 #1609
暂时限制 graphviz 版本低于 0.16,同时我们正在努力添加支持 #1609
- 变更
更新 circleci 徽章,使其应用于
main
分支 #1489添加了生成 GitHub 发布 markdown 的脚本 #1487
更新了使用 pandas
dtypes
进行选择的方法,改为使用 Woodwork 逻辑类型进行选择 #1551更新了依赖项,以修复
ImportError: cannot import name 'MaskedArray' from 'sklearn.utils.fixes'
错误,并解决了 Woodwork 和 Featuretool 的依赖问题 #1540将
get_prediction_vs_actual_data()
方法公开 #1553将
Woodwork
版本要求更新至 v0.0.7 #1560将数据分割器从
evalml.automl.data_splitters
移动到evalml.preprocessing.data_splitters
#1597将 automl 日志输出中的“# Testing”重命名为“# Validation” #1597
- 测试变更
在大多数单元测试中将
n_jobs
设置为 1,以减少内存占用 #1505
警告
- 重大变更
更新了最低依赖项:
numpy>=1.19.1
、pandas>=1.1.0
、scikit-learn>=0.23.1
、scikit-optimize>=0.8.1
更新了
AutoMLSearch.best_pipeline
,使其返回一个已训练的管道。如需返回未训练的管道,请在 AutoMLSearch 中传入train_best_pipeline=False
。管道组件实例无法再通过
Pipeline.component_graph
进行迭代 #1543更新
AutoMLSearch
构造函数,使其接受训练数据而非search
和add_to_leaderboard
#1597更新
split_data
辅助方法的参数 #1597将数据分割器从
evalml.automl.data_splitters
移动到evalml.preprocessing.data_splitters
#1597将
AutoMLSearch
的data_split
参数重命名为data_splitter
#1569
- v0.16.1 2020 年 12 月 1 日
- v0.16.0 2020 年 11 月 24 日
- 增强功能
更新了管道和
make_pipeline
,使其接受Woodwork
输入 #1393更新了组件,使其接受
Woodwork
输入 #1423添加了冻结
AutoMLSearch
超参数的功能 #1284将
Target Encoder
添加到转换器组件中 #1401在
AutoMLSearch
中添加了用于错误处理的回调 #1403在
explain_predictions_best_worst
输出中添加了索引 ID,以帮助用户识别其数据中包含哪些行 #1365explain_predictions_*
函数中显示的 top_k 特征现在根据 shap 值的幅度确定,而不是根据top_k
最大和最小的 shap 值确定。 #1374添加了时间序列回归问题类型 #1386
向
ObjectiveBase
添加了is_defined_for_problem_type
方法 #1386向
make_pipeline_from_components
函数添加了random_state
参数 #1411添加了
DelayedFeaturesTransformer
#1396添加了一个
TimeSeriesRegressionPipeline
类 #1418从包分发中移除了
core-requirements.txt
#1429为时间序列问题添加了一个
TimeSeriesSplit
数据分割器 #1441向 AutoMLSearch 添加了
problem_configuration
参数 #1457
- 修复
修复了在
ensembling = True
但只有一个管道可迭代时AutoMLSearch
中引发的IndexError
#1397修复了
AutoMLSearch
中的堆叠集成输入错误以及 LightGBM 警告和错误 #1388更新了枚举类,使其将可能的枚举值显示为属性 #1391
更新了对
Woodwork
的to_pandas()
的调用,改为调用to_series()
和to_dataframe()
#1428修复了 OHE 中列名无法保证唯一性的错误 #1349
修复了
ExpVariance
目标函数在目标高度偏斜的数据上的百分比改进计算错误 #1467修复了当所有特征都是布尔类型时 SimpleImputer 发生的错误 #1215
警告
- v0.15.0 2020 年 10 月 29 日
- 增强功能
添加了堆叠集成组件类 (
StackedEnsembleClassifier
,StackedEnsembleRegressor
) #1134在
AutoMLSearch
中添加了堆叠集成组件 #1253将
DecisionTreeClassifier
和DecisionTreeRegressor
添加到 AutoML 中 #1255在
model_understanding
中为回归问题添加了graph_prediction_vs_actual
#1252为
OneHotEncoder
添加了一个参数,以启用对要编码特征的过滤 #1249将所有目标函数的优于基线百分比添加到了 automl.results #1244
添加了
HighVarianceCVDataCheck
,并替换了AutoMLSearch
中的同义警告 #1254添加了用于降维的 PCA Transformer 组件 #1270
添加了
generate_pipeline_code
和generate_component_code
,允许根据管道或组件实例生成代码 #1306添加了用于降维的 PCA Transformer 组件 #1270
更新了
AutoMLSearch
,使其支持Woodwork
数据结构 #1299将 cv_folds 添加到
ClassImbalanceDataCheck
,并将此检查添加到了DefaultDataChecks
#1333使
AutoMLSearch.search
的max_batches
参数公开 #1320为 automl 搜索添加了文本支持 #1062
将
_pipelines_per_batch
作为私有参数添加到了AutoMLSearch
#1355
- 修复
修复了有序数据集的机器学习性能问题:在 automl 的默认交叉验证分割中始终对数据进行洗牌 #1265
修复了损坏的
evalml info
CLI 命令 #1293修复了 LightGBM Classifier 的
boosting type='rf'
问题以及num_leaves
错误 #1302修复了
explain_predictions_best_worst
中目标变量中的自定义索引会导致ValueError
的错误 #1318将堆叠集成估计器添加到了
evalml.pipelines.__init__
文件 #1326修复了 OHE 中的一个错误,当
top_n
小于列中的类别数时,调用 transform 不具有确定性 #1324修复了 AutoMLSearch 期间 LightGBM 的警告消息 #1342
修复了
HighVarianceCVDataCheck
在 AutoMLSearch 期间抛出的警告 #1346修复了 TrainingValidationSplit 对带有自定义索引的 dataframe 返回无效位置索引的错误 #1348
修复了 AutoMLSearch 的
random_state
未传递给创建的管道的错误 #1321
- 变更
允许在调用 AutoMLSearch 之前调用
add_to_rankings
#1250从 test-requirements 中移除 Graphviz 并添加到 requirements.txt #1327
从
AutoMLSearch
中移除了max_pipelines
参数 #1264在所有安装 make 目标中包含可编辑安装 #1335
将 pip 依赖项 featuretools 和 nlp_primitives 设为核心依赖项 #1062
从 TextFeaturizer 转换原语中移除了 PartOfSpeechCount #1062
当特征包含空值时,为
partial_dependency
添加了警告 #1352
- 文档变更
修复和更新了发布说明中的代码块 #1243
在 API 参考中添加了 DecisionTree 估计器 #1246
更改了类继承显示,使其垂直排列 #1248
更新了成本效益教程,使其使用留出/测试集 #1159
在文档中添加了
evalml info
命令 #1293其他文档更新 #1269
从发布流程文档中移除了 conda 预发布测试 #1282
更新了贡献指南 #1310
在文档中添加了 Alteryx 页脚,包含 Twitter 和 Github 链接 #1312
添加了 Python 3.6 的 evalml 安装文档 #1322
添加了文档更改,使 API 文档更易于理解 #1323
修复了
feature_importance
的文档 #1353添加了使用文本数据运行 AutoML 的教程 #1357
添加了 woodwork 与 automl 搜索集成的文档 #1361
警告
- v0.14.1 2020 年 9 月 29 日
- 增强功能
更新了偏依赖方法,以支持计算包含非数值列的数据集中的数值列 #1150
在
OneHotEncoder
上添加了get_feature_names
#1193将
detect_problem_type
添加到problem_type/utils.py
中,以便根据目标自动检测问题类型 #1194将 LightGBM 添加到
AutoMLSearch
中 #1199更新了
scikit-learn
和scikit-optimize
,分别使用最新版本 - 0.23.2 和 0.8.1 #1141为管道和组件添加了
__str__
和__repr__
方法 #1218在
AutoMLSearch
中包含了对训练和验证数据的内部目标检查 #1226添加了
ProblemTypes.all_problem_types
辅助方法,用于获取支持的问题类型列表 #1219添加了
DecisionTreeClassifier
和DecisionTreeRegressor
类 #1223添加了
ProblemTypes.all_problem_types
辅助方法,用于获取支持的问题类型列表 #1219DataChecks
现在可以通过传递DataCheck
类列表和参数字典来进行参数化 #1167在
AutoMLSearch.rankings
中将第一个交叉验证折叠得分添加为验证得分 #1221更新了
flake8
配置,使其能够对__init__.py
文件进行 linting #1234完善了
make_pipeline_from_components
的实现 #1204
- 文档变更
在管道用户指南中包含了如何访问组件实例和特征的描述 #1163
更新了 API 文档,在非分类任务中将 target 称为“target”而非“labels”,并进行了少量文档清理 #1160
在 API 参考中添加了管道属性 #1209
在 AutoML API 参考和 AutoML 用户指南中澄清了 AutoML 中的 objective 参数的用途 #1222
更新了 API 文档,包含了用于组件超参数范围定义的
skopt.space.Categorical
选项 #1228添加了用于在 Mac 上使用 LightGBM 的
libomp
安装文档 #1233改进了文档中对
max_iterations
的描述 #1212移除了 sphinx 配置中未使用的代码 #1235
测试变更
警告
- v0.13.2 2020 年 9 月 17 日
- 增强功能
向解释预测函数添加了
output_format
字段 #1107修改了
get_objective
和get_objectives
,使其能够返回evalml.objectives
中的任何目标 #1132向
get_objective
添加了一个return_instance
布尔参数 #1132添加了
ClassImbalanceDataCheck
,用于确定目标不平衡是否低于给定阈值 #1135为 LightGBM 添加了用于二元分类的标签编码器 #1152
为混淆矩阵的行索引添加了标签 #1154
将
AutoMLSearch
对象作为另一个参数添加到了搜索回调中 #1156为
graph_roc_curve
中显示的每个点添加了相应的概率阈值 #1161为
ComponentBase
和PipelineBase
添加了__eq__
方法 #1178为
roc_curve
添加了多类别分类支持 #1164为
OneHotEncoder
添加了categories
访问器,用于列出与特征关联的类别 #1182添加了实用函数,用于从组件实例列表创建管道实例 #1176
- 修复
修复了偏依赖方法的 XGBoost 列名问题 #1104
从
TextFeaturizer
中移除了用于验证列类型的死代码 #1122修复了当类别或布尔列中存在 None 值时
Imputer
无法拟合的问题 #1144OneHotEncoder
保留输入数据中的自定义索引 #1146修复了
ModelFamily
的表示问题 #1165移除了
dev-requirements.txt
中重复的nbsphinx
依赖项 #1168用户现在可以将任何有效的 kwargs 传递给所有估计器 #1157
移除了损坏的访问器
OneHotEncoder.get_feature_names
和不需要的基类 #1179从 AutoML 模型中移除了 LightGBM 估计器 #1186
警告
- 重大变更
get_objective
现在默认返回类定义而非实例 #1132删除了
evalml.objectives.utils.py
中的OPTIONS
字典 #1132如果通过字符串指定目标,则该字符串现在必须与目标的 name 字段(不区分大小写)匹配 #1132
- 传入“Cost Benefit Matrix”、“Fraud Cost”、“Lead Scoring”、“Mean Squared Log Error”、
“Recall”、“Recall Macro”、“Recall Micro”、“Recall Weighted”或“Root Mean Squared Log Error”给
AutoMLSearch
现在将导致ValueError
而非ObjectiveNotFoundError
#1132
搜索回调
start_iteration_callback
和add_results_callback
已更改,将包含 AutoMLSearch 对象的副本作为第三个参数 #1156删除了已损坏一段时间的
OneHotEncoder.get_feature_names
方法,转而使用管道的input_feature_names
#1179删除了
OneHotEncoder
组件曾继承的空基类CategoricalEncoder
#1176roc_curve
的结果现在将以字典列表的形式返回,每个字典代表一个类别 #1164max_pipelines
现在会引发DeprecationWarning
,并将在下一版本中移除。应改用max_iterations
。 #1169
- v0.13.1 2020 年 8 月 25 日
- 增强功能
添加了用于二元分类的 Cost-Benefit Matrix 目标函数 #1038
为 Imputer 将
fill_value
分割为categorical_fill_value
和numeric_fill_value
#1019添加了
explain_predictions
和explain_predictions_best_worst
,用于使用 SHAP 解释多个预测 #1016添加了用于文本特征化的新 LSA 组件 #1022
添加了使用 conda 安装的指南 #1041
添加了一个“成本效益曲线”实用方法,用于绘制成本效益矩阵得分与二元分类阈值的关系图 #1081
标准化了管道在拟合前调用 transform/predict 时的错误处理 #1048
将
percent_better_than_baseline
添加到了 AutoML 搜索排名和完整排名表中 #1050添加了单向偏依赖和偏依赖图 #1079
向预测解释报告中添加了“特征值”列。 #1064
向
AutoMLSearch
添加了max_batches
参数 #1087
- 变更
向
ComponentBase
添加了needs_fitting
属性 #1044更新了数据类型的引用,使其使用
evalml.utils.gen_utils
中定义的数据类型列表 #1039移除了 SciPy 依赖项的最大版本限制 #1051
将
all_components
和其他组件导入器移动到运行时方法中 #1045将图形实用方法整合到
evalml.utils.graph_utils
下 #1060对
TextFeaturizer
如何使用featuretools
进行了一些微调,并对其和 LSA 进行了一些重构 #1090将
show_all_features
参数更改为importance_threshold
,这允许对特征重要性进行阈值处理 #1097, #1103
警告
- v0.12.2 2020 年 8 月 6 日
- v0.12.0 2020 年 8 月 3 日
- 增强功能
添加了二元和多类别管道的字符串和类别目标支持,并为
DetectLabelLeakage
数据检查添加了数值目标检查 #932为回归管道添加了清晰的异常,如果目标数据类型是字符串或类别 #960
在管道的
predict
和predict_proba
输出中添加了目标列名和类别标签 #951将
_compute_shap_values
和normalize_values
添加到pipelines/explanations
模块 #958添加了
explain_prediction
功能,使用 SHAP 解释单个预测 #974添加了 Imputer,允许对数值和类别数据类型采用不同的 imputation 策略 #991
添加了使用环境变量配置日志文件路径的支持,并在文件系统错误时不再创建 logger #975
更新了 catboost 估计器的默认参数和 automl 超参数范围,以加快拟合时间 #998
- 修复
修复了 ReadtheDocs 关于嵌入 gif 的警告失败问题 #943
移除了在
_add_baseline_pipelines
中传递给管道类的错误参数 #941添加了在拟合前调用
predict
、predict_proba
、transform
和feature_importances
的通用错误处理 #969, #994将
TextFeaturizer
组件和 pip 依赖项 featuretools 和 nlp_primitives 设为可选 #976更新了 automl 中的 imputation 策略,如果存在任何类别列,不再将所有特征的 impute 策略限制为
most_frequent
#991修复了 automl 搜索出错时
cv_pipeline
的UnboundLocalError
#996修复了
Imputer
重置 dataframe 索引的问题,以保留SimpleImputer
预期的行为 #1009
- 变更
将
get_estimators
移动到evalml.pipelines.components.utils
#934修改了 Pipelines,使其在评分过程中遇到错误时引发
PipelineScoreError
#936将
evalml.model_families.list_model_families
移动到evalml.pipelines.components.allowed_model_families
#959将
DateTimeFeaturization
重命名为DateTimeFeaturizer
#977添加了检查,如果批次中所有管道都返回 NaN 分数,则停止搜索并引发错误 #1015
警告
- 重大变更
get_estimators
已移动到evalml.pipelines.components.utils
(之前在evalml.pipelines.utils
下) #934移除了 AutoML 搜索中的
raise_errors
标志。管道评估期间的所有错误将被捕获并记录。 #936evalml.model_families.list_model_families
已移动到evalml.pipelines.components.allowed_model_families
#959TextFeaturizer
:安装 evalml 后必须安装featuretools
和nlp_primitives
包才能使用此组件 #976将
DateTimeFeaturization
重命名为DateTimeFeaturizer
#977
- v0.11.2 2020 年 7 月 16 日
- 修复
将 automl 结果设为只读属性 #919
- 变更
删除了静态管道并重构了涉及静态管道的测试,移除了
all_pipelines()
和get_pipelines()
#904将
list_model_families
移动到evalml.model_family.utils
#903更新了
all_pipelines
、all_estimators
、all_components
,使其使用相同的机制动态生成其元素 #898将
master
分支重命名为main
#918添加了 pypi 发布 GitHub action #923
更新了
AutoMLSearch.search
的标准输出和日志记录,并移除了 tqdm 进度条 #921将之前在
search()
中的 automl 配置检查移动到 init 方法中 #933
- 测试变更
清理了测试中的 fixture 名称和用法 #895
警告
- v0.11.0 2020年6月30日
- 增强功能
添加了 ROC 曲线绘图的多类别支持 #832
添加了预处理组件,用于删除 NaN 值百分比超过指定阈值的特征 #834
添加了数据检查功能,用于检查有问题的目标标签 #814
添加了 PerColumnImputer,允许按列指定 imputed 策略 #824
添加了用于删除特定列的转换器 #827
在
OneHotEncoder
中添加了对categories
,handle_error
和drop
参数的支持 #830 #897添加了用于处理 DateTime 列特征化的预处理组件 #838
添加了克隆 pipelines 和 components 的功能 #842
定义了 component
parameters
的 getter 方法 #847添加了生成动态预处理 pipelines 所需的新工具函数 #852
为所有 components 添加了 kwargs #863
更新了
AutoSearchBase
以使用动态生成的预处理 pipelines #870添加了 SelectColumns 转换器 #873
添加了评估用于 automl 搜索的额外 pipelines 的功能 #874
为 components 和 pipelines 添加了
default_parameters
类属性 #879添加了在 automl 搜索中禁用数据检查的更好支持 #892
添加了将 AutoML 对象保存和加载到文件的功能 #888
更新了
AutoSearchBase.get_pipelines
以返回未经训练的 pipeline 实例 #876在 automl 结果的 cv 数据字典中保存了习得的二元分类阈值 #876
- 变更
更新
all_pipelines
和all_components
,尝试初始化 pipelines/components,失败时将其排除 #849将
handle_components
重构为handle_components_class
,标准化为ComponentBase
子类而非实例 #850将“黑名单”/“白名单”重构为“允许”/“排除”列表 #854
将
AutoClassificationSearch
和AutoRegressionSearch
替换为AutoMLSearch
#871将 feature_importances 和 permutation_importances 方法重命名为单数形式 (feature_importance 和 permutation_importance) #883
更新了
automl
默认数据分割器,对于大型数据集使用训练/验证集分割 #877添加了开源许可,更新了一些仓库元数据 #887
移除了
_get_preprocessing_components
中的无用代码 #896
- 文档变更
修复了一些错别字并更新了 EvalML 徽标 #872
警告
- 重大变更
Pipelines 的静态字段
component_graph
必须包含ComponentBase
子类或str
,而不是ComponentBase
子类的实例 #850将
handle_component
重命名为handle_component_class
。现在标准化为ComponentBase
子类,而不是ComponentBase
子类的实例 #850将 automl 的
cv
参数重命名为data_split
#877Pipelines 和分类器的
feature_importances
重命名为feature_importance
,graph_feature_importances
重命名为graph_feature_importance
#883在 automl 搜索中传递
data_checks=None
将不执行任何数据检查,而不是执行默认检查。 #892AutoML 中要搜索的 Pipelines 现在会自动确定,而不是使用静态定义的 pipeline 类。 #870
更新了
AutoSearchBase.get_pipelines
,以返回未经训练的 pipeline 实例,而不是恰好在最终交叉验证折叠上训练过的实例 #876
- v0.10.0 2020年5月29日
- 增强功能
添加了分类和回归的基线模型,添加了在 AutoML 中搜索之前计算基线模型的功能 #746
将高度缺失值 guardrail 作为数据检查移植过来,并定义
DefaultDataChecks
和DisableDataChecks
类 #745更新
Tuner
类以直接使用 pipeline 参数字典,而不是扁平的参数列表 #779添加 Elastic Net 作为 pipeline 选项 #812
添加了新的 Pipeline 选项
ExtraTrees
#790在
evalml.pipeline.graph_utils
中为二元分类问题添加了精确率-召回率曲线指标和绘图 #794更新了默认 automl 算法,使其分批搜索,从每个 pipeline 的默认参数开始迭代 #793
添加了
AutoMLAlgorithm
类和IterativeAlgorithm
实现,与AutoSearchBase
分离 #793
- 变更
清理 pipeline 的
score
代码,并清理 codecov #711为 codecov 移除抽象方法的
pass
语句 #730为 AutoSearch 对象添加了 __str__ 方法 #675
添加了用于绘制 ROC 和混淆矩阵的工具方法 #720
将
AutoBase
重构为AutoSearchBase
#758更新 AutoBase,添加了
data_checks
参数,移除了先前的detect_label_leakage
参数,并添加了在 AutoML 中搜索之前运行数据检查的功能 #765更新了我们的 logger,以使用 Python 的 logging 工具 #763
将
AutoSearchBase._do_iteration
的大部分实现重构到AutoSearchBase._evaluate
中 #762将所有 guardrails 移植过来,使用新的 DataCheck API #789
扩展了
import_or_raise
,使其能捕获所有异常 #759添加 RMSE, MSLE, RMSLE 作为标准指标 #788
不允许将
Recall
用作 AutoML 的目标 #784从 pipelines 中移除了特征选择 #819
更新了默认的 estimator 参数,以使 automl 搜索更快更准确 #793
警告
- 重大变更
AutoML 类的
detect_label_leakage
参数已移除,并被data_checks
参数取代 #765将 ROC 和混淆矩阵方法从
evalml.pipeline.plot_utils
移至evalml.pipeline.graph_utils
#720Tuner
类需要 pipeline 超参数范围字典作为 init 参数,而不是空间定义 #779Tuner.propose
和Tuner.add
直接使用 pipeline 参数字典,而不是扁平的参数列表 #779PipelineBase.hyperparameters
和custom_hyperparameters
使用 pipeline 参数字典格式,而不是表示为扁平列表 #779之前在
evalml.guardrails.utils
下的所有 guardrail 函数将被移除,并由数据检查取代 #789Recall
不允许用作 AutoML 的目标 #784AutoSearchBase
参数tuner
已重命名为tuner_class
#793AutoSearchBase
参数possible_pipelines
和possible_model_families
已重命名为allowed_pipelines
和allowed_model_families
#793
- v0.9.0 2020年4月27日
- 修复
移除了对
cls.component_graph
的直接访问 #595将测试文件添加到 .gitignore #625
移除
Makefile
中的循环依赖 #637为
normalize_confusion_matrix()
添加了错误处理情况 #640修复了
XGBoostClassifier
和XGBoostRegressor
处理包含 [, ], 或 < 的特征名称时的 bug #659更新
make_pipeline_graph
,使其在测试路径是否有效时不会意外创建空文件 #649修复 pip 安装关于 docsutils 版本(来自 boto 依赖)的警告 #664
移除了 F1/精确率/召回率指标的零除警告 #671
修复了没有 estimator 的 pipelines 的
summary
方法 #707
- 变更
更新了二元/多类别分类的默认目标为 log loss #613
创建了分类和回归 pipeline 子类,并移除了 objective 作为 pipeline 类的属性 #405
将
score
的输出更改为返回一个字典 #429创建了二元和多类别 objective 子类 #504
更新了 objectives API #445
从 AutoML 中移除了对
get_plot_data
的调用 #615将 AutoML 类的
raise_error
默认设置为 True #638移除了某些 unicode 字符串上不必要的“u”前缀 #641
将 one-hot encoder 更改为返回 uint8 dtypes 而不是 ints #653
Pipeline 的
_name
字段更改为custom_name
#650移除 s3fs 作为开发依赖 #664
将 requirements-parser 更改为核心依赖 #673
将 pipelines 上的
supported_problem_types
字段替换为基类上的problem_type
属性 #678将 AutoML 更改为在
rankings
中仅显示给定 pipeline 模板的最佳结果,添加了full_rankings
属性以显示所有结果 #682更新
ModelFamily
值:现在我们有了 xgboost/catboost 的回归 pipelines,不再将其列为分类器 #677将 AutoML 的
describe_pipeline
更改为从 pipeline 获取问题类型 #685标准化
import_or_raise
错误消息 #683更新了 objective 的参数顺序,使其与 sklearn 对齐 #698
将
pipeline.feature_importance_graph
重命名为pipeline.graph_feature_importances
#700将 ROC 和混淆矩阵方法移至
evalml.pipelines.plot_utils
#704将
MultiClassificationObjective
重命名为MulticlassClassificationObjective
,以与 pipeline 命名方案对齐 #715
- 文档变更
修复了一些 sphinx 警告 #593
修复了
AutoClassificationSearch
的 docstring,使用了正确的命令 #599清理 objectives API 文档 #605
修复了“探索搜索结果”页面上的函数 #604
更新发布流程文档 #567
AutoClassificationSearch
和AutoRegressionSearch
在 API 参考中显示继承的方法 #651修复了 changelog 中破坏性更改部分格式不正确的代码 #655
添加了将 Sphinx 警告视为错误的配置 #660
让 leads 示例 notebook 使用 https 加载 S3 文件,这样我们就可以删除 s3fs 开发依赖 #664
在 API 参考中对 components 进行了分类,并为每个类别添加了描述 #663
修复了 Sphinx 关于
BalancedAccuracy
目标的警告 #669更新了 API 参考,包含缺失的 components 并清理了 pipeline 的 docstrings #689
重组 API 参考,并澄清 pipeline 子标题 #688
在 API 参考中添加和更新了预处理工具 #687
添加了继承图到 API 参考 #695
文档说明了 AutoML 优化的默认目标 #699
创建了单独的安装页面 #701
在 API 参考中包含更多工具,如
import_or_raise
#704为 pipeline 文档添加更多颜色 #705
- 测试变更
警告
重大变更
Pipelines 现在实例化时不再接受 objective 参数,也不再具有 objective 属性。
fit()
和predict()
现在使用可选的objective
参数,该参数仅在二元分类 pipelines 中用于针对特定 objective 进行拟合。score()
现在将使用一个必需的objectives
参数,该参数用于确定所有要评分的目标。这与以前的行为不同,以前无论如何都会对 pipeline 的 objective 进行评分。score()
现在将返回包含所有 objective 分数的一个字典。通过
Auto(*).plot
访问的ROC
和ConfusionMatrix
绘图方法已在 #615 中移除,并在 #704 中被evamlm.pipelines.plot_utils
中的roc_curve
和confusion_matrix
取代normalize_confusion_matrix
已移至evalml.pipelines.plot_utils
#704Pipelines 的
_name
字段更改为custom_name
Pipelines 的
supported_problem_types
字段被移除,因为它不再需要 #678更新了 objectives 的
objective_function
参数顺序,使其与 sklearn 对齐 #698pipeline.feature_importance_graph
在 #700 中已重命名为pipeline.graph_feature_importances
移除了不支持的
MSLE
目标 #704
- v0.8.0 2020年4月1日
- 增强功能
为混淆矩阵添加归一化选项和信息 #484
添加工具函数以删除包含 NaN 值的行 #487
将
PipelineBase.name
重命名为PipelineBase.summary
,并将PipelineBase.name
重新定义为类属性 #491通过
PipelineBase.parameters
添加了对 Pipelines 参数的访问(以前是PipelineBase.describe
的返回值) #501为
SimpleImputer
添加了fill_value
参数 #509添加了覆盖组件超参数的功能,并使 pipelines 从组件获取超参数 #516
允许将
numpy.random.RandomState
用于 random_state 参数 #556
- 修复
移除了未使用的依赖
matplotlib
,并将category_encoders
移至测试要求 #572
- 变更
支持 pandas 1.0.0 #486
将所有对 logger 的引用更改为静态 #503
将 components 和 pipelines 的
model_type
参数重构为model_family
#507将 pipelines 和 components 的
problem_types
重构为supported_problem_types
#515将
pipelines/utils.save_pipeline
和pipelines/utils.load_pipeline
移至PipelineBase.save
和PipelineBase.load
#526限制
OneHotEncoder
编码的类别数量 #517
警告
重大变更
AutoClassificationSearch
和AutoRegressionSearch
的model_types
参数已重构为allowed_model_families
ModelTypes
枚举已更改为ModelFamily
Components 和 Pipelines 现在具有
model_family
字段,而不是model_type
get_pipelines
工具函数现在接受model_families
作为参数,而不是model_types
PipelineBase.name
不再返回 pipeline 结构,已被PipelineBase.summary
取代PipelineBase.problem_types
和Estimator.problem_types
已重命名为supported_problem_types
pipelines/utils.save_pipeline
和pipelines/utils.load_pipeline
已移至PipelineBase.save
和PipelineBase.load
- v0.7.0 2020年3月9日
- 增强功能
将 emacs 缓冲区添加到 .gitignore #350
添加 CatBoost (梯度提升树) 分类和回归组件及 pipelines #247
添加了 Tuner 抽象基类 #351
为
AutoClassificationSearch
和AutoRegressionSearch
添加了n_jobs
参数 #403将混淆矩阵的颜色更改为蓝色调,并更新了轴顺序以匹配 scikit-learn 的顺序 #426
添加了
PipelineBase
的.graph
和.feature_importance_graph
方法,从之前的位置移过来 #423添加了对 python 3.8 的支持 #462
- 变更
为 XGBoost 添加了
n_estimators
作为可调参数 #307移除了未使用的参数
ObjectiveBase.fit_needs_proba
#320移除了所有 components 中多余的参数
component_type
#361移除了未使用的
rankings.csv
文件 #397下载了 demo 和测试数据集,以便单元测试可以离线运行 #408
移除了 Components 中的
_needs_fitting
属性 #398将 plot.feature_importance 更改为默认仅显示非零特征重要性,添加了可选参数以显示所有特征重要性 #413
将
PipelineBase
重构为接受参数字典,并将 pipeline 元数据移至类属性 #421放弃了对 Python 3.5 的支持 #438
移除了未使用的
apply.py
文件 #449清理
requirements.txt
,移除未使用的依赖 #451支持在不安装所有必需依赖项的情况下进行安装 #459
- 文档变更
更新 release.md,包含发布到内部许可证 key 的说明 #354
警告
重大变更
将不再主动支持 Python 3.5。
- v0.6.0 2019年12月16日
警告
重大变更
AutoClassifier
和AutoRegressor
的fit()
方法已重命名为search()
。AutoClassifier
已重命名为AutoClassificationSearch
AutoRegressor
已重命名为AutoRegressionSearch
AutoClassificationSearch.results
和AutoRegressionSearch.results
现在是一个字典,包含pipeline_results
和search_order
键。pipeline_results
可用于访问与旧.results
字典相同的字典。而search_order
返回按pipeline_id
表示的搜索顺序列表。Pipelines 现在要求
component_list
中的最后一个组件是 estimator。现在对 pipelines 进行切片会抛出NotImplementedError
,以避免返回没有 estimator 的 pipelines。