位置: IT常识 - 正文

数学建模——熵权法步骤及程序详解(数学建模赋权)

编辑:rootadmin
数学建模——熵权法步骤及程序详解 数学建模——熵权法步骤及程序详解

推荐整理分享数学建模——熵权法步骤及程序详解(数学建模赋权),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:数学建模系统,数学建模sir,数学建模心态崩了,熵值模型,数学建模熵值法,数学建模绪论,熵值模型,数学建模熵值法,内容如对您有帮助,希望把文章链接给更多的朋友!

权重的求解一直都是数学建模的重点关注对象,所以学好建模论文的重要一步就是如何确定权重,今天是来介绍一种客观确定几个指标各自所占的权重的方法——熵权法。之前的数学建模实战里有提到用熵权法确定了每个指标各自的权重,这里展开详细的写一下。

文章目录数学建模——熵权法步骤及程序详解前言一、熵权法的介绍1、熵权法的应用场景2、熵权法的基本思想3、熵权法的算法步骤二、代码程序总结前言

按照信息论基本原理的解释,信息是系统有序程度的一个度量,熵是系统无序程度的一个度量;根据信息熵的定义,对于某项指标,可以用熵值来判断某个指标的离散程度,其信息熵值越小,指标的离散程度越大, 该指标对综合评价的影响(即权重)就越大,如果某项指标的值全部相等,则该指标在综合评价中不起作用。因此,可利用信息熵这个工具,计算出各个指标的权重,为多指标综合评价提供依据。

一、熵权法的介绍

  我们分析某个因素时,主观地列出了一些有影响力的指标,这些指标已经与因变量存在某种的相关性,不管是正相关还是负相关。指标的值变化会直接影响因素的变化,变化量越大,说明指标对于因素的变化作用也应该是越明显的。   简单的讲,就是在评价对象时,往往每个对象会有几个指标。那这几个指标哪个指标所占的权重最大呢?我们自己捏造一个好像又不太合理,所以我们瞎分析一下,好像一些变化不是那么大,整体相对平滑的数据,举一个极端的例子:对于所有的样本而言,这个指标都是相同的数值,那么我们可认为这个指标的权值为0,即这个指标对于我们的评价起不到任何帮助。依据这种思想我们就诞生了熵权法。

1、熵权法的应用场景数学建模——熵权法步骤及程序详解(数学建模赋权)

  熵权法既然是客观赋权法,那么应用有一个前提条件,那就是必须得有数据,没有数据支撑的赋权方法是主观赋权法。   这种方法虽然简单,但是用于企业的实际问题当中是非常有用的,可以用于确定初步权重,后续可通过其他方法进行优化。

2、熵权法的基本思想

  我们对于一件事情的普遍看法是,越有可能发生的事情,信息量越少;越不可能发生的事情,信息量就越多。而熵的定义我们在高中化学中已经接触过了,有兴趣的同学可以回顾一下,熵的定义是系统的混乱程度,熵越高,系统的状态越混乱,这个定义就很符合我们对事情的普遍看法的定义,所以诞生了名词——信息熵。   一个随机变量的信息熵越高,则他所带来的信息量越高,那么相对应的,其他变量的信息量会比较低(因为总体信息量(权重)是固定的,为1)   啊,说到这里,大家不是很理解也很正常滴,主要写论文会用,会抄就可以了。下面进入重点,

3、熵权法的算法步骤

第一步为数据标准化。   首先需要正向化指标(后续需要用到),当然,如果数据都是非负的,那么可以跳过正向化步骤,公式如下。

  就是指标的值减去最小值,除以指标的振幅。这样子就可以得到正向化后的矩阵Z。

第二步为进行归一化处理 处理公式如下。 yij=zij/∑i=1nxijy_{ij}=z_{ij}/\sum_{i=1}^{n}{x_{ij}}yij​=zij​/i=1∑n​xij​   此外还可以采用最大最小法、Z-score等方法进行标准化处理。由此可得到行列的标准化矩阵(共有n行m列,一行代表一个样本,一列代表一个指标) Y=(yij)nmY=(y_{ij})_{nm}Y=(yij​)nm​ 第三步计算每个指标的信息熵,并计算信息效用值,并归一化得到每个指标   公式如下: ej=k∑i=1nyijln⁡yije_j=k\sum_{i=1}^n{y_{ij}\ln y_{ij}}ej​=ki=1∑n​yij​lnyij​   这里为什么要除以一个常数kkk呢?kkk的取值是为了保证eje_jej​可以在区间[0,1]上,当指标的样本值完全一样的时候,k=1ln⁡ n\frac{1}{\ln\text{\ }n}ln n1​刚好可以令信息熵位于[0,1]之间,所以我们kkk值一般取1ln⁡ n\frac{1}{\ln\text{\ }n}ln n1​   熵值越小,信息量越大,有兴趣大家可以试一下画他的函数图像。 第四步计算信息效用值(信息熵冗余度)   计算方法如下: dj=1−ejd_j=1-e_jdj​=1−ej​   信息效用越大,信息量越大。 第五步计算指标的权重系数   将信息效用值进行归一化,就可以得到每个指标的权重: wj=dj/∑i=1mdiw_j=d_j/\sum_{i=1}^m{d_i}wj​=dj​/i=1∑m​di​

