公务员期刊网 论文中心 正文

Hadoop物联网数据挖掘的算法分析

Hadoop物联网数据挖掘的算法分析

摘要:介绍了物联网数据处理的若干关键技术,如大数据采集、大数据存储、大数据的分析与挖掘等。以Hadoop为平台对物联网数据进行挖掘与分析,为了提高处理庞大数据的实效性,基于MapReduce架构采用了朴素贝叶斯分类算法、K-modes聚类算法以及ECLAT算法。分析认为,应用这三类算法,提高了数据分类效率,优化了类内对象之间的相似性以及类间对象之间的关联性,为更高效的数据挖掘提供了很好的思路。

关键词:物联网;Hadoop;朴素贝叶斯;K-modes;ECLAT

0引言

当前计算机技术发展迅速,物联网是在计算机、互联网之后信息产业发展的第三次浪潮,它必将成为社会发展的重要推力,它能够实现人与人、人与物和物与物之间的沟通与交流。物联网的兴起也必将再次引发数据的快速增长,对许多行业来说既是更严峻的挑战,也是更宝贵的机遇。物联网正在深刻改变着人们的生活习惯、工作方式。本文主要采用Hadoop分布式系统架构处理物联网环境下的大数据,Hadoop是一个分布式计算平台,具有高可靠性、高扩展性、高效性以及高容错性等优点。其主要由三大部分构成,HDFS(HadoopDistributedFileSystem)分布式文件系统、HadoopMapReduce分布式计算模型和HBase分布式数据库。因此,如何更好地应用Hadoop计算平台处理好物联网大数据,将是一个待攻克的难题。本文主要分析如何运用Hadoop平台处理大数据的理论依据,以及物联网的应用前景。

1物联网概述

物联网[1]底层网络通过RFID(RadioFrequencyIdentification)、WSNs(WirelessSensorNetworks)、无线局域网等网络技术采集物物交换信息并传输到智能汇聚网关,通过智能汇聚网关接入到网络融合体系,最后利用包括广播电视网、互联网、电信网等网络途径使信息到达终端用户应用系统。作为底层的数据感知层次[2],在这个阶段主要感知各种各样的信息内容,例如二维标签、识别器、摄像头信息、传感网络等。然后,整理收集到的数据通过传输层进行传递,例如网络管理中心、通信网络和智能处理等。最后,系统处理传输层的数据,通过人机交互解决信息处理和人机界面的问题。

2Hadoop工作原理

2.1Hadoop基本架构

Hadoop主要是处理大数据的开源式平台,其具有海量存储、成本低廉、效率高以及牢靠性高等特点,因此可以应用到物联网平台的大数据处理[3]。Hadoop的两大主要元件是HDFS和MapReduce。前者的工作主要是存储海量的数据,其存储方式是分布式的;后者主要是计算处理这些大数据,其计算方式也是分布式处理[4]。为了更好的理解这两个元件的体系结构及其工作流程.

2.2HDFS分布式文件系统

HDFS是一个分布式文件系统,其具有高容错性和低廉的成本。HDFS实现的主要目标有以下几点。①以最快的速度检查出硬件异常情况并且及时解决异常。②进行批量化处理文件,提高效率节省时间,重点强调数据的吞吐量。③支持大数据集,不仅可以处理聚集式的高宽带数据,而且可以支持成百个节点的单个集群。④其访问模式是“一次输入,多次读取”,保证了数据访问吞吐量的高效性。⑤HDFS设计可实现不同平台间的互相转移,因而促进了大数据程序平台的广泛应用。HDFS以主从(Master/Slave)结构为主,HDFS集群由一个NameNode和许多个DataNode组成。NameNode为主服务器,主要负责管理存储文件以及访问客户端操作文件。DataNode主要负责管理存储数据,也就是存储小的数据块。

2.3MapReduce分布式计算框架

MapReduce的两大阶段主要是Map阶段和Reduce阶段。Map阶段构成:①输入数据格式解析(InputFormat);②输入数据处理(Mapper);③数据分组(Partitioner)。而Reduce阶段构成:①数据远程拷贝;②数据按照KEY排序;③数据处理(Reduce);④数据输出格式(OutputFormat)。其工作流程如下。⑴数据预处理:从HDFS数据库中读取数据,分析输入数据格式。⑵MAP映射任务:读取自己所属的文件分片,将每一条数据转换成键值对,运用MAP函数得到新的键值对并将其存储到中间节点上。⑶定位缓存文件:将上一步得到的键值对的存储位置信息发送给Reducer。⑷Reduce阶段:通过位置信息读取文件,将所有数据进行重新排序并且合并同一KEY值,再通过Reduce函数化简,最后输出最终结果值。

3数据挖掘算法分析

MapReduce架构具有简易性、效率高、靠谱性以及并行的运算方式等特点,同时MapReduce架构的运用广度也有局限性,不能实现全部算法的应用。因此,最关键的是此算法需满足可伸缩性的特点,这里采用三类算法:分类算法、聚类算法和关联规则算法,研究改造并且能够应用到MapReduce架构中。

3.1朴素贝叶斯分类算法

