APP下载

面向不平衡POI类别分布的电子地图多层次标签预测模型

2023-03-15禹文豪陈佳鑫

测绘学报 2023年2期
关键词:缓冲区类别标签

禹文豪,魏 铖,陈佳鑫

1.中国地质大学(武汉)地理与信息工程学院,湖北 武汉 430074;2.中国地质大学(武汉)国家地理信息系统工程技术研究中心,湖北 武汉 430074

兴趣点(POI)数据是电子地图、导航平台、专题地图等的重要组成部分,反映餐饮、文娱、住宿等多种城市活动场所信息。受益于基于位置服务(LBS)的普及,POI数据表现出数据量大、获取迅速、来源多样、商业价值高等特点,其数据产品在城市规划、社会服务、应急管理及智慧城市等领域具有广泛应用[1-6]。

作为POI数据的重要来源,众源地理信息数据受非专业收集模式影响,相关专题数据质量参差不齐,影响POI数据产品的可靠性与准确性。例如,OSM平台的POI数据,其类别或标签特征往往存在标注错误或信息丢失的问题,如何利用空间智能模型自动纠正错误标签或补全缺失信息,是该领域的一个重要研究方向。

不同于信息科学领域的一般标签预测任务,POI特征依赖于空间关系的定义和语义信息挖掘。例如,文献[7]提出利用POI名称文本数据,结合分词技术和向量空间模型构建POI目标特征,以此输入朴素贝叶斯模型预测样本类别的条件概率。虽然POI名称对于部分类别预测具有一定适应性,但POI标签类别与其命名并无本质联系,建立的相关模型对不同场景的泛化能力也较弱。文献[8—9]利用用户访问POI的时间、用户人口统计信息及附近商家信息构建Placer分类器,由决策树模型输出POI标签预测概率。文献[10—11]提出了一个潜在的概率生成模型,融合了用户签到行为的多源数据,包括空间位置信息、时间信息以及用户自身的配置文件等。同样是基于用户的签到行为特征。文献[12]综合利用了更多的签到统计数据,首先提取POI的显式特征,然后基于用户签到行为间的相关关系构建相似POI网络,以此提取POI间的隐式特征,支持显式特征和隐式特征耦合下的POI标签预测。然而,传统方法大多需要利用位置、语义、文本、行为等多源数据;考虑到不同场景下数据获取的有限性,本文尝试利用POI最基本的位置和类别信息推测目标缺失的标签,提高方法在实际环境下的适应性。

针对标签预测问题,常规前馈神经网络[13]须假设各类别的对象数量具有均衡性,而对于数量相对较少的类别,传统模型容易将其错分至数量较多的类别,难以顾及不平衡类别间的预测精度。事实上,POI数据具有典型的不平衡类别分布,不同POI类型承担不同的城市功能服务,部分类别在城市系统中占主要地位,如餐厅等。如何有效顾及POI数据的类别不均衡性与空间依赖等特征,是设计有效神经网络标签预测模型的关键。为了解决不平衡数据集分类问题,许多专家学者从数据和算法两个层面开展了相关研究。在数据层面上,欠采样或过采样的方法占据主流。文献[14]提出Tmoek-links欠采样方法,寻找互为最邻近的两类样本来去除多数类样本中的噪音;文献[15]提出的SMOTE方法以线性插值的方式在样本间生成少数类样本从而对数据过采样。在算法层面,代价敏感学习和集成学习影响力较为广泛。文献[16]将较高的分类代价分给少数类,通过各类间不同的错分代价分配提高分类器对少数类的关注度。文献[17—19]分别提出了集成学习中著名的Bagging算法[17]、Boosting算法[18]及其变体随机森林[19]。它们都是基于一系列的子分类器,通过某种规则将各个子分类器的结果整合起来作为最终分类结果。但对POI数据集而言,现有的不平衡数据集处理方法在分类精度的提高上始终有限。

本文提出一种基于多层次类别组织的神经网络模型,不同于神经网络内部多层次的概念,该多层次神经网络模型是在POI多层次类别构建的基础上,以单个前馈神经网络作为模型的分类结点,在每一个神经网络分类结点进行两个POI类别集合的分流,从而形成一个“金字塔”式的多层次网络模型。相较于传统模型直接在单一层面上将对象划分至某一类别,本文模型考虑了不同类别的不平衡性,将少数类合并为一个大类,以此平衡与其他现有大类的数量差异,解决神经网络对少数类的泛化能力不足的问题,提高POI标签预测精度与众源地理信息数据质量的水平。

