位置: 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到最新版本)

  • 退个税手续费如何申报
  • 劳务派遣公司如何收费
  • 税务局三师有什么用
  • 融资利息进项税如何抵扣
  • 无形资产摊销是当月还是下月
  • 固定资产怎么进行折旧处理
  • 金蝶利润表没有数据怎么办
  • 母公司出售子公司给另一家子公司
  • 电信要收取安装费吗
  • 企业购买土地如何做账
  • 从一个公司到另一个公司公积金
  • 应收账款确认无法收回分录
  • 企业购买的商业保险赔偿多少
  • 汇算清缴需要准备哪些数据
  • 当期软件产品可抵扣进项税额 留抵
  • 银行手续费要纳进去吗
  • 投资公司的利息支出可抵扣吗
  • 车间发生的购买办公用品支出应计入什么账户
  • 广告费预付后收条怎么写
  • 发票打偏了是否罚款
  • 升级设备属于什么科目
  • 税收分类编码选错会怎样
  • win10j截图
  • 暂估成本跨月账务处理
  • 微软预购
  • 营改增前甲供材施工企业如何缴纳企业所得税
  • php5升级到php7
  • php获取指定日期的时间戳
  • php如何实现
  • 第三方代付如何开票
  • vue基础知识
  • 前端get请求传数组
  • php php
  • laravel 自定义guard
  • linux定时任务详解
  • 发票违法行为的认定
  • 年金现值系数和复利现值系数的公式
  • 会计分录格式范本手写
  • vue 生产环境
  • 织梦cms怎么样
  • 一般纳税人涉及进项税额转出的有
  • 购买项目用设备计入什么科目
  • 跨月红字发票开错了可以撤销吗
  • 新会计准则套期利息计算
  • Win7 32/64位系统下安装SQL2005和SP3补丁安装教程[图文]
  • 软件企业研发费用
  • 法人向公司账户打款合法吗
  • 什么叫做固定资本
  • 弹性预算列表法
  • 残疾人就业保证金上年工资总额是说上一年度么
  • 单位定期存款起存金额为1万元,多存不限,存期分为
  • 折旧和摊销的概念
  • 哪些发票可以抵扣增值税专用发票
  • 五险 会计
  • 网上认证平台进不去怎么办
  • 存货科目包括哪几类
  • 预收账款是什么资产
  • 工业企业无形资产有哪些
  • sql多级汇总
  • sql语句去除重复值
  • sqlserver存储过程怎么查看
  • Win10怎么显示我的电脑
  • fedora os
  • windows防火墙无法更改某些设置错误代码0×80070422
  • 制作linux的u盘安装盘
  • 文件fwpkc1nt.sys
  • 2021年win10累积更新
  • mac终端输入代码有什么影响
  • linux vi中查找内容
  • win10预览模式
  • mac 安卓系统
  • linux常用shell命令
  • js实现滑动开关功能
  • 置顶高站位
  • 如何分析源码
  • 如何用python写自动化脚本
  • js常用继承
  • comparable接口怎么用
  • 代销手续费增值税会计处理
  • 贵州电子税务总局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设