朴素贝叶斯分类算法[5](NaiveBayesianclassifi-cation,NBC),即将所有数据进行分类,先以一个特定的点定义好类别,建造一个分类器,其作用是将待定的数据先通过映射,划分到确定的类别。简言之,首先需构建一个分类器,获得某个已知样本的先验概率的前提,再运用贝叶斯公式:()()()()PABPBPBAPA=⑴得出一个后验概率,最后确定后验概率最大的类是对象所属的类。朴素贝叶斯分类算法采用的是扫描式方式,其算法操作如下:⑴Main函数:读取数据集;⑵Map函数:计算离散属性取值的总和、其连续属性的平均值μ以及标准差δ;⑶Reduce函数:整合输出统计值;⑷Main函数:由步骤3的结果生成分类器。

3.2K-modes聚类算法

K-modes聚类算法[6],即先将对象进行聚集划分成不同的类别和子集,通过静态分类的方法将相似的成员对象分为一类,以区别于其他簇中的对象。由于这种方式不需要进行人工标注处理,因而具有一定的自适应性即无需看管监督的算法。K-modes算法不仅其算法思想容易实现,而且本身简单易用,因此成为最常用的聚类算法之一。K-modes算法是K-means算法基础上的延伸,不仅可以处理数值型数值,也可以处理分类属性型的数据,这是一个大的改进。K-modes算法可以很好的处理数量少的数据集,同时也可以高效处理庞大的数据集,其算法时间复杂度为O(tnkm),共同决定于迭代数t,数据集中对象数n,划分子类数k,以及属性数量m。K-modes算法中modes可直接描述每一个类的属性和特性,便于解析聚类结果。K-modes算法是收敛的。以上是传统的K-modes算法的优点,其也有缺点。K-modes算法虽然是收敛的,但是Huang证明其只能在局限收敛中实现最小值,在全局收敛中实现不了。聚类算法的好坏取决于相异度度量方法,K-modes算法在展示两者的差异性不占优势。聚类算法中modes决定了结果的精确度,而此算法的modes不是独一无二的。因此,采用改进的K-modes算法。K-modes聚类算法[7]采用迭代式的方式,其算法操作如下。⑴main函数:读取数据集中的初始中心点。⑵map函数:主要计算差异值、众数和目标函数值。⑶main函数:最后读取和判断目标函数值,若连续两轮的结果无变化,则结束这次过程,得出中心点,反之需要进行下一轮的迭代进程。因此,聚类算法的应用能够将类内对象的相似性达到最大,类间对象的相似性尽量的小,从而可以更好的区分对象间的差别。

3.3ECLAT频繁项集挖掘算法

关联规则挖掘算法的主要作用是找出不同项集之间的关联性,并且应用到大数据中。例如,顾客去便利超市买东西,观察分析顾客的购物车,会发现商品间的联系。因而调整商品的摆放位置,可以更好的促销商品。ECLAT算法[8]其本质是一种频繁项集挖掘算法,其异于传统的数据结构,是基于垂直数据结构格式。其工作流程如下:首先全面扫描所有数据,然后将数据的格式展示为垂直的,最后得到一个项集的长度值,即项集支持度的计数。依据算法Apriori的特性,从K=1开始,对频繁K项集的交进行计算,构建备选的K+1项集并且选出第K+1项时,反复操作,将K的值加一,当不能挖掘出频繁项集便结束这个工作。ECLAT频繁项集挖掘算法也是采用迭代式,其算法操作如下。⑴Main函数:读取上一轮的挖掘数据。⑵Map函数:存储垂直K项集。⑶Reduce函数:对垂直K项集挖掘出频繁K项集。⑷Main函数:读取最终的Reduce函数中的结果,如果不是空值,继续进行下一轮挖掘,反之就结束此程序。因此,ECLAT算法的最大优势是更快地找出数据间的关联性,为数据挖掘提供了很好的解决方法。

4应用前景

随着物联网技术的发展,其能够广泛应用到各行各业[9]。例如,农业物联网即物联网技术应用于农业领域,从农业的生产、经营、管理到服务都可以提供支持,通过农业信息感知设备,提高农业生产的品质与效率。智能交通中,将物联网技术应用到交通运输领域,实现交通运输的智能化,提高国家的整体实力和科技水平。城市安全管理是将物联网技术应用到公共安全领域。例如城轨站点安全监测,人员密集的公共场所安全监测,桥梁建筑物安全监测,以及特定危险品的生产场所的安全监测等。同时,物联网可以应用到石油行业中,从油气勘探、钻井、油田生产到管理运输和炼油化工等方面,物联网技术大大提高了生产和管理效率,从而增强我国石油行业的可持续发展能力和国际影响力。

5结束语

本文通过Hadoop平台挖掘分析物联网数据,并且将朴素贝叶斯分类算法、K-modes聚类算法以及ECLAT频繁项集挖掘算法应用于MapReduce架构。结果表明,这三类算法的运用可以更高效的处理大数据,从而获取更有价值的信息。优化物联网数据挖掘分析方法,进而促进物联网产业的发展。物联网作为新一代信息技术的典型代表,不仅渗透到农业生产、智能交通、公共安全、石油产业等领域,而且对将来的经济发展和社会生活都将产生深远影响。物联网的挖掘分析方法在实际运用中还需要进一步探索与研究。

作者:陈娟 单位:扬州大学广陵学院