Matlab-熵权法

文章目录

  • 熵权法
  • 一、模型简介
  • 二、例题
    • 1. 数据标准化
    • 2.指标的熵值和变异程度
    • 3.权重与评分
    • 4.代码实现


熵权法

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


一、模型简介

从考生成绩说起,下面是张三、李四、王五的成绩,观察这份成绩报,有哪门课程容易拉开差距?有哪门课程不容易拉开差距?
在这里插入图片描述

  1. 熵的概念: 熵是对不确定性的一种度量,可以判断一个事件的随机性无序性程度。
    熵值可以判断某个指标的离散程度,指标的离散程度越大,该指标对综合评价的影响越大。
  2. 熵的现实意义:
    本模型中混乱程度低意味着熵值接近1评价总成绩时可以给该指标赋予低权重
    也就是在成绩中即使这个课程的成绩不加入到总成绩中也不会影响到排名。相对的,如果混乱程度高,则将这个课程成绩删除时会影响到成绩排名。
    在这里插入图片描述
  3. 特点:完全客观,追求公平公正。
    在这里插入图片描述

二、例题

例:下边是10名学生8门课程的成绩,给出这10名学生评奖学金的评分排序。
在这里插入图片描述

1. 数据标准化

   1.原因:
      (1)评价体系中存在数值越大越好的正向指标和数值越小越好的负向指标。
      (2)不同指标(原始数据)数量级有差异。
      (3)原始数据中有负值 。
**本例题不需要标准化,但是为了演示,故加上。**
设xij使第i个学生的第j门成绩,本题中所有指标都是正向指标
**正向指标标准化:**
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/fd2ca28a89124019bbf06c5844c2f0c1.png)

负向指标标准化:
在这里插入图片描述
标准化后aij值在【0,1】区间内,且数值越大现实意义越好。

2.指标的熵值和变异程度

1.每个评价对象在各个指标上的比重:
在这里插入图片描述
可以理解为统计意义上某种情况出现的概率。
2. .熵值:
对于第j个指标(对应一科的一列)其熵值ej:
在这里插入图片描述

  1. 变异系数:
    第j个指标的变异系数:gj=1-ej;
    显然熵值越大变异系数就越小,代表该指标越有序,该指标的信息量也就越小
    意义分析:
    如果变异系数为0就说明所有数据都一样,其信息量为0,也就是在评价体系中去掉该指标不会对评价产生任何影响。

3.权重与评分

计算第j个指标的权重:
在这里插入图片描述
指标的变异系数越大,信息量越大,代表了权重越大。
综合评分:
计算第j个评价对象的综合评价值:
在这里插入图片描述
对不同科目进行加权求和,评价值越大越好。

4.代码实现

%读取exel
scores=readmatrix('data3-3.xlsx','Range','B2:I11');
%指标标准化
%m是行也就是学生数,n是学科数
[m,n]=size(scores);
%对于学科每列成绩 i是每一列,j是学生
for i=1:n
    for j=1:m
        score(j,i)=(scores(j,i)-min(scores(:,i)))/(max(scores(:,i))-min(scores(:,i)));
        if score(j,i)==0
            % 求对数不能为0,故取个极小的数
            score(j,i)=0.0001;
        end
    end
end



%比重:每个人每一科目
p=score./sum(score);
%熵值(每一科的熵值)
e=-sum(p.*log(p))/log(m)
%变异系数
g=1-e;
%权重
w=g/sum(g);
s=w*p'; %计算各个评价对象的综合评价值
[ss,rank]=sort(s,'descend'); %对评价值从大到小排序;descend表示降序

结果:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/656587.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

大数据量上传FTP

背景 笔者有一个需求是把将近一亿条数据上传到FTP服务器中,这些数据目前是存储在mysql中,是通过关联几张表查询出来的,查询出来的数据结果集一共是6个字段。要求传输的时候拆分成一个个小文件,每个文件大小不能超过500M。我的测试…

迁移基于MicroBlaze处理器的设计

迁移基于MicroBlaze处理器的设计 生成系统基础设施(MicroBlaze、AXI_Interconnect, Clk_Wiz、Proc_Sys_Reset) 生成系统基础设施(MicroBlaze、AXI_Interconnect、Clk_Wiz和 Proc_Sys_Reset): 1.使用所需的板…

多级留言/评论的功能实现——Vue3前端篇

文章目录 思路分析封装组件父组件模板逻辑样式 子组件——二级留言模板逻辑样式 子组件——三级留言以上模板逻辑样式 留言组件的使用 写完论文了,来把评论的前端部分补一下。 前端的实现思路是自己摸索出来的,没找到可以符合自己需求的参考,…

大数据技术之Scala语言,只需一篇文章即可,教你学会什么是Scala,教你如何使用Scala

一丶Scala入门 1.1什么是Scala Scala是Scalable Language两个单词的缩写,表示可伸缩语言的意思。从计算机的角度来讲,Scala是一门完整的软件编程语言,那么连在一起就表示Scala是一门可伸缩的软件编程语言。之所以说它是可伸缩,是…

软件需求分析和软件原型开发是一会事情吗?

软件需求分析和软件原型开发是软件开发过程中的两个重要环节,它们各自承担着不同的任务,但又紧密相连,共同影响着软件项目的成功。下面将详细解释这两个环节的定义、目的以及它们之间的关系。 一、软件需求分析 定义:软件需求分析…

怎样把学浪上的视频保存到电脑

