(数据分析方法)长期趋势分析

news2024/11/24 17:24:48

目录

一、定义

二、目的

三、方法

1、移动平均法

(1)、简单移动平均法

(2)、加权移动平均法

(3)、指数平滑法

2、最小二乘法

3、线性回归

1、数据预处理

2、观察数据分布建立假设模型

3、定义损失函数

4、批量梯度下降

5、优化

4、LSTM 时序分析

5、特征工程


一、定义

长期趋势是指在相当长的时期内,社会现象表现为持续不断地向上增长或向下降低的趋势。表现为向上发展趋势的,如工农业产品的产量、商品流转额等。表现为向下发展趋势的如成本不断降低等。还有若干数列在相当长的时期内并无明显升降趋势,可称之谓水平趋势。在一个长时间的动态致列中,往往存在着受不同因家影响的几种变动,如受某种根本性原因所决定的长期变动趋势和一年内季节因家影响的季节变动,以及其他变动。对动态数列进行统计分析的一项重要任务,就是要分别测定这些变动。

二、目的

在统计分析中,研究长期趋势的主要目的是:

  1. 测定社会现象向上成长或向下降低的趋势,确定其发展方向和发展速度。这对正确认识客观事物发展的规律性,对于指导国民经济发展和企业的生产、经营活动具有重要意义;

  2. 测定长期趋势.有助于进行经济预测。

三、方法

时间序列的数值变化往往交杂四种变动形态,让数值变化在二维坐 标上的变动显得异常杂乱无序,无规律可循。长期趋势对数值变化的影 响是持续的,过程中可能会有小波动,但是从长期总体来看,趋势稳 定,而其他三种波动形式从长期来看是有升有降,波动对称。长期趋势 分析的方法有很多,下面介绍两种最常用的方法:移动平均法和最小二 乘法,其中最小二乘法也被称为回归方程法。

1、移动平均法

移动平均法的实质是通过对时间序列数值进行移动平均,将原来杂 乱无序的时间序列进行修匀,从而消除带有波动对称性质的季节变动、 循环变动和不规则变动对时间序列数值产生的影响。移动平均法又可以 分为简单移动平均、加权移动平均和指数平滑三种形式。

(1)、简单移动平均法

简单移动平均的基本过程如下:首先,确定进行移动平均的项数 k,即每次计算平均值时所包含的时间序列的数值个数;其次,从时间 序列的第一个数值开始,每计算一次平均值向后移动一项;最后,将计 算出来的移动平均值与时间对应排列,编制成一个新的时间序列。观测 新时间序列的数值变化情况,可以得到原始时间序列的长期趋势情况。

生活案例:使用移动平均法预测玩具公司的销售量 表4-21是利用某玩具公司近10年销售数据制作的三项简单移动平均表。

从表4-21可以看出,该公司销售量的时间序列从整体上说是稳步提 升的,但在个别年份也出现销售量比上一年下降的情况,例如2014年和 2016年,这很可能是由于公司不可控的外界经济环境等因素造成的结 果。为了消除这些不可控因素对销售量的影响,反映公司的真实运营水 平,可以采用移动平均法分析公司的长期销售趋势。从表4-21可知,移 动平均后得到的新时间序列的数值没有上下起伏波动的情况,反映该公 司10年来销售量持续增长的趋势。

一般来说,移动平均项越多,修匀的作用就越大,曲线就越平滑,反之作用越小,得到的曲线平滑度较差。如果数列中有自然周期,就该以周期的长度或者倍数作为移动平均项数,如果没有的话,一般使用奇数为好。如果采用偶数项移动平均,则新计算出来的时序平均数无和原动态数列一一对应,还需要进行一次二项移动平均,用以调整趋势值,保持和原数列对应。

(2)、加权移动平均法

简单移动平均在求取平均值时,原始时间序列中每个指标数值的权 重都相同,表示每个原始时间序列数值对新时间序列数值的影响程度是 一致的,然而,现实却并不是如此简单,经常出现影响程度不同的情 况。例如,某些国际传统大公司在过去异常风光,但随着互联网行业的 发展,公司的运营逐渐举步维艰。此时,如果继续用简单移动平均法预 测来年的运营情况,那就可能得到误导性的结果,因为早期的数据已经 不能很好地反映公司目前的运营情况了。加权移动平均法可以解决不同 时期指标数值对新时间序列数值影响程度不同的问题,因为加权移动平 均法可以为每个原始时间序列的指标数值赋予不同的权重,从而使不同 数值对新时间序列数值有不同的影响。