1 POI特征矢量初始化

参考地理学第一定理,POI目标与其周围不同地理范围内各类别POI的数量分布具有潜在的相关关系。因此,推断某一POI标签可由其邻近空间的POI分布特征分析实现。但如何定义邻近空间以及提取多类型POI分布信息是该步骤的关键。传统方法往往基于单距离邻域,而对于不同的地理上下文环境,单一硬性边界容易丢失空间依赖关系的多尺度信息,生成不完备的特征矢量空间,进而影响POI分类器的标签预测精度。因此,本文提出一种基于多距离邻域的POI特征矢量化方法。

具体上:对于有M个类别共N条POI记录的POI数据集,假设Xn对应第n条POI记录,Xmi对应第m个类的第i条POI记录(i在第m个类内遍历),两者空间距离为dnmi。构建目标Xn的K级多邻域缓冲区集合D,存储k个顺序排列的缓冲区距离边界二元组,并统计落入各级别缓冲区范围的不同类别POI点的数量,以此生成Xn的特征矢量。假设第m个POI类的数据量为mJ,则该类落入Xn的第Dk个缓冲区的目标计数函数Count表示为

(1)

式中,计数判定函数I的定义为

(2)

基于以上定义,首先将Countnm&k(k=1,2,…,K)作为目标Xn特征空间的第((m-1)·K+k)个维度,然后依次构建Xn在M个类上的完备特征空间,最后生成所有POI点的特征矢量。具体的邻近空间构建策略如图1所示。对于POI目标的邻近范围d,首先按照缓冲区的递增变量a,构建目标POI的[d/a]个圆形(或环形)缓冲区,其缓冲距离区间的集合为{(0,a),(a,2a),(2a,3a),…,([d/a]×a,d)};然后,为顾及不同距离邻域内以及跨越缓冲区边界的空间关系,以2a为缓冲区递增变量,继续生成POI的[d/a]-1个圆形(或环形)缓冲区,其缓冲距离区间的集合为{(0,2a),(a,3a),(2a,4a),…,([d/a]×a-a,d)};迭代以上步骤,可分析多种距离邻域、跨越不同范围的空间关系;最后,引入距离区间{(0,d)}的圆形缓冲区和{(d,2d)}的环形缓冲区,分别用以消除邻近范围d的内硬边界与外硬边界的影响。

图1 兴趣点的多尺度缓冲区构建(Xn为当前POI点)

由以上建模方式可见,邻域范围d是提取POI空间依赖特征的重要考虑因素。在城市分析领域,有研究者指出400~600 m的空间距离足以模拟城市街区和街道等尺度上的空间交互作用[20-21]。但POI通常与多个街区的空间背景有相互作用,因此选择1000 m作为POI对象间的基本交互范围。文献[22]也证实了1000 m对于POI位置评价的有效性。图2以包含10个类别的POI数据集为例,设置邻近范围d为1000 m,缓冲区递增变量a为20 m,构建6个递增尺度(即20、40、60、80、100、1000 m)的缓冲区集合,则该中心POI点将生成2420维(即(50+49+48+47+46+2)×10维)特征属性。此外,为训练本文模型,采用One-Hot技术[23](即采用N位状态寄存器对N种类别进行独立编码,且任意时刻只有一个有效状态位)编码POI数据的类别信息。由此生成的特征矢量不仅包含有多距离邻域空间的POI分布信息,而且可表示POI的语义类别特征。

注:针对邻近空间中的某一类POI,将生成242维特征;因此,如果数据包含10类POI,将总共生成2420维的特征向量。

2 多层次神经网络模型

不同类型POI的数据量具有较高的异质特征,部分POI类型的数量差异可达数百倍(如餐厅与影剧院),这种不平衡分布是限制神经网络分类效果的关键因素。针对以上问题,部分学者采用集成学习、数据欠采样及数据过采样等策略[14-19],但对于提高POI标签预测精度的作用有限。相关研究指出[16],神经网络在处理分类问题上要优于传统算法,尤其是在二分类问题上的表现比多分类问题更为精确。本文立足于神经网络的二分类能力,耦合多个二分类前馈神经网络(binary classification feedforward neural network,BCFNN)搭建多层次POI标签预测模型,将POI多分类问题分解为层次二分类任务,以此提高模型泛化能力。具体多层次网络模型如图3所示。

图3 针对兴趣点标签预测的多层次模型框架

图4 兴趣点类系划分流程

具体过程为:

