topsis熵权法(数学建模笔记——评价类模型之熵权法)

:暂无数据 2026-09-19 08:20:06 0

topsis熵权法(数学建模笔记——评价类模型之熵权法)

“topsis熵权法”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看topsis熵权法(数学建模笔记——评价类模型之熵权法)!

本文目录

数学建模笔记——评价类模型之熵权法

嗯,这次讲一讲熵权法,一种通过样本数据确定评价指标权重的方法。

之前我们提到了TOPSIS方法,用来处理有数据的评价类模型。TOPSIS方法还蛮简单的,大概就三步。

对于上述 和 的计算,我们往往使用的是标准化数据后,待评价方案与理想最优最劣方案的欧氏距离,也就是 , 。这样的计算方式其实隐藏了一个前提,就是我们默认所有指标对最终打分的重要程度是相同的,也就是他们的权重相同。
赋予评价指标不同的权重,更符合实际建模情况,也更具有解释性。确定权重的方法我们也提到过多次了,上网查找别的研究报告,发问卷做调查,找专家赋权等等。我们了解的比较深入又显得有逼格的确定权重的方法,就是层次分析法了。但层次分析法的缺点也很明显,即主观性太强,判断矩阵基本上是由个人进行填写,往往最适用于没有数据的情况。

当我们具有数据时,能否直接从数据入手,确定权重呢?

例如上面的题目,常识很难帮助我们确定影响水质最重要的因素是哪一个,也很难告诉我们其余指标的重要程度如何衡量。倘若没有查到相关资料,那我们真的只能完全主观赋权了。这里也只有四个指标,万一来了十个二十个,单是主观赋权就比较麻烦了……

说了这么多,就可以引出一种完全由数据出发,且具有一定逼格的确定权重的方法啦,也就是熵权法。其实听了上面这句话,就应该意识到熵权法的不足之处:只从数据出发,不考虑问题的实际背景,确定权重时就可能出现与常识相悖的情况。以至于评分的时候,也会出现问题。当然啦,我们完全可以灵活一点。熵权法还是有它的优势的,而且逼格比较高……当然我也不晓得评委老师们喜不喜欢这个方法,这里只是介绍,是否采用全看个人啦~

熵——一个系统内在的混乱程度。听起来就很厉害是不是?还有一个著名的“熵增定律”,相信大家或多或少都有所耳闻。虽然是个热力学定律,但其实包含了某种哲学道理:一切事物都是从有序趋向无序。那为什么这个确定权重的方法叫熵权法呢?毕竟数据都是完全给定的了,不会再有所谓向无序的转变了。

具体的我也不晓得,简单讲下我的看法。现代科学除了用熵,还用“信息”来表达系统的有序程度。如果一个系统包含某种确定的结构,就具有着一定的信息,这种信息称之为“结构信息”。结构信息越大,系统就越有序。这么说可能比较玄学,举个简单的例子。

你看海边的沙子,如果仅是随着自然状态自由分布,基本没有什么信息可言,系统完全是混乱而无序的。

如果堆出了一个沙堡,事情就不一样了。沙子有了一定的结构,这部分沙子组成的系统相对变得有序,我们也可以从中看到一定的信息。这样的信息越多,沙堡也就越发精确,系统也就更加有序。应该可以理解的吧~

当然啦,不理解也没关系,我就随便说说。熵权法的原理是:指标的变异程度越小,所反映的现有信息量也越少,其对应的权值也越低。也就是说,熵权法是使用指标内部所包含的信息量,来确定该指标在所有指标之中的地位。由于熵衡量着系统的混乱程度,也可以拿来衡量信息的多少,方法被命名为熵权法倒也可以理解。(不过都是我猜的……)

ok,那我们如何去度量信息量的大小呢?我们可以用事件发生的概率去度量信息量。举个例子,如果小明同学的成绩一直是全校第一,小张同学的成绩一直是全校倒数第一,它们两个同时考取了清华大学。你觉得是“小明考上清华”这一事件的信息量比较大,还是“小张考上清华”这一事件的信息量比较大。很明显,“小张考上清华”这一事件中可能包含着更多的信息量。因为小明一直是全校第一,考上清华应该是一件自然而然的事情,大家都这么觉得。而小张一直是倒数第一,突然考上了清华,一件本来不可能发生的事情发生了,这里面就蕴含着许多的信息。

