论文笔记 Where Would I Go Next? Large Language Models as Human Mobility Predictor
arxiv 2023 08的论文
1 intro
1.1 人类流动性的独特性
- 人类流动性的独特特性在于其固有的规律性、随机性以及复杂的时空依赖性
- ——>准确预测人们的行踪变得困难
- 近期的研究利用深度学习模型的时空建模能力实现了更好的预测性能
- 但准确性仍然不足,且产生的结果不能直接完全解释
1.2 本文

- LMM+位置预测
- 提出了一个名为LLM-Mob的框架
- 将流动性数据组织成历史停留和上下文停留,以解释人们移动中的长期和短期依赖性
- 利用目标停留的时间信息进行时间感知预测
- 设计了有效的prompt策略来帮助LLM理解流动性数据,最大化它们的推理能力,使预测结果的解释成为可能。
- 提出了一个名为LLM-Mob的框架
2 Preliminary
2.1 术语和符号
- 用户的轨迹被表示为一系列停留,一个停留被表示为 (st, dow, dur, pid)
- st 表示停留开始的时间,dow 表示星期几,dur 表示停留的持续时间,pid 表示停留发生地点的唯一标识符。
- 一个停留的例子可以是 (17:30, 星期二, 35分钟, 地点1),表示用户在星期二的17:30到18:05期间停留在地点1。
2.2 问题定义(next-location prediction)
- 给定一个用户到时间 n 为止的停留序列 S = (Sn−Q+1, ..., Sn),目标是预测用户在下一个时间步骤将要访问的下一个位置/地点(即 pidn+1)
3 模型
3.1 数据整体

3.2 数据格式化

3.3 任务独特的prompt

4 实验
4.1 数据集和预处理
- Geolife、纽约Foursquare 数据集(FSQ-NYC)

- 预处理步骤,包括过滤记录很少的用户、处理原始轨迹成停留点,将数据集分为训练和测试集
4.2 实验细节
- 使用的特定 LLM 是 GPT-3.51( gpt-3.5-turbo-0613)
- 将温度设置为 0 以避免输出中的随机性
- 史停留点 M 的长度和上下文停留点 N 的长度分别设置为 40 和 5
4.3 评估指标
- 准确率(Accuracy)。
- 预测按照成为下一个位置的概率降序排列,Acc@k 衡量真实位置出现在前k个预测中的比例。
- 报告了 Acc@1、Acc@5 和 Acc@10 以进行比较
- 加权F1分数(Weighted F1)
- 个人访问位置的次数高度不平衡,一些位置出现的频率比其他位置更高。
- 使用按访问次数加权的 F1 分数来强调模型在更重要位置的性能
- nDCG@k
- 归一化折扣累积增益(normalized discounted cumulative gain,简称 nDCG,以排名位置k为基准)
- 通过折扣累积增益(DCG)与理想折扣累积增益(IDCG)之比来衡量预测向量的质量
- rj 表示位置j的相关性值。
- 在位置预测的上下文中,rj∈{0,1},并且当且仅当排名预测向量中的第j个项目对应于真实的下一个位置时,rj=1
- rj 表示位置j的相关性值。
4.4 实验结果


5 讨论
5.1 LLM-Mob 为什么表现得如此出色?

