《中国人工智能学会通讯》——12.2 大数据环境下序列模式挖掘及应用

简介: 本节书摘来自CCAI《中国人工智能学会通讯》一书中的第12章,第12.2节, 更多章节内容可以访问云栖社区“CCAI”公众号查看。

12.2 大数据环境下序列模式挖掘及应用

模式发现问题诞生于 1993 年[1] ,与分类、聚类和异常点检测并称为数据挖掘四大问题[2] 。它指的是从数据库找出频繁共现的“项”,被称为频繁模式。模式发现问题在数据挖掘领域地位重要,有大量关于模式发现的论文发表在重要数据挖掘、数据库会议。Google Scholar 记录的 Agrawal 等人[1]提出的经典模式发现算法 Apriori 的论文单篇 , 被引用次数近 1.8 万次,已成为数据挖掘领域引用最多的论文之一。

序列模式 (Sequential pattern) [3] (及其扩展情景模式 (Episode) [4] )是引入了时间关系和约束的数据模式,它指的是从时序数据中挖掘频繁出现的子序列。这类模式因为蕴含了时间维度的补充信息,为推荐或者预测提供了潜在的帮助[2] 。序列模式挖掘曾成功应用于网络挖掘[5-6] 、设备故障检测 [7] 、软件 bug 检测[8] 、时空数据分析 [9] 、股票趋势预测 [10] 、化学与生物模式[11-12]和新闻分析[13-14]等。由于其广泛的应用,它逐渐成为数据挖掘领域中一个专门的研究主题。

由于序列模式挖掘是从频繁模式挖掘[1]演化而来,因此 Agrawal 和 Srikant [3] 最初提出该问题也是为了挖掘用户购物数据中行为模式来辅助决策。这个挖掘问题的问题描述如下:

设 I={I 1 , I 2 , …, I m } 是所有项的集合。给定一个序列集合 D,其中任意一条序列 S i 由一个元素列表组成,每一个元素则由 I 中的项组成,以及一个用户指定的最小支持度阈值 min_sup,序列模式挖掘是指从D中挖掘出现频率不低于min_sup的子序列,它们被称为频繁序列模式。

如表 1 所示的一个序列集合中,字母代表项,括号中的项视为无序,若设置最小支持度 min_sup为 2,子序列〈(bc)a〉是一个频繁序列模式,它共出现了 2 次,分别位于 s 1 和 s 2 中。image
频繁情景模式挖掘,作为序列模式挖掘的扩展,则考虑的是从一条长事件序列中挖掘频繁的子序列,其问题描述如下:

设 E={E 1 , E 2 , …, E m } 是所有事件的集合。情景模式发现问题是指从一条单一的事件长序列 S 中挖掘出现频率不小于 min_sup 的子序列,min_sup 是用户指定的最小支持度阈值参数。其中,S 中的任意一个事件集合均由 E 的事件组成。挖掘出来的频繁子序列被称作频繁情景模式。

如图 1 所示的一条事件序列中,字母代表事件,数字代表事件发生的时间,若设置最小支持度 min_sup 为 3,子序列〈A, B〉是一个频繁情景模式,它共出现了 3 次,在序列中用虚线矩形框标注。image
由于序列模式挖掘(及其扩展频繁情景模式挖掘)和频繁模式挖掘的相关性,其算法多数也是由频繁模式挖掘算法改进而来,这些算法大致可以分为基于 Apriori 的算法[3]和模式增长算法[15]两类。其中,基于 Apriori 思想的算法主要思想是通过生成候选集,以及扫描数据库进行逐层挖掘。这些算法通常还基于 Apriroi 算法的支持度的向下封闭性(downward closure)进行剪枝,即任何不频繁模式的超模式也不会频繁。但是在频繁情景挖掘问题中,这种性质不一定适用[16] 。这些算法虽然可以使用剪枝技术提升效率,但是它们实际的缺点是生成了大量的候选序列并需要重复扫描数据库对每一个候选序列计算支持度,这样的迭代过程使得挖掘效率低下。为了缓解这些问题,基于模式增长的算法开始涌现。它们大多采用了分治思想,以当前的频繁序列模式作为前缀将原始序列分割成若干个投影数据库(projected databases),并在这些投影区域内进行挖掘。相较于前一大类算法,基于模式增长的方法的好处是不需要生成序列的候选集合,并且缩小了数据库扫描的范围,在性能上具有一定的优势。

