一种基于加权随机森林的专变用户电费回收风险识别方法
技术领域
本发明涉及一种风险识别方法,尤其涉及一种基于加权随机森林的专变用户电费回收风险识别方法。
背景技术
随着经济社会的发展,电力用户的用电需求越来越多样化,专变用户也越来越多。专变用户是指变压器由用户投资,电力公司代管的用户,其用电量一般很大,电费金额很高。由于如今供电公司的营销模式是先使用后付费,专变用户存在供电时间和缴费时间的时差,所以如若发生欠费的行为,对专变用户的电费回收工作带来巨大的风险。如何对专变用户电费回收风险进行识别是当今电力企业所面临的一大难题。
专变用户电费回收风险进行识别为一个分类问题,应用于分类问题的模型方法非常多,包括逻辑回归模型,判别分析模型等传统统计学方法,也包括如神经网络、支持向量机、遗传算法等数据挖掘的新方法,并获得了较理想的结果但分类问题从理论上讲是一个复杂的函数延拓问题,因此不存在一种分类模型方法适用于所有不同的情况,尽管至今仍有许多分类方法陆续出现,但主要存在的问题如下:目前在数据分析领域,可用的分类预测方法虽多,但是在实际应用中,很多忽视了输入变量之间存在相关性,且在实际建模时,输入变量过多,也会导致建模效率下降;且也不能有效提高分类精度。
发明内容
本发明要解决的技术问题和提出的技术任务是对现有技术方案进行完善与改进,提供一种基于加权随机森林的专变用户电费回收风险识别方法,以达到兼顾效率及分类精度的目的。为此,本发明采取以下技术方案。
一种基于加权随机森林的专变用户电费回收风险识别方法,所述识别方法包括以下步骤:
1)专变用户数据预处理
对将要输入模型的原始专变用户数据进行异常值剔除、缺失值填充、归一化处理和过采样处理;
2)基于时间序列构造新的专变用户属性特征
根据专变用户用电行为特征,基于时间序列采用滑动窗口的方法构造新的专变用户属性特征;
3)专变用户属性特征筛选
计算专变用户各个属性与风险用户标签之间的相关性,筛选出弱相关属性;计算各个属性之间的相关性,对各个强相关属性做特征选择;以此确定最终输入识别模型的专变用户属性;
4)基于精度的随机森林加权优化
对随机森林中每棵决策树的投票能力赋权值,且在后续测试和预测时实现每棵决策树权值的不断更新,得到不断优化的加权随机森林模型;
5)专变用户电费回收风险识别
当需要专变用户电费回收风险识别时,将经预处理、特征构造以及特征筛选的专变用户数据输入加权随机森模型中,加权随机森模型将专变用户电费回收风险识别转变为二分类问题,实现对专变电费回收风险用户的识别。本技术方案的加权随机森林以及随机森林之中决策树的权值更新。避免因为随机森林之中各棵决策树的权值一样,造成对精度的影响;本技术方案通过对其中每棵决策树的精度进行加权以及进行权值更新,以此提高模型的精度。且因为去除了一些关联性的变更,使得变量减少,由于输入的变量减少,也保证了建模的效率。
作为优选技术手段:在步骤1)中,专变用户数据预处理步骤包括:
1.1)采用阈值法对原始专变用户数据之中异常的属性值进行剔除,即对不同的属性特征,判定超过该属性特征阈值的点为异常点,对该专变用户数据进行剔除;
1.2)对步骤1.1)中处理好的数据进行完整性检验,若存在缺失值采用同类均值插补的方法补齐;
1.3)对步骤1.2)中处理完毕的数据进行归一化处理,方式如(1)式所示:
上式x'为归一化后的值;x为原始值;xmin为最小值;xmax为最大值;
1.4)当根据步骤1.3)处理后得到的数据仍为不平衡数据集时,采用SMOTE方法进行过采样处理,使处理后样本之中的专变电费回收风险用户和正常用户比例提升至1:1。
作为优选技术手段:在步骤2)中,基于时间序列构造新的用户属性特征;根据专变用户用电行为特征,基于时间序列采用滑动窗口的方法合成新的用户属性,即采用专变用户属性值在一个时间区间内的平均值来代替该时刻的专变用户属性值,使专变用户数据更加的平稳有代表性。
作为优选技术手段:在步骤3)中,对专变用户属性特征进行筛选,计算各个属性与标签之间的相关性,筛选出弱相关属性,不作为输入模型的属性特征;对各个建模属性特征之间的相关性进行计算,若相关系数大于设定相关性阈值,剔除相关系数高的部分属性;所述的属性为原始属性和基于时间序列合成的新的用户属性。可以减少输入指标因子数,同时使输入因子彼此不相关,却能保留数据的主要信息,降低模型的复杂度,提高模型的训练速度,得到较高的精度。
作为优选技术手段:所述步骤4)中,随机森林基于精度加权、实现权值更新步骤为:
4.1)对随机森林模型之中每棵决策树的权值初始化操作,将经过数据预处理的专变用户数据集分为训练集和测试集两个部分;将训练集划分为模型训练集和权值调整训练集;将模型训练集数据输入随机森林模型,对模型进行训练;训练完成之后使用权值调整训练集对模型进行测试,得到权值调整训练集之中每棵决策树的分类的精度,即为该决策树的权值:
其中,wi为总共T棵决策树之中第i棵决策树的权值,代表其分类能力和分类的准确率,ni为第i棵决策树的正确分类的权值调整训练集样本数,N权值调整训练集赋权样本个数同时为原始赋权值的样本个数;
4.2)根据步骤4.1)中对每棵决策树权值初始化操作,得到整个加权随机森林的模型函数为:
fi(x)=c (3)
其中,fi(x)表示测试集样本x在第i棵决策树的输出结果,x为加权随机森林测试集样本,wi作为随机森林中第i棵决策树的投票权值,k为整个样本之中的类别,c为k个类之中的某类,H(x)为样本x的最终的分类结果;
4.3)根据步骤4.2)中得到的加权随机森林模型函数,利用后续测试集的测试精度实现对每棵决策树权值的自动更新。
在后续通过测试集的测试可以实现每棵决策树投票权值w
i的自动更新,原始赋权值的样本个数N,初始权值为w
i,在后续的模型测试之中设第t次测试集样本数为N
t,
为第t次测试集第i棵决策树正确分类的样本数,得到每颗决策树的分类准确率为
更新每棵决策树权值与第t次测试集样本之中每棵决策树分类准确率相关,其中
为:
考虑测试集样本个数对分类准确率的影响,采用求w
i和
加权调和平均数的方法对各棵决策树权值做如下更新:
即:
更新赋权样本个数为:
N←N+Nt (8)。
作为优选技术手段:在步骤5)中,专变用户电费回收风险识别转变为二分类问题,即将专变用户分为正常用户和风险用户,实现专变用户电费回收风险识别。
有益效果:
(1)通过对专变原始数据的采用SMOTE方法过采样,降低样本的不平衡度,提升电费回收风险用户和正常用户的比例,从数据样本的分布上提高模型训练精度;
(2)在属性合成部分,根据专变用户用电行为特征,基于时间序列采用滑动窗口的方法合成新的用户属性特征,使专变用户数据更加的平稳有代表性,有益于后续的专变用户电费回收风险识别;
(3)专变用户电费回收风险识别部分使用基于加权随机森林的专变用户电费回收识别方法,从算法上提升了专变用户电费回收风险识别的精度。
附图说明
图1是本发明的流程图。
具体实施方式
以下结合说明书附图对本发明的技术方案做进一步的详细说明。
如图1所示,本发明包括以下步骤:
S1:专变用户数据预处理
对将要输入模型的原始专变用户数据进行异常值剔除、缺失值数据填充、归一化处理和不平衡数据集的过采样处理;
其具体步骤为:
S101:采用阈值法对原始专变用户数据之中异常的属性值进行剔除,即对不同的属性特征,判定超过该属性特征阈值的点为异常点,对该专变用户数据进行剔除;
S102:对步骤S101中处理好的数据进行完整性检验,若存在缺失值采用同类均值插补的方法补齐;
S103:对步骤S102中处理完毕的数据进行归一化处理,方式如(1)式所示:
上式x'为归一化后的值;x为原始值;xmin为最小值;xmax为最大值;
S104:根据步骤S103处理后得到的数据仍为不平衡数据集,采用SMOTE方法进行过采样处理,使处理后样本之中的专变电费回收风险用户和正常用户比例提升至1:1。
S2:基于时间序列合成新的专变用户属性
根据专变用户用电行为特征,基于时间序列采用滑动窗口的方法合成新的专变用户属性;
基于时间序列合成新的用户属性特征;采用某一时刻的数据来描绘该属性,或多或少会有误差或者离群;根据专变用户用电行为特征,基于时间序列采用滑动窗口的方法合成新的用户属性,即采用选取专变用户属性值在一个时间区间内的平均值来代替该时刻的专变用户属性值,使专变用户数据更加的平稳有代表性。
S3:专变用户属性特征筛选
输入模型的专变用户属性对专变用户电费回收风险识别模型的精度影响很大,计算各个属性与标签(即该用户是否为风险用户)之间的相关性,筛选出弱相关属性;计算各个属性之间的相关性,对各个强相关属性做特征选择;
对专变用户属性特征进行筛选,计算各个属性(原始属性和基于时间序列合成的新的用户属性)与标签(即该用户是否为风险用户)之间的相关性,筛选出弱相关属性,不作为输入模型的属性特征;对各个建模属性特征之间的相关性进行计算,若相关系数大于设定相关性阈值,剔除相关系数高的部分属性。
S4:基于精度的随机森林加权优化
对随机森林中每棵决策树的投票能力赋权值,且在后续测试和预测时实现每棵决策树权值的不断更新;
其具体的步骤为:
S401:对随机森林模型之中每棵决策树的权值初始化操作,将经过数据预处理的专变用户数据集分为训练集和测试集两个部分;将训练集划分为模型训练集和权值调整训练集;将模型训练集数据输入随机森林模型,对模型进行训练;训练完成之后使用权值调整训练集对模型进行测试,得到权值调整训练集之中每棵决策树的分类的精度,即为该决策树的权值:
其中,wi为总共T棵决策树之中第i棵决策树的权值,代表其分类能力和分类的准确率,ni为第i棵决策树的正确分类的权值调整训练集样本数,N权值调整训练集赋权样本个数同时为原始赋权值的样本个数;
S402:根据步骤S401中对每棵决策树权值初始化操作,得到整个加权随机森林的模型函数为:
fi(x)=c (3)
其中,fi(x)表示测试集样本x在第i棵决策树的输出结果,x为加权随机森林测试集样本,wi作为随机森林中第i棵决策树的投票权值,k为整个样本之中的类别,c为k个类之中的某类,H(x)为样本x的最终的分类结果;
S403:根据步骤S402中得到的加权随机森林模型函数,利用后续测试集的测试精度实现对每棵决策树权值的自动更新。
在后续通过测试集的测试可以实现每棵决策树投票权值w
i的自动更新,原始赋权值的样本个数N,初始权值为w
i,在后续的模型测试之中设第t次测试集样本数为N
t,
为第t次测试集第i棵决策树正确分类的样本数,得到每颗决策树的分类准确率为
更新每棵决策树权值与第t次测试集样本之中每棵决策树分类准确率相关,其中
为:
考虑测试集样本个数对分类准确率的影响,采用求w
i和
加权调和平均数的方法对各棵决策树权值做如下更新:
即:
更新赋权样本个数为:
N←N+Nt (8)
S5:专变用户电费回收风险识别
基于加权随机森林算法,将专变用户电费回收风险识别转变为二分类问题,即基于加权随机森林算法,将专变用户分为正常用户和风险用户,实现专变用户电费回收风险识别。
以上图1所示的一种基于加权随机森林的专变用户电费回收风险识别方法是本发明的具体实施例,已经体现出本发明实质性特点和进步,可根据实际的使用需要,在本发明的启示下,对其进行等同修改,均在本方案的保护范围之列。