最近我们被客户要求撰写关于LOESS(局部加权回归)的研究报告,包括一些图形和统计输出。

这篇文章描述了一种对涉及季节性和趋势成分的时间序列的中点进行建模的方法。我们将对一种叫做STL的算法进行研究,STL是 "使用LOESS(局部加权回归)的季节-趋势分解 "的缩写,以及如何将其应用于异常检测。

其基本思想是,如果你有一个有规律的时间序列,你可以通过STL算法运行该序列,并分离出规律的模式。剩下的是 "不规则的",而异常检测相当于判定不规则性是否足够大。

例子:航空乘客,1949-1960

让我们在数据集上运行该算法,该数据集给出了1949-1960年期间每月的航空公司乘客数量。首先,这是未经修改的时间序列。

plot(y)

这里显然有一个规律性的模式,但是在这个序列中没有任何明显的下降,无法在异常检测中显示出来。所以我们将设置一个。

y[40] = 150

跌幅足够大,我们希望异常检测能发现它,但又不至于大到你只看一眼图就会发现。现在让我们通过STL检查它。

plot(fit)

首先,我不是在y上运行STL,而是在log(y)上。

该算法将序列分解为三个部分:季节性、趋势和剩余成分。季节性是周期性成分,趋势是一般的上升/下降,剩余成分是剩下的趋势成分。季节性和趋势共同构成了序列的 "常规 "部分,因此是我们在异常检测过程中要剔除的部分。

剩余部分基本上是原始序列的正常化版本,所以这是我们监测异常情况的部分。剩余序列的下降是很明显的。我们在1952年初设置的异常下降很可能算在内。

我们还可以调整每一时期的观测值数量,负责分离季节性和趋势成分的平滑方法,拟合模型的 "稳健性"(即对异常值不敏感)等等。这些参数中的大多数需要对基础算法的工作原理有一定的了解。

下面是一些显示实际数据与阈值的代码。


data <- merge(df, ba, by.x='x')
ggplot(data) +geom(aes(x=x, ymin=ymin, ymax=ymax))

再次,聪明如你可能会注意到通过exp()进行的逆变换。我们现在讨论这个问题。

为什么要进行对数和逆变换?

并非所有的分解都涉及对数变换,但这个分解却涉及。其原因与分解的性质有关。STL的分解总是加法的。

y = s + t + r

但对于某些时间序列,乘法分解更适合。

y = str

这种情况发生在销售数据中,季节性成分的振幅随着趋势的增加而增加。这实际上是乘法序列的标志,航空旅客序列也表现出这种模式。为了处理这个问题,我们对原始值进行对数转换,这使我们进入加法领域,在那里我们可以进行STL分解。当我们完成后,我们再进行逆变换,回到原始序列。

多重季节性的情况如何?

一些时间序列有一个以上的季节性。例如,在酒店预订时间序列有三个季节性:每日、每周和每年。

虽然有一些程序可以生成具有多个季节性成分的分解,但STL并没有这样做。最高频率的季节性被作为季节性成分,而任何较低频率的季节性都被吸收到趋势中。


