当前课程知识点:微软亚洲研究院大数据系列讲座 > 第三讲:社会计算中的大数据研究(谢幸) > 用户移动规律的理解-1(user mobility understanding-1) > 用户移动规律的理解-1(user mobility understanding-1)
现在,我已经讲完了背景部分。
例如,什么是用户行为数据,怎样收集这些数据。
我讲了为什么用户理解非常重要。
下面,我要继续谈谈我们近期在用户移动规律的理解方面的研究工作。
例如,怎么样处理用户轨迹中的缺失数据,怎么样
为用户推荐有趣的地点。
这项工作发表在ICDM 2013上。
通过智能卡交易数据重建个人移动行为。
我们观察到,
在源应用产生的数据和目标应用需要的数据之间
总是存在差距。
出租车轨迹就是一个例子。
我们会在各种交通相关的应用中
使用出租车轨迹,比如交通流量估计。然而,因为
出租车轨迹是为出租车管理的目的收集的,
所以数据采样频率通常很低。
也就是说,
大约每5分钟或者3分钟才会有一条数据。
这种情况很常见,因为人们通常在设计源应用的时候
并不能预计到
应用产生的数据未来会被使用在什么地方。
总是会有新的
应用能够从这些数据中受益。
在这项工作中,我们的研究关注
公交系统中生成的智能卡交易数据。
它们通常都是为数字化支付
和监控用户的数字化支付的目的设计的。
这些数据在揭示用户的
移动规律方面很有价值,而用户的移动规律对
城市规划、基于位置的社交网络、GIS和交通应用等都很有用。
然而,智能卡交易总是
包含很多不确定性,因为
它们并不是为这个应用设计的。
其中存在很多数据缺失。为了解决这个问题,我们
尝试利用各种不同类型的
资金空间、
时间空间和地理空间的限制。后面,我会介绍,
如何让数据更完整,以及对这些应用
更有用。
智能卡在世界上很多城市都普及了,
例如,伦敦有Oyster卡,
旧金山有Clipper卡,
北京有北京市政公交一卡通。
右下方的图展示了
我们如何将北京市政公交一卡通
用于用户研究以及为方法评估收集数据。
现在,让我们先来看看数据集。
这张幻灯片展示了数据集中的字段。
首先是匿名化处理之后的卡id,
公交车这个字段保存了
公交线路号。
有两类公交车:非阶梯计价公交车和
阶梯计价公交车。非阶梯计价公交车是指
用户在乘车时支付固定的费用的线路,
阶梯计价公交车是指用户根据乘车距离付费的线路。
这两类公交车的上车站和下车站
是不同的。
对于非阶梯计价公交车,数据中没有上车站和下车站。
对阶梯计价公交车,数据中包含一个表示
与终点站之间的距离的代码,代码为0时表示
公交线路的起点站。
时间这个字段对
这两类公交车也是不同的。对非阶梯计价的公交车,这里的时间表示
上车时间,因为交易是在上车时完成的。
对于阶梯计价的公交车,
时间表示下车时间,因为交易是在乘客
下车时完成的。
非阶梯计价公交车的乘车费用是固定的,
阶梯计价公交车的乘车费用取决于
乘客的乘车距离。
数据中还有关于余额的字段。
我们总共收集了70万持卡人
在2012年8月到2013年5月之间的
2200万条乘车记录。
在这张表中,大家可以看到存在很多缺失值,
尤其是非阶梯计价的公交车的上车站和下车站。
所以,如果想研究用户的移动规律,
我们就需要填充这些缺失站的实际值。
否则,我们就会损失用户的很多移动规律模式。
为了解决这个问题,我们还
收集了一些其他数据集。
这些数据及包括乘客的充值记录。
我们有大约600万条充值记录。
充值记录中包括匿名化处理之后的卡id、充值时间、
充值金额和卡余额。
我们还有北京的路网数据,其中
包含北京的所有路段信息。
路网使用一张图来表示。
图中包含约14.8万个节点
和20万条边。这些边
都是路段。
我们还从一个在线服务中
收集了公交线路信息。
信息中包含公交线路的名称和
所有公交车站的坐标。
信息还包括公交线路的定价信息,包括阶梯计价的
公交线路和非阶梯计价的公交线路。为了评估算法,我们邀请了102位用户
来标记他们的乘车信息。他们拿着
我在前面的幻灯片中提过的、由我们设计的
免费智能卡乘车,以此作为他们参与实验的补偿。
我们尝试去覆盖乘坐最频繁的阶梯计价线路,
他们在2012年12月到2013年3月之间
为我们做了4个月的数据标记。
这张表展示了这些用户的性别和年龄分布。
从用户标签中,我们找到了约124条阶梯计价的线路。
这124条线路覆盖了
我们的数据中约26%的乘车记录
和约62%的阶梯计价公交车的乘车记录。
右下方的图展示了这些线路在北京的覆盖范围。
你们可以看到,这些公交线路覆盖了北京的大部分区域。
在这张表中,你们可以看到
我们的数据集中不同类型的线路的覆盖范围。
现在来看看针对我们的研究问题的具体任务。
我们的数据中包含收费记录、路网信息、
部分标记的乘车记录和公交线路信息。
我们需要尽量填充缺失的上车站和下车站
及其经度和纬度坐标。
然后,我们就可以利用这些数据来研究用户移动规律模式。
我们提出了一个空间定位框架。
我们有三个空间。资金空间展示了
用户智能卡余额的变化。
时间空间
展示了
交易时间或者付费时间。通常,它代表
一次乘车或者一个收费时间。
地理空间展示了用户的乘车位置。
我们需要把这三个空间连接起来,以便从这些数据集中
发现和重建用户的移动规律。
如果能够把这三个空间连接起来,我们就可以
把资金、时间和空间的点连接到一起。
例如,我们知道乘客的上车时间、上车地点
和下车地点。
我们就可以从数据中重建用户的轨迹。
然后,我们就能够知道这些用户的家庭住址、工作地点等
重要地点,以及他们的乘车模式。
首先,我们需要对数据集进行预处理。
这里,我们需要将用户的乘车分成
一些段,每一段在资金空间应当是连续的。
这意味着我们不希望包含其他付款。
因为北京的智能卡
能够在出租车和地铁上使用,也能用于购物等。
我们想只保留公交车的支付记录,
这个数据分割可以以线性时间成本完成。
我们只检查每次乘车的余额和
费用以及二者是否相符。
下面,我们定义两种类型的转换:内部转换和
外部转换。它们表示用户是否
在公交车上。
假设有一个用户的公交车乘车序列。
Li是一次公交车乘车,其中包含上车站Oi和下车站Di。
它们分别是起点和终点。
当乘客在公交车上时,
我们称之为在转换内部,也就是从O到D。
当用户不在公交车上时,
我们称之为外部转换,也就是从D到O。如果
只知道公交线路号,那么乘客的乘车方案就可能有很多种,
乘车方案的组合数量为
ni*(ni-1)。
所以,我们可以看到,这位乘客的乘车方案有很多种可能。
下面,我们将应用一些约束来减少这些可能。
第一个约束是近似性约束,它是针对外部转换的。
假设人的步行速度和时长是有限的。
这很自然,因为在一项
澳大利亚开展的对悉尼市市民的问卷调查中,
97%的受访者表示他们的步行距离在两公里以内。
如果两次乘车相距很远,那就意味着
无法找到邻近的公交车站。
那么就可以将其分为两段。
所以,在我们的算法中定义了距离阈值。
使用距离阈值可以
减少可能的公交车站的数量。
所以,可能的乘车方案数量将大大减少。
第二个约束是费用约束。费用约束是为
内部转换设计的。这意味着用户在公交车上。
乘坐阶梯计价公交车时,乘客按照乘车距离付费。
所以如果我们知道乘客乘车的费用,
就可以通过查看阶梯计价表来
估计乘客的乘车距离。
通过这种方式,
可以进一步减少内部转换的可能性。
第三个约束是时间约束。
时间约束包括内部转换和外部转换。
对非阶梯计价公交车,
我们有上车时间;
对阶梯计价的公交车,我们有下车时间。
所以,我们还有很多关键时间点可以来计算
每趟公交车的乘车时间。
例如,在这张图中,
称第一条公交线路的乘车时间为delta t1,
delta t1应小于第一条公交线路的
上车时间
和第二条公交线路的上车时间之间的间隔。
因为还知道第三条公交线路的下车时间,
所以我们可以看到,
第二条公交线路和第三条公交线路的乘车时间之和
应该小于t3-t2。
介绍了三种类型的约束之后,
我们将利用条件随机场
来标记缺失数据。
在观察序列中,每个节点被定义为
两条连续公交线路的组合。
对于隐藏序列,每个节点包括第一条公交线路的起点、终点和
第二条公交线路的起点。
我们利用前人文献中的带约束的半监督训练方法
来解决这个问题。
我们同时在整个数据集和由用户标记的数据集上
对算法进行了评估。
对于整个数据集,我们只使用了阶梯计价的乘车记录
并去掉了这些乘车记录中的标签。
我们想看看我们的算法是否能够恢复这些标签。
我们把条件随机场算法和带约束的条件随机场算法与
之前的两种方法进行比较。
这两种方法是TC+MF和TC+MS。
这些工作基于伦敦的Oyster卡数据。
从第一张图中,我们可以看到,如果只使用
条件随机场模型,算法的性能与之前的工作相似。
但是,如果增加了约束,那么算法的性能就会有很大的提升。
从MSRA的用户数据中,我们也得到了类似的性能。
正如我在前面的幻灯片中所说,我们想要做的是
恢复缺失数据并将智能卡数据用于
理解用户的移动规律。所以,这里我们使用了一个简单的
应用来理解用户移动规律,这个应用是家庭地址和工作地点检测。
我们使用了一个常规方法来完成家庭地址和工作地点检测。
我们请参加我们的用户研究的102位用户标记
他们的家庭地址和工作地点并对比了
我们的计算结果和他们的标记。
我们发现,
在恢复了缺失数据之后,家庭地址检测的准确度能够提高88%,
工作地点检测的准确度能够提高35%。
这个结果与当地家庭问卷调查的结果是一致的。
这里的两幅图展示了
我们的数据集中家庭地址和工作地点的分布情况。
下面总结一下这项工作。在这项工作中,
我们提出了一个空间定位框架。
这个框架结合资金空间、时间空间和地理空间三个空间。
其中,资金空间之前很少被考虑到。
我们的方法中设计了恢复智能卡缺失数据的通用方法。
这个方法适用于恢复数据中缺失的下车站、
上车站和公交线路方向。
实验表明,我们在恢复用户移动规律方面取得了很高的准确度。
我们邀请了102位用户
进行了4个月的数据标记。我们使用这些数据
来评估我们的算法。我们发现了这项工作
在移动规律分析应用中的意义和潜力。
-什么是大数据(What is big data?)
-为什么大数据是当前热点(Why big data is a nature phenomenon?)
--为什么大数据是当前热点(Why big data is a nature phenomenon?)
-新的计算基础设施和工具(New Infrastructure and tools)
--新的计算基础设施和工具(New Infrastructure and tools)
-课程简介(Course Introduction)
-基础设施,机器学习和可视化(Infrastructure,Machine Learning and Visualization)
--基础设施,机器学习和可视化(Infrastructure,Machine Learning and Visualization)
-大数据与传统商业智能的区别(Big data:different from traditional BI)
--大数据与传统商业智能的区别(Big data:different from traditional BI)
-Quiz
--Quiz--作业
-大规模超文本网络搜索引擎的解析(the anatomy of a large scale hypertextual web search engine)
--大规模超文本网络搜索引擎的解析(the anatomy of a large scale hypertextual web search engine)
-搜索引擎如何实现每秒数千次的查询(How does a web search engine process thousands of queries per second?)
--搜索引擎如何实现每秒数千次的查询(How does a web search engine process thousands of queries per second?)
-探寻搜索的多个维度(finding dimensions for queries)
--探寻搜索的多个维度(finding dimensions for queries)
-Quiz
--Quiz--作业
-背景介绍(background)
-用户移动规律的理解-1(user mobility understanding-1)
--用户移动规律的理解-1(user mobility understanding-1)
-用户移动规律的理解-2(user mobility understanding-2)
--用户移动规律的理解-2(user mobility understanding-2)
-用户画像与个人隐私-1(user profiling and privacy-1)
--用户画像与个人隐私-1(user profiling and privacy-1)
-用户画像与个人隐私-2(user profiling and privacy-2)
--用户画像与个人隐私-2(user profiling and privacy-2)
-Quiz
--Quiz--作业
-城市计算中的大数据研究简介(introduction to urban big data)
--城市计算中的大数据研究简介(introduction to urban big data)
-概念,框架和挑战(concepts,framework and chanlleges)
--概念,框架和挑战(concepts,framework and chanlleges)
-基础技术(fundamental techniques)
--基础技术(fundamental techniques)
-城市规划(urban planning)
-识别特定区域(indentify functional regions)
--识别特定区域(indentify functional regions)
-城市空气质量与大数据研究(urban air quality meets big data)
--城市空气质量与大数据研究(urban air quality meets big data)
-能源交通和环境污染(traffic energy and pollution)
--能源交通和环境污染(traffic energy and pollution)
-大数据在城市噪音处理中的应用(diagnose urban noise with big data)
--大数据在城市噪音处理中的应用(diagnose urban noise with big data)
-Quiz
--Quiz--作业
-软件分析的概念(the concepts of software analytics)
--软件分析的概念(the concepts of software analytics)
-软件分析的实例(examples of software analytics)
--软件分析的实例(examples of software analytics)
-传统的数据可视化(Traditional information visualization)
--传统的数据可视化(traditional information visualization)
-同质数据的可视化分析-1(Visual Analytics of Homogeneous Data-1)
--同质数据的可视化分析-1(Visual Analytics of Homogeneous Data-1)
-同质数据的可视化分析-2(Visual Analytics of Homogeneous Data-2)
--同质数据的可视化分析-2(Visual Analytics of Homogeneous Data-2)
-异质数据的可视化分析(Visual Analytics of Heterogeneous Data)
--异质数据的可视化分析(Visual Analytics of Heterogeneous Data)
-Quiz
--Quiz--作业