位置预测系列(三)

What’s Your Next Move: User Activity Prediction in Location-based Social Networks

这篇文章来自于SDM’13年(SIAM InternationalConference on Data Mining 2013)的录用论文集,是关于在基于位置社交网络里面(LBSN)进行用户签到预测的。本文解决问题的角度很创新,并没有直接入手于用户签到预测问题,而是先预测用户的下一个签到活动类型,然后在此基础上,再预测用户的下一个签到位置。

1.1 论文总结

为了预测用户的下一个签到活动类型,作者利用隐含马尔可夫模型(HMM)对用户的活动转移进行建模,如下图所示:

图1:HMM建模用户活动转移

这里面的解释是认为用户从事某个活动的意愿是由其本身隐含的一个状态所决定的。所以,根据观察到的用户活动序列,即活动1->活动2->...->活动n,可以采用保姆-韦尔奇训练算法(Baum-Welch Algorithm)来对HMM模型的参数进行训练,即各个隐含状态之间相互转化的概率,以及由某个隐含状态输出特定活动类型的概率。在获得这些参数之后,作者通过计算在已知模型参数和观察活动序列的情况下,最有可能达到的隐含状态n+1,然后通过隐含状态n+1来进一步计算活动n+1。但是,这个模型仅仅利用了活动的序列信息,没有考虑到地理位置、时间等因素,所以作者对模型进行改进,采用了混合的隐含马尔可夫模型(Mixed
HMM),增加了时空状态对输出活动类型的影响(如图2)。

图2:Mixed HMM建模用户活动转移

由于用户签到数据的极大稀疏性,如果对每个用户的活动序列都分别训练出一个个性化的Mixed HMM,所估计的模型参数势必是不准确的。但是,如果集合了所有用户的活动序列,训练一个公共的Mixed HMM来统一表示用户的活动转移,也是不大可能的。因为用户间的活动转移有可能存在很大区别,根本不可能采用一个模型来统一表示。作者在文中采用了一个折中的办法,首先根据每个用户签到记录统计,对所有用户采用K-means方法进行聚类。然后,对每一类的用户的活动转移来分别用一个Mixed
HMM来进行建模。这在文中被作者称为是考虑到了用户活动偏好来进行用户签到活动预测。

在预测得到用户的下一个签到活动类型之后,作者通过搜索以用户当前签到位置为中心的方圆400m×400m的区域范围内,签到类型为所预测类型的位置场所。将这些场所为候选集,作者提出了四种策略来对其进行排序:(1)签到数目;(2)签到用户数;(3)签到数与签到用户数的乘积;(4)单个用户的最大签到数。对于top-k的预测方式,就选取前k个位置场所作为签到预测的结果。

1.2 读后感

优点:

(1)为了避免预测的不平衡性问题,即在庞大的位置候选集中选取某一个位置作为预测的下一个位置,作者将原问题分解为了两个子问题:预测用户的下一个签到活动类型;在预测的签到活动类型的基础上来预测用户的下一个签到位置。由于签到活动类型的数目是极其有限的,从而规避了预测的不平衡性问题。

(2)采用Mixed HMM来对用户的活动转移进行建模,从而包含了用户签到的时空信息。

缺点:

(1)在利用训练好的Mixed HMM来对用户的下一个签到活动类型进行预测的时候,仅仅是通过预测最可能的下一个隐含状态n+1,然后根据输出概率矩阵,得到由这个隐含状态n+1最有可能输出的活动类型n+1。事实上,没有必要确定下一个隐含状态n+1,直接通过计算输出每一个可能的活动类型n+1的概率,选取概率最大的活动类型即可。这在时间复杂度上并没有增加额外的负担。

(2)在做签到位置预测的时候,作者并没有考虑到用户本身的历史签到位置,而是仅仅选取用户当前位置附近的签到场所作为候选集,并且附近场所的范围选定为400m×400m,这个参数怎么确定的也没给个明确说法。并且根据文中提供的数据统计情况,用户的下一个签到位置距离其当前的位置有40%的情况是大于1km的。所以,在做签到位置预测的时候,仅仅考虑到用户附近的签到场所作为候选集是不是显得不大合理。

1.3 总结

关于签到位置预测的候选集问题,一般有两种决策。一是简单地把用户的历史签到位置作为候选集。这就假设用户往往在其签到位置重复签到。事实上,对LBSN用户而言,这种情况还是比较少见的。另外一种决策是将用户所在城市的所有签到场所作为候选集。这个时候,由于候选集的过于庞大,并且需要从庞大的候选集中仅仅选取一个位置作为预测结果,预测的不平衡性问题就要面对了。这篇文章给我们提供了一种解法,即将问题转移到活动预测。因为在活动预测问题中,即使是将所有活动类型都作为候选集,也不会遭遇预测的不平衡性问题。

参考文献:

[1] 隐含马尔可夫模型导论:An Introduction to Hidden Markov Models

[2] 混合隐含马尔可夫模型介绍:Mixed hidden markov models: An ex- tension of the hidden markov model to the longitudinal data setting

位置预测系列(三),布布扣,bubuko.com

时间: 2024-10-22 15:20:27

位置预测系列(三)的相关文章

位置预测系列(一)