生活案例:使用加权移动平均法预测玩具公司的销售量 继续使用玩具公司的销售数据做加权移动平均。这里采用的是三项 加权移动平均法,因为在大多数情况下,越近的销售数据拥有越大的权 重,而越远的销售数据的权重应该越低,所以我们设定第三年销售数值 的权数为第一年销售数值权重的3倍,第二年的数值权重为第一年的2 倍,计算结果如表4-22所示。

应用上述两种移动平均法进行时间序列趋势分析时,需要注意以下 几点。

  1. 移动平均法只适用于具有线性长期趋势的时间序列。移动平均 的作用就是消除周期变动、循环变动和不规则变动的数值影响,这些变 动属于有升有降的变动类型。然而,如果根本原因引起的长期趋势就是 有升有降,那么移动平均也将消除根本原因形成的长期趋势,所以移动平均法只适用于具有线性长期趋势的时间序列。

  2. 利用移动平均法进行长期趋势分析时要有足够多的数据,否则 不能如实反映研究对象固有的长期变化趋势。足够多的数据是进行长期 趋势分析的前提条件。

得到新的时间序列后,可以用回归分析计算新的时间序列方程,再利用回归方程对未来进行预测。新时间序列是消除其他变动的、 能够很好反映长期趋势的数值。所以,利用新的回归序列得到的回归方 程能够很好地预测根本原因引起的数值变化。

(3)、指数平滑法

指数平滑法是加权移动平均的一种特殊形式。加权移动平均法为每 项时间序列数值都设置了相应的权重,而指数平滑法则只需设置一个权 重(平滑系数)即可,其他数值的权重可以根据公式自动推算出来。指 数平滑的数学模型为:

比如,第5期的预测值:

生活案例:使用指数平滑法预测玩具公司的销售量 继续以玩具公司的销售数据为例介绍指数平滑法的计算过程。设定 平滑系数α=0.7,即较近的数值权重较大,计算结果如表4-24所示。

指数平滑法的计算中,关键是α的取值大小,但α的取值又容易受主观影响,因此合理确定α的取值方法十分重要,一般来说,如果数据波动较大,α值应取大一些,可以增加近期数据对预测结果的影响。如果数据波动平稳,α值应取小一些。理论界一般认为有以下方法可供选择:

经验判断法。这种方法主要依赖于时间序列的发展趋势和预测者的经验做出判断。

1、当时间序列呈现较稳定的水平趋势时,应选较小的α值,一般可在0.05~0.20之间取值;

2、当时间序列有波动,但长期趋势变化不大时,可选稍大的α值,常在0.1~0.4之间取值;

3、当时间序列波动很大,长期趋势变化幅度较大,呈现明显且迅速的上升或下降趋势时,宜选择较大的α值,如可在0.6~0.8间选值,以使预测模型灵敏度高些,能迅速跟上数据的变化;

4、当时间序列数据是上升(或下降)的发展趋势类型,α应取较大的值,在0.6~1之间。

试算法。根据具体时间序列情况,参照经验判断法,来大致确定额定的取值范围,然后取几个α值进行试算,比较不同α值下的预测标准误差,选取预测标准误差最小的α。

在实际应用中预测者应结合对预测对象的变化规律做出定性判断且计算预测误差,并要考虑到预测灵敏度和预测精度是相互矛盾的,必须给予二者一定的考虑,采用折中的α值。

2、最小二乘法

在时间序列分析中,利用最小二乘法确定指 标数值(因变量)关于时间(自变量)变化的曲线是时间序列分析的重 要手段,称为回归方程法。前面提到移动平均法只适用于线性的长期趋 势分析,即指标数值从长期看,表现为持续上升、平稳或下降趋势,对 于表现为非线性的长期趋势,移动平均法就无能为力了,这决定了移动 平均法的适用范围不广。回归方程法则不同,因为回归模型千变万化, 既有常用的线性回归模型,也有常用的非线性回归模型,最重要的是, 能够根据实际的数据情况,在已有模型的基础上建立新的回归模型(数 据建模),模拟实际数据变化的趋势,这也决定了回归方程法的应用前 景。

