甘雨被旅行者“挤扔”瞬间:璃月港的清冷月光下的那一抹粉色

核心内容摘要

91久久久久:解锁无限精彩,点燃你的激情之夜
探索“男女叉叉”:亲密关系的无限可能

R星每日大赛-每日大赛mrds点燃你的竞技魂,赢取属于你的荣耀!_1

北方苍鹰优化算法(NGO)优化随机森林(RF)的分类预测优化参数为:决策树个数和最小叶数 代码包括NGO-RF和基础RF的对比——可改为其他优化算法如SSA,GEO,WOA,SMA等。

NGO算法为2022年最新算法 模型评价指标包括:准确率和混淆图等代码质量极高方便学习和替换数据。

分类任务中随机森林的参数总让人头大今天咱们用2022年新鲜出炉的北方苍鹰优化算法NGO来调教它这次重点优化决策树个数和最小叶节点数这两个关键参数全程show code带你实战。

先看核心优化逻辑——NGO算法部分。

这个鸟群算法里的小鲜肉在参数搜索上确实有点东西# 北方苍鹰位置更新公式 def update_position(prey_pos, alpha, delta): r np.random.rand() beta 2 * np.exp(-(4 * iteration / max_iter)**

# 非线性递减系数 new_pos prey_pos alpha * (delta - r * prey_pos) * beta return new_pos这里的beta系数设计是精髓前期大范围探索后期精细开发。

对比传统粒子群算法的线性递减这种非线性策略让算法在迭代后期依然保持活力。

接下来是参数优化主流程。

注意看我们如何将RF的超参数映射到苍鹰的搜索空间# 参数范围设定 param_grid { n_estimators: (100,

, # 决策树个数范围 min_samples_leaf: (1,

# 最小叶节点数范围 } # 适应度函数分类准确率 def fitness_function(params): rf RandomForestClassifier( n_estimatorsint(params[0]), min_samples_leafint(params[1]), n_jobs-1 ) cv_score cross_val_score(rf, X_train, y_train, cv

.mean() return cv_score把参数取值转化为连续空间后做优化最后再取整给RF使用。

这种处理方式比网格搜索高效得多尤其适合大范围参数搜索。

北方苍鹰优化算法(NGO)优化随机森林(RF)的分类预测优化参数为:决策树个数和最小叶数 代码包括NGO-RF和基础RF的对比——可改为其他优化算法如SSA,GEO,WOA,SMA等。

NGO算法为2022年最新算法 模型评价指标包括:准确率和混淆图等代码质量极高方便学习和替换数据。

跑完优化后对比原始RF和NGO-RF的效果# 基础RF模型 base_rf RandomForestClassifier(n_estimators200, min_samples_leaf

base_rf.fit(X_train, y_train) # 优化后的NGO-RF optim_rf RandomForestClassifier( n_estimatorsbest_params[n_estimators], min_samples_leafbest_params[min_samples_leaf] ) optim_rf.fit(X_train, y_train)在测试集上对比结果时重点看混淆矩阵的可视化# 混淆矩阵绘制对比 fig, (ax1, ax

plt.subplots(1, 2, figsize(12,

) plot_confusion_matrix(base_rf, X_test, y_test, axax1, cmapBlues) plot_confusion_matrix(optim_rf, X_test, y_test, axax2, cmapGreens)实际跑下来NGO优化的RF在少数类识别上通常会有

%的提升。

比如在乳腺癌数据集上基础RF准确率

9

3%优化后稳定在95%左右特别是恶性样本的召回率显著提高。

想换其他优化算法代码架构设计时就考虑到了扩展性# 替换算法示例改用鲸鱼优化算法WOA from pyMetaheuristics.algorithm import WhaleOptimizationAlgorithm optimizer WhaleOptimizationAlgorithm( fitness_function, param_ranges, population_size30, max_iterations100 )只需要更换优化器对象其他代码完全复用。

这种设计让对比实验变得轻松SSA、GEO等算法都能快速接入。

最后给个小技巧当数据特征维度较高时可以适当扩大最小叶节点数的搜索范围比如

避免生成的决策树过于复杂导致过拟合。

不过要注意参数范围越广需要的迭代次数也要相应增加哦~

90+1免费版-90+1免费版应用

百度百家号客服电话人工服务

123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123