Patterns and sequences Interactive Explorarion of Clickstreams to Understand Common Visitor Paths

Patterns and sequences Interactive Explorarion of Clickstreams to Understand Common Visitor Paths

文章链接

0、摘要

Web点击流数据由长、高维的多变量事件组成,难以分析。
在点击流中确定了4种粒度的分析:模式、片段、序列、事件
提出一个3阶段的可视分析管道(pipeline):模式挖掘、模式剪枝、模式与序列的协同探索
讨论了最大序列模式的性质,提出减少模式数量的方法,并描述了可视化提取到模式的设计方案

1、引言

分析点击流目的是理解用户的行为和意图
点击流数据包含大量的有序事件
共现模式——common path
采用以用户为中心的设计过程,论文的贡献如下:

  • 确定4个粒度级别的点击流上下文分析,即模式、片段、序列、事件
  • 提出一个3个阶段分析管道用于探索点击流数据,即模式挖掘、模式剪枝、模式与序列的协同探索——关注于最大序列模式Maximal sequential patterns, MSP
  • 在双重视图中设计新颖的可视化和交互方案支持在抽象层探索。此外,分析人员可以根据序列模式中的关键事件对齐、分割序列。最后引入层次模式聚类帮助分析人员聚焦感兴趣的粒度级别。

2、方法

3名分析人员、2名产品经理——历时3年的研究

3、数据、方法、现有工具

点击流数据3个显著特征:

  • 事件集的基数很大
  • 事件是多变量的
  • 序列较长——事件基数大、序列较长意味着序列之间很难相同

分析需求:

  1. 识别关键用户路径
  2. 深入分析各个序列——start at a high level and then drill down
  3. 多维度分析
  4. 揭示多次发生的事件

4、相关工作

聚合事件序列——树——层次聚类可视化(Sunburst/icicle plot)
聚合每个时间步的事件——流图可视化(Sankey/alluvial/matrix-based)
alluvial冲击图是流程图的一种,最初开发用于代表网络结构的时间变化。
查询模式进行匹配,并且提供概览统计信息
对点击流使用self-organizing map聚类——自组织映射 缺乏可解释性和可靠性
划分相似图对点击流进行无监督聚类
本文作者采用聚类进行数据简化,使用VMSP算法挖掘模式

5、数据预处理:事件分类

将多个单独事件聚合成多个类别
方法:
根据域名划分——难以反映用户目的和行为
根据频率划分——tf-idf 提取到的是频繁使用的高级域名信息,有用信息被掩埋
根据主题划分——LDA

6、选择高层次的粒度

原则:
用户可以轻松地解释这些粒度层级的含义
用户能够了解这些层级之间的关系
这些层级提供的信息应该是有趣、有用的

  • 主题提取
    主题是一系列频繁出现在序列中的连续事件
    为分析人员提供数据概览——提取n-grams 2~5,并在以列表方式展示主题
    查看主题前后发生的事情

  • 序列聚类
    方法:bag-of-events、bag-of-motifs、混合马尔科夫链
    bag-of-events忽略了序列信息,只考虑事件的频率
    混合马尔科夫链假设预定义每个类的1阶马尔科夫链,并使用期望最大化计算序列与每个聚类关联的概率——可以发现不频繁转换的事件
    在这里插入图片描述

    每个分块编码一个簇,颜色表示分类,底部是一个事件间转换统计信息
    基于聚类的设计有助于展示序列分组,但是难以理解簇之间的差异。
    序列模式挖掘
    一个模式就是原始序列集一个有意义的抽象

7、挖掘序列模式

在这里插入图片描述

8、剪枝序列模式

使用Jaccard指标度量模式间的相似性
J(P,Q)=(|supset(P)∩supset(Q)|)/(|supset(P)|+|supset(Q)|-|supset(P)∩supset(Q)|)

根据条件生成L集合展示给分析人员,约束如下:
模式P与L集合中的其他元素的Jaccard相似性小于给定阈值
这两个模式不包含相同的唯一事件