- 论文测试了 LLM 在三个逐步任务上的性能,以展示论文认为对成功预测人类移动性至关重要的其能力的不同方面
- 表 5 中展示的结果显示 LLM 在所有三个任务中都做得非常好
- 生成数字和结构化输入的自然语言描述
- 总结用户的活动模式
- 以及对用户的家庭和工作场所进行推断
- 这显示了三个主要能力:
- 不仅能理解自然语言,还能理解如代表轨迹的数字列表这样的结构化数字输入
- 总结历史移动性/活动模式的能力,以便模型能有效地利用过去的信息来预测未来情况
- 强大的推理能力,意味着模型可以像人类一样“思考”并做出合理的推断
- 除了 LLM 本身的能力外,LLM-Mob 的成功还在于数据的有效格式化和实用的提示工程,其中提示已通过迭代测试仔细设计和改进
5.2 限制
- 效率问题。
- 对每个测试样本独立调用 OpenAI API,这种做法效率低下,难以应用于大规模预测
- 幻觉问题
- 这是 LLM 面临的一个常见问题。
- 如表 4 中标记为蓝色的声明所示,模型声明地点 1 是一家餐厅,这是虚构的,可能会误导用户
- 来自专有 LLM 的限制
- 首先,调用 OpenAI API 需要花费金钱,当数据量大时,成本可能会很高
- 此外,OpenAI 不断更新 GPT 模型系列,导致最新模型的性能漂移
- 在旧模型上表现良好的提示可能在新模型上不起作用,需要在提示工程上做额外工作
相关文章:
论文笔记 Where Would I Go Next? Large Language Models as Human Mobility Predictor
arxiv 2023 08的论文 1 intro 1.1 人类流动性的独特性 人类流动性的独特特性在于其固有的规律性、随机性以及复杂的时空依赖性 ——>准确预测人们的行踪变得困难近期的研究利用深度学习模型的时空建模能力实现了更好的预测性能 但准确性仍然不足,且产生的结果…...
农场管理小程序|基于微信小程序的农场管理系统设计与实现(源码+数据库+文档)
农场管理小程序目录 目录 基于微信小程序的农场管理系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、用户信息管理 2、农场信息管理 3、公告信息管理 4、论坛信息管理 四、数据库设计 五、核心代码 七、最新计算机毕设选题推荐 八、源码获取&#x…...
【前端】vscode快捷键和实用Api整理
vscode的快捷键 创建a.html 生成模板 !回车 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" …...
抖音商家活动信息未在商详展示会有哪些处罚?
一、什么是「违规玩法-活动信息未在商详展示」? 什么是「违规玩法-活动信息未在商详展示」?由于当前平台未提供官方营销工具(例如免单、返现等),但是创作者在进行商品推广(不仅限口播、画面、标题文案等)宣传该类营销玩法,未在商品商详页展示说明&…...
智慧公厕方案_智慧公厕解决方案_智慧公厕整体解决方案
一、什么是智慧公厕? 在现代城市化进程中,公共厕所是不可或缺的基础设施之一。然而,传统的公厕管理模式已经无法满足市民对高效、便捷厕所服务的需求。为了实现公共厕所的信息化管理,智慧公厕整体解决方案应运而生。智慧公厕具体…...
【Python】成功解决IndexError: list index out of range
【Python】成功解决IndexError: list index out of range 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您的订…...
对于两个独立随机变量X,Y, E(XY)=E(X)E(Y)
两个独立随机变量X,Y的期望分别是E(X), E(Y), 其乘积XY的期望是多少? 我们可以利用期望的性质来求得XY的期望。由于X、Y是独立随机变量,因此它们的协方差为0,即: cov(X, Y) E(XY) - E(X)E(Y) 0 因此, …...
以题为例 浅谈前缀和算法
前缀求和算法是什么 前缀和算法就是以空间去换取时间,可用于快速求数组的区间和,它可以用于一维数组和二维数组,但我现在只接触了一维数组并没有接触二维数组,所以在这里先介绍一维数组前缀和相关的知识 前缀和典型代码 for(int…...
【Python】进阶学习:OpenCV--一文详解cv2.namedWindow()
【Python】进阶学习:OpenCV–一文详解cv2.namedWindow() 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望…...
【嵌入式】字体极限瘦身术:Fontmin在嵌入式UI中的魔法应用(附3500常用汉字)
🧑 作者简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟。提供嵌入式方向的学习指导、简历面…...
蓝桥杯递推与递归法|斐波那契数列|数字三角形|42点问题|数的计算|数的划分(C++)
递归是用来做dfs,是搜索算法的基础 递推是用来做dp部分,及部分其他算法,复杂度较低,不会出现爆栈问题递推法: 递推法是一种在数学和其他领域广泛应用的重要方法,它在计算机科学中被用作一种关键的数值求解…...
遗留系统现代化:理解、策略与案例
文章目录 一、什么是遗留系统二、遗留系统的特点三、改造遗留系统的方法四、案例4.1 重构4.2 替换4.3 封装4.4 服务化 五、总结 一、什么是遗留系统 遗留系统(Legacy System)是指在组织中已经存在一段时间,通常是几年或更长时间的信息系统。…...
2024.3.9 C++启航 梦开始的地方
一.基本格式: #include<iostream>using namespace std;int main() {return 0; } 二.注释 1.当行注释: 同C语言//描述信息 2.多行注释: /*描述信息*/ 三.输入输出 既可以使用scanf和printf 也可以使用标准输入流对象cin和标准输出流对象cout,且cin cout更安全和方…...
Ubuntu平铺左、右、上、下、1/2、1/4窗口(脚本)
前言 之前因为一直在用Ubuntu 18或者Ubuntu 20然后发现装了GNOME插件后,电脑在使用过程中,会时不时的卡死(鼠标没问题,键盘输入会有10-20秒的延迟)频率基本是一小时一次,因为这种卡顿会很容易打断思路&…...
深度学习+感知机
深度学习感知机 1感知机总结 2多层感知机1XOR2激活函数3多类分类总结 3代码实现 1感知机 是个很简单的模型,是个二分类的问题。 感知机(perceptron)是Frank Rosenblatt在1957年提出的一种人工神经网络,被视为一种最简单形式的前馈神经网络&…...
爬虫练习:获取某招聘网站Python岗位信息
一、相关网站 二、相关代码 import requests from lxml import etree import csv with open(拉钩Python岗位数据.csv, w, newline, encodingutf-8) as csvfile:fieldnames [公司, 规模,岗位,地区,薪资,经验要求]writer csv.DictWriter(csvfile, fieldnamesfieldnames)writer…...
Java对接腾讯云直播示例
首先是官网的文档地址 云直播 新手指南 可以发现它这个主要是按流量和功能收费的 价格总览 流量这里还只收下行的费用,就是只收观看消耗的流量费 其它的收费就是一些增值业务费 (包括直播转码、直播录制、直播截图、直播审核、智能鉴黄、实时监播、移动直…...
free pascal 调用 C#程序读 Freeplane.mm文件,生成测试用例.csv文件
C# 请参阅:C# 用 System.Xml 读 Freeplane.mm文件,生成测试用例.csv文件 Freeplane 是一款基于 Java 的开源软件,继承 Freemind 的思维导图工具软件,它扩展了知识管理功能,在 Freemind 上增加了一些额外的功能&#x…...
在Blender中清理由Instant-NGP等几何学习技术生成的网格
使用布尔运算: 创建一个大的立方体或其他简单几何体包裹住全部网格。使用布尔修改器对两个网格进行“差集”运算。这将移除超出包裹体之外的多余网格部分。 手动选择并删除: 进入编辑模式(按Tab键)。按A键取消选择所有顶点。按B键并拖动以选择您想要删除…...
【重要公告】BSV区块链上线TypeScript SDK,未来将支持更多开发语言
发表时间:2024年2月21日 BSV区块链协会宣布上线JavaScript和TypeScript SDK(即“标准开发工具包”)。TypeScript SDK旨在为开发者提供新版统一核心代码库,以便利开发者在BSV区块链上开发能够任意扩容的应用程序。新上线的SDK替…...
【2026年华为暑期实习-非AI方向(通软嵌软测试算法数据科学)-4月15日-第三题(100分)- 实现一个窗口系统】(题目+思路+JavaC++Python解析+在线测试)
题目内容 实现一个简单的窗口系统。首先初始化一个给定宽高的屏幕,并建立图像坐标系,以屏幕左上角 (0, 0) 为坐标原点。 窗口系统可以容纳窗口,窗口有以下属性: 窗口名 窗口宽高 窗口左上角坐标 窗口层级 支持的操作 窗口系统支持以下操作: 创建窗口 移除窗口 resizere…...
处理 TCP 流中的消息分片
处理 TCP 流中的消息分片 TCP 是面向流(stream) 的传输协议,不保证应用层发送的“消息边界”与接收端的读取调用对齐。 也就是说,应用层一次写入的逻辑消息可能被 TCP 拆分成多个包到达,也可能与其它消息合并。 对于基…...
局域网无法用Navicat连接Oracle怎么办_访问权限设置
Oracle局域网连接失败主因是监听器未启动或绑定127.0.0.1、防火墙拦截1521端口、tnsnames.ora地址错误、用户权限/密码问题;需依次检查lsnrctl状态、listener.ora配置、防火墙规则、客户端tnsnames.ora指向及用户账户状态与权限。Oracle监听器没启动或配置不对局域网…...
global=block×blockSize+local 线性展开
globalblockblockSizelocal 线性展开(统一抽象加权本质) 第一部分:从线性展开到统一抽象 你提出的 global block blockSize \ local 已经非常接近“统一抽象”,且本身完全正确。以下将其压实、扩展,转化为可在任何场…...
OpenCV实战:用HoughLinesP函数5分钟搞定车道线检测(Python代码保姆级教程)
OpenCV实战:用HoughLinesP函数5分钟搞定车道线检测(Python代码保姆级教程) 车道线检测是自动驾驶和辅助驾驶系统的核心技术之一。想象一下,当你驾驶车辆行驶在高速公路上,系统需要实时识别车道线以确保车辆保持在正确的…...
如何快速解锁加密音乐文件:Unlock-Music完整免费指南
如何快速解锁加密音乐文件:Unlock-Music完整免费指南 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web 项目地址: https:…...
代码审计 一次SQL注入漏洞挖掘
代码审计 一次SQL注入漏洞挖掘 免责声明:本作者所提供的文字和信息仅供学习和研究使用,不得用于任何非法用途。我们强烈谴责任何非法活动,并严格遵守法律法规。读者应该自觉遵守法律法规,不得利用本作者所提供的信息从事任何违法…...
【MaxCompute】从零开发UDF与UDTF:实战指南与性能优化
1. 初识MaxCompute自定义函数 第一次接触MaxCompute自定义函数时,我完全被各种术语搞晕了。UDF、UDTF、UDAF这些缩写看起来就像天书,直到真正动手实践后才明白它们的妙用。简单来说,这些自定义函数就像是给MaxCompute这个大数据处理引擎安装的…...
用ESP32打造串口数据中转站:一个MicroPython脚本桥接PC与传感器
用ESP32构建智能串口数据桥:MicroPython实战指南 在物联网开发中,经常遇到这样的场景:需要实时监控传感器数据,但又不想频繁烧录固件;或者需要调试第三方设备,却苦于没有合适的接口工具。这时候,…...
【多模态大模型实时处理能力跃迁指南】:从200ms延迟到8ms端到端推理,20年架构师亲测的5大硬核优化路径
第一章:多模态大模型实时处理能力跃迁的底层认知 2026奇点智能技术大会(https://ml-summit.org) 多模态大模型的实时性并非仅由推理延迟决定,而是感知-对齐-生成三阶段协同压缩与硬件感知调度共同作用的结果。传统单模态优化范式在跨模态token动态对齐…...

