基于海量公交数据的人群画像算法转让专利
申请号 : CN202110365315.6
文献号 : CN112800210B
文献日 : 2021-06-18
发明人 : 张锦 , 张建忠 , 魏叶华 , 罗迅 , 娄小平
申请人 : 湖南师范大学
摘要 :
权利要求 :
1.基于海量公交数据的人群画像算法,其特征在于,包括如下步骤:步骤S1、数据描述及预处理:获取公交车刷卡数据及POI数据,并进行预处理;
步骤S2、筛选重点地区人群:通过PageRank算法提取出行次数多,且去热点地区次数频繁的乘客轨迹数据;
步骤S3、轨迹文本化:根据POI数据获得乘客所在坐标的所属功能性,根据乘客轨迹数据与乘客所在坐标的所属功能性,获取得到每个乘客的文本轨迹数据;
步骤S4、文本聚类:采用聚类算法对文本轨迹数据聚类,获得人群画像;
所述步骤S2具体包括如下步骤:
步骤S21、根据各公交站点用户上下车频率,计算该站点的重要性数值;
步骤S22、根据用户经过的公交站点的重要性数值,计算用户轨迹的贡献率;
所述步骤S22具体包括如下步骤:步骤S221、将成年人工作日的刷卡数据中的所有公交站点Mall和出行的轨迹带入站点重要性数值的计算公式中,得到该组刷卡数据的所有出行公交站点对应的重要性数值PR(Mall);
步骤S222、根据该组人群中每位乘客u出行经过的公交站点n,计算该名乘客轨迹的重要性数值之和,即 ,其中,PR(Ti)是地点Ti的重要性数值;
步骤S223、对该组刷卡数据经过调试设置一个阈值T,只有每位乘客轨迹的重要性数值之和大于该阈值,即S(u)>T,才将该乘客的轨迹数据保存下来;保存下来的轨迹数据即为该组刷卡数据中轨迹贡献率高的乘客数据;步骤S224、将剩下5组数据,即成年人休息日的刷卡数据、老年人工作日的刷卡数据、老年人休息日的刷卡数据、学生工作日的刷卡数据,学生休息日的刷卡数据,重复步骤S221‑S223,最后共得到6组轨迹贡献度高的乘客数据。
2.根据权利要求1所述的基于海量公交数据的人群画像算法,其特征在于,所述步骤S1包括如下步骤:
步骤S11、获取公交车刷卡数据:获取特定时间特定区域的公交出行数据,包括每位乘客的ID、上下车刷卡时间、上下车地点的经纬度,以及每位乘客的年龄属性,得到不同年龄段每位乘客的出行轨迹数据;
步骤S12、获取POI数据:获取该特定区域的POI数据;
步骤S13、公交出行数据预处理:将公交出行数据进行清洗、分类、剔除,获得不同年龄属性的刷卡数据;
步骤S14、POI数据预处理:将POI数据进行功能性划分,获得功能不同的各类POI数据。
3.根据权利要求2所述的基于海量公交数据的人群画像算法,其特征在于,所述步骤S13具体包括如下步骤:
步骤S131、清洗公交出行数据:对存在某些数据为空或数据字段偏移的数据进行数据规范化处理,依据上下文补充数据和删除无法获取信息的数据;
步骤S132、截取清洗后的公交车连续一周内所有的公交车刷卡数据,并且将这些数据按照工作日和休息日进行划分;
步骤S133、将工作日和休息日的数据按照乘客年龄属性划分,得到的6组数据分别为:成年人工作日的刷卡数据、成年人休息日的刷卡数据、老年人工作日的刷卡数据、老年人休息日的刷卡数据、学生工作日的刷卡数据和学生休息日的刷卡数据;
步骤S134、将这6组数据中每日都有乘车记录且乘车次数至少为2次的乘客数据筛选出来,最终得到成年人乘客的刷卡数据、老年人乘客的刷卡数据和学生乘客的刷卡数据。
4.根据权利要求1所述的基于海量公交数据的人群画像算法,其特征在于,所述步骤S21中,站点重要性数值的计算公式为:其中,PR(A)是地点A的重要性数值;Ti是指n个指向地点A中的第i个指向地点A的地点;n表示指向地点A的地点个数;PR(Ti)是地点Ti的重要性数值;C(Ti)是地点Ti的出度,也就是Ti指向其他地点的边的个数;d为阻尼系数,即在任意时刻乘客到达某地点后并继续出行的概率。
5.根据权利要求2所述的基于海量公交数据的人群画像算法,其特征在于,所述步骤S3中,获得乘客所在坐标的所属功能性具体包括如下步骤:步骤S31、将功能不同的每一类POI数据的数量Ni进行统计,在将所有的POI数量Nall除以Ni,分别得到该类的权重Wi,即:步骤S32、对于乘客所在坐标范围内的所有POI数据,分别按照这些类别的数量ni进行统计,再将ni乘以该类的权重Wi后,除以该范围内所有的POI数量nall,得到该范围内的每类功能性的概率Pi,即:
步骤S33、因为某些地区存在很多不同功能性的POI,随着时间的流逝该地区的主要功能性可能会发生变化,所以对这些POI类型分别设置时间变化数Oi,最后得到的公式为:步骤S34、将每个坐标点的上下车时间与上下车地点带入步骤S33的公式进行计算,从而分别得到该地区的各个功能性的概率值;选择该地区概率值最高的两个功能性作为该时刻和该地点的功能性。
6.根据权利要求3所述的基于海量公交数据的人群画像算法,其特征在于,所述步骤S4具体包括如下步骤:
步骤S41、通过将每位乘客的文本轨迹数据导入TF‑IDF算法中进行计算,以乘客轨迹作为文档,POI所属功能性作为关键词,得到每位乘客的文本轨迹数据的所属功能性关键词的TF‑IDF值;
步骤S42、采用基于余弦距离的K‑Means算法,将成年人工作日的刷卡数据、成年人休息日的刷卡数据、老年人工作日的刷卡数据、老年人休息日的刷卡数据、学生工作日的刷卡数据、学生休息日的刷卡数据这6组轨迹贡献度高的乘客轨迹数据分别进行聚类。
7.根据权利要求6所述的基于海量公交数据的人群画像算法,其特征在于,所述步骤S41中, 表示的是关键词在文本出现的频率,即:其中tfu,v表示第u个词条在第v 个文本中出现的频率;nu,v表示词条u在第v个文本中出现的次数, 表示第v个文本中所有词语出现的次数总和, 表示词条k在第v个文本中出现的次数;
表示的是逆向文本频率,即:
其中, 表示第u个词条的逆向文本频率;|D|表示所有文本的数量,表示包含词语tu的文本dv的数目;
。
8.根据权利要求6所述的基于海量公交数据的人群画像算法,其特征在于,所述步骤S4还包括如下步骤:
步骤S43、将聚类结果使用T‑SNE算法对聚类算法的结果进行数据降维;
步骤S44、使用散点图展示聚类效果。
说明书 :
基于海量公交数据的人群画像算法
技术领域
背景技术
准确地分析出城市中个人或群体的日常活动规律。这些规律既可以有效帮助解决城市中公
交路线规划、公交公司车辆调度问题,又可以对城市规划、社会行为分析等多个应用领域提
供数据支撑,方便城市资源的合理调度与建设,更好地帮助管理部门和城市建设者对城市
建设和发展做出最优决策。
留的地方——揭示其居住地、工作点和“第三个地方”。交通数据隐藏着用户的日常行为,当
用户群体具有相似的运动轨迹,可以认为该群体具有相似的特征,该特征即为该群体的人
群画像,但是目前研究城市人群画像的技术还相对较少。
发明内容
年龄段每位乘客的出行轨迹数据;
人休息日的刷卡数据、学生工作日的刷卡数据和学生休息日的刷卡数据;
也就是Ti指向其他地点的边的个数;d为阻尼系数,即在任意时刻乘客到达某地点后并继续
出行的概率。
值PR(Mall);
即为该组刷卡数据中轨迹贡献率高的乘客数据;
S221‑S223,最后共得到6组轨迹贡献度高的乘客数据。
的每类功能性的概率Pi,即:
为:
该时刻和该地点的功能性。
词的TF‑IDF值;
卡数据、学生休息日的刷卡数据这6组轨迹贡献度高的乘客轨迹数据分别进行聚类。
v个文本中出现的次数;
对城市建设和发展做出最优决策。
从而减少数据量和提高数据处理效率;
对后续聚类算法的结果质量有一定的提升;
而得到利于解释的轨迹类别特征,即人群画像。
附图说明
意图;图3(e)、图3(f)为学生工作日和休息日轨迹贡献度高的乘客聚类结果展示示意图;
示意图;图4(e)、图4(f)为学生工作日和休息日轨迹贡献度高的乘客聚类结果展示示意图;
及轨迹示意图;图5(c)为所属功能性类别为居住,餐饮,公司企业,宗教场所的乘客聚类特
性及轨迹示意图;图5(d)为所属功能性类别为居住,餐饮,公司企业,医疗的乘客聚类特性
及轨迹示意图;图5(e)为所属功能性类别为居住,餐饮,公司企业,商业零售的乘客聚类特
性及轨迹示意图;图5(f)为所属功能性类别为居住,餐饮,公司企业,金融的乘客聚类特性
及轨迹示意图;图5(g)为所属功能性类别为居住,餐饮,公司企业,交通站点的乘客聚类特
性及轨迹示意图;图5(h)为所属功能性类别为居居住,餐饮,公司企业,服务行业的乘客聚
类特性及轨迹示意图;图5(i)为所属功能性类别为居住,餐饮,公司企业,体育健身的乘客
聚类特性及轨迹示意图。
具体实施方式
客的年龄属性,得到不同年龄段每位乘客的出行轨迹数据;
记录了每位乘客的ID、上下车刷卡时间、上下车地点的经纬度。此外每位乘客的年龄属性
(成年人,老年人和学生)也被记录在该数据中。根据这些数据,可以得到不同年龄段每位乘
客的出行轨迹数据。POI是兴趣点的简称,在地理信息系统中,一个POI可以是一栋房子、一
个商铺、一个邮筒、一个公交站等,且一条完整POI数据必须包含该地点的名称、功能性、经
纬度等数据。本实施例通过调用Google Map的API(应用程序接口,Application
Programming Interface)获取新加坡的POI数据,最后共得到4万条数据。将新加坡公交车
刷卡数据和新加坡的兴趣点(POI)数据进行下述预处理操作,从而得到数据规范且完整的
数据集。
据存在某些数据为空或数据字段偏移的情况,所以需要对数据进行整理,得到了规范的公
交出行数据。由于出行数据中原始三类人群(成年人,老年人和学生)出行方式差异较大,为
便于更准确地描述人群画像,之后本实施例做了如下步骤处理处理:
人休息日的刷卡数据、学生工作日的刷卡数据和学生休息日的刷卡数据;
万名学生乘客的刷卡数据。
无效的数据。此外由于POI数据的功能性指向过多,不利于后续的工作的进行,因此本文将
这些POI数据功能性进行重新划分,把功能性相近的POI设置新的功能性,最后得到了15种
功能性类别。这15类功能性分别为餐饮、商业零售、服务行业、公共服务、休闲娱乐、居住、教
育、宗教场所、医疗、景点、金融、政府机构、交通站点、体育健身、公司企业。
基于PageRank算法的重点地区人群筛选方法,通过该方法提取出行次数多且去热点地区次
数频繁的乘客轨迹数据,极大的减少了非重点地区的人群轨迹数据,从而减少数据量和提
高数据处理效率。
明利用该算法,将出行数据中公交站点视为网页,用户轨迹点的连接则等同于网页间的超
链接关系。不同于传统PageRank目的在于计算网页的重要性,本实施例方法目的在于计算
用户轨迹的重要性。
也就是Ti指向其他地点的边的个数;d为阻尼系数,即在任意时刻乘客到达某地点后并继续
出行的概率。在对所有的公交站点进行重要性数值计算后,每个公交站点都生成一个重要
性数值,且用户上下车越多的站点,其重要性数值越大。
组数据设置一个阈值,对于用户的轨迹数据贡献率超过该阈值的,则是有效的轨迹数据。
要性数值PR(Mall);
即为该组刷卡数据中轨迹贡献率高的乘客数据;
S221‑S223,最后共得到6组轨迹贡献度高的乘客数据。
理方法通常是将文本进行分词与清洗,从而获取关键词语,再将文档嵌入词袋模型,如TF‑
IDF(TF意思是词频,Term Frequency,IDF意思是逆文本频率指数,Inverse Document
Frequency),LDA(linear discriminant analysis,线性判别分析)等,或者词向量模型,如
One Hot(词嵌入,word embedding), Word2Vec(一群用来产生词向量的相关模型)等,从而
获得合适且表达能力强的特征。这些特征可以直接被机器学习模型或者深度学习模型使用
进行聚类或者分类等。聚类算法是一种无监督的机器学习方法,由于不需要预先对数据进
行手工文档的标注,因此该方法具有较高的自动化处理能力,常用的聚类算法有K‑means、
DBSCAN、Mean‑shift和Birch等。
算,以乘客轨迹作为文档,而POI作为关键词得到每位乘客的文本轨迹数据关键词的TF‑IDF
值。在此基础上,采用K‑Means(一种迭代求解的聚类分析算法)算法进行聚类,并且比较了
使用两种不同距离度量下的聚类结果。最后,将两种聚类算法的结果使用T‑SNE(t‑
distributed stochastic neighbor embedding,用于降维的一种机器学习算法)进行数据
降维,利用散点图来展示两种算法的聚类效果,从而直观地比较这两种聚类算法效果优劣
性。
来并确定该坐标所属功能性。在确定该坐标所属的功能性时,如果仅根据该坐标点内数量
最多的属性设置为该点的功能性,可能会导致结果存在较大的误差。
类功能性的概率Pi,即:
为:
复且Pi都大于0)作为该时刻和该地点的功能性。
词的TF‑IDF值;
息日的刷卡数据这6组轨迹贡献度高的乘客轨迹数据分别进行聚类。
在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。
k在第v个文本中出现的次数;
公式,即可得到该乘客文本轨迹中各个功能性关键词的TF‑IDF值并将其储存下来。然后本
文将成年人工作日、成年人休息日、老年人工作日、老年人休息日、学生工作日、学生休息日
这6组轨迹贡献度高的乘客轨迹数据分别使用基于余弦距离的K‑means聚类算法和基于欧
式距离的K‑means聚类算法进行聚类运算,将聚类结果使用T‑SNE算法对两种聚类算法的结
果进行数据降维,然后使用散点图来展示两种算法的聚类效果。
据使用PageRank算法后,得到了4529个公交站点以及这些站点的重要性数值。随后实施例
处理成年人工作日、成年人休息日、老年人工作日、老年人休息日、学生工作日、学生休息日
这6组数据,并且得到了这6组数据每位乘客的轨迹重要性数值之和。然后本文对阈值T进行
尝试性设置,最后得到在不同的阈值T下每组数据的乘客数量以及经过的公交站点数量,如
表1所示。本文设定的阈值T必须满足以下两个条件:一是乘客数量尽可能少;二是公交站点
数量尽可能多。只有满足以上两个条件的阈值T所对应的数据,能够保证在数据量变小的情
况下,对后续结果的质量影响较小。因此对这六组数据的阈值分别确定为0.04(成年人工作
日)、0.035(成年人休息日)、0.015(老年人工作日)、0.015(老年人休息日)、0.02(学生工作
日)和0.02(学生休息日)。
T‑SNE算法分别进行数据降维并使用散点图展示其聚类效果。然后本文从每组轨迹贡献度
高的乘客数据中选取1000条轨迹数据,将这些数据经过TF‑IDF处理后进行标记。最后标记
的数据分别与基于余弦距离的聚类结果和基于欧氏距离的聚类结果进行比对检验,并对准
确性进行计算。
日和休息日轨迹贡献度高的乘客聚类结果展示示意图; 图3(c)、图3 (d)为老年人工作日
和休息日轨迹贡献度高的乘客聚类结果展示示意图;图3(e)、图3 (f)为学生工作日和休息
日轨迹贡献度高的乘客聚类结果展示示意图。
工作日和休息日轨迹贡献度高的乘客聚类结果展示示意图;图4(e)、图4(f)为学生工作日
和休息日轨迹贡献度高的乘客聚类结果展示示意图。
代表长度,坐标轴的数值表示长度或宽度的相对值。
对本文基于余弦距离的K‑means聚类算法的结果进行归整,将同一类型乘客的轨迹数据提
取出来,再使用一次TF‑IDF算法,得到排名前4的关键词,即该类人群常去的功能区域。
对做了以下步骤来验证准确率:
键词。因此,在对每位乘客的标签与该乘客对应的功能区域进行检验时,只有在第四个关键
词必须存在的情况下,剩下3个关键词至少存在2个,则确定该乘客分类正确。对于第三个关
键词与其他类的第三个关键词也不相同的情况下,只有在第三和第四个关键词都存在的情
况下,剩下2个关键词至少存在1个,则确定该乘客分类正确。
有数据的准确率。
导图,一种用来列举顺序、时间过程或步骤的思维图示)中来展示。对于Flow Map生成的轨
迹图,人群在两地流动越频繁,两地间的线段越粗;人群在某点聚集的越多,该点越大。
示,可以清楚的了解不同轨迹出行的乘客常去的地点以及出行的频率。从图中可知,因为新
加坡的南部是政治、经济和文化活动的中心地区且基础设施完善,所以新加坡南部的居住
地,餐饮业、政府机构、宗教场所、商业零售、金融机构、服务行业、体育健身场所和公司企业
在这里聚集较多;教育场所(小学、中学)主要分布新加坡北部和南部地区,东西方向分布较
少,因此许多成年人会经常去往新加坡北部地区和南部地区;而对于医疗场所来说,由于新
加坡大型的公立医院分布在新加坡的东部地区和西部地区,因此当人们需要去医疗场所时
会常前往这两个地区。
轨迹数据,极大的减少了非热点地区的乘公交频率较少的人群轨迹数据,从而减少数据量
和提高数据处理效率;第二,将筛选后的乘客轨迹数据按照年龄段与一周内连续的工作日
与休息日进行划分,并将每位乘客的轨迹数据串联起来,形成完整的轨迹数据集,从而提升
数据质量,为提升后续聚类算法的结果质量提供基础;第三,将划分后的轨迹数据集与新加
坡兴趣点(POI)数据相融合得到每位乘客的文本化轨迹,然后在使用TF‑IDF算法对文本轨
迹的关键词进行提取。第四,分别使用基于余弦距离的K‑means算法与基于欧氏距离的K‑
means算法对上述关键词进行聚类,并对产生的结果进行对比。经检验,在基于欧氏距离的
K‑means算法准确率仅为59.18%时,基于余弦距离的K‑means算法对乘客轨迹的聚类效果更
好,该算法的准确率接近80%且更稳定。第五,通过案例展示,将分类结果使用Flow Map进行
可视化展示,并对每类人群的画像进行简单的分析。通过上述工作,可以为城市规划、社会
行为分析等多个应用领域提供数据支撑,方便城市资源的合理调度与建设,更好地帮助管
理部门和城市建设者对城市建设和发展做出最优决策。
对城市建设和发展做出最优决策。
从而减少数据量和提高数据处理效率;
对后续聚类算法的结果质量有一定的提升;
而得到利于解释的轨迹类别特征,即人群画像。
应视为本发明的保护范围。