以HADOOP为代表的云计算提供的仅仅是一个算法执行环境,为大数据的并行计算提供了在现有软硬件水平下最好的(近似)方法。并不能解决大数据应用中的全部问题。从详细应用而言,通过物联网方式接入IT圈的数据供应商(Data Provider)所面临的首要问题是数据分析的算法。其次才是算法的并行计算。

以汽车厂商(OEM,Tire1,Vendor,TSP)为例,所面临的大数据问题在 4V(Volume,Velocity,Variety,Veracity/Value)中,最突出的差异是Velocity,即实时性(Real Time)。有些信号的更新周期达到10ms。当然从应用採样和算法处理角度而言,可能并不须要这么密的数据,这就涉及到系统架构的差别,哪些功能放在终 端上执行。哪些功能在后台server上执行。以发动机转速信号为例。总线上这个信号的周期通常是10ms±5%,假设整个车联网系统要做的仅仅是驾驶员行为分析
(反映车辆执行状态),根本就用不上这么高频度的採样周期,全然能够10s往后台打包发一次数据。可是假设整个车联网的应用是发动机故障诊断或防盗报警, 须要的精度就不一样了,正常启动转速低于500rpm差点儿能够肯定发动机异常。假设等到30s后驾驶员才得到提示,发动机就该冒烟了。

而对于一些事件触发 信号,如锁车状态下发动机异常启动,后台server推断车辆被盗的时间要求则更高。

IT行业在评估系统採用NoSQL还是SQL的时候,汽车上数据处理首先面临的是怎样搜索。不同于传统互联网行业的文本数据,物联网或车辆网面对的都是时间序列数据(Time Series Data),在这一点上,看股市走势图上各种眼花缭乱的曲线就知道了。当某个信号样本被定义为故障模式后,历史数据里面是否还存在类似的曲线。这在时间序列里被成为相似度搜索(Similarity Search)的问题。

假设某个信号曲线总是周期反复,并呈现一定上升或下降趋势,未来是否能能对这个信号做出预測。这就是数据预測(Data Prediction)的问题。其他数据相关分析、数据聚类等被统称为数据挖掘(Data
Mining)的技术则建立在结构化数据的基础上。目的在于减少数据维度(Variety)。眼下在汽车控制和分析领域的应用实在有限。

遗 憾的是时间序列的分析和处理在车联网领域差点儿没有成熟的工具和方法,即使Matlab、R、Python这类专业的数学工具,提供的算法库也非常少。这一方 面是由于物联网行业积累的数据还不够丰富,应用前景不清晰;另有一些如股市数据、视频流数据、语音数据等。与传感网络数据性质类似。尽管受到重视。但涉及 安全与机密,难以开放成果。更重要的是,时间序列数据的处理涉及各专业应用领域的技术和方法。处理难度非常大。以汽车速度这一数据为例,机械工业时代大家关心的单位是小时,电子和信息工业时代单位是秒,在物联网行业中全过程、大样本的场景下讨论的则是毫秒,数据量和处理速度的要求超出现有普通计算机能力。

移动终端上速度来源于GPS或
MEMS(Velocity和Veracity较低。但获取easy),车载终端上可能来自轮速和发动机转速(Velocity和Veracity相对较高。 但获取困难)。在进数据库之前,不同数据源的解析要求也不一样。

但不管怎样,对数据的模式匹配或相似度搜索的要求都是共同的,因此在这一研究方向亟待可project化的计算方法。

Similarity Search最早提出似乎是在1993年(Agrawal),那时的数据还称不上海量,对“相似度”的定义更理论化一些。数学上对同样的定义是非常easy的,比方欧式距离(Euclidean Disatance)和动态时间弯曲(Dynamic Time Warping),但“相似”就会牵涉到程度的问题,不是简单设定一个容差或排序就能解决的。从算法project化的角度来说。牺牲精确性来提升算法的时间和空间效率是非常有必要的。

数据比較理想情况下也能够用模型相似(线性、多项式、指数),假设周期性比較明显也能够转换成频域方式用压缩相似来度量,但最直观的还是形态相似(上升、下降),普遍的做法是将时间曲线分段,这方面已经有一些可用的算法,但效果非常难达到大规模应用的要求。

* PAA(Piecewise Aggregate Approximation),分段累积近似

* PLA(Piecewise Linear Representation)。分段线性表示

* SAX(Symbolic Aggregate Approximation)。符号集合近似

* LM(Landmark Model),界标模型

相似度的定义本质上是描写叙述数据的基本特征,通过特征空间的定义来减少数据维度。

