基于带地理标签的Twitter数据的本地事件探测系统的设计与实现

论文价格:免费 论文用途:其他 编辑:chenhuixia 点击次数:124
论文字数:162709 论文编号:sb2015020221320511851 日期:2015-02-04 来源:硕博论文网

第 1 章 绪论

近年来,人们大多生活在多变的城市空间内,在这样的生活中会有很多计划或者未计划到的事件在各处发生。在这样的生活中,人们很容易被没有遇见到的事件延误或浪费了时间。在这种情况下,人们会有一种想要探索周围来发现周围有哪些感兴趣或不感兴趣的事件的诉求[1]。因此,一种探测本地事件的方法也受到了人们的需要。随着科技和人们生活维度的发展,Web 2.0 改变了人们对信息的探索和创建的方式,网络成了人们生活中不可缺少的一部分,人们开始通过社交网络来交流,分享信息甚至是维持人际交往关系[2]。而且微博类社交和智能手机的普及使得人们能够随时随地通过简短的消息来分享他们的实时信息[3]。并且这些基于位置信息的社交网络往往会通过公共的 API 来对外界提供它们数据的访问接口,这也吸引了研究者们的兴趣。这些像 Twitter 一样的基于位置信息的社交网络使得探测真实世界内的事件成为了可能。更加令人兴奋的是目前像智能手机一样的基于 GPS 的设备越来越普及,这使得这种带有地理和时间标记的数据越来越多。这些具有时效性且数量庞大的数据能够作为事件相关信息的源数据[4]。这些科技和社交网络都使得,人们会在参与或者目睹了一件事件后会用移动设备来发出相关的消息。这使得人们就成为了事件探测的传感器。作为结果,利用社交数据来提取事件信息会比使用传统的新闻媒体要快速的多[5,6]。
.........


第 2 章 系统需求分析

2.1 系统目标
该本地事件探测系统的目标是使用带地理标签的 Twitter 数据来探测发生在给定地理位置区域内的本地事件。该系统的基本功能是通过对目标区域内的Twitter 数据进行挖掘来探测本地事件并将这些本地事件显示在地图上。该系统主要侧重于利用带地理标签的 Twitter 数据来进行探测。在本系统中我主要使用的是米兰的地理数据。由于像 Twitter 数据一样的社交是一种社交大数据,该系统需要有处理和应对大量数据的能力。因此,系统的所有核心算法都是在MapReduce 框架的基础上实现的,MapReduce 框架可以使得系统对大数据的处理效率变得更高。并且基于 MapReduce 框架的算法实现也是本系统的一项技术难点。整个系统的功能需求主要由三部分构成:数据源,数据处理和数据表现。为了完成系统的完整功能,系统又被划分为四个主要的模块:数据获取模块,数据处理模块,本地事件探测挖掘算法模块和表现层模块。系统所有这些不同的功能模块都在图 2-1 中进行了展示。

2.2 系统功能需求
数据抓取模块的主要功能是抓取在目标地理位置区域内的带地理位置标签的 Twitter 数据。数据抓取的操作主要侧重于抓取特定时间段内的数据。举个例子来说,如果想要探测在某个时间点上的事件,系统必须抓取在该时间点之前一段时间内的源数据,从而能够在后续算法中被利用起来判断该事件是否是一个本地事件。所以,在这个模块中系统会抓取在目标时间点之前一周内并且在目标地理位置区域内的带地理标签的 Twitter 数据。以上所述的数据是作为一次分析所需要的数据,如果需要随时对事件进行探测,那么就需要数据抓取模块持续运行来抓取所有 Twitter 数据从而能够达到更高的精确度。

第 3 章 系统设计 ........................................26

3.1 系统整体流程图 .....................................26

3.2 系统架构设计 ....................................27

第 4 章 系统实现 .................................47

4.1 系统实现环境 .....................................................47

第 5 章 系统测试及部署 .....................................66

5.1 测试环境 .................................66

5.2 白盒测试 ........................................66

第 5 章 系统测试及部署
 

5.1 测试环境
系统的测试软件环境如表 5-1 所示。



5.2 白盒测试
这部分会在 DBSCAN 聚类算法上进行白盒测试,具体的 DBSCAN 聚类算法描述在 4.4 中已做了详细介绍,其中关键的执行算法如图 4-4 与 4-5 所示,根据前文所述的流程,该算法的 Decision-to-Decision Path 可以由图 5-1 所示。根据 Decision-to-Decision Path 所示,该关键流程的语句覆盖测试可以由表5-3 所示。在这一小节中,黑盒测试会被进行来检查模块的功能是否正常达标。系统主要有三个核心模块需要被测试:候选事件探测,本地事件管过滤和表现层模块。对于每个模块黑盒测试会显示出对应的测试用例以及结果。候选事件探测:测试本模块的最主要期望结果是聚类算法能够产生出正确的聚类结果。对于每一个测试用例,都需要检查结果的正确性。用来测试候选事件探测模块的测试用例及结果如表 5-4 所示。本地事件过滤:尽管在本模块中有很多重要的流程,但这个模块的输入主要是由候选事件个特征向量来组成。本地事件过滤模块的测试用例及结果如表5-5 所示。
............

结论

本论文的主要目标是设计和实现一个算法及系统来使用带地理位置标签的Twitter 数据来探测本地事件。为了完成这个目标,本文首先搜集并回顾了相关利用社交数据进行事件探测领域的研究现状,并对目前的研究进行了总结。为了能够应对社交大数据,本文提出了一种基于社交数据时间连续性分析的本地事件探测算法,该算法主要由两个主要功能组成:候选事件探测和本地事件过滤。候选事件探测主要是通过聚类的算法来将在空间,时间以及主题上相似的Twitter 数据集提取出来,这些聚集的数据集在现实生活中很可能代表了不同的事件。在获取到候选事件后,本地事件过滤会在此基础上进行。由于候选事件中本地事件只是其中一部分,本地事件过滤时会根据本地事件的时间连续性特征对候选事件进行过滤从而能够达到探测出本地事件的目标。在实现这两大功能的同时,其中涉及的两个核心算,DBSCAN 聚类算法和逻辑回归分类器,也被在 MapReduce 框架上设计和实现,从而让整个算法能够应对社交大数据的冲
............

参考文献(略)


QQ 1429724474 电话 18964107217