改进熵权法
方法概述
改进熵权法是一种基于阈值筛选的混合客观赋权方法,旨在解决传统熵权法在指标熵值趋近于1时权重差距被过度放大的问题。传统熵权法完全依赖数据变异程度确定权重,当某个指标的熵值接近1(即数据分布几乎均匀)时,其差异系数 \(g_j = 1 - E_j\) 趋近于0,但经过归一化后,该指标的微小差异可能导致权重出现不合理放大,影响评价结果的稳健性。
改进熵权法的核心思想是:
- 首先按照传统熵权法计算各指标的初步权重。
- 对标准化后的数据计算每个指标的阈值(如均值、中位数或分位数)。
- 若某个指标的平均值高于其阈值,则认为该指标的数据分布相对“集中”或“信息量不足”,将其权重置为0。
- 对剩余非零权重重新归一化,得到改进后的权重。
该方法能够有效识别并剔除信息含量较低的指标,提高权重分配的合理性,尤其适用于指标数量较多且存在冗余信息的综合评价问题。
计算步骤
1. 构建原始数据矩阵
设有 \(n\) 个评价对象,\(m\) 个评价指标,原始数据矩阵为:
\[ X = \begin{bmatrix} x_{11} & x_{12} & \cdots & x_{1m} \\ x_{21} & x_{22} & \cdots & x_{2m} \\ \vdots & \vdots & \ddots & \vdots \\ x_{n1} & x_{n2} & \cdots & x_{nm} \end{bmatrix} \]
2. 数据标准化
根据指标的不同类型(极大型、极小型、中间型、区间型),采用相应的方法进行标准化,得到标准化矩阵 \(Z = (z_{ij})_{n \times m}\)。常用极差标准化(Min-Max):
(1)极大型指标(越大越好)
\[ z_{ij} = \frac{x_{ij} - \min(x_j)}{\max(x_j) - \min(x_j)} \]
(2)极小型指标(越小越好)
\[ z_{ij} = \frac{\max(x_j) - x_{ij}}{\max(x_j) - \min(x_j)} \]
(3)中间型指标(越接近某个固定值越好)
设最优值为 \(a\),则:
\[ z_{ij} = \begin{cases} 1 - \frac{|x_{ij} - a|}{\max(|x_j - a|)}, & \text{若分母非零} \\ 1, & \text{若所有值均等于最优值} \end{cases} \]
(4)区间型指标(落在某个区间内最好)
设最佳区间为 \([a,b]\),则:
\[ z_{ij} = \begin{cases} 1 - \frac{a - x_{ij}}{\max(a - \min(x_j), \max(x_j) - b)}, & x_{ij} < a \\ 1, & a \leq x_{ij} \leq b \\ 1 - \frac{x_{ij} - b}{\max(a - \min(x_j), \max(x_j) - b)}, & x_{ij} > b \end{cases} \]
其他标准化方法(适用于已正向化数据):
- Z-score标准化:\(z_{ij} = \frac{x_{ij} - \mu_j}{\sigma_j}\),然后线性变换到非负区间。
- 比重法:\(z_{ij} = \frac{x_{ij}}{\sum_{i=1}^n x_{ij}}\)。
- 向量归一化:\(z_{ij} = \frac{x_{ij}}{\sqrt{\sum_{i=1}^n x_{ij}^2}}\)。
3. 非负平移(可选)
若标准化后出现零值,为满足熵值计算中 \(\ln\) 的要求,可整体平移一个很小的正数(如 \(10^{-10}\))或约定 \(p\ln p = 0\) 当 \(p=0\)。
4. 计算比重矩阵
计算第 \(j\) 项指标下第 \(i\) 个对象的值占该指标总值的比重:
\[ p_{ij} = \frac{z_{ij}}{\sum_{i=1}^{n} z_{ij}}, \quad j = 1,2,\ldots,m \]
此时每列之和为1。
5. 计算传统熵值
\[ E_j = -\frac{1}{\ln n} \sum_{i=1}^{n} p_{ij} \ln(p_{ij}), \quad j = 1,2,\ldots,m \]
6. 计算传统差异系数和权重
\[ g_j = 1 - E_j, \quad w_j^{\text{传统}} = \frac{g_j}{\sum_{j=1}^{m} g_j} \]
7. 计算阈值(改进熵权法的核心)
对于每个指标 \(j\),根据标准化后的数据 \(z_{ij}\) 计算其阈值 \(T_j\),有三种方式:
- 均值法:\(T_j = \frac{1}{n} \sum_{i=1}^{n} z_{ij}\)
- 中位数法:\(T_j = \text{median}(z_{1j}, z_{2j}, \ldots, z_{nj})\)
- 分位数法:\(T_j = Q_\alpha(z_{\cdot j})\),其中 \(\alpha\) 为指定分位数(如0.5即中位数)
8. 应用阈值筛选
对于每个指标 \(j\),若其平均值 \(\bar{z}_j > T_j\),则将该指标的权重置为0:
\[ w_j^{\text{改进}} = \begin{cases} 0, & \bar{z}_j > T_j \\ w_j^{\text{传统}}, & \bar{z}_j \leq T_j \end{cases} \]
其中 \(\bar{z}_j = \frac{1}{n} \sum_{i=1}^{n} z_{ij}\)。
9. 重新归一化改进权重
若所有指标均被置零(极端情况),则令所有指标等权;否则将剩余非零权重归一化:
\[ w_j^{\text{改进}} = \frac{w_j^{\text{改进}}}{\sum_{k=1}^{m} w_k^{\text{改进}}} \]
10. 计算综合得分(可选)
分别使用传统权重和改进权重计算各对象的综合得分:
\[ F_i^{\text{传统}} = \sum_{j=1}^{m} w_j^{\text{传统}} z_{ij}, \quad F_i^{\text{改进}} = \sum_{j=1}^{m} w_j^{\text{改进}} z_{ij} \]
案例分析
案例背景:某企业需对四个供应商(A、B、C、D)进行评价,选取三个指标:产品质量(极大型)、价格(极小型)、交货准时率(极大型)。原始数据如下:
| 供应商 | 产品质量 | 价格 | 交货准时率 |
|---|---|---|---|
| A | 85 | 200 | 0.95 |
| B | 90 | 180 | 0.90 |
| C | 75 | 210 | 0.85 |
| D | 80 | 190 | 0.92 |
计算过程
1. 数据标准化(极差法)
产品质量(极大型):\(\max=90,\min=75\)
- A: \((85-75)/(90-75)=10/15=0.6667\)
- B: \((90-75)/15=1.0000\)
- C: \((75-75)/15=0.0000\)
- D: \((80-75)/15=0.3333\)
价格(极小型):\(\max=210,\min=180\)
- A: \((210-200)/(210-180)=10/30=0.3333\)
- B: \((210-180)/30=1.0000\)
- C: \((210-210)/30=0.0000\)
- D: \((210-190)/30=0.6667\)
交货准时率(极大型):\(\max=0.95,\min=0.85\)
- A: \((0.95-0.85)/0.10=1.0000\)
- B: \((0.90-0.85)/0.10=0.5000\)
- C: \((0.85-0.85)/0.10=0.0000\)
- D: \((0.92-0.85)/0.10=0.7000\)
标准化矩阵 \(Z\):
\[ Z = \begin{bmatrix} 0.6667 & 0.3333 & 1.0000 \\ 1.0000 & 1.0000 & 0.5000 \\ 0.0000 & 0.0000 & 0.0000 \\ 0.3333 & 0.6667 & 0.7000 \end{bmatrix} \]
2. 计算比重(以第一列为例)
第一列和 \(=0.6667+1.0000+0+0.3333=2.0000\),比重:
- \(p_{11}=0.6667/2=0.3333\)
- \(p_{21}=1/2=0.5000\)
- \(p_{31}=0/2=0\)
- \(p_{41}=0.3333/2=0.1667\)
3. 传统熵值
\(n=4,\ \ln4=1.3863\),第一列: \[ \sum p\ln p = 0.3333\ln0.3333+0.5\ln0.5+0+0.1667\ln0.1667 = -0.3662-0.3466-0.2986 = -1.0114 \] \[ E_1 = -\frac{-1.0114}{1.3863} = 0.7295 \] 同理 \(E_2=0.7272,\ E_3=0.7272\)。
4. 传统权重
\[ g_1=0.2705,\ g_2=0.2728,\ g_3=0.2728,\ \sum g=0.8161 \] \[ w_1^{\text{传统}}=0.2705/0.8161=0.3315,\ w_2^{\text{传统}}=0.2728/0.8161=0.3343,\ w_3^{\text{传统}}=0.2728/0.8161=0.3342 \]
5. 阈值计算(以均值法为例)
各列均值:
- \(\bar{z}_1 = (0.6667+1+0+0.3333)/4 = 0.5000\)
- \(\bar{z}_2 = (0.3333+1+0+0.6667)/4 = 0.5000\)
- \(\bar{z}_3 = (1+0.5+0+0.7)/4 = 0.5500\)
阈值 \(T_j\)(均值法)即为各列均值本身:\(T_1=0.5,\ T_2=0.5,\ T_3=0.55\)。
6. 阈值筛选
比较 \(\bar{z}_j\) 与 \(T_j\):
- 指标1:\(\bar{z}_1=0.5\),等于阈值(不大于),保留权重。
- 指标2:\(\bar{z}_2=0.5\),等于阈值,保留。
- 指标3:\(\bar{z}_3=0.55\),等于阈值,保留。
此时无一指标被剔除,改进权重与传统权重相同。
7. 若调整阈值类型(例如使用分位数0.3)
假设我们取0.3分位数作为阈值:
- 指标1的0.3分位数:数据排序 [0,0.3333,0.6667,1],0.3分位数约为0.3333。
- \(\bar{z}_1=0.5 > 0.3333\),故指标1被剔除(权重置0)。
- 指标2的0.3分位数:数据 [0,0.3333,0.6667,1],0.3分位数约为0.3333,\(\bar{z}_2=0.5 > 0.3333\),剔除。
- 指标3的0.3分位数:数据 [0,0.5,0.7,1],0.3分位数约为0.5,\(\bar{z}_3=0.55 > 0.5\),剔除。
所有指标均被剔除,则改进后等权,各权重0.3333。此例说明阈值的选择对结果影响显著。
常见问题
Q1: 改进熵权法与普通熵权法有何区别?
A: 普通熵权法完全基于数据变异程度计算权重;改进熵权法在此基础上增加了阈值筛选机制,剔除那些平均值高于阈值的指标(即相对“集中”的指标),从而避免因微小变异导致的权重夸大。改进后的权重更注重信息含量较高的指标。
Q2: 如何选择阈值类型?
A: 平台提供均值、中位数和分位数三种方式。均值最常用;中位数对异常值更稳健;分位数可灵活调整阈值位置,适合需要严格筛选的场景。建议根据数据分布特点尝试不同阈值,观察权重稳定性。
Q3: 如果所有指标都被剔除怎么办?
A: 若所有指标的均值均大于阈值,则全部指标权重置零,此时平台自动将所有指标设为等权(即 \(1/m\)),并给出警告。这可能是因为阈值设置过低或数据本身分布过于集中,建议调整阈值或检查数据。
Q4: 改进方法是否一定优于传统方法?
A: 改进方法旨在解决特定问题,但并非适用于所有场景。当指标间信息冗余较大或数据噪声较多时,改进方法能有效降维;若指标本身均具有重要信息,传统方法可能更合适。建议同时计算两种结果,结合专业知识判断。
Q5: 支持多工作表吗?
A: 支持。平台允许上传包含多个工作表的Excel文件,每个工作表对应不同的数据集,系统会分别计算各表的传统权重、改进权重、阈值及得分,便于对比分析。
平台功能
改进熵权法分析平台提供以下核心功能:
数据输入
- 支持CSV、Excel、TXT多种格式。
- Excel文件支持多工作表,自动识别工作表名称。
- 数据格式要求:第一行为指标名称,第一列为样本名称,数据区域为数值型。
参数设置
- 指标类型:为每个指标指定类型(极大型、极小型、中间型、区间型),并设置相应的参数(最优值、区间上下限)。
- 标准化方法:极差法、Z-score、比重法、向量归一化。
- 熵值小常数:用于处理零值的微小正数(默认 \(10^{-10}\))。
- 阈值类型:均值、中位数、分位数(可自定义分位数)。
- 小数位数:控制输出精度(默认6位)。
- 显示中间结果:可选是否展示标准化矩阵、比重矩阵等中间步骤。
结果展示
- 详细分析报告:包含传统权重、改进权重、阈值信息、传统得分、改进得分,以及标准化矩阵、比重矩阵、熵值等。
- 可视化图表:权重对比柱状图、得分对比柱状图。
- AI智能分析:基于DeepSeek API自动解读结果,提供决策建议(每日限3次)。
- 多格式导出:支持Excel和HTML报告下载。
工作表管理
- 多工作表自动识别,支持批量分析。
- 实时显示每个工作表的验证状态。
- 支持对比不同工作表(不同数据集)的权重分布。
使用建议
准备阶段:明确评价对象和指标体系,确定各指标的类型。
数据收集:使用模板文件填写,每个工作表可代表不同的数据集(如不同年份、不同专家组)。确保数据完整。
参数设置:
- 正确设置指标类型和参数。
- 选择合适的标准化方法(推荐极差法)。
- 根据研究目的选择阈值类型,可先尝试均值法,再探索中位数或分位数。
- 注意分位数取值,避免阈值过低导致过多指标被剔除。
结果解读:
- 对比传统权重与改进权重,分析哪些指标因“集中”而被剔除。
- 检查改进后得分的排名变化,理解阈值筛选对评价结果的影响。
- 若改进后权重分配出现不合理现象,可调整阈值重新计算。
迭代优化:
- 结合专业知识判断剔除指标是否合理。
- 若改进方法效果不明显,可回归传统方法。
- 对于重要决策,可邀请多位专家参与指标筛选和类型判断。
平台界面

平台界面包含:数据上传区、参数设置区、多工作表预览、分析结果展示和AI分析模块
参考文献:
- 基于阈值筛选的改进熵权法及其应用[J]. 系统工程理论与实践,2019.
- 改进熵权法在综合评价中的应用研究[J]. 统计与决策,2020.
- 熵权法的改进及其在多属性决策中的应用[D]. 北京理工大学,2018.