回归方程法既可以用于时间序列的线性长期趋势分析,也可以用于非线性长期趋势分析。线性长期趋势分析的过程与前面介绍的一元线性 回归分析的过程相同。区别在于一元线性回归分析的自变量与因变量可 以是任意属性的数据,而线性长期趋势分析的自变量必定是时间变量。 线性长期趋势分析之所以能够消除其他三种变动(季节变动、循环变动 和不规则变动)的影响,展现根本原因引起的长期变化趋势,在于其利 用了最小二乘法,得到估计误差最小的线性回归方程。由于现行长期趋 势分析与一元线性回归分析的过程相同,这里就不再赘述。

非线性长期趋势分析与线性长期趋势相比,研究对象在根本原因的 作用下,指标数值随时间变化表现出非线性趋势的情况更为普遍,同 时,非线性的表现形式也更为复杂多样。在过去几十年里,数据分析者 建立了很多时间序列预测模型,对线性长期趋势的现象具有很好的分析 效果,但是由于社会经济系统的复杂性,非线性趋势预测逐渐成为预测 领域的研究热点。例如,股价波动的长期趋势就是典型的非线性趋势, 本质原因包括金融市场的正反馈机制、投资者的异质性与相互影响是引 发市场复杂行为的重要途径;非线性趋势分析是股价波动的重要分析手 段。在现实生活中,还有大量现象的长期变化趋势表现为非线性趋势, 常用的非线性模型有二次曲线、三次曲线、复合曲线、增长曲线、指数 曲线、对数曲线、S曲线、幂曲线、逆函数和逻辑函数等。

回归方程法进行长期趋势分析有三个基本步骤。

  1. 利用散点图,初步判断时间序列的长期趋势。

  2. 执行曲线回归分析。

  3. 根据选择的曲线函数以及计算得到的回归系数,写出最终的回 归方程。

下面我们以指数曲线为例说明利用回归方程法进行长期趋势分析的 过程。 指数曲线函数的一般形式为:

为了方便计算,指数曲线可以转换为对数直线形式:

用最小二乘法估计参数a和b(根据预计和真实数据之间的距离求a和b的偏导函数,使其为0),得到下面的方程组:

解方程组,可得回归参数a和b的对数值。为了简化计算过程,可以 将时间序列的中点作为零点(∑x=0),简化后的方程组为:

解方程组,得到下面的结论:

根据回归参数a和b的对数值得到回归参数a和b的值,最终获得指数 回归方程。

生活案例:使用回归方程法预测创业公司的销售额

在“大众创业,万众创新”的号召下,越来越多的年轻人在毕业后选 择自主创业。小王在毕业后选择和同寝室的五个好朋友一起创业。他们立足于自己熟悉的大学城区域从事快餐生产、销售及配送服务,同时结 合自身所学的软件专业,实现了线上和线下的立体销售模式。在短短的 9 个月时间里,月销售额快速上升(数据如表 4-26 所示)。虽然目前的 设备和人力还能够满足顾客的需求,但是团队还是有扩大生产规模的打 算。为了规避投资风险,小王打算对未来的销售额发展趋势做出预测, 以此判断是否投资以及投资的额度。

案例分析:如果经营模式正确,切合市场需要,公司成立初期一般 为快速发展时期,这是由经营模式等根本原因决定的,因此适合使用长 期趋势分析方法得到回归方程并对未来趋势进行预测。

首先,制作时间和月销售额的散点图,观察散点图分布形态,如图 4-13所示。

从散点图及线性趋势线的拟合情况来看,两者的拟合结果不是很 好,估计误差比较大。从第三个点到第五个点有一个从增速减慢到加快 的趋势,可以尝试用指数曲线进行拟合。 其次,计算指数函数系数得到指数回归方程,如表4-27所示。

将上述结果代入回归系数的计算公式中:

最终的指数回归方程为:

加入拟合曲线的散点图(见图4-14)。

回归方程的判定系数如下:

结合散点图和判定系数可知,得到的指数回归方程与销售额的拟合 效果很好。可以利用该指数回归方程预测销售额。

3、线性回归

1、数据预处理

我们对连续数值的特征做标准化(standardization):设该特征在整个数据集上的均值为 𝜇μ,标准差为 𝜎σ。那么,我们可以将该特征的每个值先减去 𝜇μ 再除以 𝜎σ得到标准化后的每个特征值。对于缺失的特征值,我们将其替换成该特征的均值。