不过这里有个小问题,上述例子所说的信息,和熵权法原理中提到的现有信息,是不是同一类型的信息呢?

不管怎样,我们可以得出一个简单的结论,越有可能发生的事情,信息量越小,越不可能发生的事情,信息量越多。而我们使用概率衡量事件发生的可能性,因此也可以使用概率,衡量事件包含的信息量的大小。

如果把信息量用字母 表示,概率用 表示,那我们可以画出一个大致的函数关系图。
可以发现,信息量随着概率的增大而减小,且概率处于0-1之间,而信息量处在0-正无穷之间。于是,我们可以用对数函数关系来表达概率与信息量的关系。

假设 是事件 可能发生的某种情况, 表示这种情况发生的概率,我们定义 ,用来衡量 所包含的信息量。对数函数的定义域是 ,而概率的范围是 ,但是我们一般不考虑概率为0的事件。因此使用对数函数并无定义域方面的不妥。

如果事件 可能发生的情况有 ,那我们可以定义事件 的信息熵为 。我们可以看出,信息熵就是对信息量的期望值。当 时, 取最大值为 。

那信息熵越大,现有信息量到底是越大还是越小呢?上面我们说,信息熵是对信息的期望值,那应该是信息熵越大,现有信息量越大吧。其实不然,因为这里的信息的期望值,应该是对未来潜在信息的一种期望。我们说小概率事件包含的信息量多,是因为一件几乎不可能发生的事件发生了,背后很大程度上有着许许多多未被挖掘的信息,最终导致了小概率事件的发生。我们说一件大概率事件包含的信息量少,其实也是指这件大概率事件发生后,能够被挖掘出的信息量比较少。

上面未被挖掘的信息量,全部都是事件未发生前的潜在信息量,并不是现有信息量。当我们已经掌握了足够多的信息,某些事件的发生就是一件自然而然的事情,我们便可以认为这类事件属于大概率事件。当我们掌握的现有信息较少时,我们很难认为某些事自然状态下会发生,就觉得这类事件是小概率事件。觉得“年级第一考上清华”很正常,因为我们对他的考试实力已经有了足够的了解;而“倒数第一考上清华”,很可能是因为我们没有了解到一个重要信息,例如“倒数第一是故意考倒数第一的”……

嗯,以上是我的想法,也就是对应着“信息熵越大,现有信息量越小”的结论。上面的例子可能还有一些逻辑问题,仅供参考。但是要说明的意思应该是比较明了的。随机变量的信息熵越大,目前已有的信息量就越小。而我们的熵权法,其实是基于已有的信息量确定权重的。

ok,铺垫完毕,接下来就是熵权法的计算步骤了。

1.对于输入矩阵,先进行正向化和标准化(忘记了就去看评价类模型第二篇文章)。

如果正向化之后所有数据均为正数,对于矩阵
如果正向化之后的矩阵存在负数,我们可以使用 进行标准化。总而言之,需保证标准化后的数据皆为正数。

2.计算第 项指标下第 个样本所占的比重,并将其看作信息熵计算中用到的概率。
是上述经过标准化的非负矩阵,我们由 计算概率矩阵 。 中每一个元素 。嗯,不要问我为什么要用这种方法确定概率,我也不是很晓得,感兴趣自行查阅吧。查到了可以给我留言告诉我吗?

3.计算每个指标的信息熵,并计算信息效用值,归一化之后得到每个指标的熵权。

对于第 个指标而言,其信息熵计算公式为 。上文中我们提到过, 的最大值为 ,所以我们计算 时,除以一个常数 ,可以使 的范围落在 之间。

上文中也提到了,信息熵越大,已有的信息量就越小。如果 ,信息熵达到最大,此时 必须全部相同,也就是 全部相同。如果某个指标对于所有的方案都具有相同的值,那这个指标在评价时几乎不起作用。例如所有的评价对象都是男生,那评价时就不需要考虑性别因素。这也再次告诉我们,在熵权法的框架中,信息熵越大,已有信息量越小。

