65.9K
CodeProject 正在变化。 阅读更多。
Home

物联网——分析:使用 Intel® IoT Analytics 网站进行数据挖掘

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0投票)

2015年5月14日

CPOL

14分钟阅读

viewsIcon

20479

使用 Intel® IoT Analytics 网站进行数据挖掘。

获取全新的 Intel® 物联网开发者套件,这是一个完整的硬件和软件解决方案,让开发者能够使用 Intel® Galileo 和 Intel® Edison 开发板创建令人兴奋的新解决方案。请访问 Intel® 物联网开发者专区

互联的物理设备为企业和个人提供了全新的机会,可以更好地控制自己的环境。我们现在只需通过手持智能手机就可以远程控制我们的家、车辆和工作场所。借助这种高度的连接性,现在可以收集有关这些设备的大量数据,特别是嵌入这些设备中的传感器提供的信息。这些传感器,例如温度、加速度和位置传感器,可以提供稳定的数据流,但如果没有强大的相关数据分析集,这些数据的效用将非常有限。本文及其配套文章将探讨 Intel® 物联网 (IoT) 分析仪表板,并演示如何使用该网站从地理上分散的设备传感器集合中聚合、组织和促进大规模数据挖掘。

引言

互联设备的力量呈指数级增长。移动设备、普遍的网络连接以及强大、廉价的应用程序的爆炸式增长,为个人以前所未有的方式进行连接创造了丰富的可能性。十年前,谁能预见到社交媒体现象级的增长?同样,我们现在正朝着一个连接成本降至每兆比特几分钱、无线通信几乎无处不在、机器现在可以相互直接通信的社会迈进。这就是物联网的世界。

物联网开发的一个快速发展的领域是地理上分散的设备传感器数据的收集和分析。考虑一组嵌入在道路中的温度传感器。这些传感器都通过有线或无线方式连接到本地收集点,在那里收集、预处理和聚合数据流。然后,稳定的信息流会反馈给道路管理者,他们负责决定何时何地部署扫雪车、道路处理、封路,甚至临时绕行。现在,考虑使用这些数据(以及从往年收集的大量历史数据)来创建关于道路温度如何因当地条件而波动的预测模型。也许某座特定的桥梁比其他桥梁更容易结冰;对此情况的警报将允许进行适当的处理,从而降低该桥梁发生事故的风险。

Intel® Galileo 和 Edison 开发板的设计和制造旨在向公众提供这种传感器数据收集。各种传感器可以报告给物联网集成板,数据在那里临时收集并预处理,然后再转发进行进一步分析。Intel 创建了物联网分析网站(IoT Analytics),以连接 Intel Galileo 和 Edison 驱动的传感器网络,并聚合大量时间序列数据以供进一步分析。

传感器类型与应用

如今,各种小型、廉价但功能强大的环境传感器可以集成到几乎任何其他设备中(参见表 1)。这些传感器以定义的频率(例如,秒)和测量精度传输测量值。这种数据生成的结果是规律时间点和每个点的特定值的时间序列。例如,考虑一个嵌入矿工徽章中的射频识别 (RFID) 芯片。该芯片持续传输有关矿工的时间和位置数据流,使矿山安全管理人员能够随时了解矿工的确切位置。如果发生矿难,此类数据具有明显的价值,因为立即响应对于挽救生命至关重要。

表 1. 传感器类型与示例

传感器类型 示例
温度 发动机运行温度
运动/振动 安全运动探测器
湿度 制造车间空气湿度 %
执行器 灯光开/关,门开/关
流量 流体泵效率
压力 轮胎充气水平
化学 一氧化碳 (CO2) 探测器
速度/加速度 安全气囊展开
吞吐量 生产线生产率
Location 商品上的 RFID 芯片

传感器可以设计成通过定义的物理连接(如 RS232 串行接口)或通过多种方法之一(如通过蓝牙*连接)无线传输其测量值。唯一的要求是传感器必须针对物理环境(温度、冲击、压力等)进行设计,并且连接必须足够安全。

数据收集与传输

如果传感器数据未被收集并传输到可以对其进行审查和分析的点,那么这些数据的效用将非常有限。这就是 Intel Galileo 和 Edison 开发板(图 1)以及物联网分析网站的目的。这些开发板可以通过(通过有线 Arduino 连接或通过蓝牙无线连接)连接到各种输入,输入数量仅受物理端口数量的限制。可以互连多个开发板,以聚合来自分布式传感器端点网络的传感器数据。

图 1. Intel® Edison 传感器数据集成板