接下来将离散数值转成指示特征。举个例子,假设特征 MSZoning 里面有两个不同的离散值 RL 和 RM,那么这一步转换将去掉 MSZoning 特征,并新加两个特征 MSZoning_RL 和 MSZoning_RM,其值为 0 或 1。如果一个样本原来在 MSZoning 里的值为 RL,那么有 MSZoning_RL=1 且 MSZoning_RM=0。

2、观察数据分布建立假设模型

h𝜃(𝑥) = 𝜃0 + 𝜃1𝑥1 + 𝜃2𝑥2+. . . +𝜃𝑛𝑥𝑛

3、定义损失函数

4、批量梯度下降

如此循环直到收敛,得到最终权重参数,并且用这组参数去预测未来

5、优化

  1. 根据数据集的大小,合理选择梯度下降算法,batch-gradient-descent, stochastic-gradient-descent, mini-batch-stochastic

  2. 采用一些梯度下降优化算法,Adam, Adagrad, momentum, rmsprop等

4、LSTM 时序分析

5、特征工程

特征工程是将原始数据转化为特征,更好表示预测模型处理的实际问题,提升对于未知数据的准确性。它是用目标问题所在的特定领域知识或者自动化的方法来生成、提取、删减或者组合变化得到特征。 

数据特征会直接影响你使用的预测模型和实现的预测结果。准备和选择的特征越好,则实现的结果越好。

影响预测结果好坏的因素:模型的选择、可用的数据、特征的提取。

优质的特征往往描述了数据的固有结构。

大多数模型都可以通过数据中良好的结构很好的学习,即使不是最优的模型,优质的特征也可以得到不错的效果。优质特征的灵活性可以让你使用简单的模型运算的更快,更容易理解,更容易维护。

优质的特征可以在使用不是最优的模型参数的情况下得到不错的预测结果,这样你就不必费力去选择最适合的模型和最优的参数了。

参考:

  1. 《人人都会数据分析——从生活实例学统计》 一书作者谢运恩、李安富,电子工业出版社2017年12月出版

  2. 《统计学原理与应用》一书作者迟艳芹,清华大学出版社2005年9月出版

  3. "机器学习中,有哪些特征选择的工程方法" 一 知乎作者城东 机器学习中,有哪些特征选择的工程方法? - 知乎

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

线程详解(接上篇博客)

目录 1.生产者消费者模型; 2.基于环形队列的生产者消费者模型; 3.线程池; 4.STL, 智能指针, 线程安全; 5.读者写者问题. 前言: 本篇博客博主五一假期都在肝的一篇, 希望xdm点点三连, 博主感谢了 onz !!! 1.生产者消费者模型 321原则:(便于记忆) 3是指3种关系: 生产者和生产…

Chat2DB Pro 重磅发布 !!!

在过去的几个月中,我们的团队一直默默耕耘,全心投入到Chat2DB Pro版本的开发之中。这段时间里,我们暂停了新动态的发布,以至于有趣的误解在社群中出现,有人调侃我们是否“倒闭”了。然而,我们今天携带着全新…

Java-(乘法表之后)增强for循环

