熵值法的原理+实现

简介: 可以用熵值来判断某个指标的离散程度,其信息熵值越小,指标的离散程度越大, 该指标对综合评价的影响(即权重)就越大,如果某项指标的值全部相等,则该指标在综合评价中不起作用。因此,可利用信息熵这个工具,计算出各个指标的权重,为多指标综合评价提供依据。

1.定义

4f7d9a917d30eba10fdfd079fa801393.png

熵:在物理学上是度量热力系统学系统中的无序程度,在信息论中是度量系统的不确定性。

下面我们用两个例子来解释熵这个概念

799454959e92429188e58f8a397962e8.png

   左边克劳修斯的罐子里有9颗绿色的豆子,右边波尔兹曼的罐子里有5颗红色豆子和4颗绿色豆子。左边瓶子里的豆子很完整,都是绿色的豆子,所以它的熵比较小,信息熵越小,数据成纯度越高,也就是说左边罐子里只有同一种颜色,它豆子的纯度比较高。右边的瓶子豆子很凌乱,所以熵的伤比较大,也就是说右边的罐子里有红色和绿色两种不一样的豆子,它包含的豆子种类多,信息量大。

323122c1a3aad8e08f2315992911e4b0.png

同样我们对比小唠说的“啦啦啦啦啦”和小叨说的“我是卖报的小行家这”两句话。“啦啦啦啦啦”这几个字它的纯度高,带有的信息量少,所以他的熵值小。“我是卖报的小行家”这几个字,他的纯度低,信息量大,所以你的熵值大。我们可以通过香浓提供的公式来算出它所对应的熵值。

从上面两个案例,我们可以总结出以下两个性质:

信息熵越大,信息量越多,纯度越低。(不确定性高,离散程度高)

信息熵越小,信息量越小,纯度越高。

2.适用范围

   可以用熵值来判断某个指标的离散程度,其信息熵值越小,指标的离散程度越大, 该指标对综合评价的影响(即权重)就越大,如果某项指标的值全部相等,则该指标在综合评价中不起作用。因此,可利用信息熵这个工具,计算出各个指标的权重,为多指标综合评价提供依据。

b0ca8c336a9ebceaf2431b6e45add495.png

   通常我们构建一个评价指标需要分为一级指标,二级指标,三级指标等等。例如上表我们评价一级指标时采用了AHP层次分析法,二级指标的权重确定使用了熵值法。因为我们在请专家根据自己的经验对指标进行评价时,我们能请到的专家数量有有限,所以只让专家对一级指标进行主观评定。二级指标,三级指标则通过数据计算的方式确定权重。最终的权重系数为一级指标乘以二级指标乘以三级指标计算得出。同时采用以上的方法AHP和商商权法的组合,是一种主观加客观的方式,在一定程度上避免了层次分析法主观性较强的缺点,使得评价结果更加准准确。

   可以用熵值来判断某个指标的离散程度,其信息熵值越小,指标的离散程度越大, 该指标对综合评价的影响(即权重)就越大,如果某项指标的值全部相等,则该指标在综合评价中不起作用。因此,可利用信息熵这个工具,计算出各个指标的权重,为多指标综合评价提供依据。

3.实现

学号

C语言程序设计

数据库原理

体育

平均分

1

85.00

80.00

93.00

86

2

60.00

80.00

88.00

76

3

50.00

80.00

88.00

72.66667

4

40.00

80.00

90.00

70

5

90.00

80.00

88.00

86

   这是几位同学期末的一个成绩单,首先我们来看一下上面的成绩。我们想通过一种方法来确定学号1~5号中谁是最优秀的,我们先计算出了平均分,发现一号和五号的平均分都是86分。我们来看各科的成绩其中数据库原理大家都是80分,c语言程序设计这一门课成绩差异非常大,最低分有40分,最高分有90分。体育一门课成绩成绩差距也不是很大,都是八九十。

   这时我们就要提出一种评价指标,来评价这几位同学的成绩。以上的成绩我们考虑给C语言程序设计加一些权重。根据熵值法的原理来看。数据库原理,这一门课的离散程度为0,他在权重一定是零。体育和c语言程序设计比较来说c语言程序设计的离散程度较大从素质上来看有40的也有90的,差距比较大。体育这一门课最低有88最高也只有93,差距比较小。计算结果的权重一定是c语言程序设计的权重比体育的权重大。因为现实中的思维来想,可能是c语言程序设计考试比较难,所以他的分数差距就比较大,而体育和数据库原理很简单,它的分数差距就比较小。这样子来说,数据库原理和体育这两门课,它的可比性就比较小,因为大家的分数都差不多,C语言程序设计这一门课就有可比性。

下面使用SPSSAU计算以上指标的熵权



2ef8099efddee796f70faeae57d45384.png

0b5ccc48098eab0f6667b4dc205bf73a.png


f56d013c5e97f64c788d26637221593e.png

   以上的分析结果来看C语言程序设计权重系数为99.84,数据库原理的权重为0,体育的权重为0.52。然后我们可以给每一个科目不同的权重系数和各科的成绩相乘以后,得出每一位学生的综合成绩,评价这几位学生。



目录
相关文章
|
4月前
|
机器学习/深度学习 Java Serverless
Java开发者的神经网络进阶指南:深入探讨交叉熵损失函数
今天来讲一下损失函数——交叉熵函数,什么是损失函数呢?大体就是真实与预测之间的差异,这个交叉熵(Cross Entropy)是Shannon信息论中一个重要概念,主要用于度量两个概率分布间的差异性信息。在信息论中,交叉熵是表示两个概率分布 p,q 的差异,其中 p 表示真实分布,q 表示预测分布,那么 H(p,q)就称为交叉熵:
|
3月前
|
机器学习/深度学习
交叉熵损失函数的使用目的(很肤浅的理解)
交叉熵损失函数的使用目的(很肤浅的理解)
|
5月前
|
机器学习/深度学习 JavaScript Python
熵、联合熵、相对熵、交叉熵、JS散度、互信息、条件熵
熵、联合熵、相对熵、交叉熵、JS散度、互信息、条件熵
60 1
“交叉熵”反向传播推导
“交叉熵”反向传播推导
121 0
|
移动开发 JavaScript 算法
数学基础之——熵与散度的灵魂摆渡(解析大全)(二)
数学基础之——熵与散度的灵魂摆渡(解析大全)(二)
309 0
|
机器学习/深度学习 自然语言处理 JavaScript
数学基础之——熵与散度的灵魂摆渡(解析大全)(一)
数学基础之——熵与散度的灵魂摆渡(解析大全)(一)
175 0
|
机器学习/深度学习 人工智能 JavaScript
【Pytorch神经网络理论篇】 21 信息熵与互信息:联合熵+条件熵+交叉熵+相对熵/KL散度/信息散度+JS散度
对抗神经网络(如DIM模型)及图神经网络(如DGI模型)中,使用互信息来作为无监督方式提取特征的方法。
850 0
|
机器学习/深度学习 算法 数据挖掘
深度学习相关概念:交叉熵损失
 我在学习深度学习的过程中,发现交叉熵损失在分类问题里出现的非常的频繁,但是对于交叉熵损失这个概念有非常的模糊,好像明白又好像不明白,因此对交叉熵损失进行了学习。
171 0
|
机器学习/深度学习
损失函数:均方误和交叉熵,激活函数的作用
损失函数(loss function)或代价函数(cost function)是将随机事件或其有关随机变量的取值映射为非负实数以表示该随机事件的“风险”或“损失”的函数。
179 1
损失函数:均方误和交叉熵,激活函数的作用
|
机器学习/深度学习