传感器数据流可以直接转发到物联网分析网站,或者在传输到物联网分析网站之前直接在开发板上进行预处理(以去除杂乱的测量值或间隙)。有关更多信息,请参阅 Intel Edison 开发板摘要(参见“更多信息”部分中的链接)。

处理与存储

收集并预处理后的传感器数据流现在可以直接在二次处理点收集,例如物联网分析网站(图 2)。物联网分析网站提供了一个工作空间(参见“更多信息”部分中的安装说明和更多信息的链接)以及一套用于收集、可视化、处理和告警传感器时间序列数据的工具。在用户仪表板上,您可以看到设备的当前收集状态、过去一小时内的观察值(测量值)以及所有用户配置的已触发告警的运行审查。

图 2. Intel® 物联网分析仪表板

本文的配套文章将使用物联网分析网站的 Web 服务应用程序编程接口 (API) 来演示如何访问收集的数据以进行数据挖掘和分析。该示例包括一个演示从物联网分析网站收集的数据直接进行的分析的示例应用程序。

时间序列的特性

如前所述,所有传感器数据都包含在特定时间点上进行的一系列测量。这种时间序列集合具有一组特性,使其分析与其他类型分析(如金融或产品营销)相比具有独特性。

  • 规律的收集间隔(时间性)。 值在定义的、规律的时间点收集,例如秒、分钟或天。
  • 连续的数据值(维度)。 值以连续的方式收集,一个接一个;特定时间序列集中的测量数量定义了数据流的“维度”。
  • 保真度(精度)。 传感器值以定义明确的测量值准确度(即仪器误差)报告。请注意,分析值的精度永远不能超过原始测量的精度——例如,如果测量值为 0.35,则分析值的小数位数不能超过两位。
  • 范围(幅度)。 传感器值将具有一个预期的范围,该范围由物理传感器本身施加的限制决定(即,对于温度传感器,范围在 -20 到 120 华氏度之间)。

时间序列数据集的每个元素通常由一个时间-值对组成,例如 (t)ime = 0.55 秒或 (v)alue = 40.5º C。如果传感器数据流的周期性为 0.05 秒,那么下一个测量值预计在 t = 0.60 秒出现,然后是 t = 0.65 秒,依此类推。这组数据可以在二维图中可视化,时间作为纵坐标(x 轴),报告的值作为横坐标(y 轴)。图 3 提供了使用物联网分析网站的示例图。

图 3. 示例时间序列一氧化碳传感器图

您可以看到,在图中,物联网分析网站能够以多种格式绘制时间序列数据,包括按时间段(分钟、小时、日期、周、月、年)汇总、以折线图或面积图显示,并能够“缩放”到特定的数据集以更详细地查看底层数据。

分析与建模

时间序列分析科学有着悠久而丰富的历史。有许多处理时间点和值所代表的原始数据的方法,这里无法一一讨论。有关这些技术的最新回顾,请参阅 T-C Fu 的文章,其链接可在“更多信息”部分找到。然而,无论采用何种分析技术,时间序列数据挖掘方法都有一些共同的特征。

原始时间序列数据的使用有限,例如仅能进行视觉检查,而无法进行进一步分析和建模。虽然肯定可以根据最大值限制设置告警(例如,基于统计学上的一个西格玛变化),但更复杂的方法是挖掘数据以获取预测模式。在图 3 的示例中,假设一个 CO2 汽车尾气传感器在特定时间段内以特定频率报告测量值。如果这是收集多个传感器数据(如发动机温度和燃油消耗)的大型数据集的一部分,您可以通过比较一个图与其他图中的变化来寻找模式,以预测未来的车辆维护。

无论使用何种技术开发分析模型,原始数据首先必须被修改或简化为可处理的格式。已经开发了各种用于时间序列数据操作的技术,但最常见的一种称为Z-标准化。这项技术将时间序列的原始值转换为中位数(平均值)为 0、标准差为 1.0 的值。这种转换允许您直接比较一个时间序列数据集与另一个数据集,极大地简化了算法的复杂性。此转换的限制是数据点必须具有正态概率分布,即在指定范围内的标准“钟形曲线”预期值。对于大多数传感器采样数据,已发现此曲线成立,从而允许该技术得到普遍使用。

通常需要基于“正常”(即名义控制)系统行为的预测模型来检测异常系统行为。有几种方法可以创建此类模型:使用成熟的测量基线(监督式),应用预期的系统行为的数学或工程预测(半监督式),或者简单地将传感器数据点与不同时间的自身进行比较(无监督式)。在最后一种情况下,将选定的时间段与另一个时间段进行比较,也许使用滑动窗口,以检查意外值(参见“更多信息”)。

