优化
调参模型
这个函数用于调整模型的超参数。该函数的输出是一个通过交叉验证得到的得分网格。根据optimize
参数定义的评估指 标选择最佳模型。可以使用get_metrics
函数访问交叉验证期间评估的指标。可以使用add_metric
和remove_metric
函数添加或删除自定义指标。
示例
# 加载数据集
from pycaret.datasets import get_data
boston = get_data('boston')
# 初始化设置
from pycaret.regression import *
reg1 = setup(data = boston, target = 'medv')
# 训练模型
dt = create_model('dt')
# 调参模型
tuned_dt = tune_model(dt)
比较超参数。
# 默认模型
print(dt)
# 调参后的模型
print(tuned_dt)
增加迭代次数
调参最终受到迭代次数的限制,而迭代次数最终取决于您可用的时间和资源。迭代次数由n_iter
定义,默认设置为10
。
# 加载数据集
from pycaret.datasets import get_data
boston = get_data('boston')
# 初始化设置
from pycaret.regression import *
reg1 = setup(data = boston, target = 'medv')
# 训练模型
dt = create_model('dt')
# 调参模型
tuned_dt = tune_model(dt, n_iter = 50)
10次和50次迭代的比较
n_iter = 10
n_iter = 50
选择评估指标
在调整模型的超参数时,必须知道要优化的评估指标。可以在optimize
参数下定义。默认情况下,分类实验为Accuracy
,回归为R2
。
# 加载数据集
from pycaret.datasets import get_data
boston = get_data('boston')
# 初始化设置
from pycaret.regression import *
reg1 = setup(data = boston, target = 'medv')
# 训练模型
dt = create_model('dt')
# 调参模型
tuned_dt = tune_model(dt, optimize = 'MAE')