因此我们定义信息效用值 ,则信息效用值越大,已有信息量越多。之后我们将信息效用值进行归一化处理,就可以得到每个指标的熵权 。

以上就是用熵权法计算指标权重的全过程了,其实也不是很难。本质上就是“给包含现有信息量更多的指标以更高的权重”。之后就可以按照这个权重,计算TOPSIS中的优劣距离,甚至可以直接加权打分。

事实上,所谓的已有信息量的大小,其实也可以看成指标数据标准差的大小。所有研究对象在某一指标的数据完全一样时,标准差为0,信息熵最大。如果我们进行蒙特卡洛模拟,可以发现信息熵与标准差基本成负相关关系,也就是说标准差与已有信息量基本成正相关关系。标准差越大,数据波动越大,已有信息量也就越大,我们给它的权重也越大。某种意义上就这么回事。

清风老师提出了一个有意思的问题。在评选三好学生时,如果X是严重违纪上档案的次数,Y是被口头批评的次数,哪一个指标对三好学生评选的影响更大?很明显,实际生活中,一旦严重违纪记入档案,基本就不可能再成为三好学生。但绝大多数人这一指标的值都是0,只有很少数人是1或者2。它的波动很小,按熵权法赋权时的权重就很小。但如果真这么做了,可能某个人即使严重违纪了,依然有可能被评为三好学生。这是与实际不符合的。

这个例子告诉我们,熵权法的局限性在于,它仅凭数据的波动程度,或者说所谓的信息量来获得权重,不考虑数据的实际意义,很可能得出违背常识的结果。

清风老师之前觉得,这个方法是忽悠新手的,因为只要方差大,就认为权重大,显得很没有道理。甚至还不如我们用层次分析法给出一个主观的赋权,或者在网上查资料等等。除此之外,第一步中标准化的方法不一样,最后的结果也可能不太一样,这也是一个问题。

但其实有些问题也是可以解决的。例如上面的严重违纪的问题,完全可以把严重违纪的样本剔除掉,对剩余的样本进行排序。以及,对于现实生活中影响非常大的指标,也可以进行提前的赋权,剩下的指标再用熵权法去分余下的权重。

如果对评价指标具有现实性的了解,那完全可以看看熵权法的结果是否符合实际,再决定是否采用。如果对评价指标了解较少,层次分析法显得很随意,网上也搜不到相应的结论,那使用熵权法也是一件无可厚非的事情。

至于用指标内数据的波动程度来衡量指标的重要程度,到底有没有道理。这个也是见仁见智的事情。我个人觉得还是有一定的道理的。在标准化消除量纲的影响之后,某个指标包含的数据波动程度越大,一定意义上表明该指标对最后的结果,会有一个比较大的影响。因为它取值范围广嘛。TOPSIS中的理想最优解和理想最劣解,就是分别取各指标的最优值和最劣值。而波动程度大的指标在计算某个方案和理想方案的距离时,很显然会有较大影响,给它更高的权重,也不是完全没有道理。当然啦,这种方法还是需要排除特殊情况的,一般情况下我觉得问题不大。

(上面就是随便扯扯,别太当真。)

我觉得,只要熵权法最后的结果,没有违反普遍的常识,用一用也没有太大的问题。清风老师也说了,如果只用来比赛,熵权法就尽管用,这个方法总比自己随便定义的要好点儿吧(一般情况下)。

嗯,以上就是我想说的关于熵权法的全部东西啦。如果还想进一步了解,请自行查阅啦。

拜拜~

python: 熵权法、理想解、贴近度

安装依赖

安装pandas时,顺便也装了numpy

输入

引包,读表

1 正向指标取倒数

或者是理想解取反极值

2 标准化
linalg.norm或者用极值

3 计算熵值:ej

4 计算权重:wj

5 加权规范化矩阵

6 正理想解,负理想解

7 各样本到正负理想解的欧式距离
Euclidean distance 欧几里德距离

8 贴近度