要创建这些模型,您需要将算法或方法应用于从传感器收集的数据流。常见技术包括傅里叶变换(将时间序列值转换为出现频率)、动态时间规整(对齐时间序列数据集,而不考虑测量时间)和小波变换(将时间序列数据分段成越来越小的片段)。一种相对较新的技术,称为符号近似 (SAX),它使用一种新颖的技术将时间序列数据转换为定义的符号集,例如字母表中的字母,这使得可以使用各种模式匹配算法,包括为 DNA、RNA 和蛋白质的生物序列分析(例如,生物信息学)开发的算法。

在选择了分析方法之后,下一个决定是如何检测异常。传统上,这可以通过识别异常值(称为统计检测)或计算“名义”数据曲线与测量系列之间的差异来完成。这被称为距离度量,通常使用连续数据点之间的欧几里得距离或平方差来计算。这些值的聚合提供了两条曲线之间差异的定量指示。如果名义时间序列和测量时间序列的差异超过给定量,则该时间序列将被标记以供进一步调查。此外,为生物信息学研究开发的模式匹配(和评分)算法可用于定量评估两个(或多个)时间序列。

演示

本文的最后一节讨论了在记录的时间序列中检测到异常时通知相关方的方法。物联网分析网站提供了一种简单但强大的机制,可以根据一组规则进行告警。如图 4 所示,您可以为与设备集合关联的传感器定义一组特定的规则。规则执行的条件可以针对几种常见情况进行评估。

  • 基本条件。 传感器值超出或低于设定的限制。
  • 基于时间的条件。 传感器值在定义的持续时间内超出或低于某个限制。
  • 统计方差条件。 传感器方差(以西格玛的统计值衡量)超过 2 或 3。
  • 传感器变更检测(单个或多个)。 一个或多个传感器检测到条件变化(例如,激活/停用事件)。

图 4. Intel® 物联网分析异常告警规则

然后可以通过电子邮件(使用注册帐户时提供的地址)或通过发送 HTTP 消息到指定地址来通知注册用户规则的激活。

这些功能对于大多数需要传感器分析的情况来说已经足够了,但正如下一篇文章所示,如果需要更深入的分析,则可以使用物联网分析网站服务器 API 来检索传感器数据集并进行其他数据挖掘操作。

结论

价格低廉但灵敏的传感器激增以及无处不在的网络连接,为评估和控制我们日常周围设备的方式奠定了基础。通过聚合这些传感器测量值并应用一组简单的分析规则,可以主动应对潜在的设备故障,或更快地响应不断变化的环境条件。此外,通过使用像 Intel 物联网分析网站这样的中央聚合站点,可以对这些传感器数据应用复杂的数据挖掘技术,从而创建和使用预测行为模型。

更多信息

关于作者

Ben Lieberman 博士拥有科罗拉多大学健康科学中心生物物理学和遗传学博士学位。Lieberman 博士是 BioLogic Software Consulting 的首席架构师,在电信、航空旅行、电子商务、政府、金融服务和生命科学等领域拥有超过 15 年的软件架构和 IT 经验。Lieberman 博士基于软件开发的最佳实践提供咨询服务,专注于面向对象架构和分布式计算,特别是基于 Java* 的系统和分布式网站开发、XML/XSLT、Perl 和基于 C++ 的客户端-服务器系统。Lieberman 博士曾为 Comcast、Cricket、EchoStar、Jones Cyber Solutions、Blueprint Technologies、Trip Network Inc. 和 Cendant Corp. 等众多公司;杜克大学和科罗拉多大学等教育机构;以及美国劳工部矿山安全与健康管理局和美国国防部军事卫生局等政府机构提供架构服务。他还是一位成就卓著的专业作家,出版过一本著作(《软件建模艺术》,Benjamin A. Auerbach Publications,2007 年),发表过众多与软件相关的文章,并撰写了一系列 IBM 公司技术通讯。

Intel® 物联网开发者中心

立即开始创新!Intel® 物联网开发者计划提供知识、工具、套件以及专家社区,助您快速轻松地将您的创新想法转化为物联网解决方案。

利用 Intel® Edison 和 Intel® Galileo 平台的 Intel® 物联网开发者套件,尽情畅想,动手创造。这些套件是多功能、性能优化且完全集成的端到端物联网解决方案,支持各种编程环境、工具、安全、云连接和硬件。

如需更多资源并了解新的 Intel® 物联网开发者套件 v1.0 如何帮助您简化物联网项目

© . All rights reserved.