OnLineML:时序数据挖掘
关于时序分析:
我们跟随时间的脚步,试图解释现在、理解过去、甚至预测未来........
原文链接:http://blog.sciencenet.cn/home.php?mod=space&uid=34250&do=blog&id=287173
简介:
时间序列是一种重要的高维数据类型,它是由客观对象的某个物理量在不同时间点的采样值按照时间先后次序排列而组成的序列,在经济管理以及工程领域具有广 泛 应用。例如证券市场中股票的交易价格与交易量、外汇市场上的汇率、期货和黄金的交易价格以及各种类型的指数等,这些数据都形成一个持续不断的时间序 列。利 用时间序列数据挖掘,可以获得数据中蕴含的与时间相关的有用信息,实现知识的提取[1]。时间序列数据本身所具备的高维性、复杂性、动态性、高噪 声特性以 及容易达到大规模的特性,因此时间序列挖掘是数据挖掘研究中最具有挑战性的十大研究方向之一[2]。
目前重点的研究内容包括时间序列的模式表 示、时间序列 的相似性度量和查询、时间序列的聚类、时间序列的异常检测、时间序列的分类、时间序列的预测等。
特点:
由于时间序列数 据本身所具备的高维性、复杂性、动态性、高噪声特性以及容易达到大规模的特性,直接在时间序列上进行数据挖掘不但在储存和计算上要花费高昂 代价而且可能 会影响算法的准确性和可靠性。
时间序列的模式表示是一种对时间序列进行抽象和概括的特征表示方法,是在更高层次上对时间序列的重新描述[3, 4]。 时间序列的模式表示具有压缩数据、保持时间序列基本形态的功能,并且具有一定的除噪能力。
常用的时间序列模式表示方法主要包含:频域表示法、分段线 性表示 法、符号表示法以及主成分分析表示法等。
频域表示的基本思想是将时间序列从时域通过傅里叶变换或小波变换映射到频域,用很少的低频系数来代表原来的 时间 序列数据,这种方法虽然数据浓缩的效率很高,但是对噪声敏感,而且不直观。
分段线性表示法的基本思想是用K个直线段来近似代替原来的时间序列,这种方 法 能够实现数据压缩的目的,而且允许在时间轴上进行缩放,但实现过程较复杂,且要求事先给出直线段数K。K值的选择是一个关键因素,太小则丢失有用信 息, 太大又会产生过多的冗余信息。
时间序列的符号化表示就是通过一些离散化方法将时间序列的连续实数值或者一段时间内的时间序列波形映射到有限的符号表 上,将 时间序列转换为有限符号的有序集合。符号化表示的优点在于可以利用许多字符串研究领域的成果,缺点在于如何选择合适的离散化算法,解释符号的意 义,以及定 义符号之间的相似性度量。
主成分分析是一种常见的降维方法。在时间序列的模式表示中,通过对整个时间序列数据库的整体表示实现对整个时间序列 数据库的特征 提取和压缩。其优点在于计算精度高且对噪声数据的鲁棒性强,但由于在奇异值分解过程中涉及到特征值计算,计算开销较大。
时间序列的相似性度量是时间序列数据挖掘的基础[5, 6]。时间序列由于其特定的形状特征, 使得目前常用的一些相似性度量和聚类方法失去了原有的优越 性, 而几乎所有的时间序列挖掘算法都涉及到计算序列之间的相似性问题。目前,时间序列的相似性度量主要采用Lp范数(例如欧几里德距离)、动态时间弯曲 距离、 最长公共子序列、编辑距离、串匹配等。前两种相似性度量方法应用较为广泛。但是欧几里德距离不支持时间序列的线性漂移和时间弯曲,动态时间弯曲距 离的计算 量很大,不适合直接应用于海量时间序列的挖掘,从而限制了其在时间序列数据挖掘上的广泛应用。
特征聚类方法:
虽然各种聚类方法已经在数 据挖掘领域中得到了较为深入的研究,但这些方法大多是针对关系数据库中的静态数据对象而提出的。然而在现实世界中越来越多的应用 涉及到流数据和时间序列 数据等随时间变化的复杂动态数据对象的聚类分析。由于时间序列数据与静态数据有着极大的不同,故对其进行聚类分析有着很大的复杂 性。
近年来,涌现出许多 时间序列聚类方法[7],这些时间序列数据聚类方法大体上可以分为三种,即基于原始数据的聚类、基于特征的聚类和基于模型的聚类。 其中后两种方法的核心 思想是利用时间序列的模式表示方法把时间序列数据转化为静态的特征数据或者是模型参数,然后再直接应用静态数据的聚类方法来完成聚类 任务。
在对时间序列进行分析时, 经常希望能够发现这些时间序列在不同时间段的形态有何关联关系。这种关联关系一般表现为时间序列中频繁出现的变化模式和极少出现 的变化模式。这种极少出现 的变化模式称之为异常模式。在某些领域, 异常模式的发现对人们来说往往更有价值。例如, 医院可以从病人的心电图序列中发现 异常模式从而进行诊断和治疗。按照异常的表现形式不同, 线性时间和空间上时间序列的异常主要可以分为点异常和模式异常两种, 它们都是用于发现一条时间 序列上的异常情况的。
模式异常是指在一条时间序列上与其他模式之间具有显著差异的模式。事实上, 点异常也可以认为是长度为1 的模式异常。目前已经提出 多种时间序列异常检测方法,例如基于人工免疫系统的时间序列异常检测[9]、基于支持向量聚类的时间序列异常检测[9]以及后缀 树和马尔可夫模型的时间 序列异常检测[10]。
时间序列分类:
时间序列分类是时间序列数据分析中的重要任务之一. 不同于时间序列分析中常用的算法与问题,时间序列分类 是要把整个时间序列当作输入,其目的是要赋予这个序列某个离散标记。它比一般分类问题困难,主要在于 要分类的时间序列数据不等长,这使得一般的分类算法 不能直接应用。即使是等长的时间序列,由于不同序列在相同位置的数值一般不可直接比较,一般的分类算法 依然还是不适合直接应用。
为了解决这些难点,通常 有两种方法:第一,定义合适的距离度量(最常用的距离度量是DTW距离),使得在此度量意义下相近的序列 有相同的分类标签,这类方法属于领域无关的方 法;第二,首先对时间序列建模(利用序列中前后数据的依赖关系建立模型),再用模型参数组成等长向量来表示每 条序列,最后用一般的分类算法进行训练和分 类,这类方法属于领域相关的方法。文[11]分析了两类方法,并且分别在不同的合成数据集和实际数据集上比较了 领域无关和领域相关的两类方法。结果发现 在训练数据较少时,使用领域相关的算法比较合适;另一方面,领域无关的算法受噪声的影响相对较少。
预测:
预测是对尚未发生或目前还不明确 的事物进行预先的估计和推测,是在现时对事物将要发生的结果进行探讨和研究,简单地说就是指从已知事件测定未知事件。进行 预测的总原则是:认识事物的发 展变化规律,利用规律的必然性进行科学预测。时间序列预测主要包括三种基本方法:内生时间序列预测技术;外生时间序列预测技 术;主观时间序列预测技术。 时间序列分析与预测在经济[12]、金融[13]、工程[14]等领域有着广泛的应用,研究成果也最为丰富,将另文讨论。
参考文献:
1. Keogh E, Kasetty S.On the need for time series data mining benchmarks: a survey and empirical demonstration.Data Mining and Knowledge
Discovery, 2003, 7(4): 349-371.
2.
Yang Qiang, Wu Xindong. 10 challenging problems in data mining research. International Journal of Information Technology & Decision Making, 2006, 5(4): 597-604.
3. Lin J, Keogh E, Lonardi S, Chiu B.A
symbolic representation of time series, with implications for streaming algorithms. Proceedings of the 8th ACM SIGMOD workshop on Research issues in data mining and knowledge discovery, 2003, Pages: 2 – 11.
4. Gullo F, Ponti G, Tagarelli A, Greco S. A time series representation model for accurate and fast
similarity detection, Pattern Recognition, 2009, 42(11): 2998-3014.
5. Gunopulos D, Das G. Time series similarity measures.KDD’00:
Tutorial notes of the sixth ACM SIGKDD international conference on Knowledge discovery and data mining, 2000.
6. Literatures on Similarity-based Time Series Retrieval.http://www.cs.ust.hk/~leichen/readings/literaturesovertimeseries.htm
7. Liao T W. Clustering of time series data: a survey. Pattern Recognition, 2005, 38: 1857-1874
8. Dasgupta D, Forrest S. Novelty detection in time series data using ideas from immunology. In: Proceeding
of the 5th International Conference on Intelligent Systems. 1996, Pages: 82- 87.
9. Ma J, Perkins S. Time-series Novelty Detection Using One-class Support Vector Machines. Procedding
of International Joint Conference on Neural Networks, 2003.
10. Keogh E, Lonardi S. Finding surprising patterns in a time series database in linear time and space.
Proceedings of the eighth ACM SIGKDD, 2002.
11. 杨一鸣,潘嵘,潘嘉林,杨强,李磊. 时间序列分类问题的算法比较.
计算机学报,2007,30(8):1259-1265.
12. Clements M P(柯莱蒙兹),Hendry
D F
13. Tsay R S(蔡瑞胸),潘家柱译.金融时间序列分析.机械工业出版社,2006
14.
OnLineML:时序数据挖掘的更多相关文章
- (转载)微软数据挖掘算法:Microsoft 时序算法之结果预测及其彩票预测(6)
前言 本篇我们将总结的算法为Microsoft时序算法的结果预测值,是上一篇文章微软数据挖掘算法:Microsoft 时序算法(5)的一个总结,上一篇我们已经基于微软案例数据库的销售历史信息表,利用M ...
- (转载)微软数据挖掘算法:Microsoft 时序算法(5)
前言 本篇文章同样是继续微软系列挖掘算法总结,前几篇主要是基于状态离散值或连续值进行推测和预测,所用的算法主要是三种:Microsoft决策树分析算法.Microsoft聚类分析算法.Microsof ...
- 《BI那点儿事》数据挖掘初探
什么是数据挖掘? 数据挖掘(Data Mining),又称信息发掘(Knowledge Discovery),是用自动或半自动化的方法在数据中找到潜在的,有价值的信息和规则. 数据挖掘技术来源于数据库 ...
- 《BI那点儿事》浅析十三种常用的数据挖掘的技术
一.前沿 数据挖掘就是从大量的.不完全的.有噪声的.模糊的.随机的数据中,提取隐含在其中的.人们事先不知道的但又是潜在有用的信息和知识的过程.数据挖掘的任务是从数据集中发现模式,可以发现的模式有很多种 ...
- 浅析十三种常用的数据挖掘的技术&五个免费开源的数据挖掘软件
一.前 沿 数据挖掘就是从大量的.不完全的.有噪声的.模糊的.随机的数据中,提取隐含在其中的.人们事先不知道的但又是潜在有用的信息和知识的过程.数据挖掘的任务是从数据集中发现模式,可以发现的模式有很多 ...
- 微软Sql server analysis service数据挖掘技术
最新在一个项目中要求用到微软SSAS中的数据挖掘功能,虽然以前做项目的时候也经常用到SSAS中的多维数据集 (就是CUBE),但是始终没有对SSAS中的数据挖掘功能进行过了解.所以借着项目需求这股东风 ...
- 数据挖掘-关联规则分析[ZZ]
1.什么是关联规则 "尿布与啤酒"的故事大家都有听过,这里就不罗嗦了. 按常规思维,尿布与啤酒风马牛不相及,若不是借助数据挖掘技术对大量交易数据进行挖掘分析,沃尔玛是不可能发现数据 ...
- 顶尖数据挖掘开发平台(TipDM-D2)产品白皮书
顶尖数据挖掘开发平台 (TipDM-D2) 产 品 白 皮 书 广州泰迪智能科技有限公司 版权所有 地址: 广州市经济技术开发区科学城232号 网址: http ...
- 顶尖数据挖掘辅助教学套件(TipDM-T6)产品白皮书
顶尖数据挖掘辅助教学套件 (TipDM-T6) 产 品 说 明 书 广州泰迪智能科技有限公司 版权所有 地址: 广州市经济技术开发区科学城232号 网址: ht ...
随机推荐
- python基础1 格式化输出
转载自:https://www.cnblogs.com/fat39/p/7159881.html %用法 1.整数输出 %o —— oct 八进制%d —— dec 十进制%x —— hex 十六进制 ...
- 多叉树结构的数据,parent表示法转成children表示法
最近碰到的问题,有个数组,数组元素是对象,该对象的结构就如树的parent表示法的节点一样.形象点讲就是该数组存放了树的所有“叶子节点”,并且叶子节点内存有父节点,一直到根节点为止,就如存了一条从叶子 ...
- Git 基础教程 之 --no-ff模式合并
① 创建并切换dev分支 ② 修改readme.txt,并add,commit ③ 切回master ④ 合并 git merge --no-ff -m “merge with no-ff”d ...
- lunix下的redis数据库操作——hash(哈希)
哈希,形如:key : (field : value) 创建:(可以理解为users用户,name为xxx) hset users name xxx 查看: hget users name # &qu ...
- Spring MVC灵活控制返回json的值(自定义过滤字段)
在使用spring MVC开发过程中,为了提高项目执行效率,所以在一些外键字段的实体中会注解”@ManyToOne(fetch = FetchType.LAZY)”以实现延迟加载的效果. 但是,在使用 ...
- LightOJ1234 Harmonic Number
/* LightOJ1234 Harmonic Number http://lightoj.com/login_main.php?url=volume_showproblem.php?problem= ...
- WordPress 在Ubuntu下安装插件、主题输入FTP及无法创建目录的问题
1.安装新主题.插件需要输入FTP的账户密码 如果不想输入的话可以使用在wp-config.php文件中添加脚本方式. define("FS_METHOD","direc ...
- 0316 【案例】MySQL count操作优化案例一则
转自http://blog.itpub.net/22664653/viewspace-1791124/ 一 背景 某业务的数据库定期报 thread_runing 飙高,通定位发现一个慢查询sql ...
- Wireshark中的一些SNMP相关的过滤器
Wireshark中的一些SNMP相关的过滤器 转自 http://linmingren2003.blog.163.com/blog/static/567510032011419825097/ 由 ...
- HDU 4502
直接贪心就好. #include <iostream> #include <cstdio> #include <algorithm> #include <cs ...