当前位置: 首页 > news >正文

MCM备赛笔记——熵权法

Key Concept

熵权法是一种基于信息熵概念的权重确定方法,用于多指标决策分析中。信息熵是度量信息量的不确定性或混乱程度的指标,在熵权法中,它用来反映某个指标在评价过程中的分散程度,进而确定该指标的权重。指标的分散程度越高,信息熵越小,该指标的权重越大;反之,信息熵越大,权重越小。

建模思路

  1. 数据准备

    • 收集各个评价对象在不同指标下的原始数据。
  2. 数据标准化正向化

    • 由于不同指标的量纲和数量级可能不同,需要对数据进行标准化处理,使其可比性增强。
      #数据矩阵正向化
      #将极小型数据转化为极大型数据
      def minToMax(maxx,x):x=list(x)ans=[]for i in range(len(x)):ans.append(maxx-x[i])return ans#将中间型数据转化为极大型数据
      def midToMax(bestx,x):x=list(x)ans=[]h=[]#计算列表中每个元素与最优值的差的绝对值for i in range (len(x)):h.append(abs(bestx-x[i]))M=max(h)#计算最大值,用来归一化if M==0:M=1#防止除0错误#计算每个元素的极大型值for i in range(len(x)):ans.append(1-h[i]/M)return np.array(ans)#将区间型数据转化为极大型数据
      def intervalToMax(x,lowx,highx):x=list(x)ans=[]for i in range(len(x)):if x[i]>=lowx and x[i]<=highx:ans.append(1)elif x[i]<lowx:ans.append(1-(lowx-x[i])/(lowx-min(x)))elif x[i]>highx:ans.append(1-(x[i]-highx)/max(x)-highx)return np.array(ans)#对数据矩阵进行标准化
      def normalize(data):data=np.array(data)X=data/np.sqrt(np.sum(data**2,axis=0))return X#对数据矩阵进行归一化
      def regularize(data):data=np.array(data)m,n = np.shape(data)for i in range(n):col_sum=np.sum(data[:,i])for j in range(m):data[j,i]=data[j,i]/col_sumreturn data

  3. 计算指标的比重

    • 对于每个指标,计算每个评价对象在该指标下的比重,这通常是指标值除以该指标所有值的总和,这里其实就是进行归一化处理
  4. 计算信息熵

    • 使用信息熵公式计算每个指标的信息熵。
  5. 计算权值

  6. 计算得分

http://www.lryc.cn/news/284189.html

相关文章:

  • vscode设置terminal的最大行数
  • kafka hang 问题记录
  • Jmeter-BeanShell脚本中for循环里面使用random随机数函数,每次生成的都一样
  • 高级编程。JavaScript中有哪些类型转换机制?
  • Linux系统下常用软件安装汇总,包括mysql,java,git,redis等
  • 【Linux】——期末复习题(一)
  • 【论文阅读】Speech Driven Video Editing via an Audio-Conditioned Diffusion Model
  • 【华为 ICT HCIA eNSP 习题汇总】——题目集4
  • hadoop-common: CMake failed with error code 1
  • 【面试】-科大讯飞日常实习面试
  • MySQL 数据加密
  • 风丘科技为您提供完整的ADAS测试方案
  • 深入理解Rust基本类型
  • cloudflare加速方法
  • 密码学学习笔记(二十四):TCP/IP协议栈
  • 软件测试阶段简介_单元测试、集成测试、配置项测试、系统测试
  • AcWing 1204.错误票据(读取未知个数数据的新方法)
  • 项目上线存在的缓存问题以及存在的debugger和console.log等问题
  • 均线和布林线这样的关系,WeTrade众汇实例这样使用
  • C++中的区块链与加密货币开发
  • 【云略】2023年新茶饮行业社媒营销洞察报告
  • 19. C++ static关键字
  • thinkphp6 模糊查找json下的字段值
  • 链表存数相加算法(leetcode第2题)
  • 旅游项目day07
  • java黑马学习笔记
  • WordPress后台底部版权信息“感谢使用 WordPress 进行创作”和版本号怎么修改或删除?
  • 解决字符串类型转数字类型相加结果异常问题
  • android 开发 W/TextToSpeech: speak failed: not bound to TTS engine
  • Java代码审计Shiro反序列化DNS利用链CC利用链AES动态调试