论文笔记:ATime-Aware Trajectory Embedding Model for Next-Location Recommendation

Knowledge and Information Systems, 2018

1 intro

1.1 背景

  • 随着基于位置的社交网络(LBSNs),如Foursquare和Facebook Places的日益流行,大量用户签到数据变得可用
    • 这些大量签到数据的可用性带来了许多有用的应用,以提升基于位置服务的用户体验
    • 其中一个任务是新兴的下一个位置推荐
  • 下一个位置推荐根据用户过去的签到记录,预测可能访问的后续位置
    • 时间信息在这个任务中扮演了重要角色
      • 例如,如果访问时间是工作日的早晨,用户从“家”开始访问“地铁”,然后“办公室”(或工作地点)应该是对这位用户的合适推荐
      • 如果访问时间是周末,则应推荐放松的地点

1.2 现有的工作

  • 现有的下一个位置推荐研究主要基于马尔可夫链属性模型连续签到之间的序列转换模式。
    • 由于数据稀疏性和计算复杂性,序列转换限制于一阶转换,无法捕捉更长的序列上下文。
    • 更重要的是,推荐任务中缺乏对多种时间因素的全面和深入考虑。
  • 在现有研究中,用户偏好通常被视为静态的,这并不反映用户兴趣的演变特征
    • 例如,学生可能在学期期间更频繁地在大学签到,而在作为某公司夏季实习生时则更频繁地在工作场所签到
      • ——>她的签到行为在不同时间段内发生变化
  • 现有研究也忽略了周期性模式
    • 例如,在工作日,用户可能早上在办公室签到,晚上在家签到

1.3 下一位置推荐的挑战性

  • 首先,如上例所示,用户的签到行为会随时间改变
  • 其次,即使我们能够根据用户推导出访问模式(例如,周末“家”→“商店”→“午餐”→“商店”→“晚餐”),仍然很难推断出每个模式的确切位置
    • 因为多个候选位置可能适合
      • 晚餐的下一个位置应基于多种考虑生成,包括自己的偏好、之前访问过的地点和其他时间因素

1.4 论文思路

  • 提出了一个新颖的时间感知轨迹嵌入模型(TA-TEM)

2 轨迹观察

  • 如之前的论文所言,序列影响是轨迹数据中最重要的时间因素之一,即用户连续签到点之间存在马尔可夫链特性。
  • 论文研究实际轨迹数据上的另外两种时间因素。

2.1 数据集

  • 三个公共地理社交网络数据集,每个数据集包含一年的签到数据

仅报告Gowalla数据集的结果,其他两个数据集的观察结果类似

2.2  观察1:用户对签到的偏好会随着长时间周期(例如,一个月)的变化而变化

  • 直观地说,用户的兴趣可能会在一段时间后发生变化(例如,一个月),这可能导致不同时间段的访问行为不同
  • 给定一个用户u,论文通过计算两个连续时间周期中u访问的位置集合的Jaccard相似度的平均值来计算重叠比率值(ORV)。
    • 设置一个时间周期为一个月
      • 在上述等式中,L(u,i)是用户u在第i个月访问的位置集合
      • 选择签到记录最多的前1000名用户,然后计算这些用户的平均ORV
  • 平均ORV是0.035(±0.002)
  • ——>小的Jaccard相似性值表明,在连续两个月中用户的签到位置之间的重叠很少。
    • 换句话说,用户对签到行为的偏好在长时间周期内会发生变化

2.3 观察2:周期性签到模式显著

  • 直观地说,用户可能有一些规律的日常和周常活动,如中午吃饭和周末放松。
    • 因此,位置的生成很可能会受到相应时间信息的影响,如一天中的小时和一周中的天
  • 周常模式:
    • 将轨迹分成按天的多个间隔,然后将所有用户在第i个间隔访问的位置组合成一个位置集合L(i)【一个簇】
      • 计算这七个簇中两个位置集合的平均内部和外部相似性
      • 内部和外部表示位置集合来自同一个和不同的簇
      • 使用Jaccard系数来测量两个位置集合之间的相似性

  • 对角线条目的Jaccard系数显著高于非对角线条目
    • ——>在一周内同一时间索引生成的两个位置集合比不同时间索引的更相似 
  • 基于小时索引进行类似的分析,结果绘制在图2(b)中,发现用户轨迹显示出有趣的时间模式

3 方法

3.1 轨迹嵌入:基本模型

  • 类似于word2vec
  • 位置j,窗口大小2K的上下文嵌入:
  • 轨迹t的目标函数