9 整理结果

更多:
一个简单实用的评价模型——TOPSIS理想解法
熵权法的python实现
Python学习笔记——熵权—TOPSIS
推荐系统-- 欧式距离和相似度
对身高和体重两个单位不同的指标使用欧式距离可能使结果失效,所以一般需要做数据标准化

熵值法和熵权法一样吗

熵值法和熵权法不一样。熵值法是求权重的。熵权法就是求权重的一种方法而已。

①、属于规范化,通常用极差法规范化,注意一定要注意指标的属性,即正向指标还是负向指标。这步是错得最多的。

②③、这步是对应的,一句话概括就是代入带权值的距离公式进行计算(熵权法就是求权重的而已)

这一步求权重的方法有10来种,比如客观法熵权法,主观法AHP等等。距离公式有60来种,最常见的是欧式距离公式。

因此这步的组合有600种情况。到正理想解的距离越远越差,是一个负向指标。 到负理想点的距离越小越差,是正向指标。

④⑤、是贴近度的公式有多种定义。

⑥、妥协解 可以理解为只有一列可以。

基于正负理想点D 得到的城市牛逼程度的排序情况。

最后topsis+熵权法 跟熵权法,它就不是一个东西。熵权法就是求权重的一种方法而已。它只是topsis的一部分。熵权法只是求解权重的一种方法,没有啥好探讨的。

一言以蔽之:topsis核心就是针对归一化矩阵,通过带权值的距离公式求解出到正负理想点的距离

请问如何在SPSS或者R或者DPS中进行熵权法如何对数据进行关联度分析和影响因子评价

SPSSAU综合评价里面都有提供这些方法,包括熵值熵权法,因子分析法,灰色关联度,TOPSIS法等。

在综合评价里面如图:

熵权法确定权重有什么优点和缺点

优点:
客观性:相对那些主观赋值法,精度较高、客观性更强,能够更好的解释所得到的结果。
适应性:可以用于任何需要确定权重的过程,也可以结合一些方法共同使用。
缺点:目前为止,熵权法只在确定权重的过程中使用,所以使用范围有限,解决的问题有限。

如何搞定熵权topsis

一、分析前准备

1.研究背景

TOPSIS法用于研究评价对象与‘理想解’的距离情况,结合‘理想解’(正理想解和负理想解),计算得到最终接近程度C值。熵权TOPSIS法核心在于TOPSIS,但在计算数据时,首先会利用熵值(熵权法)计算得到各评价指标的权重,并且将评价指标数据与权重相乘,得到新的数据,利用新数据进行TOPSIS法研究。

通俗地讲,熵权TOPSIS法是先使用熵权法得到新数据newdata(数据成熵权法计算得到的权重),然后利用新数据newdata进行TOPSIS法研究。

例如:当前有一个项目进行招标,共有4个承包商,分别是A,B,C,D厂。由于招标需要考虑多个因素,各个方案指标的优劣程度也并不统一。为了保证评价过程中的客观、公正性。因此,考虑通过熵权TOPSIS法,对各个方案进行综合评价,从而选出最优方案。

2.数据格式

熵权TOPSIS法用于研究指标与理想解的接近度情况。1个指标占用1列数据。1个研究对象为1行,但研究对象在分析时并不需要使用,SPSSAU默认会从上到下依次编号。

二、SPSSAU操作

(1)登录账号后进入SPSSAU页面,点击右上角“上传数据”,将处理好的数据进行“点击上传文件”上传即可。

(2)拖拽分析项

在“综合评价”模块中选择“熵权topsis”方法,将分析项拖拽到右侧分析框中,点击“开始分析”即可。

三、SPSSAU数据处理

1.数据正向化/逆向化处理

如果数据中有逆向指标(数字越大反而越不好的意思),此时需要使用‘SPSSAU数据处理-》生成变量’的‘逆向化’功能处理。让数据变成正向指标(即数字越大越好的意思)。

‘逆向化’的数据计算公式为:(Max-X)/(Max-Min),明显可以看出,针对逆向指标进行‘逆向化’处理后,数据就会变成正向指标。