近年来,为了能够处理持续快速增长的大数据,序列模式挖掘(及其扩展频繁情景模式挖掘)在并行、增量和近似算法上也取得了显著进步。本文将从算法角度综述主要的序列模式挖掘(以及频繁情景模式挖掘)算法,并且回顾适用于大数据的序列模式挖掘(频繁情景模式挖掘)代表性算法。

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
16天前
招募!阿里云x魔搭社区发起Create@AI创客松邀你探索下一代多维智能体应用
招募!阿里云x魔搭社区发起Create@AI创客松邀你探索下一代多维智能体应用
276 0
|
16天前
|
人工智能 自然语言处理 开发者
AIGC创作活动 | 跟着UP主秋葉一起部署AI视频生成应用!
本次AI创作活动由 B 站知名 AI Up 主“秋葉aaaki”带您学习在阿里云 模型在线服务(PAI-EAS)中零代码、一键部署基于ComfyUI和Stable Video Diffusion模型的AI视频生成Web应用,快速实现文本生成视频的AI生成解决方案,帮助您完成社交平台短视频内容生成、动画制作等任务。制作上传专属GIF视频,即有机会赢取乐歌M2S台式升降桌、天猫精灵、定制保温杯等好礼!
|
18天前
|
存储 消息中间件 监控
【Flume】Flume在大数据分析领域的应用
【4月更文挑战第4天】【Flume】Flume在大数据分析领域的应用
|
1月前
|
人工智能 关系型数据库 Serverless
Serverless 应用引擎常见问题之AI应用限制人为限制内存如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
29 3
|
28天前
|
数据采集 分布式计算 大数据
Java语言在大数据处理中的应用
传统的大数据处理往往依赖于庞大的数据中心和高性能的服务器,然而随着大数据时代的到来,Java作为一种强大的编程语言正在被广泛应用于大数据处理领域。本文将探讨Java语言在大数据处理中的优势和应用,以及其在分布式计算、数据处理和系统集成等方面的重要作用。
|
5天前
|
机器学习/深度学习 人工智能 算法
未来AI技术的发展与应用前景
随着人工智能(AI)技术的迅速发展,其在各个领域的应用前景备受关注。本文将探讨未来AI技术的发展趋势,以及其在医疗、交通、教育等领域的潜在应用,展望AI技术对未来社会的影响和改变。
12 1
|
11天前
|
机器学习/深度学习 人工智能 算法
AI战略丨AI原生时代,应用创新蓄势待发
通过热点AI应用创新项目的观察,我们可以看到新技术的突破方向,也能发现基于生成式AI迸发出的全新商业前景落地的可能性。
AI战略丨AI原生时代,应用创新蓄势待发
|
11天前
|
机器学习/深度学习 数据采集 人工智能
|
14天前
|
机器学习/深度学习 人工智能 搜索推荐
AI在医疗领域的革命性应用
医疗行业一直是人类关注的重点领域之一,而随着人工智能技术的快速发展,AI在医疗领域的应用正带来革命性的变革。本文将探讨AI在医疗中的重要作用,以及其对诊断、治疗和医疗管理的影响。
26 0
|
14天前
|
人工智能 NoSQL atlas
如何用MongoDB Atlas和大语言模型,高效构建企业级AI应用?
利用生成式 AI 强化应用程序为客户打造令人叹服、真正差异化的体验意味着将人工智能建立在事实的基础之上
1581 0