维度建立起来后就能对进入数据库的数据建立索引。压缩搜索的空间,为搜索算法的开发提供基础。

vehicle time series data analysis的更多相关文章

  1. 《利用Python进行数据分析: Python for Data Analysis 》学习随笔

    NoteBook of <Data Analysis with Python> 3.IPython基础 Tab自动补齐 变量名 变量方法 路径 解释 ?解释, ??显示函数源码 ?搜索命名 ...

  2. An Introduction to Stock Market Data Analysis with R (Part 1)

    Around September of 2016 I wrote two articles on using Python for accessing, visualizing, and evalua ...

  3. 数据分析---《Python for Data Analysis》学习笔记【04】

    <Python for Data Analysis>一书由Wes Mckinney所著,中文译名是<利用Python进行数据分析>.这里记录一下学习过程,其中有些方法和书中不同 ...

  4. 数据分析---《Python for Data Analysis》学习笔记【01】

    <Python for Data Analysis>一书由Wes Mckinney所著,中文译名是<利用Python进行数据分析>.这里记录一下学习过程,其中有些方法和书中不同 ...

  5. 《python for data analysis》第十章,时间序列

    < python for data analysis >一书的第十章例程, 主要介绍时间序列(time series)数据的处理.label:1. datetime object.time ...

  6. 《python for data analysis》第九章,数据聚合与分组运算

    # -*- coding:utf-8 -*-# <python for data analysis>第九章# 数据聚合与分组运算import pandas as pdimport nump ...

  7. 《python for data analysis》第七章,数据规整化

    <利用Python进行数据分析>第七章的代码. # -*- coding:utf-8 -*-# <python for data analysis>第七章, 数据规整化 imp ...

  8. 《python for data analysis》第五章,pandas的基本使用

    <利用python进行数据分析>一书的第五章源码与读书笔记 直接上代码 # -*- coding:utf-8 -*-# <python for data analysis>第五 ...

  9. Autocorrelation in Time Series Data

    Why Time Series Data Is Unique A time series is a series of data points indexed in time. The fact th ...

随机推荐

  1. hdoj--1533--Going Home(最小费用流)

    Going Home Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Tota ...

  2. php 0,null,empty,空,false,字符串关系(转)

    在php中由于是弱类型语言,不同类型值之间可以隐式转换,使得false,null,”,0,’0′这几个值的比较有些混乱,现总结一下: //相等判断 '' == NULL == 0 == false ( ...

  3. iOS 应用开发入门指南

    前言:http://www.guomii.com/posts/20250安装工具:http://www.guomii.com/posts/20255工具:http://www.guomii.com/p ...

  4. 第5章分布式系统模式 Data Transfer Object(数据传输对象)

    正在设计一个分布式应用程序,为了满足单个客户端请求,您发现自己对一个远程接口发出了多个调用,而这些调用所增加的响应时间超出了可接受的程度. 影响因素 在与远程对象通信时,请考虑下列需要权衡的因素: 远 ...

  5. 修改数组数据头和尾push()、pop()和unshift()、shift()

    1.push().pop()和unshift().shift() 这两组同为对数组的操作,并且会改变数组的本身的长度及内容. 不同的是 push().pop() 是从数组的尾部进行增减,unshift ...

  6. 完美解决ios10及以上Safari无法禁止缩放的问题

    移动端web缩放有两种: 1.双击缩放: 2.双指手势缩放. 在iOS 10以前,iOS和Android都可以通过一行meta标签来禁止页面缩放 <meta content="widt ...

  7. 纯CSS3文字Loading动画特效

    纯CSS3文字Loading动画特效是一款个性的loading文字加载动画. 在线演示本地下载

  8. RxSwift學習教程之基礎篇

    前言 我們在 iOS 開發過程中,幾乎無時無刻都要面對異步事件的處理.例如,按鍵點擊.數據保存..音頻後臺播放.交互動畫展示.這些事件並不具備特定時序性,甚至它們可能同時發生. 雖然 Apple 提供 ...

  9. day25-3 json,pickle模块

    目录 json 序列化 反序列化 pickle json json文件并不是python独有的,所有的语言都有json,可以跨平台/语言传输数据 json文件中只能写入python中的dict/lis ...

  10. 解决AttributeError: 'module' object has no attribute 'main' 安装第三方包报错

    1.找到pycharm 目录下的 \helper\packaging_tool.py 文件 2.用新版pycharm 的packaging_tool.py 替换 旧版 同名文件 文件代码如下: imp ...