Page 286 - 《软件学报》2021年第10期
P. 286
3258 Journal of Software 软件学报 Vol.32, No.10, October 2021
最后归一化处理:
VIM j
VIM (12)
j
C i 1 VIM i
特征重要性是特征在所有树的重要性评分的累加和,评分越高,则该特征对预测结果起的作用越大.
3 RF-GBDT 模型框架
RF-GBDT 由 3 部分构成,分别是特征选择、特征变换和分类器.训练数据首先通过 GBDT 进行训练,得到特
征重要性按从大到小排序的特征,利用递归消除特征方法进行特征选择,选择出最优特征子集;选择好最优特征
子集之后,使用随机森林模型训练特征子集,将样本落到每棵树的叶子索引作为最终分类器的输入,若有 m 个样
本,随机森林模型有 n 棵树,则转换之后的数据大小是 mn;最后使用 GBDT 模型对转换后的特征进行训练与预
测.模型框架的总体结构如图 2 所示.
Fig.2 Model and framework of RF-GBDT
图 2 RF-GBDT 模型框架
第 1 部分是特征选择.本文基于递归消除特征 [18] 方法提出了基于梯度提升决策树的递归消除特征的方法,
简称 GBDT-RFE.GBDT-RFE 属于包装法特征选择算法的一种,使用 GBDT 模型进行多轮训练,每轮训练记录损
失值,并且消除特征重要性最小的特征,再基于新的特征集进行下一轮训练,直到特征集全部消除完毕为止.如
Algorithm 1 所示:首先使用 GBDT 进行训练,利用 GBDT 的特征重要性评估方法计算出所有特征的特征重要性,
从大到小排序,同时记录损失值;然后删除特征重要性最小的特征,即特征重要性排序后的最后一个特征;接着
更新特征集,基于新的特征集进行下一轮训练,直到特征集全部消除完毕为止;最后,选取最小损失值所对应的
特征集为最优特征集.
Algorithm 1. GBDT-RFE.
1: Input: X, y;
2: Output: F.
3: while features_list:
4: Train GBDT (X,y) on features_list:
5: RecordLoss:
6: Get ranked_feature_importances;
7: del ranked_feature_importances [1];
8: features_list=ranked_feature_importances;
9: end while
10: F argmin Loss
F
第 2 部分是特征变换.He 在文献[20]中提出了决策树特征转换方法,使用一棵决策树转换的特征数量比使
用多棵决策树转换的特征数量要少,包含的信息量更少.本文在此基础上提出了基于随机森林模型进行特征转
换的方法.使用随机森林模型对训练数据进行训练,然后把训练数据的每个样本点落到所有树的叶子索引作为
分类器的训练集,把测试数据的每个样本点落到所有树的叶子索引作为分类器的测试集.样本 x 遍历所有树,首
先经过第 1 棵树,落到索引为 index_1 的叶子上;然后样本 x 经过第 2 棵树,落到索引为 index_2 的叶子上;直到样