【SPSSAU】数据无量纲化处理 | 数据分析常见问题解答

2.数据标准化处理

针对数据进行标准化处理,目的在于解决量纲化问题。常见的标准化处理方法有:‘归一化’,‘区间化’,‘均值化’等。

(1)‘归一化’将所有数据压缩在0到1之间;

(2)‘区间化‘将所有数据压缩在自己设定的区间;

(3)‘均值化’= 当前值 / 平均值。

补充说明:

一般而言,如果数据全部都大于0,建议使用‘均值化’;如果数据中有负数或者0,建议做‘区间化’让数据限定在一个区间(SPSSAU默认1~2之间);当然也可以考虑‘归一化’,让数据全部介于0~1之间。

具体标准化的处理方式有很多种,具体结合文献和自身数据选择使用即可。不同的处理方式肯定会带来不同的结果,但结论一般不会有太大的偏倚。

(如果数据进行了正/逆向化处理就不需要再进行标准化处理。)

四、SPSSAU分析

背景:当前有6个国家经济技术开发区,分别在政务系统的4个指标上的评分值。数字越大表示指标越优。当前希望利用熵权TOPSIS法评价出6个开发区的政务系统排名情况。原始数据如下:

本案例数据中包括4个政务系统的评价指标,而且全部都是正向指标,因此不需要进行正向化或者逆向化处理。以及接着数据标准化解决量纲问题上,本例子使用‘均值化’处理方法。操作为SPSSAU数据处理-》生成变量:

完成数据‘均值化’处理后,直接开始进行‘熵值TOPSIS法’分析,操作如下图:

1.熵值法计算权重结果汇总

上表格展示出4个政务系统指标的权重值,明显可以看出指标3的权重更大。但权重大小仅仅是过程值,熵值TOPSIS分析重心在于TOPSIS法计算出相对接近度。权重值与数据相乘,得到新数据newdata,这一过程是SPSSAU自动完成,利用newdata进行TOPSIS法计算。

2.TOPSIS评价计算结果

从上表可知,利用熵权法后加权生成的数据(算法自动完成)进行TOPSIS分析,针对4个指标(MC_政务系统指标1, MC_政务系统指标2, MC_政务系统指标3, MC_政务系统指标4),进行TOPSIS评价,同时评价对象为6个(样本量数量即为评价对象数量);

TOPSIS法首先找出评价指标的正负理想解值(A+和A-),接着计算出各评价对象分别与正负理想解的距离值D+和D-。根据D+和D-值,最终计算得出各评价对象与最优方案的接近程度(C值),并可针对C值进行排序。

最终从上表可知:评价对象4,即开发区4,它的相对接近度C值最高为0.9995,因而说明开发区4在政务系统上的表现最优;其次是开发区3,相对接近度C起来0.8141。开发区1的政务系统表现最差。

3.正负理想解
4.描述统计
分析数据完整并无缺失等,可通过上表格查看各分析项的平均值或标准差值等。从上表格可以看出四个分析项的样本量均为6,平均值均为1。

五、其他说明

1.如果分析数据中有负数或者0值如何办?

如果分析数据有负数或者0,这会导致无法进行熵值法计算,SPSSAU算法默认会进行‘非负平移’处理。SPSSAU非负平移功能是指,如果某列(某指标)数据出现小于等于0,则让该列数据同时加上一个‘平移值’(该值为某列数据最小值的绝对值+0.01),以便让数据全部都大于0,因而满足算法要求。

2. 面板数据如何进行熵值TOPSIS法?

熵值TOPSIS法的原理是先进行熵值法,然后再进行TOPSIS法。无论是面板或者非面板数据,均可正常进行熵值TOPSIS法研究,并不需要特别处理。(当然面板数据进行分析时,也可以先筛选出不同的年份,重复进行多次均可)。

六、总结

熵权TOPSIS法分别涉及熵权法和TOPSIS法;熵权法计算各评价指标的权重值,然后利用权重值乘原始数据,得到newdata。系统利用newdata进行TOPSIS法进行计算,最终得到各评价对象的接近程序C值,用于判断和衡量评价对象的优劣排序等。
今天的分享就到这里啦,更多干货请前往 SPSSAU 官网查看。

