Python DeepForest模型-初步运行

0、简介

深度森林: 将决策树和深度学习结合起来,具有比深度神经网络少得多的超参数,并且其模型复杂性可以以数据依赖的方式自动确定。可用于分类和回归。

1、安装

pip install deep-forest

2、加载数据

# Deep forest 要求输入的数据是2D Numpy array
# 数据shape格式(n_samples, n_features)
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split

X, y = load_digits(return_X_y=True)
# 训练数据在前,测试数据在后
X_train, X_test, y_train, y_test = train_test_split(X, y)

3、模型定义

Deep forest 模型提供分类和回归两种模型
分类模型:CascadeForestClassifier
回归模型:CascadeForestRegressor

# 深度森林的一个关键优势是其依赖于数据集的自适应模型复杂性。
# 超参数的默认设置使其能够在所有数据集上表现得相当好。
from deepforest import CascadeForestClassifier

model = CascadeForestClassifier()

4、训练和评价

# Deep forest提供Scikit-Learn用于训练和评价的APIs
# 给出训练数据X_train和标签数据y_train

model.fit(X_train, y_train)
# 一旦模型训练完成,调用predict()进行模型预测

from sklearn.metrics import accuracy_score

y_pred = model.predict(X_test)
acc = accuracy_score(y_test, y_pred) * 100  # classification accuracy

5、保存和加载

# 保存模型
model.save(MODEL_DIR)	# MODEL_DIR:保存模型的路径
new_model = CascadeForestClassifier()
new_model.load(MODEL_DIR)	# 加载现有模型
# 注意:new_model和model不完全相同,只有model的关键信息被保存

6、例子

# 分类的例子
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

from deepforest import CascadeForestClassifier


# Load data
X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y)

model = CascadeForestClassifier()

# Train and evaluate
model.fit(X_train, y_train)

y_pred = model.predict(X_test)
acc = accuracy_score(y_test, y_pred) * 100
print("\nTesting Accuracy: {:.3f} %".format(acc))

# Save the model
model.save("model")

学习链接:

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值