(1)将输入类系中的各个类按数据量大小重新排序,得到类别集合{i、i+1、…、j}。设类别k为类系二分的界限类,类别k及其前面各类组成新类系1,类别k后面各类组成新类系2。

(2)按顺序将类别ID赋值给变量k,判断以类别k为界限类而形成的新类系1与新类系2的数据量是否在同一数量级。若是,则将类别k作为输入类系的二分界限类进行输出,若不是,则取下一个类赋值给k并重复步骤(2)的判断。

(3)需要注意的是,如果k被赋值到最后一个类别j,则直接选取倒数第2个类别j-1作为界限类,以此降低数据不平衡的影响;另外,输入的类系中只有两个类别时,则直接以排序后的第一个类作为界限类。

因此,本文提出的多层次模型是按数据集中各个类别数量的大小关系逐级分层构建的,模型每一层的BCFNN网络为下一层的BCFNN网络提供类系再次细分的数据与对应的标签,直至每一个BCFNN网络划分的类系只包含一个类别,则完成POI分类的工作。模型构建的思想借鉴于传统机器学习的决策树模型,区别在于该模型中每一层的每一个结点是基于BCFNN网络而非具体的类别判定条件,避免人工制定规则的限制。

该模型的BCFNN网络使用sigmoid函数为激活函数,L1范数函数为损失函数,并采用Adam优化算法对损失函数Loss求最小化极值,通过反向传播实现对BCFNN相关参数的优化。

3 试验与评价

3.1 试验数据

试验数据来源于广州市中心城区的POI数据,包括10种常用的POI类型,依据高德地图的标签分类体系,其具体信息如图5和表1所示。从中可知,广州市的POI类型分布具有较显著的不平衡特征,餐厅、超市、生活服务3类POI数量占比超过65%,对模型预测效果构成较大挑战。

表1 广州市城市设施兴趣点类型信息

图5 广州市城市设施兴趣点数据分布

3.2 试验模型搭建

(1)数据预处理。首先对广州POI数据进行特征矢量初始化,生成可直接用于多层次模型的输入向量;然后,对每个类按1∶6的测训比(测试样本量与训练样本量的比例)随机抽取数据,完成测试样本与训练样本的划分,具体如表2所示。

表2 训练样本与测试样本的对比信息

(2)模型搭建。采用python语言与Pytorch深度学习框架构建多层次二分类神经网络模型。如图6所示,首先将10个类别按照数据量递增排序,其ID排序结果为{5,4,6,3,8,7,9,2,1,0};然后按照第2节的POI类系划分方法,将各类型分层聚合,使得在同一个BCFNN网络下(即同一层)的两个类系具有相同级别的数据量,避免分布不均衡对模型精度的影响。

图6 广州市兴趣点类型的多层次组织

(3)模型训练。依照上述搭建的基本模型结构,对各层的BCFNN网络采用多线程同步训练,记录下训练过程中的损失函数值并绘制损失曲线。如图7所示,随着训练次数的增加各个BCFNN子模型的损失已趋于收敛。

图7 各层次BCFNN子模型损失曲线

3.3 模型预测

从总体数据中抽取1/7的测试样本作为标签预测目标,利用上述训练好的模型对每一个样本进行测试,将预测标签与真实标签进行对比,模型各个层次的预测目标数量见表3。

表3 多层次模型中各层的预测数量结果

为了验证POI多尺度特征对本任务的影响,本文在多层次预测模型的基础上分别设置了6个POI单一尺度特征驱动的预测对比试验,如图8所示。结果表明,基于POI单一尺度特征的多层次模型的标签推断能力不如多尺度融合特征生成的模型,由此可见,本文提出的POI多尺度依赖特征的构建方法对提升多层次模型的预测能力具有显著的促进作用。

图8 POI单一尺度和多尺度推断精度对比

为了验证多层次神经网络模型对本任务的优势,本文选择当下流行的数据挖掘算法模型(即基于单层次神经网络模型[13]、基于关联规则模型[22]、基于集成学习模型[24])和传统的机器学习模型(基于随机森林模型[19]、基于决策树模型[25]、基于支持向量机模型[26])作为对比试验,在同等条件下(输入均为多尺度POI特征)对7种方法的模型预测能力进行比较。如图9所示,通过对比各个模型之间的混淆矩阵不难发现,多层次神经网络模型在混淆矩阵的对角线上取得了较高的灰度值,这说明本文提出的多层次POI预测模型在先聚合小样本数据集再逐层划分POI类别的策略下,能够很好地对各个类别进行精准预测。相比之下,传统的数据挖掘模型和传统的机器学习算法在POI标签预测任务中稍显逊色:在POI分布存在严重分布不均衡的现实环境中,传统模型算法会通过提高对大样本数据集的拟合能力来降低模型损失从而提高整体的预测精度,而本文提出的多层次预测模型能较好地解决小样本类别预测精度低的问题。

