清风数学建模笔记--熵权法

article/2025/8/20 7:30:56

是一种可以客观赋权的方法(我们可以从数据中查看权重)

依据的原理:指标的变异程度越小,所反映的信息量也越少,其对应的权值也应该越低。

本文借鉴了数学建模清风老师的课件与视频,如果大家发现文章中有不正确的地方,欢迎大家在评论区留言,也可以点击本行文字,购买清风老师的课进行深入学习.

  1. 方法介绍

熵权法就是根据一项指标的变化程度来分配权重的,举个例子:浩浩和玉宇是两名百米运动员,浩浩在训练中成绩经常破10,而玉宇的成绩没有破过10.在一次比赛中中,浩浩依旧发挥稳定,还是破10了,而玉宇的成绩也破10。那就很不一样了,玉宇这里包含的信息就非常大,所对应的权重也就高一些。

  上面的小例子告诉我们:越有可能发生的事情,信息量越少。越不可能发生的事情,信息量就越多。其中我们认为概率就是衡量事情发生的可能性大小的指标。

  那么把 信息量 用字母表示,概率 用 P 表示,那么我们可以将它们建立一个函数关系:

那么,假设 x 表示事件 X 可能发生的某种情况,p(x)表示这种情况发生的概率情况如上图所示,该图像可以用对数函数进行拟合,那么最终我们可以定义:Ⅰ( x ) = −ln⁡(p(x))因为 0≤p( x )≤10 ,所以 Ⅰ( x )≥ 0 。

信息熵的定义

  假设 x 表示事件 X 可能发生的某种情况,p(x) 表示这种情况发生的概率我们可以定义:Ⅰ( x ) =−ln ⁡ ( p( x ) ),因为0 ≤ p(x) ≤ 1 ,所以Ⅰ( x )≥0。 如果事件 X 可能发生的情况分别为: x1, x2 , ⋯   , xn,那么我们可以定义事件 X 的信息熵为:

那么从上面的公式可以看出,信息上的本质就是对信息量的期望值。

可以证明的是:p ( x1 ) = p ( x2 )= ⋯ =p ( x n ) = 1 / n 时,H(x) 取最大值,此时H(x)=ln ⁡(n) 。(n表示事件发生情况的总数)

  1. 熵权法的计算步骤

熵权法的计算步骤大致分为以下三步:

  • 判断输入的矩阵中是否存在负数,如果有则要重新标准化到非负区间(后面计算概率时需要保证每一个元素为非负数)。

  • 计算第 j 项指标下第 i 个样本所占的比重,并将其看作相对熵计算中用到的概率。

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

  • 判断输入的矩阵中是否存在负数,如果有则要重新标准化到非负区间(后面计算概率时需要保证每一个元素为非负数)。

  • 计算第 j 项指标下第 i 个样本所占的比重,并将其看作相对熵计算中用到的概率。

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

这里要说明两个问题:

1. 为什么这里要除以 ln(n) 这个常数?

在前面说过 p (x1 ) = p ( x2 ) = . . . = p ( xn ) = 1 / n 时,H(x) 取最大值为ln(n),这里除以ln(n) 能够使得信息嫡的始终位于 [0,1] 区间上面。

2. ej 越大,即第 j 个指标的信息嫡越大,表明第 j 个指标的信息越多还是越少?

答案是越少。当 p1j = p2j = ⋯ = pnj ,取到最大值 1 。但是因为 ,所以 ,即所有样本的这个指标值都相同。 指标相同意味着这个指标的数据没有变化,也就是 信息少! 因此需要将其倒转,即计算信息效用值。

信息效用值的定义:

那么信息效用值越大,其对应的信息就越多。

将信息效用值进行归一化,我们就能够得到每个指标的 熵权 :

