pyspark GBTRegressor 特征重要度 及排序
Posted allen-rg
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pyspark GBTRegressor 特征重要度 及排序相关的知识,希望对你有一定的参考价值。
和随机森林类似,模型评估指标和特征重要度分析
训练好model 可用如下代码打印特征以及重要度排序
#打印特征索引及其重要度 features_important = model.featureImportances print(features_important) #获取各个特征在模型中的重要性并按照权重倒序打印 ks = list(features_important.indices) vs = list(features_important.toArray()) features_important = tuple(features_important) print(len(features_important)) name_index = train.schema["features"].metadata["ml_attr"]["attrs"] index_im = zip(ks, vs) names = [] idxs = [] fea_num = 0 for it in name_index[‘numeric‘]: names.append(it[‘name‘]) idxs.append(it[‘idx‘]) fea_num += 1 print (fea_num) d = zip(names, idxs) p = zip(index_im, d) kv = {} for fir, sec in p: kv[sec[0]] = fir[1] fea_num += 1 print(len(kv)) print (sorted(kv.items(), key=lambda el: el[1], reverse=True))
参考链接
https://blog.csdn.net/qq_23860475/article/details/90766237
以上是关于pyspark GBTRegressor 特征重要度 及排序的主要内容,如果未能解决你的问题,请参考以下文章