利用Apriori算法对交通路况的研究
首先简单描述一下Apriori算法:Apriori算法分为频繁项集的产生和规则的产生。
Apriori算法频繁项集的产生:
令ck为候选k-项集的集合,而Fk为频繁k-项集的集合.
1.首先通过单遍扫描数据集,确定每个项的支持度。一旦完成这一步,就可以得到所有频繁1-项集的集合F1
2.接下来,该算法将使用上一次迭代的发现的频繁(k-1)-项集,产生新的候选k-项集。候选的产生使用apriori-gen函数实现。
3.为了对候选项的支持度的计算,需要再扫描一遍数据集。使用子集函数确定包含在每一个事务t中的ck中的所有候选k-项集。
4.候选项的支持度计数后,算法将删除支持度计数小于minsup的所有候选项集
5.在没有新的频繁项集产生的时候,即Fk为空时,算法结束。
目前,针对行程时间最短的动态路径导航算法已是很多,可以把他们大致分为三类。
第一类是根据路段的不同时间段,提出基于分时段的路径导航算法。该类算法在路网更新后,以车辆当前所在的路段的下游结点为起点,重新进行规划。但其所分时段由于跨越时间太长,当发生交通事故、交通阻塞是不能及时在导航算法中的到体现,从而使得到的导航路径缺乏实时性。
第二类是实时路径导航,就是将实时的交通数据反馈回来然后进行路径的选择。这类导航算法由于具有随意性,所有很难选择整体的最优路径,相反,还可能花费更长的时间。
第三类将路网看成时间的依赖网络,利用SPTDN算法采用多步预测数据进行路径导航。但是,目前多步预测导航由于步数有限,且预测的步数越多,精度越低。
在这里,基于hadoop中MapReduce的Apriori算法的改进
Mapreduce技术结合HDFS的存储情况,在Map阶段将实验交通数据样本划分成n个数据模块分布在hadoop节点上,每个节点扫描各自节点上的数据块,产生自己的频繁项集。在Reduce阶段将所有的局部频繁项集合起来,产生全局候选频繁k-项集。将每个候选频繁项集的置信度、支持度与定义的两项进行对比,筛选出有效的候选频繁项集,并排序输出,产生关联规则。
在交通车流量分析中,与之相关联的数据为点位编号、经过时间、行驶方向;在车辆超速分析中,与之相关的数据信息为点位编号、行驶方向、车辆速度。通过多车流量分析,来分析某个车道的拥挤情况;对超速数据分析,确定某车道车辆超速情况。
利用Apriori算法对交通路况的研究的更多相关文章
- 关联规则—频繁项集Apriori算法
频繁模式和对应的关联或相关规则在一定程度上刻画了属性条件与类标号之间的有趣联系,因此将关联规则挖掘用于分类也会产生比较好的效果.关联规则就是在给定训练项集上频繁出现的项集与项集之间的一种紧密的联系.其 ...
- #研发解决方案#基于Apriori算法的Nginx+Lua+ELK异常流量拦截方案
郑昀 基于杨海波的设计文档 创建于2015/8/13 最后更新于2015/8/25 关键词:异常流量.rate limiting.Nginx.Apriori.频繁项集.先验算法.Lua.ELK 本文档 ...
- Apriori算法例子
1 Apriori介绍 Apriori算法使用频繁项集的先验知识,使用一种称作逐层搜索的迭代方法,k项集用于探索(k+1)项集.首先,通过扫描事务(交易)记录,找出所有的频繁1项集,该集合记做L1,然 ...
- Apriori算法在购物篮分析中的运用
购物篮分析是一个很经典的数据挖掘案例,运用到了Apriori算法.下面从网上下载的一超市某月份的数据库,利用Apriori算法进行管理分析.例子使用Python+MongoDB 处理过程1 数据建模( ...
- 基于Apriori算法的Nginx+Lua+ELK异常流量拦截方案 郑昀 基于杨海波的设计文档(转)
郑昀 基于杨海波的设计文档 创建于2015/8/13 最后更新于2015/8/25 关键词:异常流量.rate limiting.Nginx.Apriori.频繁项集.先验算法.Lua.ELK 本文档 ...
- Apriori算法第二篇----详细分析和代码实现
1 Apriori介绍 Apriori算法使用频繁项集的先验知识,使用一种称作逐层搜索的迭代方法,k项集用于探索(k+1)项集.首先,通过扫描事务(交易)记录,找出所有的频繁1项集,该集合记做L1,然 ...
- 玩转大数据:深入浅出大数据挖掘技术(Apriori算法、Tanagra工具、决策树)
一.本课程是怎么样的一门课程(全面介绍) 1.1.课程的背景 “大数据”作为时下最火热的IT行业的词汇,随之而来的数据仓库.数据分析.数据挖掘等等围绕大数据的商业价值的利用逐渐成为 ...
- Apriori算法原理总结
Apriori算法是常用的用于挖掘出数据关联规则的算法,它用来找出数据值中频繁出现的数据集合,找出这些集合的模式有助于我们做一些决策.比如在常见的超市购物数据集,或者电商的网购数据集中,如果我们找到了 ...
- 【机器学习实战】第11章 使用 Apriori 算法进行关联分析
第 11 章 使用 Apriori 算法进行关联分析 关联分析 关联分析是一种在大规模数据集中寻找有趣关系的任务. 这些关系可以有两种形式: 频繁项集(frequent item sets): 经常出 ...
随机推荐
- 菜鸟搭建Android环境~~~~绝对靠谱
因为要测试移动设备.搭建了一下Android环境 这是菜鸟级别的安装 因为sdk版本,eclipse版本,adt版本各自有版本要求,所以我选择都去官网下载新版本,这样总不会出现版本兼容性问题了吧~~ ...
- shell 进程查询相关的命令
同一个进程部署多个,如何知道删除哪个: ll /proc/ 会显示位置 查看pid下哪些socket链接 ll /proc//fd
- 对git的初步认识
虽然经常听说博客,但是却是第一次用.就像,虽然经常见电脑,但是却第一次接触软件.对于git也是一样,从来没听过,更不了解. 因为自己私下也没有去过多的了解,所以对于git只有一些有关书面资料的很片面的 ...
- Spring与apache CXF结合实例
本文的前提是已经有一个Spring的项目,在此基础上如何跟apache CXF进行结合,开发出WebService服务和调用WebService服务. 1.开发WebService 1.引入jar ...
- NYOJ-86 找球号(一)AC 分类: NYOJ 2014-02-02 10:45 160人阅读 评论(0) 收藏
NO.1 单纯的傻傻的代码: #include<stdio.h> long long num[100000005]={0}; int main(){ int n, m, k; scanf( ...
- CSS中的视觉格式化模型
视觉格式化模型 1. 简介 在视觉格式化模型中,文档树中的每个元素都将会根据盒模型产生零到多个盒子.这些盒子的布局由如下因素决定: 盒子的尺寸和类型 定位策略(正常文档流,浮动或者绝对定位) 和文档树 ...
- 引擎设计跟踪(九.14.2g) 将GNUMake集成到Visual Studio
最近在做纹理压缩工具, 以及数据包的生成. shader编译已经在vs工程里面了, 使用custom build tool, build命令是调用BladeShaderComplier, 并且每个文件 ...
- JAVA数据结构系列 栈
java数据结构系列之栈 手写栈 1.利用链表做出栈,因为栈的特殊,插入删除操作都是在栈顶进行,链表不用担心栈的长度,所以链表再合适不过了,非常好用,不过它在插入和删除元素的时候,速度比数组栈慢,因为 ...
- JS范围
JS API-->DOM/PoneGap/Cordova/Android/NodeJS JS OOP
- Using 1.7 requires compiling with Android 4.4 (KitKat); currently using API 8
Refer :http://www.cnblogs.com/mengfanrong/p/3745475.html Righ click on your project > properties ...