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

神经网络基础-神经网络补充概念-45-指数加权平均

概念

指数加权平均(Exponential Moving Average,EMA)是一种平均方法,用于平滑时间序列数据或者计算变量的滚动均值。它对数据的权重分布呈指数递减,越靠近当前时刻的数据权重越高,越远离当前时刻的数据权重越低。EMA在信号处理、金融分析和深度学习等领域中有广泛应用,可以用于去噪、趋势分析以及模型参数更新等场景。

公式

EMA的计算公式如下:

EMA(t) = α * x(t) + (1 - α) * EMA(t-1)

其中,t 表示当前时刻,x(t) 表示当前时刻的数据点,α 是平滑因子(也称为衰减因子),通常取值范围在0到1之间。EMA(t-1) 表示上一时刻的指数加权平均。

在每一步迭代中,都会计算新的EMA值,这样可以在数据流动过程中对数据进行平滑处理。

代码实现

import numpy as np
import matplotlib.pyplot as plt# 生成随机数据
np.random.seed(0)
data = np.random.randn(100)# 指数加权平均的平滑因子
alpha = 0.2# 计算指数加权平均
ema = np.zeros_like(data)
ema[0] = data[0]
for t in range(1, len(data)):ema[t] = alpha * data[t] + (1 - alpha) * ema[t-1]# 绘制原始数据和指数加权平均
plt.plot(data, label='Original Data')
plt.plot(ema, label=f'EMA (alpha={alpha})', color='red')
plt.legend()
plt.xlabel('Time')
plt.ylabel('Value')
plt.title('Exponential Moving Average')
plt.show()
http://www.lryc.cn/news/128298.html

相关文章:

  • 模型预测笔记(一):数据清洗及可视化、模型搭建、模型训练和预测代码一体化和对应结果展示(可作为baseline)
  • 【Pytroch】基于K邻近算法的数据分类预测(Excel可直接替换数据)
  • Centos 7 通过Docker 安装MySQL 8.0.33实现数据持久化及my.cnf配置
  • 自夹持P型屏蔽型碳化硅沟槽型绝缘栅双极晶体管,用于低开通电压和开关损耗
  • 【数据结构与算法——TypeScript】树结构Tree
  • 多维时序 | MATLAB实现PSO-CNN-BiGRU多变量时间序列预测
  • Shell 编程基础01
  • Cross-Site Scripting
  • 基于java企业员工绩效考评系统设计与实现
  • SpringBoot 操作Redis、创建Redis文件夹、遍历Redis文件夹
  • c++11 标准模板(STL)(std::basic_stringbuf)(六)
  • iceberg系列之 hadoop catalog 小文件合并实战
  • 神经网络基础-神经网络补充概念-25-深层神经网络
  • MySQL— 基础语法大全及操作演示!!!(上)
  • [golang gin框架] 46.Gin商城项目-微服务实战之后台Rbac客户端调用微服务权限验证以及Rbac微服务数据库抽离
  • 域名和ip的关系
  • excel日期函数篇1
  • Leetcode151 翻转字符串中的单词
  • PHP FTP的相关函数及简单使用示例
  • 高光谱 | 矿物识别和分类标签数据制作、农作物病虫害数据分类、土壤有机质含量回归与制图、木材含水量评估和制图
  • 【数据结构】二叉树篇| 纲领思路01+刷题
  • 系统架构设计师---计算机基础知识之数据库系统结构与规范化
  • PyCharm连接Docker中的容器(ubuntu)
  • 安防视频汇聚平台EasyCVR视频监控综合管理平台H.265转码功能更新,新增分辨率配置的具体步骤
  • 全平台数据(数据库)管理工具 DataCap 管理 Rainbond 上的所有数据库
  • “深入探究JVM内部机制:从字节码到实际执行“
  • C++写文件,直接写入结构体
  • 【Spring专题】Spring之Bean的生命周期源码解析——阶段二(二)(IOC之属性填充/依赖注入)
  • 线程|线程的使用、四种实现方式
  • Facebook 应用未启用:这款应用目前无法使用,应用开发者已得知这个问题。