我已经将学浪视频下载工具打包好了,有需要的下载下来 学浪下载工具打包链接:百度网盘 请输入提取码 提取码:1234 --来自百度网盘超级会员V10的分享 1.首先解压好我给大家准备好的压缩包 2.打开解压后的压缩包里面的N_m3u8D文件夹&#…

20道经典自动化测试面试题

概述 觉得自动化测试很难? 是的,它确实不简单。但是学会它,工资高啊! 担心面试的时候被问到自动化测试? 嗯,你担心的没错!确实会被经常问到! 现在应聘软件测试工程师的岗位&…

AI图片生成软件怎么用?让你轻松完成创作

随着人工智能技术的不断发展,越来越多的AI应用进入我们的生活。使用AI图片生成软件来创作图片可以极大地简化创作过程,让设计师轻松实现各种艺术效果。那么AI图片生成软件怎么用? 1. 选择合适的AI图片生成软件 市场上有许多AI图片生成软件供选择&#x…

商品上线搜索服务

文章目录 1.引入检索页面1.确保search目录和list.html都成功引入2.修改list.html,增加命名空间3.后端编写接口 SearchController.java4.测试访问 2.带条件分页检索1.前端要求返回数据的格式2.构建vo,SearchResult.java3.SkuInfoService.java 购买用户根据…

RocketMQ学习(1) 快速入门

mq的一些前置知识和概念知识可以看这篇文章——SpringCloud入门(3) RabbitMQ,比如常见mq的对比等等,这篇文章不再赘述。 目录 RocketMQ概念、安装与配置docker配置 RocketMQ快速入门**同步消息消费模式 **异步消息*单向消息**延迟消息*顺序消息批量消息事…

通过提示工程将化学知识整合到大型语言模型中

在当今快速发展的人工智能领域,大型语言模型(LLMs)正成为科学研究的新兴工具。这些模型以其卓越的语言处理能力和零样本推理而闻名,为解决传统科学问题提供了全新的途径。然而,LLMs在特定科学领域的应用面临挑战&#…

力扣HOT100 - 1143. 最长公共子序列

解题思路&#xff1a; 动态规划 class Solution {public int longestCommonSubsequence(String text1, String text2) {int m text1.length(), n text2.length();int[][] dp new int[m 1][n 1];for (int i 1; i < m; i) {char c1 text1.charAt(i - 1);for (int j 1…

【算法】位运算算法——两整数之和

题解&#xff1a;两整数之和(位运算算法) 目录 1.题目2.位运算算法3.参考代码4.总结 1.题目 题目链接&#xff1a;LINK 2.位运算算法 这个题目难点就在于不能用、- 那什么能够代替加号呢&#xff1f; 既然数的层面不能用号&#xff0c;那二进制的角度去用号即可。 恰好&a…

JavaScript(ES6)入门

ES6 1、介绍 ECMAScript 6&#xff08;简称ES6&#xff09;是于2015年6月正式发布的JavaScript 语言的标准&#xff0c;正式名为ECMAScript 2015&#xff08;ES2015&#xff09;。它的目标是使得JavaScript语言可以用来编写复杂的大型应用程序&#xff0c;成为企业级开发语言。…

AAAI2024 基于扩散模型 多类别 工业异常检测 DiAD

前言 本文分享一个基于扩散模型的多类别异常检测框架&#xff0c;用于检测工业场景的缺陷检测或异常检测。 设计SG语义引导网络&#xff0c;在重建过程中有效保持输入图像的语义信息&#xff0c;解决了LDM在多类别异常检测中的语义信息丢失问题。高效重建&#xff0c;通过在潜…

mysql实战——Mysql8.0高可用之双主+keepalived

一、介绍 利用keepalived实现Mysql数据库的高可用&#xff0c;KeepalivedMysql双主来实现MYSQL-HA&#xff0c;两台Mysql数据库的数据保持完全一致&#xff0c;实现方法是两台Mysql互为主从关系&#xff0c;通过keepalived配置VIP&#xff0c;实现当其中的一台Mysql数据库宕机…

Wpf 使用 Prism 实战开发Day27

首页汇总和数据动态显示 一.创建首页数据汇总数据接口 汇总&#xff1a;待办事项的总数已完成&#xff1a;待办事项里面有多少条完成的待办完成比例&#xff1a;已完成和汇总之间的比例备忘录&#xff1a;显示备忘录的总数待办事项&#xff1a;显示待办事项未完成的集合备忘录&…

Flask+Vue+MySQL天水麻辣烫管理系统设计与实现(附源码 配置 文档)

背景&#xff1a; 同学找到我期望做一个天水麻辣烫的网页&#xff0c;想复用以前做过的课设&#xff0c;结合他的实际需求&#xff0c;让我们来看看这个系统吧~ 项目功能与使用技术概述&#xff1a; 里面嵌入了6个子系统&#xff0c;其中餐饮系统可以进行餐馆信息添加、修改…

【ARFoundation自学03】平面追踪可视化效果美化

对已检测到的平面默认的渲染效果显得有些生硬和突兀&#xff0c;有时我们需要更加友好、美观的的平面虚拟界面&#xff0c;这时就需要对已检测到的平面定制个性化的可视方案。为达到更好的视觉效果&#xff0c;处理的思路如下。 视觉效果前后对比&#xff01; &#xff08;本节…

Android Compose 七:常用组件 Image

1 基本使用 Image(painter painterResource(id R.drawable.ic_wang_lufei), contentDescription "" ) // 图片Spacer(modifier Modifier.height(20.dp))Image(imageVector ImageVector.vectorResource(id R.drawable.ic_android_black_24dp), contentDescript…