首页 > 编程知识 正文

全局熵值法,量纲对熵值法的影响

时间:2023-05-05 23:21:18 阅读:174141 作者:3716

熵权法熵权法-python,久违地重新整理笔记。 仅供个人自学使用,供读者自行参考

Reference :

不知道保存了多少本地文件

害怕孤独的豌豆,python数学实验与建模,2020

33559 www.zhi Hu.com/question/357680646/answer/943628631

3359 www.Jian Shu.com/p/638 cb1 eaec 43

3359 blog.csdn.net/my cafe _/article/details/79285762? biz_id=102utm_term=熵值法与熵值法相同吗? UTM _ medium=distribute.PC _ search _ result.none-task-blog-2 allsobaiduweb

本文的熵值法熵值法-python首先实现区分基本原理的基本步骤,总结最大熵原理基础代码

首先说区别

起初我觉得这是两件事,但对照了很多资料后,发现这是同一个玩意。 不知道用当初翻译的两个名字做什么,遮住了脸。

在基本原理信息论中,熵是不确定性的量度。 一般来说,信息量越多,不确定性越小,熵也越小,信息效用值越大信息量越小,不确定性越大,熵也越大,信息效用值越小。 熵权法是计算各指标观测值的信息熵。 一种基于各指标相对变化程度对整个系统的影响来确定指标权重的赋权方法。

基本程序数据标准化

指标标准化处理:异质指标同质化

由于各指标的计量单位不统一,在用它们计算综合指标之前,首先对它们进行标准化处理。 这意味着将指标的绝对值转换为相对值,如下所示

从而解决各项不同质量指标值的同质化问题。 另外,由于正向指标和负向指标的数值意义不同(正向指标的数值越高越好,负向指标的数值越低越好),所以对高低指标用不同的算法进行了数据

标准化处理。 其具体方法如下:

正向指标:

负指标:

如果是这样的话

第I个国家的第j个指标的数值。 (I=1,2…,n; j=1,2,…,m )。 为了方便,存储数据

但一般为只用正向指标处理。

在第j个指标下计算第I个各评价对象特征比重

作为第i个评价对象的第j个观测值的标准化数据,用第j个指标

计算第j个指标的熵值是

其中

发现i项指标的观测值差越大,熵值越小; 相反,熵值越大。

当计算第j个指标的差异系数时

3j项指标的观测值越大,差异系数j越大,gi项的指标也越重要

确定第j个指标权重系数

计算第I个评价对象的综合评价值

j

深入反映指标区分能力并进一步确定权重为优点法,对主管授权具有较高的可靠性和准确度,算法简单,易于实现

智力不够,3358www.Sina.com/,例如,如果没有关联性、层次关系等业务经验指导,客观赋权,通过自我判断对缺点进行演示

没有考虑指标与指标之间的影响时,熵值法较好; 相反,如果权重失真频繁发生,需要权重可能失真才能很好地发挥熵权法的优越性。 另外,在确定权重之前需要确定指标对目标得分的影响方向,并对非线性指标进行预处理或排除。

最大熵原理最大熵原理是指寻找与现有的关于状态集合的信息(可以理解为先验信息)一致且没有大误差的概率分布。 最容易考虑的概率分布是将熵最大化并满足制约条件的概率分布,但是从最小二乘法和最小距离的原理来考虑,与有峰的分布相比,比较平坦的分布更有可能满足已知的信息容量。 在没有任何关于状态集的先验信息的情况下,用最大熵准则得到的概率分布与用等概率原则得到的结果一致。

最大熵原理是客观物理系某种实际分析分布的估计。 计算熵所用的概率分布具有一定的主观性,但在最大熵原理下给出的解是完全客观的量。 因为,这个解只与一系列的数学期望值有关,这一系列的数学期望值是可以客观测定的。 因此,最大熵给出的解是完全客观的量,没有主观因素。 因此,基于最大熵原理评价指标权重的熵权法是一种客观评价法。

这也证明了最大熵成为评价的熵权样本的依赖性较大

基本代码importnumpyasnpimportpandasaspd #文件路径fp='d:/shangquan.xlsx'#参数自调整数据=PD.read _ excel (FP, index_col=encoding='utf8'(#标准化数据,此处的一行代码处理是玄学data=(data- data.min ) )/(data.max )-data.min 标准化data=data.as _ matrix (columns=none ) )将数据帧格式设置为matrix格式k=1/NP.log(m ) yij=data.sum NP.log(pij ) test=NP.nan_to_num ) test ) EJ=-k*(test.sum(axis=0) )计算每个指标的信息熵wi=() )

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。