文章分享结束,topsis熵权法和数学建模笔记——评价类模型之熵权法的答案你都知道了吗?欢迎再次光临本站哦!

topsis熵权法(数学建模笔记——评价类模型之熵权法)

本文编辑:admin

更多文章:


appletv3最新破解2019(apple tv3按遥控器指示灯快闪3次,机顶盒不开机)

appletv3最新破解2019(apple tv3按遥控器指示灯快闪3次,机顶盒不开机)

大家好,今天小编来为大家解答以下的问题,关于appletv3最新破解2019,apple tv3按遥控器指示灯快闪3次,机顶盒不开机这个很多人还不知道,现在让我们一起来看看吧!

2026年9月23日 02:00

netstat命令工作原理(高赏--socks2http 和sockscap工作原理大神们帮帮忙)

netstat命令工作原理(高赏--socks2http 和sockscap工作原理大神们帮帮忙)

大家好,netstat命令工作原理相信很多的网友都不是很明白,包括高赏--socks2http 和sockscap工作原理大神们帮帮忙也是一样,不过没有关系,接下来就来为大家分享关于netstat命令工作原理和高赏--socks2http

2026年9月23日 01:10

strncmp()(strncmp用法问题)

strncmp()(strncmp用法问题)

本篇文章给大家谈谈strncmp(),以及strncmp用法问题对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

2026年9月22日 23:00

java语言基础实验报告(求JAVA的实验报告)

java语言基础实验报告(求JAVA的实验报告)

各位老铁们好,相信很多人对java语言基础实验报告都不是特别的了解,因此呢,今天就来为大家分享下关于java语言基础实验报告以及求JAVA的实验报告的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

2026年9月22日 22:50

通配符怎么打出来excel(excel里,完成高级筛选条件的时候,通配符前面要加等号,可以等号前面的单引号是怎么打出来的)

通配符怎么打出来excel(excel里,完成高级筛选条件的时候,通配符前面要加等号,可以等号前面的单引号是怎么打出来的)

这篇文章给大家聊聊关于通配符怎么打出来excel,以及excel里,完成高级筛选条件的时候,通配符前面要加等号,可以等号前面的单引号是怎么打出来的对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年9月22日 21:20

不四舍五入取整函数(excel取整不四舍五入)

不四舍五入取整函数(excel取整不四舍五入)

“不四舍五入取整函数”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看不四舍五入取整函数(excel取整不四舍五入)!

2026年9月22日 21:00

进制转换器c++(用C++输入一个十进制数,将其转换为二进制数输出)

进制转换器c++(用C++输入一个十进制数,将其转换为二进制数输出)

今天给各位分享用C++输入一个十进制数,将其转换为二进制数输出的知识,其中也会对用C++输入一个十进制数,将其转换为二进制数输出进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年9月22日 20:30

docker cp拷贝文件(怎么把docker镜像文件 复制到主机)

docker cp拷贝文件(怎么把docker镜像文件 复制到主机)

本篇文章给大家谈谈docker cp拷贝文件,以及怎么把docker镜像文件 复制到主机对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

2026年9月22日 20:00

undermine反义词(颠覆的反义词)

undermine反义词(颠覆的反义词)

其实undermine反义词的问题并不复杂,但是又很多的朋友都不太了解颠覆的反义词,因此呢,今天小编就来为大家分享undermine反义词的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年9月22日 18:30

restful请求方式(下面哪几种属于ElasticSearch的RESTful请求方式())

restful请求方式(下面哪几种属于ElasticSearch的RESTful请求方式())

本篇文章给大家谈谈restful请求方式,以及下面哪几种属于ElasticSearch的RESTful请求方式()对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘

2026年9月22日 17:30

最近更新

appletv3最新破解2019(apple tv3按遥控器指示灯快闪3次,机顶盒不开机)
2026-09-23 02:00:08 浏览:0
热门文章

yoga pro 14s carbon(yoga14s接口类型)
2026-07-03 17:50:01 浏览:5
标签列表