这里我们先做个了解,之后我会在数组中进行详细介绍Java5引入了一种主要用于数组或集合的增强型for循环Java增强型for循环语法格式如下 For(声明语句:表达式){ //代码语句 } 声明语句:声明新的局部变量,该变量的类型…

【智能算法】PID搜索算法(PSA)原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献5.代码获取 1.背景 2023年,Y Gao受到PID控制理论启发,提出了PID搜索算法(PID-based Search Algorithm, PSA)。 2.算法原理 2.1算法思想 PID算法是控制领域的…

CTF(Web)中关于执行读取文件命令的相关知识与绕过技巧

在我遇到的题目中,想要读取文件必然是要执行cat /flag这个命令,但是题目当然不会这么轻松。让你直接cat出来,必然会有各种各样的滤过条件,你要做的就是尝试各种方法在cat /flag的基础上进行各种操作构建出最终的payload。 下面我…

Redis学习汇总

目录 1.Linux环境下安装redis 2.redis的数据结构及命令 3.redis.conf配置文件常用配置 3.redis的事务操作 4.redis实现乐观锁 5.通过jedis操作redis 6.Springboot集成redis 7.自定义一个RedisTemplate 8.持久化策略 RDB和AOF 9.redis集群环境搭建 10.哨兵模式 11.缓…

Java面试题:多线程2

如何停止正在运行的线程 1,使用退出标志,使线程正常退出(run方法中循环对退出标志进行判断) 2,使用stop()方法强行终止(不推荐) 3,调用interrupt()方法中断线程 打断阻塞线程(sleep,wait,join),线程会抛出InterruptedException异常 打断正常的线程,可以根据打断状态来标记…

奶爸预备 |《P.E.T.父母效能训练:让亲子沟通如此高效而简单:21世纪版》 / 托马斯·戈登——读书笔记

目录 引出致中国读者译序前言第1章 父母总是被指责,而非受训练第2章 父母是人,不是神第3章 如何听,孩子才会说:接纳性语言第4章 让积极倾听发挥作用第5章 如何倾听不会说话的婴幼儿第6章 如何听,孩子才肯听第8章 通过改…

【春招特供】Unity面试题总结 | Unity基础篇

物体发生碰撞的必要条件? 两个物体都必须带有碰撞器(Collider),其中一个物体还必须带有Rigidbody刚体,而且必须是运动的物体带有Rigidbody脚本才能检测到碰撞。 2. Unity3d中的碰撞器和触发器的区别? 碰…

【LeetCode 121】买卖股票的最佳时机

思路 思路: 所谓代码的复杂性来源于业务的复杂性,如果能够想清楚业务实现逻辑,就能够轻松写出代码; 假设当前是第i天,如何在第i天赚到最多的钱?需要在第i天之前以最低价买入股票; 所以需要求…

[渗透利器]全能工具=信息收集->漏洞扫描->EXP调用

前言 hxd开发的工具,大致模块有(信息收集,漏洞扫描,暴力破解,POC/EXP,常用编码) 工具使用 下载后解压 安装环境 pip install -r requirements.txt 注意,该工具继承了两种不同的使…

深入了解C/C++的内存区域划分

🔥个人主页:北辰水墨 🔥专栏:C学习仓 本节我们来讲解C/C的内存区域划分,文末会附加一道题目来检验成果(有参考答案) 一、大体有哪些区域?分别存放什么变量开辟的空间? …

Django高级表单处理与验证实战

title: Django高级表单处理与验证实战 date: 2024/5/6 20:47:15 updated: 2024/5/6 20:47:15 categories: 后端开发 tags: Django表单验证逻辑模板渲染安全措施表单测试重定向管理最佳实践 引言: 在Web应用开发中,表单是用户与应用之间进行交互的重要…

工厂模式+策略模式完成多种登录模式的实现

前提 (简单工厂不属于设计模式,而是一种编程思想【抽象一层出来】)工厂方法模式、抽象工厂模式 以上都是为了解耦,如果考虑多个纬度(如需要同时考虑多种电器,多种品牌)则优先考虑抽象工厂。 …

iMazing下载安装不了怎么办?

iMazing是一款可用于iPhone、iPad等ios移动设备管理软件,但需要注意的是,iMazing只能安装在Windows与Mac系统中,不能安装在iOS移动设备上。iOS移动设备可以通过USB线或Wi-Fi连接Windows或Mac系统上的iMazing软件。 iMazing的安装失败&#x…

Linux--IIC驱动编程实验

对于 I2C 主机驱动,一旦编写完成就不需要再做修改,其他的 I2C 设备直接调用主机驱动提供的 API 函数完成读写操作即可。这个正好符合 Linux 的驱动分离与分层的思想,因此 Linux内核也将 I2C 驱动分为两部分: ①、 I2C 总…

3.栈和队列(汇总版)

目录 1.栈(一端插和删) 2.队列(一端插另一段删) 2.1队列的概念及结构 2.2 队列的实现 队列的接口 1.初始化队列 2.销毁队列 3.插入元素 4.出队列(头删) 5.访问对头 6.访问队尾 7.判断队列是否为…

练习题(2024/5/6)

1路径总和 II 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root [5,4,8,11,null,13,4,7,2,null,null,5,1], target…

【漏洞复现】某小日子太阳能系统DataCube3审计

漏洞描述 某小日子太阳能系统DataCube3终端测量系统 多个漏洞利用方式 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律,遵守公共秩序,尊重社会公德,不得利用网络从事危害国家安全、荣誉和利益,未经授权请勿利用文章中的技术资料对任何计算机系统进…

一起了解开源自定义表单的优势表现

随着社会的进步和科技的发展,越来越多的中小企业希望采用更为先进的软件平台,助力企业实现高效率的流程化管理。低代码技术平台、开源自定义表单已经慢慢走入大众视野,成为一款灵活、高效的数字化转型工具。流辰信息专注于低代码技术平台的研…