HyperGBM 开源项目教程
HyperGBMA full pipeline AutoML tool for tabular data项目地址:https://gitcode.com/gh_mirrors/hy/HyperGBM
项目介绍
HyperGBM 是一个开源项目,由 DataCanvas 创建。它是一个支持全流程 AutoML 的库,完全覆盖了从数据清洗、预处理、特征生成和选择、模型选择到超参数优化的各个阶段。HyperGBM 是一个真正的 AutoML 工具,适用于表格数据。与大多数专注于解决机器学习算法超参数优化问题的 AutoML 方法不同,HyperGBM 可以将从数据清洗到算法选择的整个过程放在一个搜索空间中进行优化。
项目快速启动
安装 HyperGBM
你可以使用 Conda 或 Pip 安装 HyperGBM。以下是使用 Pip 安装的示例:
pip install hypergbm
使用 HyperGBM 进行数据处理和模型训练
以下是一个简单的示例,展示如何使用 HyperGBM 进行数据处理和模型训练:
import pandas as pd
from hypergbm import HyperGBM
from hypergbm.search_space import search_space_general
from sklearn.model_selection import train_test_split
# 加载数据
data = pd.read_csv('path_to_your_data.csv')
X = data.drop('target', axis=1)
y = data['target']
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 创建 HyperGBM 实例
estimator = HyperGBM(search_space_general(), reward_metric='accuracy')
# 训练模型
estimator.fit(X_train, y_train)
# 评估模型
score = estimator.score(X_test, y_test)
print(f'模型准确率: {score}')
应用案例和最佳实践
处理不平衡数据
HyperGBM 提供了处理不平衡数据的方法。以下是一个示例:
from hypergbm import HyperGBM
from hypergbm.search_space import search_space_general
from hypergbm.datasets import dsutils
# 加载不平衡数据集
data = dsutils.load_bank()
X = data.drop('y', axis=1)
y = data['y']
# 创建 HyperGBM 实例
estimator = HyperGBM(search_space_general(), reward_metric='auc', class_balancing='smote')
# 训练模型
estimator.fit(X, y)
GPU 加速
HyperGBM 支持 GPU 加速,可以显著提高训练速度。以下是一个示例:
from hypergbm import HyperGBM
from hypergbm.search_space import search_space_general
# 创建 HyperGBM 实例
estimator = HyperGBM(search_space_general(), reward_metric='accuracy', gpu_enable=True)
# 训练模型
estimator.fit(X_train, y_train)
典型生态项目
HyperGBM 可以与多个生态项目集成,例如 Dask 和 JupyterLab。以下是一些典型的生态项目:
Dask
Dask 是一个灵活的并行计算库,适用于并行计算和大数据处理。HyperGBM 支持在 Dask 集群上进行分布式训练。
pip install hypergbm[dask]
JupyterLab
JupyterLab 是一个交互式的开发环境,HyperGBM 支持在 JupyterLab 中进行实验可视化。
pip install hypergbm[notebook]
通过这些生态项目的集成,HyperGBM 可以更好地满足不同场景下的需求。
HyperGBMA full pipeline AutoML tool for tabular data项目地址:https://gitcode.com/gh_mirrors/hy/HyperGBM