1.4.3 城市数据分析挑战
1.4.3.1 使机器学习算法适应于时空数据
时空数据与图像和文本数据不同,用现有机器学习算法处理时空属性会带来以下挑战。
• 空间属性 空间属性包括地理距离和层次结构。例如,根据地理学第一定律——“每个事物都与其他事物相关,但近的事物比远的事物更相关”[45]——机器学习算法应该能够区分距离较近对象之间的相似性和距离较远对象之间的相似性。这里的距离不仅指地理距离,还包括在语义空间(如特征空间)中的距离。
例如,如图1.9a所示,在一个城市中部署了4个空气质量监测站(s1、s2、s3和s4)。根据地理欧几里得距离,s4是距离s2最近的监测站,其空气质量与s2的相似度高于与其他监测站的相似度。然而,对于s1和s3这并不成立。尽管在地理空间中s1比起s3更接近s2,但如图1.9b所示,s2的空气质量读数与s3的相似度高于与s1的相似度。原因是s2和s3位于具有相似地理背景(例如POI和交通模式)的两个区域,而s1部署在森林中,并且它与s2之间有一个湖泊。因此,在特征空间中,实际上s3比起s2更接近s1。

图1.9 时空数据的空间距离
此外,不同粒度的位置自然地产生了一个层次结构。例如,一个市由许多县组成,每个县进一步由许多镇组成。在层次结构的不同层次上的数据表示包含着不同层次的知识。对于机器学习算法来说,捕捉不同粒度的时间和空间数据信息是一个具有挑战性的任务。
例如,如图1.10所示,不同用户的位置历史形成了一个地理层次结构,其中上层节点表示具有较粗粒度的位置簇。我们希望根据四名用户(u1、u2、u3、u4)的位置历史估计他们之间的相似性,一般的观点是相似的用户应该共享更多的位置历史[25,79]。如果只检查他们在l2的位置历史,我们无法区分u1、u2和u3,因为他们都经过了c20→c22。然而,如果我们检查l3,会发现u2和u3都访问了c35。因此,与u1相比,u3更类似于u2。同样,与u2相比,u3更类似于u1,因为u1和u3都访问了c30。如果我们只探索这些用户在l3的数据,u1、u2和u4将很难进行比较,因为他们在这个层次上没有共享任何位置。通过检查他们在l2的位置历史,我们可以区分u2和u4,因为u1和u2都经过了c20→c22,而u1和u2没有。

图1.10 空间数据的层次属性(见彩插)
• 时间属性 时间属性包括三个方面:时间接近性、周期性模式和趋势模式。第一个方面与空间距离非常相似,表明在两个相近时间戳生成的数据集通常比在两个遥远时间戳生成的数据集更相似[50]。然而,考虑到时空数据的周期性模式,并不总是如此。例如,如图1.11a所示,某条路上午8点的交通速度在连续的工作日几乎是相同的,但可能与同一天上午11点的有很大不同,尽管上午11点在时间上更接近上午8点,而不是前一天上午8点。此外,随着时间的变化,周期也会发生变化。如图1.11b所示,周末上午9点到10点的交通速度随着冬季的临近而不断上升。当温度下降时,人们会推迟开始周末活动的时间。因此,在这条路上,上午9点的交通状况变得越来越好。总之,机器学习算法应该能够模拟时空数据的时间接近性、周期性模式和趋势模式属性。

图1.11 时空数据的时间特性:北京四环北段每小时交通速度示例
1.4.3.2 结合机器学习算法与数据库技术
机器学习和数据库是计算机科学中两个不同的领域,各自拥有社区和会议。虽然这两个社区的工作很少交叉,但在设计城市计算以及各种其他大数据项目的数据分析方法时,需要来自这两个领域的知识。对于这两个社区的人来说,设计有效且高效的数据分析方法,无缝且系统地结合数据库和机器学习的知识,是一项具有挑战性的任务。结合的方法主要有三种。
第一,我们可以设计空间和时空索引结构来加速机器学习算法的信息检索和特征提取过程。例如,为了推断一个地点的空气质量,我们需要从穿越每个区域的出租车的GPS轨迹中提取交通特征。如果没有时空索引结构,特征提取过程将持续数小时[71]。
第二,我们可以使用数据库技术为机器学习算法生成候选数据,从而缩小复杂学习算法的搜索空间。例如,因果推断算法通常非常复杂且低效,因此很难直接应用于大数据。通过数据库领域的模式挖掘技术,我们可以从大量数据中找到一些相关性模式。然后,因果推断算法可以利用这些相关性模式(它们比原始数据小得多)作为输入来推导不同对象或数据集之间的因果关系。
第三,我们可以使用由数据库技术得到的上界和下界来修剪搜索空间。例如,在参考文献[37,78]中,作者为对数似然比检验推导了一个上界,以加快异常检测过程。
1.4.3.3 跨领域知识融合方法
虽然融合来自多个不同数据集的知识对于大数据项目至关重要,但跨领域数据融合是一项不易完成的任务,原因有以下两点。
首先,简单地将从不同数据集中提取的特征拼接成一个特征向量可能会降低任务的性能,因为不同的数据源可能具有非常不同的特征空间、分布和显著性水平[35]。
其次,涉及更多类型数据的任务更有可能出现数据稀缺问题。例如,在参考文献[71]中使用了五种数据源,包括交通、气象、POI、道路网络和空气质量读数数据,来预测整个城市的细粒度空气质量。然而,当试图将这种方法应用于其他城市时,我们发现许多城市在每个领域都找不到足够的数据(例如,没有足够的监测站来生成空气质量读数),甚至根本没有给定领域的数据(如交通数据)[48]。
1.4.3.4 交互式视觉数据分析
数据可视化不仅是展示原始数据和呈现结果,尽管这两个方面是使用可视化常见的动机。在城市计算中,交互式视觉数据分析变得尤为重要,它用于检测和描述数据中由某些研究方向驱动[1,34]的模式、趋势和关系。当在数据中检测到相关内容时,新问题就会出现,导致需要更详细地查看特定部分。可视化还有助于调整和优化数据挖掘模型的参数。交互式视觉数据分析为人类智能与机器智能的结合提供了一种方法,还赋予人们整合领域知识(如城市规划)与数据科学的能力,使领域专家(如城市规划师或环保人士)能够与数据科学家合作,解决特定领域的问题。
交互式视觉数据分析要求以下两个技术方面的支持:一是将可视化方法与数据挖掘算法无缝集成,并将集成部署在云计算平台上;二是以交互方式结合人类和数字数据处理的优势,涉及假设生成而不仅是假设测试[1]。