system: [SYSTEM]

user: 4. 实验与分析 4.1. 实验数据 本文实验数据来自于依托某项目获得的某省电网TMS系统数据，为了实验方便，抽取了其中的业务类型汇总表进行实验分析，其表结构如表1所示。 Table 1 Summary of business type 属性名称 属性描述 数据类型 长度 说明 1 3 4 7 8 ObjectID 对象显示ID VARCHAR 512 业务类型汇总表的主键，必填 ObjectDispidx 对象显示序列号 VARCHAR 22 非必填 Name 对象显示名称 VARCHAR 512 非必填 WholeName 对象的全局名称 VARCHAR 512 只读属性自动计算公式：所属区域全局名称/业务名称 Abbr 对象简称 VARCHAR 512 非必填 PAR_SYS 所属系统 VARCHAR 512 非必填 PAR_ZONE 所属区域 VARCHAR 512 非必填 SerialNumber 序号 NUMBER 8 非必填 BUZ_TYPE 业务类型 VARCHAR 512 业务类型 A_SITE_ID A站点 VARCHAR 42 光缆端点资源 Z_SITE_ID Z站点 VARCHAR 42 光缆端点资源 DISP_ORGA 调度单位 VARCHAR 48 本地单位选择 DISPATCH_LEVEL 调度等级 VARCHAR 42 调度等级 BuyDate 购买日期 TIMESTAMP 80 年月日，非必填 SERVICE_STATE 状态 VARCHAR 42 服役状态 DispObj 调度对象 VARCHAR 512 非必填 BEG_DATE 开通日期 TIMESTAMP - 年月日，非必填 USE_DEPT 使用单位 VARCHAR 512 非必填 EquipmentType 设备类型 VARCHAR 512 设备类型，非必填 IS_FIBER_BUZ 是否为业务纤芯 INT4 - 是否(0/1) CHANNEL_CAPACITY 通道数量 INT32 - 取值范围：1到10，整数。 BUZ_RATE 业务带宽 VARCHAR 512 非必填 END_DATE 退出日期 TIMESTAMP - 业务退出时间，业务退出时不删除业务，年月日，非必填 TEST1 TEST1 VARCHAR 512 隐藏字段 TEST2 TEST2 VARCHAR 512 隐藏字段 TEST3 TEST3 VARCHAR 512 隐藏字段 TEST4 TEST4 VARCHAR 512 隐藏字段 表1. TMS业务类型汇总表 4.2. TMS系统数据预处理 通过业务类型汇总表的225，506条数据，对EquipmentType字段进行分类预测。为了实现分类任务，首先通过对表字段以及表数据分析，人工去除了一些无用字段，如ObjectID、ObjectDispidx、WholeName、Name等；考察到有一些大量为空的字段，如END_DATE、BuyDate、DispObj、END_DATE等，将之去除；最后去除隐藏字段，包括TEST1、TEST2、TEST3、TEST4。最终，剩下用于模型训练属性集为{A_SITE_ID，Z_SITE_ID，PAR_SYS，DISP_ORGA，PAR_ZONE，IS_FIBER_BUZ，BUZ_TYPE， DISPATCH_ LEVEL，SERVICE_STATE，CHANNEL_CAPACITY，BUZ_RATE}，由27个字段压缩为11个字段，标签集为{EquipmentType}。 4.3. 实验分析 实验包括决策树数目对比、特征划分标准对比、特征划分候选子集中的最大特征数对比、特征重排的留出法验证以及特征截枝前后对比，并由此得到了每种参数指标中最适合于TMS系统数据进行特征选择的值；最后形成了最适合于TMS系统特征选择的随机森林模型，并通过实验得到了最终的特征选择结果。所有出现的参数score代表随机森林模型的全样本集标签分类预测准确率，参数oob_score_代表随机森林模型的OOB样本标签分类预测准确率。 4.3.1. 决策树数目对比 小数目集使用了1~10棵决策树进行迭代测试，大数目集使用了10~200以步长为10棵决策树进行了迭代测试。当考虑随机森林模型的OOB样本标签分类预测准确率oob_score_时，发现其随着决策树的增大，变化明显程度大大高于score，进一步说明oob_score_对随机森林准确率的分析具有重要的作用，见图1。 图1. 决策树数目对score和oob_score_的影响 当决策树数目以步长为10棵在10~200之间变化时，随机森林模型准确率有一定的上升趋势，当决策树数目大于70棵时，模型准确率的上升已趋近于0，如图2所示。 图2. 决策树数目在大数据集时对随机森林模型准确率的影响 因此，决定使用决策树数目为70棵的随机森林作为最终模型。当决策树数目为70棵时，得到的特征重要性程度如图3所示，其中BUZ_TYPE最为重要，而BUZ_RATE重要程度为0。 图3. 决策树数目为70棵时的特征重要性程度 4.3.2. 特征划分标准对比 在决策树数目以步长为10棵在10~200之间变化时，分别使用基于信息增益和基于基尼指数对节点进行特征划分完成随机森林的建模。 如图4所示，当选取决策树数目为70棵时，基于信息增益与基于基尼指数的特征划分标准所产生的最终特征重要性程度，在分布上基本一致，在数值上略有差别，如关于特征BUZ_TYPE的重要程度，基于信息增益所得到的值为0.26，而基于基尼指数所得到的值为0.24。这也说明，无论采用哪种特征划分标准，对最终分类模型的构建具有重要性的特征占比始终较大；反之，一些不重要的特征占比始终较小，如BUZ_RATE，对模型的重要程度始终为0。 图4. 不同划分标准的特征重要性程度 4.3.3. 特征划分候选子集中的最大特征数对比 在TMS系统数据的业务类型汇总表中，去除一些冗余或无用的字段后，剩余11个字段。因此，在随机森林的基决策树进行节点划分时，可以考虑使用1~11个特征作为特征划分候选子集。 如图5所示，当最大特征数从1到11变化时，随机森林模型的准确率先上升后下降，这是由于当特征数较少时，基决策树无法选择最为合适的特征来进行划分；但当特征数过多时，随机森林模型的基决策树与传统决策树越来越相近，当最大特征数等于所有特征数时，随机森林模型的基决策树与传统决策树无异，因此，其模型准确率会有所下降。 图5. 最大特征数对模型准确率的影响 对于TMS系统数据，当特征划分子集中的最大特征数为6时，所得到的随机森林模型准确率最高。因此，针对TMS系统的数据，我们选取6为特征划分候选子集中的最大特征数。 当特征划分候选子集中的最大特征数为6棵时，得到的特征重要性程度如图6所示，其中特征重要性排在前三的分别是BUZ_TYPE、DISP_ORGA和PAR_SYS。 图6. 最大特征数为6时的特征重要性程度 4.3.4. 特征重排的留出法验证 通过衡量特征重排前后模型准确率的变化幅度，可以获得该特征对于模型的重要程度。模型准确率的变化幅度越大，则特征越重要，反之若模型准确率变化幅度越小，则特征越不重要。 采用留出法进行实验，即每次留出30%的数据作为测试样本。当进行了100次留出法验证后，得到的特征重要性程度如图7所示。本次排名中，特征BUZ_RATE和特征SERVICE_STATE的重要性程度都为0，而基于前三个参数所得到的特征重要性排名中只有特征BUZ_RATE为0；同时，最重要的特征BUZ_TYPE的重要程度已经超过了0.3，而基于前三个参数所得到的特征重要性排名中特征BUZ_TYPE的重要程度均在0.25左右。由此可以得到，使用特征重排前后模型准确率的变化幅度来衡量特征重要性程度，能够让重要的特征变得更为重要，让不重要的特征变得更为不重要，因此该方法略优于其他特征衡量方法。 图7. 基于特征重排的特征重要性程度 4.3.5. 特征截枝前后对比 对随机森林模型训练后得到的特征重要性排名进行截枝，取得最为重要的几个特征，再次进行随机森林模型的训练，最终得到一组更为优化的特征重要性排名和一个可直接用于分类任务的随机森林模型。用基于信息增益、基于基尼指数、基于特征重排后模型准确率变化三个维度来对特征截枝，得到截枝前后随机森林模型的准确率变化。采用的截枝策略为：当特征的重要性程度小于0.1时，将其截取去除。基于信息增益、基于基尼指数、基于特征重排后模型准确率变化来对特征进行截枝，所截取的特征不一样，参见表2。 Table 2 Three-dimensional characteristic truncation result 特征重要性衡量方法 需要截枝的特征 截枝后剩余的特征 基于信息增益 PAR_ZONE、IS_FIBER_BUZ、DISPATCH_LEVEL、SERVICE_STATE、CHANNEL_CAPACITY、BUZ_RATE A_SITE_ID、Z_SITE_ID、PAR_SYS、DISP_ORGA、BUZ_TYPE 基于基尼指数 A_SITE_ID 、Z_SITE_ID 、PAR_ZONE、IS_FIBER_BUZ、DISPATCH_LEVEL、SERVICE_STATE、CHANNEL_CAPACITY、BUZ_RATE PAR_SYS、DISP_ORGA、BUZ_TYPE 基于特征重排后模型准确度变化 A_SITE_ID 、Z_SITE_ID 、PAR_ZONE、IS_FIBER_BUZ、DISPATCH_LEVEL、SERVICE_STATE、CHANNEL_CAPACITY、BUZ_RATE PAR_SYS、DISP_ORGA、BUZ_TYPE 表2. 三个维度的特征截枝结果 如果使用随机森林模型的oob_score_来衡量其准确率，可以看出无论是基于信息增益、基于基尼指数还是基于特征重排后模型准确率变化进行特征截枝，随机森林模型的oob_score_均变大，但基于特征重排后模型准确率变化进行特征截枝后，其模型准确率提升更为明显，参见图8。 图8. 三个维度的特征截枝前后模型oob_score_对比 通过对TMS系统数据预处理后，针对随机森林应用于TMS特征选择的不同方法进行了实验对比与分析，最终选择出来的最适合TMS系统数据的随机森林特征选择模型如下： ① 随机森林模型的决策树数目取值为70。 ② 对于随机森林模型中的每一棵基决策树，使用信息增益的方法来对节点进行特征划分。 ③ 在基决策树的每一个节点进行特征划分时，随机选取的特征划分子集中的最大特征数为6。 ④ 在对特征的重要性程度进行排名时，采用特征重排后随机森林模型准确率变化程度作为衡量标准。 ⑤ 对得到的特征重要性排名进行截枝，去除特征重要性程度小于0.1的特征，并用剩余的特征重新进行①至④的过程，最终得到优化过的特征重要性排名和一个可以直接用于分类任务的随机森林模型。 对该模型进行实验后，得到特征重要性排名，参见表3。因此，在使用随机森林模型对TMS系统进行特征选择后，得到的三个重要特征为：BUZ_TYPE、DISP_ORGA和PAR_SYS。 Table 3 Importance ranking of feature 特征名称 特征重要性程度 排名 BUZ_TYPE 0.381033026699 1 DISP_ORGA 0.15962044504 2 PAR_SYS 0.110061000745 3 表3. 特征重要性排名 同时，我们进行实验后得到新的随机森林模型的score为0.983598327673，oob_score_为0.937970145976，可以直接用于后续的分类任务。