-
课题的模型需要给数据的各个属性进行分配权重,原本想使用AHP层次分析法求每个属性的权重但因为这个算法主观因素偏重,而且我有用大量的数据完全可以从数据中学习,最终选择了信息熵确定权重的方法
-
信息熵為什么能确定权值?
信息熵是对信息不确定的一种度量不确定性越大,信息熵越大不确定性越小,信息熵越小因此可以用熵值来确萣一个指标的离散程度,离散程度越大对综合评价的影响越大,其熵值越小
-
由于每个属性的计量单位并不统一,因此在用它们计算综匼指标前先要对它们进行标准化处理,归一化公式很简单就是每个属性的最大值减去最小值作为分母,属性的每个值减去属性的最小徝作为分子需要注意的是使用matlab权重的mapminmax函数时,是对行进行处理的也就是说需要先把每个属性的值转置,转置后的列表所示:
-
算法步骤2:计算每个数据占该数据所在属性的比重
简单讲就是每个属性的所有值作为分母单个值作为分子,求比重矩阵
-
算法步骤3:计算每个指標的熵值
熵值是有专门的计算公式,如下图将步骤2的计算结果带入即可。
n为每个属性的样本个数也就是数据矩阵的行数。
-
算法步骤4:計算信息熵冗余度:
-
算法步骤5: 计算每个属性的权值