2022年Python頂級自動化特征工程框架?( 二 )


2022年Python頂級自動化特征工程框架?

文章插圖
比如我們也可以以sessions為目標dataframe構建新特征 。
feature_matrix_sessions, features_defs = ft.dfs( dataframes=dataframes, relationships=relationships, target_dataframe_name="sessions")feature_matrix_sessions.head(5)
2022年Python頂級自動化特征工程框架?

文章插圖
③ 特征輸出Featuretools不僅可以完成自動化特征生成,它還可以對生成的特征可視化,并說明Featuretools 生成它的方法 。
feature = features_defs[18]feature
2022年Python頂級自動化特征工程框架?

文章插圖
TSFresh簡介TSFresh 是一個開源 Python 工具庫 , 有著強大的時間序列數據特征抽取功能,它應用統計學、時間序列分析、信號處理和非線性動力學的典型算法與可靠的特征選擇方法,完成時間序列特征提取 。
2022年Python頂級自動化特征工程框架?

文章插圖
TSFresh 自動從時間序列中提取 100 個特征 。這些特征描述了時間序列的基本特征 , 例如峰值數量、平均值或最大值或更復雜的特征,例如時間反轉對稱統計量 。
2022年Python頂級自動化特征工程框架?

文章插圖
使用示例# 安裝# pip install tsfresh# 數據下載from tsfresh.examples.robot_execution_failures import download_robot_execution_failures, load_robot_execution_failuresdownload_robot_execution_failures()timeseries, y = load_robot_execution_failures()# 特征抽取from tsfresh import extract_featuresextracted_features = extract_features(timeseries, column_id="id", column_sort="time")Featurewiz簡介Featurewiz 是另外一個非常強大的自動化特征工程工具庫,它結合兩種不同的技術,共同幫助找出最佳特性:
2022年Python頂級自動化特征工程框架?

文章插圖
① SULOVSearching for the uncorrelated list of variables:這個方法會搜索不相關的變量列表來識別有效的變量對,它考慮具有最低相關性和最大 MIS(互信息分數)評級的變量對并進一步處理 。
2022年Python頂級自動化特征工程框架?

文章插圖
2022年Python頂級自動化特征工程框架?

文章插圖
② 遞歸 XGBoost上一步SULOV中識別的變量遞歸地傳遞給 XGBoost,通過xgboost選擇和目標列最相關的特征 , 并組合它們 , 作為新的特征加入,不斷迭代這個過程,直到生成所有有效特征 。
2022年Python頂級自動化特征工程框架?

文章插圖
使用示例簡單的使用方法示例代碼如下:
from featurewiz import FeatureWizfeatures = FeatureWiz(corr_limit=0.70, feature_engg='', category_encoders='', dask_xgboost_flag=False, nrows=None, verbose=2)X_train_selected = features.fit_transform(X_train, y_train)X_test_selected = features.transform(X_test)features.features# 選出的特征列表 ## 自動化特征工程構建特征import featurewiz as FWoutputs = FW.featurewiz(dataname=train, target=target, corr_limit=0.70, verbose=2, sep=',',header=0, test_data='',feature_engg='', category_encoders='',dask_xgboost_flag=False, nrows=None)PyCaret簡介PyCaret是 Python 中的一個開源、低代碼機器學習庫,可自動執行機器學習工作流 。它是一個端到端的機器學習和模型管理工具,可加快實驗周期并提高工作效率 。
2022年Python頂級自動化特征工程框架?

文章插圖
與本文中的其他框架不同,PyCaret不是一個專用的自動化特征工程庫,但它包含自動生成特征的功能 。
使用示例# 安裝# pip install pycaret# 加載數據from pycaret.datasets import get_datainsurance = get_data('insurance')# 初始化設置from pycaret.regression import *reg1 = setup(data = https://www.huyubaike.com/biancheng/insurance, target ='charges', feature_interaction = True, feature_ratio = True)
2022年Python頂級自動化特征工程框架?

文章插圖
參考資料
  • 機器學習實戰 | 機器學習特征工程全面解讀:https://www.showmeai.tech/article-detail/208
  • Featuretools:https://featuretools.alteryx.com/en/stable/
  • 機器學習實戰 | 自動化特征工程工具Featuretools應用:https://www.showmeai.tech/article-detail/209
  • 官方快速入門:https://featuretools.alteryx.com/en/stable/
  • TSFresh:https://github.com/blue-yonder/tsfresh
  • Featurewiz:https://github.com/AutoViML/featurewiz
  • PyCaret:http://pycaret.org

2022年Python頂級自動化特征工程框架?

推薦閱讀