关于位置预测,在每年的顶级会议上都有很多文章出炉.下面就简单说说ubicomp'13年录用的一篇论文:The Influence of Temporal and Spatial Features on thePerformance of Next-place Prediction Algorithms. 1.1 Motivation 基于用户移动行为的规律性,现有的位置预测方法都能够获得一个很高的预测精度.然而,目前的方法未能够有效地检测出用户在两个不同位置间的转移.精确地预测出用户在不同位置间

位置预测系列(二)

Mining User Mobility Features for Next Place Prediction in Location-based Services 这篇论文主要是预测用户在基于位置的社交网络中的下一次签到地点,是ICDM'12年录用的一篇文章. 1.1 论文概要 在这篇文章中,作者首先将位置预测问题阐述为位置排名问题,即把用户所在城市内的所有签到场所作为候选集,然后根据一定的规则将候选集中的场所进行排名.排名的规则所追求的目标就是尽可能的将用户下一次签到地点排在最前面.然后,作

S5PV210开发系列三_简易Bootloader的实现

S5PV210开发系列三 简易Bootloader的实现 象棋小子          1048272975 Bootloader是嵌入式系统上电后第一段执行的代码.对于功能简单的处理器,可能并没有Bootloader的概念,但对于应用处理器,有不同的启动方式,不同的存储设备(Nand flash.sd/mmc.DDR2.SRAM等),不同的操作系统等,往往需要一个Bootloader先初始化CPU和相关的硬件,建立内存空间映射,把内核或应用程序加载到相应的内存执行位置,最后调用内核或应用程序,释

SQL Server 2008空间数据应用系列三:SQL Server 2008空间数据类型

原文:SQL Server 2008空间数据应用系列三:SQL Server 2008空间数据类型 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测. 2.具备 Transact-SQL 编程经验和使用 SQL Server Management Studio 的经验. 3.熟悉或了解Microsoft SQL Server 2008中的空间数据类型. 4.具备相应的GIS专业理论知识. 5.其他相关知识. SQL Serve

面向对象系列三(多态)

面向对象的多态,我们先用生活中的多态来理解.大学的校园四月,是社团活动最紧忙的一个月.届时,学校的相关管理部门会对各社团上交的"社团活动策划案"进行审批后下发.以我曾参加的一个话剧社作为例子,社长接到审批的文书后,会对整个社团组织内部人员进行职权分工,编剧部.后勤部.外联部.秘书部.文艺部所有部门各有分工,分头积极准备工作,大家为了完成共同一部话剧热火朝天地干了起来. 这里审批的"社团活动策划案"同意办活动(一条命令),接到审批文书,来到"社长"

VSTO之旅系列(三):自定义Excel UI

原文:VSTO之旅系列(三):自定义Excel UI 本专题概要 引言 自定义任务窗体(Task Pane) 自定义选项卡,即Ribbon 自定义上下文菜单 小结 引言 在上一个专题中为大家介绍如何创建Excel的解决方案,相信大家通过从上面一个专题之后了解了Excel的对象模型,以及Office两种解决方案的,看完上一个专题之后,肯定很多朋友想为Excel自定义属于自己的UI界面,例如,有这样的一些疑问——是否可以使用VSTO来自定义选项卡呢? 是否可以自定义上下文菜单的呢?如果你也有这些疑问

数据库分库分表(sharding)系列(三) 关于使用框架还是自主开发以及sharding实现层面的考量

当团队对系统业务和数据库进行了细致的梳理,确定了切分方案后,接下来的问题就是如何去实现切分方案了,目前在sharding方面有不少的开源框架和产 品可供参考,同时很多团队也会选择自主开发实现,而不管是选择框架还是自主开发,都会面临一个在哪一层上实现sharding逻辑的问题,本文会对这一系 列的问题逐一进行分析和考量.本文原文连接: http://blog.csdn.net/bluishglc/article/details/7766508转载请注明出处! 一.sharding逻辑的实现层面 从

sql server 备份与恢复系列三 简单恢复模式下的备份与还原

原文:sql server 备份与恢复系列三 简单恢复模式下的备份与还原 一.概述 前面讲了备份的一些理论知识,这篇开始讲在简单恢复模式下的备份与还原.在简单模式下是不能做日志备份的,发生灾难后,数据库最后一次备份之后做的数据修改将是全部丢失的,所以在生产环境下,数据又很重要,一般不建议使用这种模式. 例如对一个数据库有5次完整数据备份,时间是t5,  之后发生灾难,就会部丢失. 当数据库越来越大,完整备份时间会越来越长,为了减少丢失风险,引入差异备份.例如下图演示:在第一次建立数据库完整备份后

Storm系列三: Storm消息可靠性保障

Storm系列三: Storm消息可靠性保障 在上一篇 Storm系列二: Storm拓扑设计 中我们已经设计了一个稍微复杂一点的拓扑. 而本篇就是在上一篇的基础上再做出一定的调整. 在这里先大概提一下上一篇的业务逻辑, 我们会不断收到来自前端的消息,消息包含消息的发送时间,消息内容,结束标识, 消息的发送者, SessionId等其他信息, 我们需要做的事情是当接收到消息之后,根据SessionId判断是否属于同一消息, 如果是的话将内容拼接, 如果结束标识为 true, 表示会话已结束,则存