3.2 整合用户偏好变化

  • 用户在签到时的偏好可能随时间变化(见观察1)
  • 为了建模这一因素,论文将签到分为若干个月份,并假设用户u在第m个月与一个独特的人格vum​相关联。
    • 这里使用“人格”一词是为了反映用户随时间变化的偏好。
    • 除了偏好变化外,还假设用户对位置有一个相对稳定的总体偏好,这有助于生成常去的地点,如工作场所和家

3.3 整合周期性模式

  • 周期性签到模式描绘了观察2中提到的每周和每日的移动模式
  • 当用户生成轨迹时,他的行为不仅受到自己的偏好影响,还受到周期性偏好的影响。
  • 设hj和dt分别为轨迹t中第j个位置的一天中的小时索引和一周中的天索引。形式上,我们有:

3.4 TA-TEM 模型

目标函数更新为:

位置lj的上下文嵌入为:

3.5 推荐位置排名

一旦所有嵌入向量都学习完成,我们按以下方式生成下一个位置推荐

  • 给定用户u的前K个签到1,2,…,K1和下一个时间戳sK+1​(对应于月份m、天d和小时h),使用以下函数来排名候选位置L:

4 实验

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/26625.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

kotlin类型检测与类型转换

一、is与!is操作符 1、使用 is 操作符或其否定形式 !is 在运行时检测对象是否符合给定类型。 fun main() {var a "1"if(a is String) {println("a是字符串类型:${a.length}")}// 或val b a is Stringprintln(b) } 二、"不安全的"转换操作符…

【面试手撕】CAS实现 线程安全的链表结构的栈

利用Atomic原子引用,采用CAS的方式,实现线程安全的链表栈的实现 关键点 关键在于用 AtomicReference原子类包装栈顶节点,在更改新的栈顶节点的时候,判断原子引用的栈顶是否还是之前获取时的栈顶,如果不是则重新通过Ato…

搜索是门艺术,大神都是这样找资源

以下所有资源均可在星云导航找到,网站地址:https://www.xygalaxy.com/ 浏览器搜索高级用法 1、排除干扰,指定关键词 1.1、排除指定关键字 格式:关键字1 -关键字2比如搜索:星云导航,不想要CSDN的内容 星…

Stable Diffusion 3 开源发布可下载体验

本文来自huggingface翻译 Stable Diffusion 3 Medium是一种多模态扩散变换器 (MMDiT) 文本到图像模型,其在图像质量、排版、复杂提示理解和资源效率方面的性能有极大提升。 有关更多技术细节,请参阅研究论文。 请注意:此模型是根据 Stabilit…

C# —— 条件运算符

条件运算符的作用: 用于比较两个变量或者常量 // > // < // // ! // > // < 条件运算符 一定存在左右两边的内容 左边内容 条件运算符 右边内容 int a 30; int b 50; 条件运算符 不…

java面试题:hashMap扩容机制

初始容量和加载因子&#xff1a; HashMap在初始化时有一个默认的初始容量&#xff08;capacity&#xff09;&#xff0c;通常是16。这个容量也可以在创建HashMap时通过构造函数指定。 HashMap还有一个加载因子&#xff08;load factor&#xff09;&#xff0c;这是一个表示Has…

【全开源】快递寄件小程序源码(FastAdmin+ThinkPHP+原生微信小程序)

&#x1f4e6;快递寄件小程序&#xff1a;轻松寄送&#xff0c;便捷生活 &#x1f69a;一、引言&#xff1a;告别繁琐&#xff0c;让寄件更简单 在繁忙的生活中&#xff0c;寄送快递往往成为我们的一大难题。传统的寄件方式需要前往快递公司网点&#xff0c;填写繁琐的寄件信…

单目标应用:基于蛇鹫优化算法SBOA的微电网优化(MATLAB代码)

一、微电网模型介绍 微电网多目标优化调度模型简介_vmgpqv-CSDN博客 参考文献&#xff1a; [1]李兴莘,张靖,何宇,等.基于改进粒子群算法的微电网多目标优化调度[J].电力科学与工程, 2021, 37(3):7 二、蛇鹫优化算法求解微电网 2.1算法简介 蛇鹫优化算法&#xff08;Secre…

基于python多光谱遥感数据处理、图像分类、定量评估及机器学习

原文链接&#xff1a;基于python多光谱遥感数据处理、图像分类、定量评估及机器学习 普通数码相机记录了红、绿、蓝三种波长的光&#xff0c;多光谱成像技术除了记录这三种波长光之外&#xff0c;还可以记录其他波长&#xff08;例如&#xff1a;近红外、热红外等&#xff09;光…

企业中的绩效管理

背景 企业中为何需要绩效管理&#xff0c;企业绩效管理为何比较难&#xff0c;这在企业管理中是非常难&#xff0c;同样也是非常有价值的命题&#xff0c;那么首先应该对这个命题有清晰的认知&#xff0c;特别是要想明白为何企业需要绩效管理&#xff0c;应该先明白企业。 企…

Uniapp实现页面滚动Tab吸顶,点击tab内容滚动到对应tab内容位置

1.template结构 <view class"content-tabs-box"><view class"content-tabs" :class"{is-fixed: isTabFixed}"><viewv-for"(item, index) in detailTabs" :key"index" class"tab" :class"{act…

【git使用四】git分支理解与操作(详解)

目录 &#xff08;1&#xff09;理解git分支 主分支&#xff08;主线&#xff09; 功能分支 主线和分支关系 将分支合并到主分支 快速合并 非快速合并 git代码管理流程 &#xff08;2&#xff09;理解git提交对象 提交对象与commitID Git如何保存数据 示例讲解 &a…

lnmp的介绍与源码部署以及 |什么是正向、反向、透明代理 | 常见的集群有哪些

lnmp 文章目录 lnmp1.LNMP是什么2. lnmp简介3.系统特点4.优点5.lnmp部署5.1 nginx安装5.2 mysql安装5.3 php安装5.4配置nginx服务处理php 6.扩展知识点1.什么是集群2.常见的集群有哪些集群的分类1、高可用集群2、负载均衡集群3、分布式计算集群4、高性能集群(High Performance …

TCP标志

SYN (Synchronize) 和 ACK (Acknowledgement) 是TCP协议中的两种重要标志&#xff08;flags&#xff09;&#xff0c;用于建立和维护连接。它们通常在TCP三次握手过程中使用。 1、SYN标志&#xff1a; 当客户端想要建立于服务器的TCP连接时&#xff0c;它会发送一个带有SYN白…

嵌入式常用调试方法

目录 调试工具 日志打印 1. Debug日志打印 2. RTT日志打印 3. 串口日志打印 总结 嵌入式系统的调试是一个复杂且关键的过程&#xff0c;涉及多种工具和技术的综合应用。以下是对嵌入式常见调试工具、日志打印方式的全面报告&#xff0c;包括Debug、RTT&#xff08;Real-T…

重生奇迹mu魔法师介绍

魔法师擅长&#xff1a;远距作战、攻击&辅助魔法使用 转职&#xff1a;魔导师&#xff08;2转&#xff09;&#xff0c;神导师&#xff08;3转&#xff09; 魔法师可以通过多样的魔法&#xff0c;展现华丽的效果和强大的实力。成长初期因为体力少&#xff0c;经常受到死亡…

Linux Shell命令vim使用

一、引例 以判断引出&#xff08;学过C其他语言容易接受&#xff09;。 简单命令说明&#xff1a; -e 测试文件是否存在 -f 测试文件是否为普通文件 -d 测试文件是否为目录 -r 测试当前用户对某文件是否具有“可读”权限 -w 测试当前用户对某文件是否具有“可写”权限…

线程池前置知识

并发和并行 并发是指在单核CPU上&#xff0c;多个线程占用不同的CPU时间片。线程在物理上还是串行执行的&#xff0c;但是由于每个线程占用的CPU时间片非常短&#xff08;比如10ms&#xff09;&#xff0c;看起来就像是多个线程都在共同执行一样&#xff0c;这样的场景称作并发…

Python私教张大鹏 Vue3整合AntDesignVue之Cascader 级联选择

何时使用 需要从一组相关联的数据集合进行选择&#xff0c;例如省市区&#xff0c;公司层级&#xff0c;事物分类等。 从一个较大的数据集合中进行选择时&#xff0c;用多级分类进行分隔&#xff0c;方便选择。 比起 Select 组件&#xff0c;可以在同一个浮层中完成选择&#…

聊聊C/S模式架构的优缺点

C/S模式架构&#xff0c;即客户端-服务器&#xff08;Client/Server&#xff09;架构&#xff0c;是一种常见的软件系统架构&#xff0c;以下是C/S模式架构的优缺点分析。 C/S架构优点部分&#xff1a; 性能高效&#xff1a;由于客户端直接与服务器进行数据交换&#xff0c;没…