,(j=1,2,3,……,n)

  1. 模型扩展 ()

  • 熵权法可对 TOPSIS 法进行修正。

  • 熵权法背后的原理是利用指标的变异程度进行赋权,存在一定程度的客观性,可利用主观赋权法求得的权重向量进行综合。

  • 客观赋权法存在很多,求得客观权重的方法也有很多,其中灰色关联分析法得到的关联程度也可当作权重进行应用。

  • 不同的标准化方法,可能得到的标准化矩阵Z存在差异,因此根据实际情况来使用标准化方法,注意前提都是得到的Z矩阵中没有负数。

  1. 模型总结

总结一下步骤:

  • 判断输入的矩阵中 是否存在负数,如果有则要重新标准化到非负区间(后面计算概率时需要保证每一个元素为非负数)。

  • 计算第 j 项指标下第 i 个样本所占的比重,并将其看作相对熵计算中用到的 概率

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


http://chatgpt.dhexx.cn/article/amFEn2AT.shtml

相关文章

c语言计算文本信息熵,C语言求信息熵,条件熵,联合熵

C语言求信息熵,条件熵,联合熵 (3页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 11.90 积分 #include#include#define u 20int i,j,n,m;float H_X,H_Y,H_XY,H_XpY,Pypx[u][u],Px[u],H_YpX,Py[u],…

谭浩强C语言笔记

文章目录 谭浩强C语言笔记1.C语言基础知识1.常量和变量1.1入门程序1.2 常量1.2.1 整型常量1.2.2 实型(浮点型)常量1.2.3 字符常量1.2.4 字符串常量1.2.5 符号常量 1.3 变量1.4 常变量 2.标识符和关键字2.1 标识符2.2 关键字2.3 小习题 3. 基本数据类型3.…

天池比赛总结1

这次参加天池的一场比赛 先把数据读取了如下 接下来准备使用YOLO框出图片中的字符,然后进行识别

比赛总结+近期总结

比赛总结: 这次比赛没考好 20(没加高精度)0(文件输出写错)1000120 T1:这一题的方法是分解质因数高精度 T2:明显就是一道spfa的题嘛 T3:强大的四维DP(我的神啊!) T4&#…

计算机课件比赛总结,课件制作比赛活动总结

【www.gz85.com - 投篮比赛活动工作总结】 课件制作比赛,是对计算机多媒体等辅助手段的一次检阅,也有力地促进了制作多媒体课件技艺的提高。下面是小编为您整理的“课件制作比赛活动总结”,仅供参考,希望您喜欢!更多详…

2018年全国邀请赛(江苏) 比赛总结

先吐槽一下中矿大。。。周六在食堂吃的午饭,肉菜一个鱼一个辣土豆炒牛肉,对于对鱼过敏又感冒比较严重的我来说。。。(然后再也没去食堂吃饭) 南湖校区大是真大,风景也不错,就是门口离体育馆有点远。。。&a…

比赛总结

比赛总结 比赛总结-a5165.png 初赛终于结束了,头一次如此投入去打比赛,这一个多月以来真是痛并快乐着。最大的感悟是:构造线下验证集并没有什么用,做了一堆工作还不如一个leak。首先取得这个成绩算是给自己一个交代了,…

关于全国大学生软件测试大赛总结与反思

关于全国大学生软件测试大赛总结与反思 文章目录 一、软件测试大赛简介二、可能出现的错误三、个人总结与反思四、谈谈软件测试工程师1、测试的三个阶段2、就业优势3、就业要求4、参考薪资 一、软件测试大赛简介 由教育部软件工程专业教学指导委员会、全国高等院校计算机基础教…

【赛后总结】第十三届服务外包创新创业大赛总结——A14

目录 前言组队&选题分工&项目推进提交材料&项目答辩区域赛初赛区域赛决赛全国总决赛 写在最后 前言 先摆两个参赛视频 初赛视频 决赛视频 比赛已经过去几个月了,也算是想起来这个比赛可以写一个总结了。在历时8个月左右的时间之后,我…

计算机大赛总结发言稿,学校技能比赛总结发言稿

学校技能比赛总结发言稿 总结就是把一个时间段取得的成绩、存在的问题及得到的经验和教训进行一次全面系统的总结的书面材料,写总结有利于我们学习和工作能力的提高,因此十分有必须要写一份总结哦。那么总结要注意有什么内容呢?以下是小编帮大…

计算机知识与技能比赛活动总结,中职技能大赛总结(精选6篇)

中职技能大赛总结(精选6篇) 总结是对取得的成绩、存在的问题及得到的经验和教训等方面情况进行评价与描述的一种书面材料,它能够使头脑更加清醒,目标更加明确,因此我们需要回头归纳,写一份总结了。那么你知道总结如何写吗&#xf…

稳定的iOS迅雷来了 不用再每次想用都要重装

迅雷iOS下载:www.xunlei-iosd.top 用过苹果产品的朋友都知道,在iOS系统里,迅雷这一APP是不存在的。当有朋友分享了某些资源给你,只能想办法使用复杂的操作安装一个寿命只有几天的迅雷APP。 今天,官方推出了“永久版”iOS迅雷&…

iOS - Threads 多线程

1、Threads 1.1 进程 进程是指在系统中正在运行的一个应用程序。每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内。 比如同时打开 QQ、Xcode,系统就会分别启动两个进程。通过 “活动监视器” 可以查看 Mac 系统中所开启的进程。 一个程…

iOS面试知识点梳理

1.iOS开发者账号类型 “个人”开发者可以申请升级“公司”,可以通过拨打苹果公司客服电话(400 6701 855)来咨询和办理。公司账号允许多个开发者进行协作开发,比个人多一些帐号管理的设置,可设置多个Apple ID&#xff0…

2019年iOS面试真题大全(3-5年)

如果你想去大公司,如果你是3年左右的iOS开发者,如果你对面试的未知没有十足的信心,如果你期望的薪资在15K,那么请认真刷完这300道面试题,都是真实公司经历的…答案会在近期更新!你要先自思考,看个人那些方面还不足! 1、自我介绍 2、如何实现一个倒计时功能,类似于蘑…

IOS开发系列之阿堂教程:构建开发IOS应用的虚拟机开发环境实践

说到IOS的开发,不能不说 到一个问题,如何配置和构建一个IOS的开发环境!我下面要说的主要是针对没有MAC Apple机的网友,如何安装和配置一个属于自己的IOS开发环境。如果已经有MAC 苹果机的网友,请忽略此文。因为有MAC 苹果机,就只需要安装XCODE的IDE开发工具就行了。 …

web安全渗透测试基础知识

渗透测试入门 渗透测试前置知识靶场环境搭建windows基础网络基础web应用/架构搭建/站库分离/路由访问web四大件-系统web四大件-中间件web四大件-数据库web四大件-源码路由访问 web架构/前后端分离/建站分配Web架构/OSS存储/CDN加速/反向代理APP架构反弹SHELL/文件下载抓包技术算…

《iOS移动开发从入门到精通》图书连载2:如何成为一名iOS开发者

iOS开发人员,和其它传统开发者相比有哪些不同之处?需要具备怎样的硬件和软件条件?今天我们就来说说这一部分的内容。 一.硬件上的需求 开发iOS应用,首先您需要使用Apple的电脑。尽管您可以使用黑苹果或者虚拟机,在PC上…

Jetson Nano目标检测手把手实战教程(pytorch训练、tensorrt推理,含完整代码和数据)

目录 一、概述 1.1 深度学习和边缘计算 1.2 Jetson Nano简介 二、深度学习环境安装 2.1 Pytorch框架 2.2 在Jetson Nano上安装Pytorch 三、算法原理 四、具体实现步骤 4.1 工程代码和环境准备 4.2 模型训练和推理 4.2.1数据集准备 4.2.2训练 4.2.3模型转换 4.2.4…

各种HOOK方式和检测对抗方法

一、什么是HOOK? hook翻译过来是拦截的意思, 我们很多时候也叫钩子,其实是很形象的. hook有什么作用呢? 1.当代码执行到某行时,获取寄存器值和内存里的值,进行调试分析,例如hook明文包. 2.当代码执行到某行时,插入想执行的代码.例如迅雷拦截发包函…