[论文解读] Infostop: Scalable stop-location detection in multi-user mobility data
Infostop 是一种可扩展的多用户停靠点检测算法,利用 Infomap 网络社区检测方法克服了现有方法的局限性,例如因噪声导致的相邻位置合并以及无法同时分析多个用户的问题。该算法实现了紧凑且精确的目的地聚类,并支持社交会面检测,其高性能开源实现采用 Python 和 C++ 编写。
Data-driven research in mobility has prospered in recent years, providing solutions to real-world challenges including forecasting epidemics and planning transportation. These advancements were facilitated by computational tools enabling the analysis of large-scale data-sets of digital traces. One of the challenges when pre-processing spatial trajectories is the so-called stop location detection, that entails the reduction of raw time series to sequences of destinations where an individual was stationary. The most widely adopted solution to this problem was proposed by Hariharan and Toyama (2004) and involves filtering out non-stationary measurements, then applying agglomerative clustering on the stationary points. This state-of-the-art solution, however, suffers of two limitations: (i) frequently visited places located very close (such as adjacent buildings) are likely to be merged into a unique location, due to inherent measurement noise, (ii) traces for multiple users can not be analysed simultaneously, thus the definition of destination is not shared across users. In this paper, we describe the Infostop algorithm that overcomes the limitations of the state-of-the-art solution by leveraging the flow-based network community detection algorithm Infomap. We test Infostop for a population of $\sim 1000$ individuals with highly overlapping mobility. We show that the size of locations detected by Infostop saturates for increasing number of users and that time complexity grows slower than for previous solutions. We demonstrate that Infostop can be used to easily infer social meetings. Finally, we provide an open-source implementation of Infostop, written in Python and C++, that has a simple API and can be used both for labeling time-ordered coordinate sequences (GPS or otherwise), and unordered sets of spatial points.
研究动机与目标
- 解决现有停靠点检测方法因测量噪声而将频繁访问的相邻位置合并的局限性。
- 支持对多个用户的移动轨迹进行并行分析,以识别个体之间的共享目的地。
- 开发一种可扩展且高效的算法,适用于高时空分辨率的大规模人群移动数据。
- 通过识别用户在同一位置的重叠停留行为,促进社交会面的检测。
- 提供快速、开源的实现,配备简洁的 API,支持单用户与多用户轨迹处理。
提出的方法
- Infostop 首先通过时间下采样步骤结合滑动中值计算,从时间序列中识别出静止点,以过滤噪声。
- 应用空间下采样以减少冗余点,提升计算效率。
- 使用球树数据结构高效识别空间半径 $ r_2 $ 内的静止事件,形成网络,其中相连的节点表示相邻事件。
- 应用 Infomap 算法检测所得网络中的社区,为每个社区分配唯一的目的一致标签。
- 该算法反向执行空间和时间下采样,将标签映射回原始轨迹记录。
- 该方法支持任意距离度量,并可处理带时间戳和不带时间戳的输入序列,实现对多样化数据格式的灵活应用。
实验结果
研究问题
- RQ1基于网络的聚类方法是否能在保留空间上分离但位置接近的目的地方面,优于传统的欧几里得聚类方法(如 DBSCAN)?
- RQ2使用 Infostop 进行多用户停靠点检测是否能相比单用户方法产生更准确、更紧凑的目的地聚类?
- RQ3Infostop 是否能有效识别大规模用户群体中的社交会面——即多人在同一地点的同步停留?
- RQ4Infostop 的计算复杂度如何随用户数量和数据规模的增加而变化?
- RQ5Infostop 的性能在多大程度上依赖于参数选择,如 $ r_1 $、$ t_{min} $ 和 $ r_2 $?空间与时间下采样在提升效率方面起到何种作用?
主要发现
- 随着用户数量的增加,Infostop 检测到的停靠点数量趋于饱和,表明其在人群范围内具有稳定且一致的目的地聚类能力。
- Infostop 的时间复杂度增长速度低于以往方法,能够高效处理大规模多用户移动数据。
- Infostop 成功识别出社交会面,其共享停留行为与实际手机交互(短信和通话)之间存在显著相关性。
- 该算法保持了紧凑的目的地聚类,避免了将相邻但不同的位置(如相邻建筑)错误合并。
- 基于 C++ 和 Python 的开源实现性能优异,关键步骤(如时间下采样)通过 C++ 子模块加速。
- 该软件包支持灵活的输入格式,包括时间有序和无序的空间点,并提供用于凸包和停留点热力图的可视化工具。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。