9、可视化和交互设计

设计目标:
直观区分序列模式和原始序列
允许用户定位感兴趣的数据
支持在不同粒度层级的便捷导航
两个主要视图:
模式视图——展示提取的MSP、
序列视图——详细的展示单个点击流序列
模式视图
从左往右展示模式
按支持度或序列长度排序
提供过滤和查询包含特定事件的模式
在每个事件的顶部提供一些统计信息,如人数、占比情况等,最后一个事件的人数,则为该模式的支持度计数。人数的流动情况使用连线的宽度编码
模式中事件从上到下布局
每个模式隐喻为一个漏斗形状
在这里插入图片描述

序列视图
在这里插入图片描述

顶部柱状图编码序列的人数
鼠标悬停显示相邻事件的具体名称
高亮关键事件和根据事件对齐序列
两个特征理解事件与序列之间的关系:
关键事件用灰色框高亮显示
当用户点击模式中任意事件时,将序列按照该事件进行对齐,允许用户查看事件发生前后的其他事件
在这里插入图片描述

聚焦序列片段
在这里插入图片描述

左侧表示序列从开始到绿色事件的发展过程
右侧表示序列从绿色事件到橘色事件的发展过程
层次模式挖掘
在这里插入图片描述

对模式进一步的挖掘,如图最左侧为整个数据集模式挖掘结果,鼠标右键对选择的区间接着挖掘,如上图中的“IDForm-ReviewMembershipDeta”区间,挖掘后所得的结果如右侧所示

10、评估

  • 分析场景
    电信公司,提供手机和服务,有1361个访问者,647个序列,626个独特的事件,总共17961个事件,最长序列包含256个事件
    运行VMSP发现19个模式
    在这里插入图片描述

用户将模式根据设备类型进行颜色编码,发现大部分用户使用电脑进行浏览,因此需要进一步提高移动端的网页浏览体验

  • 用户反馈
  • 不足和展望
    1)数据集不大——未来探索模式并行计算和渐进模式计算
    2)定义模式的兴趣度和有用度,自动选择感兴趣的模式
    3)提高可视化界面的可扩展性——使用更改层次的总结替代序列视图、通过语义缩放和扩展提高模式视图,便于分析人员从更高层次查看原始序列的上下文信息
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
领域驱动设计(Domain-Driven Design,DDD)是一种软件开发方法论,旨在帮助开发团队更好地理解业务需求,并将其映射到软件设计中。"Patterns, Principles, and Practices of Domain-Driven Design" 是一本介绍DDD的书籍。 该书包含了许多相关的模式patterns),原则(principles)和实践(practices)。模式指的是可重复应用的最佳实践,通过使用这些模式可以更好地解决一些常见的设计问题。原则则是指导设计决策的基本原则,这些原则有助于开发团队构建可维护、灵活和可扩展的软件。实践则是指在DDD中应用这些模式和原则的具体方法和技巧。 在"Patterns, Principles, and Practices of Domain-Driven Design" 中,作者将介绍如何使用DDD来进行软件开发,并详细解释了DDD的核心概念和重要组成部分。这包括战略设计(Strategic Design)和战术设计(Tactical Design)。战略设计关注领域的整体架构和组织,它定义了领域的边界、聚合根(Aggregate Roots)以及他们之间的关系。而战术设计则关注如何实现具体的业务逻辑,使用领域模型(Domain Model)来表达领域的核心概念。 该书强调了领域专家和开发团队之间的合作,推崇的是通过持续对话和深入理解业务,来捕捉业务需求和规则。它提倡使用通用语言(Ubiquitous Language)来统一业务和开发团队的沟通,避免因为术语不清晰而导致的误解和问题。 总之,"Patterns, Principles, and Practices of Domain-Driven Design" 提供了一个全面的指南,帮助开发团队理解和应用DDD的模式、原则和实践,以构建高质量、符合业务需求的软件系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值