理解数据挖掘的基本概念,掌握基于Weka工具的基本数据挖掘(分类、回归、聚类、关联规则分析)过程。java
读取文件后,将一些对数据分析无用的属性删除。
首先,删除CONS_NO(用户编号),用户编号是用来标识用户的,对数据分析没用。
而后,发现TQSC(欠费时长)为YMD(年月日)与RCVED_DATE(实收日期)之差,故删去YMD与RCVED_DATE。
其次,CUISHOU_COUNT(催收次数)全为0,删去;YM(年月)对数据分析无用,删去。算法
在Filter中选择weka.filters.unsupervised.attribute.Normalize,进行归一化。归一化的数据以下图所示。网络
评价策略使用CfsSubsetEval,它根据属性子集中每个特征的预测能力以及它们之间的关联性进行评估。
搜索方法使用BestFirst。
获得两个关键特征,分别为RCVED_AMT(实收金额)与TQSC(欠费时长)。dom
对数据进行分类,首先要对其进行离散化。
在Filter中选择weka.filters.unsupervised.attribute.Discretize,进行离散化。ide
对数据分类,须要数据为Nominal类型,但此时IS_BAD仍是Number类型,在Filter中选择weka.filters.unsupervised.attribute.NumericToNominal进行类型转换。工具
查准率:0.838
查全率:0.807
混淆矩阵:
运行时间:2.27srest
查准率:0.837
查全率:0.807
混淆矩阵:
运行时间:67.04sorm
查准率:0.837
查全率:0.807
混淆矩阵:
运行时间:14713.98sblog
查准率:0.837
查全率:0.807
混淆矩阵:
运行时间:0.57s内存
读取文件后,将一些对数据分析无用的属性删除,如:YMD(年月日)、REGION_ID(地区编号)
在Filter中选择weka.filters.unsupervised.attribute.Normalize,进行归一化。归一化的数据以下图所示。
评价策略使用CfsSubsetEval,搜索方法使用BestFirst。
获得三个关键特征,分别为HIGH_TEMP(开始气温)、MAX_VALUE(负荷最大值)和MIN_VALUE(负荷最小值)。
对数据进行回归分析前,先进行离散化。
在Filter中选择weka.filters.unsupervised.attribute.Discretize,进行离散化。
均方根偏差:108.7096
相对偏差:18.7344%
运行时间:0.41s
均方根偏差:134.6398
相对偏差:29.0789%
运行时间:0.76s
均方根偏差:144.0997
相对偏差:30.2385 %
运行时间:0.01s
删除无关属性,SUM_MONTH、USER_ID、MSISDN、CUS_ID。
在Filter中选择weka.filters.unsupervised.attribute.Normalize,进行归一化。归一化的数据以下图所示。
选择特征前,还要把数据中的2个string属性的删掉,才能使用CfsSubsetEval成功选择特征
评价策略使用CfsSubsetEval,搜索方法使用BestFirst。
共有20个关键特征,分别为
BRAND_ID
AVG_3_CALL_DUR60
CUR_CALL_RATE
AVG_3_PTP_CNT
AVG_GNET_DATA
AVG_TNET_DATA
OTHER_10_INTELLIGENT_RATE
GEN_AMOUNT
INCREMENT_LLM_RATE
CUR_BALANCE
ONUSE_BALANCE
BINGDING_LEAVE_MONTH
PAD_CHNNL_CNT
CHNL_TYPE
CHANGE_INURE_DATE
IS_LIKE_INTELLIGENT
IS_LIKE_BRAND
TS_NET_CNT
JSTX_CNT
JSTX_DATA
聚类质量: 138999.20953835524
运行时间:1.18s
聚类质量:
运行时间:6892.63s
爆了内存,暂时找不到解决方法。
聚类质量:
运行时间:
读取文件后,将一些对数据分析无用的属性删除,如:YMD(年月日)、REGION_ID(地区编号)
在Filter中选择weka.filters.unsupervised.attribute.Normalize,进行归一化。归一化的数据以下图所示。
评价策略使用CfsSubsetEval,搜索方法使用BestFirst。
获得三个关键特征,分别为HIGH_TEMP(开始气温)、MAX_VALUE(负荷最大值)和MIN_VALUE(负荷最小值)。
- MAX_VALUE='(-inf-0.1]' 1718 ==> AVG_VALUE='(-inf-0.1]' 1718 conf:(1) lift:(1) lev:(0) [0] conv:(1)
- WIND_VELOCITY='(0.9-inf)' 1190 ==> MAX_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [1] conv:(1.38)
- WIND_VELOCITY='(0.9-inf)' 1190 ==> AVG_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [0] conv:(0.69)
- WIND_VELOCITY='(0.9-inf)' AVG_VALUE='(-inf-0.1]' 1190 ==> MAX_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [1] conv:(1.38)
- WIND_VELOCITY='(0.9-inf)' MAX_VALUE='(-inf-0.1]' 1190 ==> AVG_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [0] conv:(0.69)
- WIND_VELOCITY='(0.9-inf)' 1190 ==> MAX_VALUE='(-inf-0.1]' AVG_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [1] conv:(1.38)
- MIN_VALUE='(0.2-0.3]' 913 ==> MAX_VALUE='(-inf-0.1]' 913 conf:(1) lift:(1) lev:(0) [1] conv:(1.06)
- MIN_VALUE='(0.2-0.3]' 913 ==> AVG_VALUE='(-inf-0.1]' 913 conf:(1) lift:(1) lev:(0) [0] conv:(0.53)
- MIN_VALUE='(0.2-0.3]' AVG_VALUE='(-inf-0.1]' 913 ==> MAX_VALUE='(-inf-0.1]' 913 conf:(1) lift:(1) lev:(0) [1] conv:(1.06)
- MAX_VALUE='(-inf-0.1]' MIN_VALUE='(0.2-0.3]' 913 ==> AVG_VALUE='(-inf-0.1]' 913 conf:(1) lift:(1) lev:(0) [0] conv:(0.53)
- MAX_VALUE='(-inf-0.1]' 1718 ==> AVG_VALUE='(-inf-0.1]' 1718 conf:(1) lift:(1) lev:(0) [0] conv:(1)
- WIND_VELOCITY='(0.9-inf)' 1190 ==> MAX_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [1] conv:(1.38)
- WIND_VELOCITY='(0.9-inf)' 1190 ==> AVG_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [0] conv:(0.69)
- WIND_VELOCITY='(0.9-inf)' AVG_VALUE='(-inf-0.1]' 1190 ==> MAX_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [1] conv:(1.38)
- WIND_VELOCITY='(0.9-inf)' MAX_VALUE='(-inf-0.1]' 1190 ==> AVG_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [0] conv:(0.69)
- WIND_VELOCITY='(0.9-inf)' 1190 ==> MAX_VALUE='(-inf-0.1]' AVG_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [1] conv:(1.38)
- AVG_VALUE='(-inf-0.1]' 1719 ==> MAX_VALUE='(-inf-0.1]' 1718 conf:(1) lift:(1) lev:(0) [0] conv:(1)
- MAX_VALUE='(-inf-0.1]' 1718 ==> WIND_VELOCITY='(0.9-inf)' 1190 conf:(0.69) lift:(1) lev:(0) [1] conv:(1)
- MAX_VALUE='(-inf-0.1]' AVG_VALUE='(-inf-0.1]' 1718 ==> WIND_VELOCITY='(0.9-inf)' 1190 conf:(0.69) lift:(1) lev:(0) [1] conv:(1)
- MAX_VALUE='(-inf-0.1]' 1718 ==> WIND_VELOCITY='(0.9-inf)' AVG_VALUE='(-inf-0.1]' 1190 conf:(0.69) lift:(1) lev:(0) [1] conv:(1)
- MAX_VALUE='(-inf-0.1]' 1718 ==> AVG_VALUE='(-inf-0.1]' 1718 conf:(1) lift:(1) lev:(0) [0] conv:(1)
- WIND_VELOCITY='(0.9-inf)' 1190 ==> MAX_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [1] conv:(1.38)
- WIND_VELOCITY='(0.9-inf)' 1190 ==> AVG_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [0] conv:(0.69)
- WIND_VELOCITY='(0.9-inf)' AVG_VALUE='(-inf-0.1]' 1190 ==> MAX_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [1] conv:(1.38)
- WIND_VELOCITY='(0.9-inf)' MAX_VALUE='(-inf-0.1]' 1190 ==> AVG_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [0] conv:(0.69)
- WIND_VELOCITY='(0.9-inf)' 1190 ==> MAX_VALUE='(-inf-0.1]' AVG_VALUE='(-inf-0.1]' 1190 conf:(1) lift:(1) lev:(0) [1] conv:(1.38)
- AVG_VALUE='(-inf-0.1]' 1719 ==> MAX_VALUE='(-inf-0.1]' 1718 conf:(1) lift:(1) lev:(0) [0] conv:(1)
- MAX_VALUE='(-inf-0.1]' 1718 ==> WIND_VELOCITY='(0.9-inf)' 1190 conf:(0.69) lift:(1) lev:(0) [1] conv:(1)
- MAX_VALUE='(-inf-0.1]' AVG_VALUE='(-inf-0.1]' 1718 ==> WIND_VELOCITY='(0.9-inf)' 1190 conf:(0.69) lift:(1) lev:(0) [1] conv:(1)
- MAX_VALUE='(-inf-0.1]' 1718 ==> WIND_VELOCITY='(0.9-inf)' AVG_VALUE='(-inf-0.1]' 1190 conf:(0.69) lift:(1) lev:(0) [1] conv:(1)