在scikit中,GridSearchCV()(和/或RandomizedSearchCV())是如何实现的?我想知道以下几点:使用这些技术时,如何考虑以下方面:
在第一轮迭代中,模型在训练时被适应于分成不同折叠的训练集。在这里,我已经遇到了困难:模型是在单个折叠上进行训练,然后在验证折叠上进行测试吗? 接下来会发生什么?模型会保留其第一个训练折叠所达到的权重,还是会重新初始化下一个训练折叠? 更明确地说,在第一轮迭代中,模型是否适应四次并独立地在所有折叠之间测试四次验证集?
当下一轮迭代开始时,模型不会保留来自第一轮迭代的任何信息,对吗? 因此,所有迭代和所有折叠彼此独立吗? 这里如何调整超参数?
在上面的示例中,总共有25个折叠。模型使用恒定的超参数进行适应和测试20次吗? 假设我们有两个要调整的超参数:学习率和丢失率,每个超参数都有两个级别:
- 验证集
- 模型选择
- 超参数调整
- 预测
在第一轮迭代中,模型在训练时被适应于分成不同折叠的训练集。在这里,我已经遇到了困难:模型是在单个折叠上进行训练,然后在验证折叠上进行测试吗? 接下来会发生什么?模型会保留其第一个训练折叠所达到的权重,还是会重新初始化下一个训练折叠? 更明确地说,在第一轮迭代中,模型是否适应四次并独立地在所有折叠之间测试四次验证集?
当下一轮迭代开始时,模型不会保留来自第一轮迭代的任何信息,对吗? 因此,所有迭代和所有折叠彼此独立吗? 这里如何调整超参数?
在上面的示例中,总共有25个折叠。模型使用恒定的超参数进行适应和测试20次吗? 假设我们有两个要调整的超参数:学习率和丢失率,每个超参数都有两个级别:
- learning_rate = [0.3, 0.6]
- dropout_rate = [0.4, 0.8]。
那么神经网络现在拟合了80次吗?如果不仅有一个模型,而是例如两个模型(神经网络和随机森林),整个过程会执行两次吗?
有没有可能看到GridSearchCV()
将考虑多少个折叠(folds)?
我已经看到了Does GridSearchCV perform cross-validation?,Model help using Scikit-learn when using GridSearch和scikit-learn GridSearchCV with multiple repetitions,但我看不到对我的问题的明确和精确的答案。