1 intro
1.1 背景
1.1.1 蜂窝计费记录(CBR)
- 人类移动性在蜂窝网络上的研究近些年得到了显著关注,这主要是因为手机的高渗透率和收集手机数据的边际成本低
- 蜂窝服务提供商收集蜂窝计费记录(CBR)用于计费目的,例如电话、短信和互联网访问
- 这些记录可以被重新利用来感知用户的位置
- 与仅涉及用户电话和短信通话记录的通话详单记录(CDR)相比,CBR是一个更通用的数据集
- 依靠网络运营商收集的各种CBR数据集,研究人员广泛研究了人类移动性感知
- 集体移动性,如流量和旅行时间
- 个人移动性,如通勤模式和用户空间画像
- 这些都是基于统计方法的,例如隐马尔可夫模型或条件随机场
文章 | 地址 | 天数 | 大小 |
Human Mobility Modeling at Metropolitan Scales (MobiSys ’12) | NY & LA | 91 | 585K users |
Identifying important places in people’s lives from cellular network data. In International Conference on Pervasive Computing. 2011 | NY & LA | 78 | 168K users |
Ranges of human mobility in Los Angeles and New York 2011 | NY & LA | 140 | 352K users |
Dp-where: Differentially private modeling of human mobility. In 2013 IEEE international conference on big data 2013 | New York | 91 | 250K users |
Identifying user habits through data mining on call data records. Engineering Applications of Artificial Intelligence 54 (2016), | Ivory Coast | 150 | 50K users |
Urban computing using call detail records: mobility pattern mining, next-location prediction and location recommendation. Ph.D. Dissertation. 2016 | China | — | 100K users |
Human Habits Investigation: from Mobility Reconstruction to Mobile Traffic Prediction. Ph.D. Dissertation. 2018 | Shanghai | 14 | 642K users |
Activity-based human mobility patterns inferred from mobile phone data: A case study of Singapore. IEEE Transactions on Big Data 3, 2 (2017) | Singapore | 14 | 3.17M users |
CellTrans: Private Car or Public Transportation? Infer Users’ Main Transportation Modes at Urban Scale with Cellular Data. Proc. ACM Interact. Mob. Wearable Ubiquitous Technol. 3, 3, Article 125 (Sept. 2019), | Shenyang & Dalian | 48 | 3M users |
Estimating travel time of Dhaka city from mobile phone call detail records. In Proceedings of the Ninth International Conference on Information and Communication Technologies and Development. 2017 | Dhaka City | 30 | 2.87M users |
Clustering weekly patterns of human mobility through mobile phone data. IEEE Transactions on Mobile Computing 17, 4 (2017) | Paris | 21 | 800M records |
MultiCell: Urban Population Modeling Based on Multiple Cellphone Networks. Proc. ACM Interact. Mob. Wearable Ubiquitous Technol. 2, 3, Article 106 (Sept. 2018) | Shenzhen | — | 10.2M records |
Mobile edge computing-based data-driven deep learning framework for anomaly detection. IEEE Access 7 (2019) | Milan | 60 | 319M records |
Learning Behavioral Representations of Human Mobility 2020 | Italy | 67 | 17K trajectories |
Table 1. Related Work Using Cellphone Billing Records (CBR) Name Location # Days Volume
1.1.2 CBR+机器学习的挑战
- 近期机器学习的进步,特别是深度学习,有潜力进一步提高人类移动性建模的准确性
- 然而,使用蜂窝网络数据进行机器学习模型的挑战在于用户的CBR(蜂窝计费记录)在时间维度上通常过于稀疏
- 这是因为这些CBR数据主要是为计费目的而收集的,例如电话、短信和互联网访问,但大多数人每天有长时间没有任何CBR数据,因为没有活动
- ——>设计一个恢复模型,来推断个别用户原始CBR数据间隙中历史遗漏的观测数据,以获得密集的CBR数据,来训练预测性的机器学习模型
1.1.3 现有工作对CBR稀疏性的解决
- 一些工作结合CBR数据和其他移动性数据源,例如交通数据,采用共训练或多视图学习等方法
- 这类研究需要额外的数据源进行校准,这些数据源并不总是其他拥有CBR数据的研究者能够获取的
- 从蜂窝塔进行地图匹配,例如ctrack、coSense
- 通过与蜂窝塔的连接实现连续的位置感知
- 结合附近塔的蜂窝信号强度分布和CDR数据进行位置定位
- 这些工作需要专门的数据收集,例如连续的主动手机连接或手机内部传感器数据
1.1.4 CBR 恢复的挑战
- 感知数据不足和不规则的蜂窝使用模式,个体移动性存在不确定性
- 几乎不可能用外部数据源(如交通数据)来校准不确定性
- 由于加密,用户在不同数据集中有不同的匿名ID
- ——>个体级别的细粒度移动性很难与不同数据源的数据融合匹配
1.2 论文的关键技术
- 论文的的恢复方法构建了两个关键技术
- 单一数据源中的个体移动性校准
- 提取集体移动性特征(例如,基于所有用户的CBR数据的旅行时间)
- 应用这些集体移动性特征作为个体移动性推断中的校准因素,以解决个体CBR数据中的不确定性
- 阶段性双向学习
- 对于个体用户,不仅仅关注单个记录,而是将用户分为观察和未观察阶段的分阶段分布
- 基于观察阶段的连续记录,我们推断用户状态,例如交通方式
- 单一数据源中的个体移动性校准
- 为了严格评估论文的恢复模型,论文使用合肥的信令数据
- 这些信令数据记录了手机和蜂窝塔之间的互动,例如连接、断开、寻呼等,即使没有计费活动
- 这些信令数据作为ground-truth
1.3 问题定义
- 在没有访问其他数据源的情况下恢复CBR中丢失的记录以提高数据质量
- ——>设计并实施了一个名为CellSense的人类移动性恢复系统,它有两个关键组成部分:
- 一个与个体无关的集体移动性建模组件
- 一个与个体有关的情境感知个体移动性建模组件
- ——>设计并实施了一个名为CellSense的人类移动性恢复系统,它有两个关键组成部分:
1.4 挑战
1.4.1 新地点
- 尽管人类移动性显示出规律性模式,例如家与工作地点之间的通勤,但人类移动性仍存在不确定性
- 利用两周的CBR(蜂窝计费记录)数据分析用户访问的地点,然后研究用户在下一周新地点的不规则性
- 发现只有37.1%的用户在已有地点间移动,约23.2%的用户访问了超过8个新地点
- 由于缺乏历史观测数据,新地点为人类移动性恢复带来挑战。
1.4.2 感知粒度
- 与GPS设备等传感器不同,后者以固定时间间隔被动感知人类位置(例如,每5秒),手机设备依赖于用户活动来进行位置感知,蜂窝计费记录的时间感知粒度是不均匀的
- ——>两个CBR记录之间的平均感知粒度,即时间间隔,因用户不同的手机使用模式而异
- 如图1b所示,在26.3%的用户中,两个CBR记录之间的平均时间间隔不到1分钟,而在顶部26.4%(100%-73.6%)的用户中超过10分钟
- ——>非均匀和不规则的感知粒度为人类移动性恢复带来了新的挑战
2 数据集
2.1 合肥蜂窝计费记录(CBR)
- 每个CBR记录有5个属性
- 表2给出了一个样本记录和一些统计信息
- 对CBR进行了初步的空间和时间分布分析
- 在空间维度上,应用Voronoi划分来估计蜂窝塔的空间覆盖范围
- 发现市中心的用户密度比周边郊区高
- 进一步进行定量分析
- 塔上的记录分布不均衡。80%的记录集中在30%的蜂窝塔上,这些塔主要位于城市的市中心区域
- 发现市中心的用户密度比周边郊区高
- 在时间维度上
- 在8:00、13:00和22:00有三个使用高峰,分别对应用户的早高峰、午餐时间和晚高峰
- 在空间维度上,应用Voronoi划分来估计蜂窝塔的空间覆盖范围
2.2.用户上下文信息
- 论文还获得了对从订阅数据和蜂窝运营商元数据中收集的用户上下文数据的访问权限
- 【IT公司与蜂窝运营商合作,为特定应用或服务提供专门的蜂窝数据套餐】
- ——>可以间接地提供更多关于用户行为的信息
- CBR数据中的所有订阅蜂窝用户都有标签
- 大约80%的用户拥有不到5个标签,单个用户的最大标签数量为37个,所有用户的平均标签数量为4个
-
- 第一列显示类别;
- 第二列表示此类别的相应标签占所有标签的百分比
- 最后一列展示拥有此类别标签的用户百分比占所有用户的百分比
- 对于手机使用类别,典型的标签包括视频、音乐等
- 对于与汽车相关的类别,典型标签包括与汽车相关的属性
- 对于人口统计类别,典型标签包括性别、年龄范围
- 对于服务类别,典型标签与生活中的服务相关
2.3 路网
- 合肥市的道路网络数据来自OpenStreetMap,包括49,603条道路段,总长12,813公里
- 道路网络分布与图2中的用户密度相一致,即在道路段较密集的地方发现了更多用户
2.4 人口
- 根据Worldpop项目收集的人口普查数据在图4中可视化了人口分布
- 与道路网络分布类似,用户密度分布与人口分布之间存在高度相关性
3 模型
3.1 系统概览
- 两个模块来应对1.4中提到的“新地点”、‘感知粒度不均“这两个挑战
- 独立于个体的集体移动性建模组件
- 依赖于个体的、具有上下文感知的个体移动性建模组件
3.2 初步研究
3.2.1 空间和时间粒度
- 空间
- 使用Voronoi划分来估计蜂窝塔的覆盖范围[
- 假设用户连接到最近的塔
- 时间
- 将时间分为5分钟的时间段
- 如果用户在同一时间段内连接到多个塔,我们将时间段内的位置设置为频率最高的塔
3.2.2 移动性图构建
- 移动性图定义为𝐺 = (𝑉 , 𝐸),其中𝑉是塔位置,𝐸是连接蜂窝塔的边的集合
3.2.3 Ping-Pong效应和异常值
- 记录中存在异常值和噪声,这是由多种因素引起的
- 负载平衡
- Ping-Pong效应
- 通过速度来识别异常记录
- 对于用户𝑢,我们按时间对其记录𝑟进行排序,然后计算每对相邻记录𝑟𝑖和𝑟𝑖+1的行驶速度𝑠𝑖→(𝑖+1)
- 计算速度的均值和方差
- 对于一段时间内的所有行驶速度𝑠𝑖→(𝑖+1),∀ 𝑖,通过计算速度的z分数
- 在z分数低于阈值时移除𝑟𝑖+1
3.2.4 停留点(staypoint)检测和行程分割
- 停留点是用户在一定时间内停留的位置
- 这些位置通常是空间画像的重要兴趣点(PoI),如家庭和工作地点
- 根据行驶速度和时间来识别停留点,例如,在一定时间内行驶速度为0
- 基于停留点,将用户记录分割成一段一段行程
- 如果行程的起点和终点是同一个停留点,将此行程期间所有用户缺失的位置标记为停留点
3.2.5 观察和未观察阶段
- 蜂窝用户在旅行期间会在短暂的连续时间内使用蜂窝服务,然后断开一段时间
- 例如,用户在公交车上可能会检查电子邮件或与朋友发送即时消息。在这段时间内,用户的位置在蜂窝网络中是可观察的。当没有与附近塔建立蜂窝连接时,用户的位置变得不可见
- ——>将用户轨迹分为两个阶段,即有蜂窝活动的观察阶段和没有蜂窝活动的未观察阶段
- 目标是推断未观察阶段中用户在特定时间的位置
3.3 集体移动性建模
3.3.1 目标
- 为了推断未观察阶段中缺失的记录,估计用户在未观察阶段的旅行时间和路线至关重要
- 然而,个体用户观察到的记录数量有限。在移动性图上,许多边缺乏用户的观测
- ——>首先估计不同交通方式下的平均旅行时间,然后将平均旅行时间与个体特征结合起来(个体特征是下一小节的内容)
3.3.2 设计
- 对于有直接观测的边,旅行时间可以通过统计平均值直接估计
- 对于观测稀疏的边,由于缺乏直接观测,即使用户在未观察阶段中经过这些边,旅行时间估计也是具有挑战性的
- ——>需要从直接观测(观察阶段)和间接观测(未观察阶段)中推断旅行时间
- 任何旅行的总旅行时间τ可以用以下公式表示
-
- 𝑋𝑇 = (𝑥1, 𝑥2, ..., 𝑥𝑖, ..., 𝑥𝑛),𝑥𝑖是边𝑒𝑖上的旅行时间
- 𝑃 = (𝑝1, 𝑝2, ..., 𝑝𝑖, ..., 𝑝𝑛)是路线指标,其中𝑝𝑖=1表示用户通过边𝑒𝑖,否则𝑝𝑖=0
- 【用户经过了多少条边,就把这几条边上的时间相加】
- 对于观察阶段,边上的旅行时间可以直接从用户观测中推断
- 于未观察阶段,只知道总旅行时间,这可以通过之前和之后观测值的时间差推断
-
采用两个步骤来估计未观察阶段的旅行时间
- 路线推断
- 边旅行时间推断
3.3.3 路线推断
- 基于距离和旅行时间约束,在移动性图上推断用户的详细移动路线
- 理论上,移动性图上两个位置之间有无限多条路线
- 为了避免额外的计算成本并使问题可行,论文只关注非返回旅行路线,即用户不会两次通过同一边
- 论文从用户的观察阶段验证了这一假设,并发现大约98.3%的行程在一次旅行中不包括重复边
- 应用深度优先搜索(DFS)算法在未观察阶段前后两个观察位置之间搜索可能的路线候选NTU 课程: MAS714(3) DFS & BFS(搜索算法)-CSDN博客
- 为每次搜索设置一个访问指示器,并剪除所有返回路线
- 发现82.6%未观察阶段的旅行距离小于2公里
- 为了进一步减少路线候选数量并识别用户的实际旅行路线,应用几个启发式因素来剪除路线候选
- 旅行速度应在合理范围内,例如市区小于80公里每小时,郊区小于150公里每小时
- 【这里我感觉是总旅行距离/旅行时间】
- 旅行距离应小于一定阈值,例如最短距离的两倍
- 通过这两种剪枝方法,79.3%未观察阶段的路线候选数量小于3。
- 旅行速度应在合理范围内,例如市区小于80公里每小时,郊区小于150公里每小时
3.3.4 边旅行时间推断
- 在未观察阶段,对于方程1(),总旅行时间𝜏和旅行路线𝑃已通过路线候选搜索和剪枝得知
- 但是,每一条边的边旅行时间𝑋仍未知
- 为了估计旅行时间𝑋,我们用隐藏参数𝜃(对于一个边和一个交通方式,参数包括对应高斯分布的均值和方差)表示边旅行时间𝑋
- 目标是估计一组参数𝜃,使得在方程1中𝜏的似然估计最大化
- ——>应用了EM(期望最大化)算法
- 首先,从有直接观测的周围边初始化参数集
- 其次,用迭代EM算法的两个步骤更新边的旅行时间
- 在E步骤中,根据当前边旅行时间分布,从CBR路线的每个边生成样本
- 每个样本包含两个元素,旅行时间𝑥𝑖和在分布中的相应概率
- 在M步骤中,我们用新样本更新边𝑒的参数
- 在E步骤中,根据当前边旅行时间分布,从CBR路线的每个边生成样本
【我们想要找到最佳的旅行时间分布参数(每个边的平均旅行时间和方差),使得观测到的总旅行时间(𝜏)出现的概率最大】
- 这些分布是某个路段、某种出行方式的速度,不取决于某一个用户,可以根据不同用户的移动数据不断进行调整和更新
3.4 个体mobility 建模
3.4.1 全局信息模块
- 全局信息模块融合了来自集体移动性建模的估计旅行时间、人口分布和移动性图、
- 城市中的人类移动性与人口分布高度相关,例如,在人口密度高的地区有较高的旅行需求
- 尽管可以从蜂窝网络数据模拟人口分布,但先前的工作表明单个网络的用户分布可能存在偏差,不能准确反映真实的人口分布
- 因此,论文使用独立的基于人口普查的数据源来获取人口分布信息
- 移动性图和旅行时间是基于集体移动性建模创建和估计的
- 由于人口和移动性图是静态信息,在短时间内不会改变,我们对这两个数据集进行空间映射
- 将城市划分为小的Voronoi区域,然后计算每个区域的移动性图和人口密度
- 旅行时间随时间和地点动态变化,因此同时应用空间和时间映射
- 在一天中不同时间段计算Voronoi区域内的平均旅行时间
3.4.2 上下文信息嵌入。
- 上下文信息包括用户的人口统计因素
- 这些因素的影响在用户之间是不同的
- eg,如果用户住在郊区,与居住在公共交通覆盖更密集的市中心地区的用户相比,他们为了通勤目的使用汽车的频率将更高
- 为了捕捉这些隐藏的相关性差异,论文采用了注意力机制来自动学习因素的权重
3.4.3 双向移动性学习
- 使用双向GRU
- 将移动性图、图上的旅行时间和个人上下文信息与位置估计整合起来
- 通常,由于未观察阶段的距离和时间较小,不足以改变交通方式,用户在未观察阶段会保持上一个观察阶段的同一交通方式
- 为了利用先验信息并在训练过程中动态更新用户模式,在训练过程中采用了多任务学习机
- 应用编码器层来嵌入个人移动记录和交通方式
- 解码器层解码嵌入的位置和交通方式
4 实验
4.1 数据
- 信令数据作为真实数据
- 信令数据捕获信号切换活动
- 空间覆盖率和CBR相同,但是时间覆盖率远大于CBR
- 80%的信令记录更新间隔小于80秒
- 80%的CBR用户的更新间隔小于13分钟