丛高教授《空间数据管理和挖掘及在智慧城市的应用》演讲笔记
Posted 刘文巾
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了丛高教授《空间数据管理和挖掘及在智慧城市的应用》演讲笔记相关的知识,希望对你有一定的参考价值。
1 general part
来自 https://www.163.com/dy/article/G4OMJ3LH0511PEBT.html
2020年11月20日,由中国科学技术协会主办,中国国际科技交流中心、中国人工智能学会、新加坡通商中国承办的“中新数字经济与人工智能高峰论坛”云端召开。主题报告环节,新加坡南洋理工大学教授、新加坡电信 - 南洋理工人工智能联合实验室主任丛高教授带来了《空间数据管理和挖掘及在智慧城市的应用》的精彩演讲。
今天介绍的内容,是我的团队和合作方的研究成果。
我关注的主题是空间数据管理和数据挖掘,特别是地理空间 +X 的数据。这个X可以是任何其他类型的数据,比如文本、社交网络、多媒体数据等。如果 X 是文本信息,就是一个地理文本信息,是基于特定地点所收集到的文本数据来作数据管理和分析。
这种地理空间+X 数据可以是相对静态的,也可以是一大规模、以数据流的形式。我们的研究集中在三个层次,一是数据管理层,主要集中在相关的数据存储、索引和查询。对于大规模空间数据流,设计了分布式系统支持实时查询和连续查询。二是数据挖掘和分析层。针对不同时空数据类型设计不同数据挖掘技术,具体集中在点空间数据、轨迹空间数据和区域空间数据这三种不同时空数据类型。三是智慧城市或智慧国家应用层。
首先分享在数据管理层近十几年做的一些工作。我们设计数据管理系统, 包括索引和查询算法,支持对空间文本数据的查询和管理;也设计分布式系统,查询分析时空信息流;同时设计如何衡量空间文本数据流系统的工作负荷,然后设计附载均衡的弹性工作任务划分,以及随着负载变化进行弹性调整;此外也研究利用机器学习的方式改进数据库的系统,提高一些具体数据管理模块的性能,比如查询优化。
下面分别介绍我们在数据挖掘和分析层做的工作。
首先,针对点空间数据介绍 3 个工作。
①点空间数据探索及可视化。给一个点空间数据(比如一个国家景点的照片数据,或者兴趣点POI数据)作为输入,我们想在地图上展示数据集以支持用户对数据的探索。简单地把所有数据可视化到地图上,数据重叠在一起,什么也看不出。一个自然的想法是选取数据的一小部分可视化,这些数据应该尽量代表用户感兴趣区域的所有数据,且不重叠。另外,当用户放大、缩小,以及移动感兴趣的区域,选取的数据应该保持一致性。
② 构建地理位置知识库。我们要打造一个知识库,而且知识库里会有非常细颗粒度的一些地点,在高层有国家为单位,甚至是洲为单位、城市为单位,颗粒度越细就会以酒店、商城等为单位。
③ 兴趣点(POIs)的推荐。POI 推荐可以分为两种,一种是传统的推荐;另外一种就是基于场景和背景的 POI 推荐 , 例如基于用户现在位置,推荐他接下来去的地方,或者基于时间推荐POIs。
一个很本质的问题就是怎么做数据表示。不管是做推荐还是做知识图谱,怎么表达location(用机器学习?数据挖掘?还是其他?),这是一个很关键的问题。
其次,针对轨迹数据介绍两个工作。
① 轨迹相似性计算。传统的方法基于配对、匹配模型,通常基于动态规划算法,计算复杂度很高;另外不能很好处理轨迹数据出现的一些噪音。我们提出用深度表征学习方法把轨迹表示成一个向量,不但可以极大提升算法的复杂度,也可以取得更好的相似度计算准确性。
② 运动轨迹数据分析。
体育比赛分析人员可能想知道在一场足球比赛中,梅西究竟跑了多少米?有多远?以往基于视频数据很难做分析。我们从视频数据得到轨迹,通过深度学习模型表示一组球员的轨迹,然后计算球员和比赛的相似度。
如何表征轨迹?传统意义上表示成一系列的点(特殊的时间序列),但是这可能并不是一个最好的办法,尤其是在现在有很多机器学习和深度学习任务的时候。
最后,针对区域空间数据介绍两个工作。
① 区域地理、时空的主题分析。我们提出一种方法快速、高效分析一个用户感兴趣的区域,在某个时间段进行主题分析。针对某个区域做一个话题分析,要收集某个区域的社交媒体数据;对每个区域地理、时空主题要进一步分析对于不同品牌的竞争情况。
② 类似区域搜索。现在输入一个特定的区域后,可以找到一个和它类似区域的表现。我们尝试去用深度学习表示区域,学习区域的相似性。我们还做了一个案例的分析,比如找到一个探索区域,新加坡的一座城市,选择一个自然保护区,希望通过我们的引擎搜索到 5 个类似自然保护区。
关键也是 region representation
最后一部分是智慧城市的应用。我们也做过交通时间分布测算,考虑到出发点和到达点,预测整段里程要用的时间,会有不同的路线来作预判。例如会做一些交通路径的介入,这些红点、绿点的地点可以帮助用户改变行程;同时还会给用户提供一些建议,如有时到某个地点时间不够,可以在中间改变潜在的路线图。
此外,基于我们的技术,和合作方新电信共同开发了传染病contact tracing 的演示系统。
在【Gauss松鼠会|技术群英会】Cong Gao:Enriched Spatial Data Management and Mining_哔哩哔哩_bilibili 中,丛老师主要介绍了上述的三篇论文的model:
2 querying streaming spatial textual data
这是twitter里面的内容,数据是不停来的,我们可以把它看成一个数据流。
对这个数据流的查询,我们可以分为snapshot query和continuous query。前者是找过去指定时刻(last week)的query信息,后者则是持续不断地找时间片中的query信息(in comming week)。我们需要制定一个系统同时支持这两种query。
找一个时间片内、某一个区域的关键词:
找一个时间片内,某一区域距离keyword最近的k个词
找一个时间片内,某一区域出现最平凡的k个词
3 trajectory representation and similarity
传统的方法一般是将轨迹看成是点组成的sequence。
那么,怎么计算相似度呢?
传统的方法做的基本上是两个轨迹(点组成的时间序列),进行对齐alignment,然后mapping,来计算相似度和距离。
这样的方式会带来很多二问题,比如:
1 如果一个轨迹采样了5个点、另一个轨迹采样了1000个点,那么即使两个轨迹是相似的,但传统的方法也会得到不高的相似度【换句话说,就是不同的采样率导致了不理想的匹配,如下图(a)】
2 如果轨迹有噪声的话,会干扰相似度的计算
3 因为两个轨迹需要进行对齐,而对齐操作一般都需要动态规划。动态规划的时间复杂度一般是O(n^2)(如果轨迹是O(n)的话)
4 低采样率会导致很难区分路径【如下图(b),因为Ta轨迹中和Tb不一样的部分没有被sample到,所以就会出现发现不了两个轨迹不一样的问题】
传统方法中的点的sequence并不能真正代表轨迹,而DTW等传统方法又偏慢,所以能否用representation learning 的方法重新表示轨迹呢?
对轨迹T,学习一个vector表示,以得到一个真实路径,我们的目标就是最大化这个条件概率。
问题在于,实际的真实路径我们是不知道怎么表示的(也就是没有直接可以得到的ground truth);其次,Seq2Seq 主要是使用NLLLoss 作为误差函数的。但是NLLLoss没有考虑空间这一个维度的属性
找一个采样率高的轨迹Tb,对其降采样,作为Ta。这样就可以作为训练集训练这个模型了。
在“轨迹相似度”这个问题中,常见的损失函数NLLLoss没有考虑空间的信息。这也就导致了本来一组比较相似的轨迹(如上图的Tb和Tb'),得到的结论是不相似(因为没有两个dot在同一个区域内,它们都会被表征成不同的dot)
以下是实验结论:
4 其他
4.1 子轨迹的查询
4.2 travel time distribution
起点和终点已知,预测通行时间的分布
4.3 travel route inference
起点和终点已知,预测用户走哪条路。
4.4 异常轨迹预测
以上是关于丛高教授《空间数据管理和挖掘及在智慧城市的应用》演讲笔记的主要内容,如果未能解决你的问题,请参考以下文章