拓端tecdat|R语言用LOESS(局部加权回归)季节趋势分解(STL)进行时间序列异常检测相关推荐

  1. R语言用LOESS(局部加权回归)季节趋势分解(STL)进行时间序列异常检测

    全文下载链接:http://tecdat.cn/?p=22632 这篇文章描述了一种对涉及季节性和趋势成分的时间序列的异常点进行建模的方法. 相关视频 我们将对一种叫做STL的算法进行研究,STL是 ...

  2. 拓端tecdat|R语言逻辑回归(Logistic回归)模型分类预测病人冠心病风险

    最近我们被客户要求撰写关于冠心病风险的研究报告,包括一些图形和统计输出. 相关视频:R语言逻辑回归(Logistic回归)模型分类预测病人冠心病风险 逻辑回归Logistic模型原理和R语言分类预测冠 ...

  3. 拓端tecdat|R语言向量误差修正模型 (VECMs)分析长期利率和通胀率影响关系

    最近我们被客户要求撰写关于向量误差修正模型的研究报告,包括一些图形和统计输出. 向量自回归模型估计的先决条件之一是被分析的时间序列是平稳的.但是,经济理论认为,经济变量之间在水平上存在着均衡关系,可以 ...

  4. 拓端tecdat|R语言线性回归和时间序列分析北京房价影响因素可视化案例

    最近我们被客户要求撰写关于北京房价影响因素的研究报告,包括一些图形和统计输出. 目的 房价有关的数据可能反映了中国近年来的变化: 人们得到更多的资源(薪水),期望有更好的房子 人口众多 独生子女政策: ...

  5. R语言平滑算法LOESS局部加权回归、三次样条、变化点检测拟合电视节目《白宫风云》在线收视率

    最近我们被客户要求撰写关于LOESS的研究报告,包括一些图形和统计输出. 此示例基于电视节目的在线收视率.我们将从抓取数据开始. # 加载软件包. packages <- c("gpl ...

  6. LOESS 局部加权回归介绍

    一般来说,两个变量之间的关系是十分微妙的,仅仅采用简单的直线.曲线参数方程去描述是不够的,所以这时候就需要非参数回归.关于非参数和参数方法的区别,就是在分析之前有没有对预测做一些限制,比如认为特征和响 ...

  7. 【LOESS局部加权非参数回归】

    loess局部加权回归 conda install -c conda-forge statsmodels -y pip install statsmodels 该函数返回的是一个两列的 numpy 数 ...

  8. LOESS局部加权非参数回归

    ·  非参数回归  · 1. 采用非参数回归的必要性: 一般来讲两个变量之间的关系有时候是非常微妙的,仅仅用简单的直线.曲线参数方程模型是远远不够的,所以有必要采用非参数回归. 2. 非参数回归的特点 ...

  9. 在R语言中进行局部多项式回归拟合(LOESS)

    局部多项式回归拟合是对两维散点图进行平滑的常用方法,它结合了传统线性回归的简洁性和非线性回归的灵活性.当要估计某个响应变量值时,先从其预测变量附近取一个数据子集,然后对该子集进行线性回归或二次回归,回 ...

最新文章

  1. Elasticsearch2.2.0配置文件说明
  2. python字典去重
  3. ubuntu配置ipv6
  4. Win32环境下两种用于C++的线程同步类(上)
  5. USB OTG ID 检测原理
  6. 基于matlab 论文知网,基于MATLAB的校园图像处理与分析
  7. Chrome浏览器可以修改特定页面背景色吗?Chrome浏览器修改特定页面背景色的方法
  8. 中英文对照 —— 宗教
  9. JS操作JSON数据交换
  10. CMU 15-213 Introduction to Computer Systems学习笔记(16) Virtual Memory: Concepts
  11. 【前端】一步一步使用webpack+react+scss脚手架重构项目
  12. VS Code中点击Tab键突然不能缩进了
  13. python xgboost建模过程_python - Dask中的XGBoost建模 - SO中文参考 - www.soinside.com
  14. iPhones刷机怎么备份微信记录 iPhone手机微信记录怎么备份
  15. STC单片机波特率计算
  16. 科技周刊第六期:接近本质的东西才会长远
  17. 任正非:小公司别讲复杂价值观 认真磨好豆腐就有人买
  18. 一穷二白的打工仔如何逆袭创业当老板,穷人如何改变我们的命运?
  19. 兰州大学最新预测:新冠大流行将于2023年底结束
  20. 用javascript编写的打字小游戏

热门文章

  1. Python基本编程题
  2. 阿里云ClickHouse海量数据分析
  3. AI-多模态-2021:ALBEF
  4. 美团2021校招笔试题 最优二叉树II
  5. Matlab-初级教程-系列1:matlab之入门教学视频-3 数组和矩阵分析3
  6. Windows远程桌面提示CredSSP加密数据库修正
  7. (一)Reactor模式详解
  8. 数据处理之one-hot
  9. C语言编程中void什么意思,程序设计中遇到的void到底是什么意思
  10. 安装gensim库的方法最终解答!