1.指标权重建模系列一:白话熵权法赋权值(赋python源码)
2.SWA (Stochastic Weight Average)
3.指标权重建模系列三:白话改进CRITIC法赋权(附Python源码)
4.指标权重建模系列二:白话CRITIC法赋权(附Python源码)
5.MCST指标计算公式
指标权重建模系列一:白话熵权法赋权值(赋python源码)
熵权法作为客观赋权的权重源码综合评价利器,其核心是权重源码数据驱动,尤其重视信息量的权重源码离散性。统计学家倾向于将高离散性视为信息量大,权重源码赋予大权重,权重源码信息熵反而小。权重源码国际原油交易源码要深入了解熵权法,权重源码还需深入信息论领域,权重源码但这里不再详述。权重源码 熵权法的权重源码实施步骤如下:数据模型构建:假设数据集由n个样本和m个指标组成,数学表达为[公式]。权重源码
数据归一化:对指标进行分类处理,权重源码正向指标归一化为[公式],权重源码负向指标为[公式],权重源码中间型指标为[公式],权重源码微厦科技源码区间型指标为[公式]。对于0值,添加极小值0.以避免计算错误。
信息熵计算:基于概率和信息量定义,信息熵为[公式]。当[公式]时,信息熵最大,标准化后为[公式]。
权重计算:信息熵越大,权重越小。差异系数为[公式],权重则为[公式]。
以下为Python实现的代码片段:# Python代码片段
from scipy.stats import entropy
def entropy_weight(data, n, m):
# 数据处理...
# 计算信息熵...
entropy_values = [calculate_entropy(sample, m) for sample in data]
# 计算差异系数...
difference_coefficients = [1 - entropy_value / max_entropy for entropy_value in entropy_values]
# 计算权重...
weights = [1 / difference_coefficient for difference_coefficient in difference_coefficients]
return weights
# 其他辅助函数...
这段代码展示了如何在Python中应用熵权法来计算指标权重。
SWA (Stochastic Weight Average)
SWA(Stochastic Weight Averaging),蜗牛和源码时代一种调参技巧,其实质是通过连续更新后的权重计算平均值,而非保存历史权重。PyTorch.contrib提供了相应的源码实现,让我们通过一个简单的测试代码来了解如何使用:
代码中前两个参数的作用在于设置更新的规则,例如,s和f分别代表滑动窗口大小和步长。内部机制是(optimizer的state字典)为每个权重维护一个字典,记录swa_buff(用于计算均值的tensor)和相关计数。
举个例子,当s=3,f=3时,只有在第1、2、4432模块应用源码3步之后,权重才会被包含在均值计算中。下面进行实验,以CIFAR-为例,首先不使用SWA,记录训练过程:
加入SWA后,模型性能显著提升,如无BN更新,提升%;当加入BN更新,性能进一步提升至%。这表明尽管在某些情况下BN更新可能带来影响,但SWA确能有效提升性能。
那么,为何平均权重就能产生效果呢?可以直观地通过以下图形解释:图形展示了SWA和SGD解的源码解析建模工具差异。SWA解位于loss曲线的平坦区域,使得模型在训练过程中损失变化平稳,有利于泛化性能的提高。
图形的绘制方法虽然未在文中详细说明,但推测是将SWA和SGD解表示为x1和x2,通过变量w进行加权平均,当w=0时代表SWA,w=时代表SGD。这展示了SWA的稳定性在对抗训练扰动和优化泛化方面的重要性。
指标权重建模系列三:白话改进CRITIC法赋权(附Python源码)
上节回顾
前文讲述了CRITIC法赋权重的基本概念,其中涉及波动度与冲突度两个关键点。波动度指的是同一指标下数据的标准差,冲突度则衡量了指标间的相关性。
数据模型介绍
在数据集中,n个样本,m个指标,数学表达如下:
公式略
对CRITIC方法的改进
改进CRITIC法需聚焦波动度与冲突度。知友反馈指出公式上的不足,经文献研究后,重审并提出改进。
改进波动度计算
为消除量纲影响,改进公式将标准差除以均值,获得无量纲指标。
冲突度改进
原冲突度公式只考虑正相关。改进后,负相关亦视为强相关,调整冲突度计算公式。
改进后权重计算
引入熵权法,通过加权平均,平衡指标重要性与信息量,提升权重准确性与稳定性。
具体实现参考已发布的信息熵介绍文章。
Python代码
提供CRITIC法改进版的Python代码实现,便于实践操作。
参考文献
[1] 韩一鸣,徐鹏飞,宫建锋等.基于改进CRITIC-熵权法的电网发展经营综合评价体系研究[J].机电信息,():1-7+.DOI:./j.cnki.cn-/tm....
[2] 弋若兰.我国上市公司信用风险评估研究——基于改进CRITIC熵权组合赋权-TOPSIS模型[J].投资与创业,,():-.
指标权重建模系列二:白话CRITIC法赋权(附Python源码)
CRITIC权重赋值法,一种数据驱动、客观为指标赋权的方法,不同于信息熵法,其核心概念在于数据波动度和冲突度。波动度衡量指标内取值差异性,冲突度则反映指标间的线性关系。CRITIC法计算流程包括数据模型定义、归一化处理、信息承载量计算和权重计算。数据集由n个样本与m个指标构成,归一化处理需考虑指标类型:正向、负向、中间型与区间型,采用特定公式进行转换。波动度计算与标准差相似,冲突度则通过指标间相关系数衡量,冲突越小权重越小。信息承载量由波动度与冲突度决定,最后根据公式计算指标权重。此法实现过程可借助Python编程,具体步骤和代码实现需根据实际数据集进行编写。
MCST指标计算公式
MCST指标的计算公式以源代码形式表示为:MCST = DMA(AMOUNT/(*VOL), VOL/CAPITAL)。这里的DMA代表动态移动平均,是一种统计分析工具。
具体来说,MCST指标的构建涉及到两个关键要素。首先,"AMOUNT/(*VOL)"代表的是成交额的加权平均,其中AMOUNT是指一定时间内总的交易额,VOL则是这段时间内的成交量。这一部分的权重计算,是用成交量除以当前的流通股本,以反映市场的活跃程度和股票的流动性。
其次,"VOL/CAPITAL"则是流通股本的倒数,用来衡量每一单位资本对应的交易规模,反映了市场的资本参与度。将这个值除以成交量,可以得到一个相对的权重,用于调整动态移动平均的计算。
将这两个部分带入DMA公式,MCST即为根据成交量和流通股本动态调整的成交额平均值,它能够反映出市场成本的变化趋势,有助于投资者理解和分析股票的买卖压力以及市场情绪。因此,MCST是一个结合了市场交易活跃度和资本参与度的综合指标。