二、代码程序

matlab代码如下:

clc,clear%行为样本,列为指标X=[3941428233487744562203660332293493692991414922981154934191152242352623862908396107556310306641780298119644227438873730322143071596694110483510101461936326781070793036985134788833956253010899092208620772160360631243593326116897378318410226691179111785111231092349389511401673900130355261203418035381991111642911005102446403241615233989153722444755430937271593878466880226263743211177681466916716142226746306629186710480531003952290447116124969441611141528639938295665259111423951112661309249406146015320012999722869553084911250612023651112475325251119];[n,m]=size(X);%% 正向化z=find(X<=0);if length(z)~=0 for i=1:n for j=1:m x(i,j)=(X(i,j)-min(X(:,j)))/(max(X(:,j))-min(X(:,j))); end end X=x;end%% 归一化for i=1:n for j=1:m p(i,j)=(X(i,j)+0.00000000001)/sum(X(:,j)); %这里加极其小的数,是为了防止后面当p为0的时候log(p)无法计算 endend%% 计算第 j 个指标的熵值 e(j)k=1/log(n);for j=1:m e(j)=-k*sum(p(:,j).*log(p(:,j)));endd=ones(1,m)-e; % 计算信息熵冗余度w=d./sum(d) % 求权值 w总结

熵权法本质   其实可以看成是方差越大,我们赋予的权重也就越大。    熵权法的讨论   在实际过程操作中,熵权法本身也是具有一定的逻辑问题,例如信息熵小的数值不一定对于因素的影响就小,举个典型的例子,在大学期末综评的时候,参加比赛是可以加分的,发表论文是可以获得加分的,在参加比赛方面大家各有差异,而发表论文的加分项大家几乎都没有,那我们可以说期末综评发表论文没有参加比赛重要吗,显然是不科学的,所以熵权法本身也具有一定的约束性,这是客观赋权法不可避免的。    熵权法的拓展   很多时候我们使用熵权法都是为了做一个综合评价,最经典就是基于熵权法对Topsis模型的修改,当然也有简单暴力是熵值法,权重直接乘以归一化后的原始矩阵即可。

本文链接地址:https://www.jiuchutong.com/zhishi/298293.html 转载请保留说明!

上一篇:猿创征文|一文带你了解前端开发者工具(猿创设计科技有限公司)

下一篇:【node】升级 Node 版本教程(升级nodejs到最新版本)

  • 税务安全组件初审流程
  • 企业所得税年度汇算清缴时间
  • 小规模纳税人出口可以退税吗
  • 银行存单丢失怎么办理取款
  • 土地增值税扣除项目金额怎么算
  • 个人劳务费的免税政策
  • 已经作为损失的资产以后纳税年度收回的会计处理
  • 自产农产品增值税申报表填10行吗
  • 购进电脑怎么折旧
  • 新公司注册资金需要实缴吗
  • 土地增值税清算管理规程
  • 多交的季度所得税怎么算
  • 非盈利组织捐赠支出
  • 正常的成本利润是多少
  • 如何算清楚公司的账
  • 免征增值税企业所得税纳税调整
  • 发票记账联丢失怎么写情况说明
  • 利税总额为负数如何表述出来
  • 租赁场地费入什么科目
  • 公司支付广告服务费账务处理
  • 公司注销还需要登报吗
  • 支付保洁费用
  • 企业所得税怎么征收
  • 收入未实现成本怎么进
  • 加计抵减申报表填写视频
  • 工地开工购买的鞭炮怎么入账
  • 报销差旅费退回余款填什么凭证
  • 劳务公司开发票,劳务公司怎么转取收入
  • 银行收到退款怎么回复
  • linux系统中用户账户有哪些分类
  • 汇付的注意事项有哪些内容
  • php is_writable
  • 高温补贴计入
  • 购货人与收货人的关系
  • php实现用户登录
  • 进出口怎么交税
  • e卡 叠加
  • typescript ??
  • php日期差
  • vue开发教程
  • 魔改apk
  • php aes加密解密
  • 隐藏php后缀
  • layui框架模板
  • ps里的羽化是什么意思
  • 用简易计税办法开发票
  • 帝国cms什么语言
  • 购买保健食品
  • 印花税计提分录怎么写
  • 设备调试费是什么税
  • 增值税税款抵扣
  • 待抵扣进项税额什么意思
  • 我国会计制度对会计要求
  • 每月材料进出库明细表
  • 商标权属于什么科目
  • 印花税账务处理
  • 商家说垫付运费
  • 摘要界面在哪个位置
  • 增值税起征点有多少
  • 应收股利在资产负债表中怎么填
  • 新单位成立需要做什么工作
  • 发票作废后对方还能认证吗
  • 账面余额与账面净值
  • mysqlbinlog -vvv
  • XP系统网上邻居不见了有哪些找回方法
  • linux 查看so
  • elf.exe是什么程序
  • window 启动
  • mac装win8.1
  • Linux如何使用clash
  • perl 特殊字符转义
  • cocos2dx schedule
  • opengl中点画圆算法
  • shell编程之循环语句for与while
  • bat批量命名
  • Unity3D实现Billboard效果
  • 深入理解python递归
  • 车险专票怎么做账
  • 湖北省电子税务局
  • 开红酒增值税票怎么开
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设