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