图9 POI类别预测模型的混淆矩阵对比

如图10所示,为了进一步量化对比本文的多层次POI预测模型和其他6个模型的POI标签预测能力,采用准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1分值(F1score)作为各个模型的评价指标,计算公式为

图10 POI类别预测模型的评价指标对比

(3)

(4)

(5)

(6)

式中,TP表示模型认为POI为正类且其标签为正类标签;FN表示模型认为POI为负类且其标签为正类标签;FP表示模型认为POI为正类且其标签为负类标签;TN表示模型认为POI为负类且其标签为负类标签;下标K代表POI类别ID,K=0,1,2,…,9。若规定对类别m而言,类别m为正类,除类别m外的其他类为负类。试验结果表明,多层次神经网络模型在仅基于POI位置信息与类别信息的前提下,POI类别的总体预测准确度达到66.6%,作为对比,传统的机器学习算法总体准确率不足50%,基于关联规则和集成学习算法的模型总体准确度甚至低于20%。这说明了本文多层次POI标签预测模型在POI标签预测任务上具有较高的可靠性。值得注意的是,在各个模型关于POI各类别的精确率对比上,总体准确率最低的关联规则模型在各POI类别上的精确率均高于本文模型。但结合两者的混淆矩阵不难发现,关联规则模型善于对特征较明显的POI进行分类,而对于在测试集中特征较模糊的POI,关联规则模型会趋向于将分类到某一个POI数量较多的类别上,以此来规避不必要的损失,但其带来的结果是总体准确率的大幅下滑。基于随机森林和基于支持向量机的模型具有相似的特点,它们在个别POI类别上有比本文模型有更高的精确率,但它们更倾向于将特征不够明显的POI统一划分到POI数量最多的类别上从而最小化模型损失,因此它们相较于关联规则模型有更高的准确率。相比于模型精确率的评价指标,F1分值是模型精确率和召回率的调和平均数,对模型的质量评价更具有可信度。本文模型在总体准确率占优的情况下,在POI测试集各个类别上的F1分值也远大于其他对比模型,这说明多层次预测方法较大程度改进了传统方法的效果以及对复杂现实场景的适应性。

4 结 论

POI是地理信息服务的重要数据源,其收集途径的多样性与便利性是POI数据产品的优势,但同时也带来了诸多的数据质量问题,例如标签缺失、错误等。如何增强众源POI数据特征是地理信息领域的热点问题。不同于一般的标签预测任务,POI类型分布具有显著的不平衡特征,综合考虑空间数据特有的依赖关系、多尺度等特征,发展高精度的神经网络预测模型具有重要价值。

本文旨在解决POI标签预测的两个关键问题,即多尺度特征矢量初始化、不平衡类型分布的标签预测。首先,依据空间依赖等地理学知识,提取目标周围POI类型分布信息,作为当前POI的特征空间;考虑到邻近空间的多尺度特性,提出了基于多缓冲区的特征矢量初始化方法,可有效考虑不同尺度空间关联对POI标签预测的影响。其次,针对不同POI类型的数据量差异,提出了一种新的多层次神经网络模型,将复杂的多分类问题分解为简单二分类任务,提高模型对不同类型数据的泛化能力和预测精度。由于本方法只需利用POI的位置数据和类别信息,其比较传统方法具有更广泛的应用场景。通过对比试验发现,多层次模型比传统关联规则模型与集成学习方法的精度更高。后续研究将基于多层次组织策略,融合POI多源属性数据(如签到行为数据等)[27-28],并基于不同地区POI分布特征设计空间邻域范围的自适应确定算法,进一步优化该模型,提高方法的预测精度。此外,多层次神经网络为空间目标的标签预测提供了一种新思路,不仅可用于POI数据,也可用于路网弧段、建筑物等其他类型目标。

猜你喜欢

缓冲区类别标签
无惧标签 Alfa Romeo Giulia 200HP
不害怕撕掉标签的人,都活出了真正的漂亮
基于网络聚类与自适应概率的数据库缓冲区替换*
嫩江重要省界缓冲区水质单因子评价法研究
标签化伤害了谁
服务类别
科学家的标签
关键链技术缓冲区的确定方法研究
论类别股东会
中医类别全科医师培养模式的探讨