一种兴趣点poi融合数据验证的方法、装置及设备
技术领域
1.本技术属于地理信息数据处理技术领域,尤其涉及一种兴趣点poi融合数据验证的方法、装置、装置及设备。
背景技术:2.随着计算机科学的蓬勃发展,大数据技术的日益成熟,兴趣点(point of interest,poi)在城市规划和城市服务中扮演着重要角色。兴趣点是指一切可以被抽象为点的地理实体,每一条poi数据包含地理实体的名称、经纬度、地址、类别等信息,涵盖了广泛的地理空间和位置属性。
3.目前,人们对poi数据的研究正在从单个或少数poi数据,扩大到对成千上万poi数据的宏观感知,从而对poi数据选址等需求进行更优的决策。由于不同的数据源各有优劣势,为了更好地根据需求进行决策,融合数据可以发挥不同数据源的优势。因各数据源对同一poi的名称、地址等重要信息不尽相同,需对融合数据的正确性进行验证,但现有的验证方法人工成本高,验证效率低,验证准确性有待提高。
技术实现要素:4.本技术实施例提供一种兴趣点poi融合数据验证的方法、装置及设备,能够降低验证poi融合数据的人工成本,提高验证效率和验证准确性。
5.第一方面,本技术实施例提供一种兴趣点poi融合数据验证的方法,方法包括:获取兴趣点poi的第一poi融合数据和第二poi融合数据,第一poi融合数据为与第二poi融合数据不同来源的poi数据,第一poi融合数据包括第一经纬度和第一文本信息,第二poi融合数据包括第二经纬度和第二文本信息;根据第一经纬度和第二经纬度,计算第一poi融合数据和第二poi融合数据的坐标距离;根据第一文本信息和第二文本信息,计算第一poi融合数据和第二poi融合数据的文本相似度;当坐标距离小于第一预设阈值,且文本相似度值大于第二预设阈值时,生成验证成功信息。
6.在一些可能的实现方式中,第一文本信息包括第一名称文本信息和第一地址文本信息,第二文本信息包括第二名称文本信息和第二地址文本信息,文本相似度包括名称文本相似度和地址文本相似度;根据第一文本信息和第二文本信息,计算第一poi融合数据和第二poi融合数据的文本相似度,包括:根据第一名称文本信息和第二名称文本信息,计算第一poi融合数据和第二poi融合数据的名称文本相似度;根据第一地址文本信息和第二地址文本信息,计算第一poi融合数据和第二poi融合数据的地址文本相似度。
7.在一些可能的实现方式中,当坐标距离小于第一预设阈值,且文本相似度值大于第二预设阈值时,生成验证成功信息,包括:当坐标距离小于第一预设阈值,且名称文本相似度大于第二预设阈值时,或者,当坐标距离小于第一预设阈值,且地址文本相似度大于第二预设阈值时,生成验证成功信息。
8.在一些可能的实现方式中,根据第一文本信息和第二文本信息,计算第一poi融合数据和第二poi融合数据的文本相似度,包括:根据第一poi融合数据、第二poi融合数据和坐标距离,生成逗号分隔值csv格式文件,csv格式文件包括第一文本信息和第二文本信息;提取csv格式文件中的第一文本信息和第二文本信息;根据第一文本信息和第二文本信息,计算第一poi融合数据和第二poi融合数据的文本相似度。
9.在一些可能的实现方式中,提取csv格式文件中的第一文本信息和第二文本信息之后,方法还包括:采用预设字符替换第一文本信息和第二文本信息中的空值。
10.在一些可能的实现方式中,根据第一文本信息和第二文本信息,计算第一poi融合数据和所述第二poi融合数据的文本相似度,包括:根据第一文本信息和第二文本信息,通过预设可调用函数计算第一poi融合数据和第二poi融合数据的文本相似度。
11.第二方面,本技术实施例提供了一种兴趣点poi融合数据验证的装置,装置包括:获取模块,用于获取兴趣点poi的第一poi融合数据和第二poi融合数据,第一poi融合数据为与第二poi融合数据不同来源的poi数据,第一poi融合数据包括第一经纬度和第一文本信息,第二poi融合数据包括第二经纬度和第二文本信息;计算模块,用于根据第一经纬度和第二经纬度,计算第一poi融合数据和第二poi融合数据的坐标距离;计算模块,还用于根据第一文本信息和第二文本信息,计算第一poi融合数据和第二poi融合数据的文本相似度;生成模块,用于当坐标距离小于第一预设阈值,且文本相似度值大于第二预设阈值时,生成验证成功信息。
12.在一些可能的实现方式中,第一文本信息包括第一名称文本信息和第一地址文本信息,第二文本信息包括第二名称文本信息和第二地址文本信息,文本相似度包括名称文本相似度和地址文本相似度;计算模块,具体用于:根据第一名称文本信息和第二名称文本信息,计算第一poi融合数据和第二poi融合数据的名称文本相似度;根据第一地址文本信息和第二地址文本信息,计算第一poi融合数据和第二poi融合数据的地址文本相似度。
13.第三方面,本技术实施例提供了一种兴趣点poi融合数据验证设备,设备包括:处理器,以及存储有计算机程序指令的存储器;处理器读取并执行计算机程序指令,以实现第一方面或者第一方面任意一种可能的实现方式中的兴趣点poi融合数据验证的方法。
14.第四方面,本技术实施例提供了一种计算机可读存储介质,计算机存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现第一方面或者第一方面任意一种可能的实现方式中的兴趣点poi融合数据验证的方法。
15.本技术实施例提供的一种兴趣点poi融合数据验证的方法、装置及设备,获取兴趣点poi的第一poi融合数据和第二poi融合数据,第一poi融合数据为与第二poi融合数据不同来源的poi数据,第一poi融合数据包括第一经纬度和第一文本信息,第二poi融合数据包括第二经纬度和第二文本信息,根据第一经纬度和第二经纬度,以及第一文本信息和第二文本信息,分别计算第一poi融合数据和第二poi融合数据的坐标距离和文本相似度,当坐标距离小于第一预设阈值,且文本相似度值大于第二预设阈值时,生成验证成功信息,无需人工匹配和验证,不仅降低了人工成本,还提高了验证效率和验证准确性。
附图说明
16.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
17.图1是本技术实施例提供的一种兴趣点poi融合数据验证方法的流程示意图。
18.图2是本技术实施例提供的一种兴趣点poi融合数据验证装置的结构示意图。
19.图3是本技术实施例提供的一种兴趣点poi融合数据验证设备的结构示意图。
具体实施方式
20.下面将详细描述本技术的各个方面的特征和示例性实施例,为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本技术进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本技术,而不是限定本技术。对于本领域技术人员来说,本技术可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本技术的示例来提供对本技术更好的理解。
21.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
22.因各数据源对同一兴趣点poi的名称、地址等重要信息不尽相同,需对融合数据的正确性进行验证。现有技术中,验证融合数据的正确性的方法有很多种,比如说,将不同来源的poi经纬度分别映射到地图,根据地图底图查看是否是同一poi。假设针对10000对融合后的poi,每个一一对应映射到地图上,再人工验证,如果每对poi需要耗时30s,那么需要10000*30/60/60=83.3h/人,耗费大量人力,验证效率低。或者,根据不同来源的poi距离过滤,虽然该方法可以快速过滤poi数据,但是会过滤掉临近poi的数据,比如说,对于兴趣点poi临近的大城市,会缺失很多poi数据,影响poi融合数据的验证准确性。或者,根据poi数
据中的poi名称人工匹配。尽管该方法相对较快,但是需要人工匹配,且部分连锁poi名称相似,但实际可能距离较远,不仅人工成本高,而且验证准确性低。
23.为了解决现有技术问题,本技术实施例提供了一种兴趣点poi融合数据验证的方法、装置及设备,在本技术实施例中,获取兴趣点poi的第一poi融合数据和第二poi融合数据,第一poi融合数据为与第二poi融合数据不同来源的poi数据,第一poi融合数据包括第一经纬度和第一文本信息,第二poi融合数据包括第二经纬度和第二文本信息,根据第一经纬度和第二经纬度,以及第一文本信息和第二文本信息,分别计算第一poi融合数据和第二poi融合数据的坐标距离和文本相似度,当坐标距离小于第一预设阈值,且文本相似度值大于第二预设阈值时,生成验证成功信息,无需人工匹配和验证,不仅降低了人工成本,还提高了验证效率和验证准确性。
24.下面首先对本技术实施例所提供的兴趣点poi融合数据验证的方法进行介绍。图1示出了本技术一个实施例提供的兴趣点poi融合数据验证方法的流程示意图。如图1所示,该方法可以包括以下步骤:s110,获取兴趣点poi的第一poi融合数据和第二poi融合数据,第一poi融合数据为与第二poi融合数据不同来源的poi数据,第一poi融合数据包括第一经纬度和第一文本信息,第二poi融合数据包括第二经纬度和第二文本信息。
25.poi融合数据是融合兴趣点poi同种来源的数据得到的,为验证poi融合数据的准确性,将不同来源的poi融合数据进行对比,判断不同来源的poi融合数据是否表示同一兴趣点poi。
26.第一poi融合数据和第二poi融合数据可以表示为一组数据匹配对,以两种不同的来源分别为a来源和b来源为例,第一poi融合数据为a来源的poi融合数据,包括a1数据、a2数据、a3数据,第二poi融合数据为b来源的poi融合数据,包括b1数据、b2数据、b3数据,第一poi融合数据和第二poi融合数据的数据匹配对可以为a1数据-b1数据、a1数据-b2数据、a1数据-b3数据、a2数据-b1数据、a2数据-b2数据、a2数据-b3数据、a3数据-b1数据、a3数据-b2数据、a3数据-b3数据。
27.第一经纬度和第一文本信息为a来源的数据,包括a1数据的经纬度和文本信息、a2数据的经纬度和文本信息、a3数据的经纬度和文本信息。
28.第二经纬度和第二文本信息为b来源的数据,包括b1数据的经纬度和文本信息、b2数据的经纬度和文本信息、b3数据的经纬度和文本信息。
29.兴趣点poi的数据可以直接从一些专业类服务网站上抓取或购买,也可以直接在公开的地图服务标注中进行筛选和获取。完成融合后的poi数据保存至相应的数据库中,第一poi融合数据和第二融合数据可以直接从相应的数据库中获取。
30.s120,根据第一经纬度和第二经纬度,计算第一poi融合数据和第二poi融合数据的坐标距离。
31.根据第一经纬度和第二经纬度,采用用户自定义函数(user-defined functions,udf)计算第一poi融合数据和第二poi融合数据的坐标距离。
32.s130,根据第一文本信息和第二文本信息,计算第一poi融合数据和第二poi融合数据的文本相似度。
33.文本相似度用于判断第一poi融合数据和第二poi融合数据的文本信息是否为同
一兴趣点poi的文本信息。
34.具体的,根据第一poi融合数据、第二poi融合数据和坐标距离,生成逗号分隔值csv格式文件,其中,csv格式文件包括第一文本信息和第二文本信息,采用pandas加载csv格式文件,提取csv格式文件中的第一文本信息和第二文本信息,根据第一文本信息和第二文本信息,通过预设可调用函数计算第一poi融合数据和第二poi融合数据的文本相似度。
35.预设可调用函数可以为difflib.sequencematcher函数,该函数的计算方法为:ratio = 2*matchs/(length(a)+length(b)),ratio表示a数据和b数据的文本相似度,matchs表示a数据和b数据的相同文本数,length(a)表示a数据的文本长度,length(b)表示b数据的文本长度。例如,a数据为北京槐房万达广场,b数据为万达广场,那么,length(a)为8,length(b)为4,matchs为4,a数据和b数据的文本相似度ratio = 2*4/(8+4)= 0.666667。
36.当文本信息中存在空值时,会直接生成错误报告,为提高poi数据验证的效率和准确性,在提取csv格式文件中的第一文本信息和第二文本信息之后,采用预设字符替换第一文本信息和第二文本信息中的空值。预设字符为任意字母,比如说,将第一文本信息和第二文本信息中的空值替换为a。然后,根据用字母替换空值后的第一文本信息和第二文本信息,通过difflib.sequencematcher函数计算第一poi融合数据和第二poi融合数据的文本相似度。
37.在一些实施例中,第一文本信息包括第一名称文本信息和第一地址文本信息,第二文本信息包括第二名称文本信息和第二地址文本信息,文本相似度包括名称文本相似度和地址文本相似度;根据第一文本信息和第二文本信息,计算第一poi融合数据和第二poi融合数据的文本相似度,包括:根据第一名称文本信息和第二名称文本信息,调用difflib.sequencematcher函数计算第一poi融合数据和第二poi融合数据的名称文本相似度。
38.根据第一地址文本信息和第二地址文本信息,调用difflib.sequencematcher函数计算第一poi融合数据和第二poi融合数据的地址文本相似度。
39.s140,当坐标距离小于第一预设阈值,且文本相似度值大于第二预设阈值时,生成验证成功信息。
40.根据坐标距离和本文相似度值与其对应的预设阈值的大小关系,对poi融合数据进行验证。
41.第一预设阈值和第二预设阈值可以根据用户的需求进行设置,第一预设阈值设置为整数,以10 的倍数为最佳阈值参数,比如,50,第二预设阈值设置为小于1的小数,比如,0.4。
42.如果第一预设阈值设置的参数较大,那么第二预设阈值设置的参数也较大,如果第一预设阈值设置的参数较小,那么第二预设阈值设置的参数也较小。例如,将第一预设阈值设置为500,将第二预设阈值设置为0.6,若将第一预设阈值设置为300,那么,将第二预设阈值设置为0.5,若将第一预设阈值设置为100,便将第二预设阈值设置为0.4。
43.当坐标距离小于第一预设阈值,且文本相似度值大于第二预设阈值时,说明第一poi融合数据和第二poi融合数据表示同一个兴趣点poi,生成验证成功信息,否则,生成验证失败信息。
44.具体的,当坐标距离小于第一预设阈值,且名称文本相似度大于第二预设阈值时,或者,当坐标距离小于第一预设阈值,且地址文本相似度大于第二预设阈值时,生成验证成功信息。
45.验证成功信息和验证失败信息可以为字母和数字,比如说,验证成功信息为1,验证失败信息为0。如果生成的返回值为1,那么认为第一poi融合数据和第二poi融合数据表示同一个兴趣点poi,如果生成的返回值为0,那么认为第一poi融合数据和第二poi融合数据表示不同的兴趣点poi。
46.以第一预设阈值设置为500,将第二预设阈值设置为0.6为例,当坐标距离小于500,且名称文本相似度大于0.6时,生成验证成功信息,否则生成验证失败信息。或者,当坐标距离小于500,且地址文本相似度大于0.6时,生成验证成功信息,否则生成验证失败信息。
47.为避免过滤掉临近兴趣点poi的数据,设置多个不同梯度判断条件,比如说,设置4个判断条件,将第一预设阈值分别设置为500、300、100、50,第二预设阈值分别设置为0.6、0.5、0.4、0.3,4个判断条件分别为:1、当坐标距离小于500,且名称文本相似度大于0.6时,或者,当坐标距离小于500,且地址文本相似度大于0.6时。
48.2、当坐标距离小于300,且名称文本相似度大于0.5时,或者,当坐标距离小于300,且地址文本相似度大于0.5时。
49.3、当坐标距离小于100,且名称文本相似度大于0.4时,或者,当坐标距离小于100,且地址文本相似度大于0.4时。
50.4、当坐标距离小于50,且名称文本相似度大于0.3时,或者,当坐标距离小于50,且地址文本相似度大于0.3时。
51.在完成验证之后,将验证结果生成csv格式文件,以便用户根据验证结果满足使用需求。
52.在本技术实施例中,获取兴趣点poi的第一poi融合数据和第二poi融合数据,第一poi融合数据为与第二poi融合数据不同来源的poi数据,第一poi融合数据包括第一经纬度和第一文本信息,第二poi融合数据包括第二经纬度和第二文本信息,根据第一经纬度和第二经纬度,以及第一文本信息和第二文本信息,分别计算第一poi融合数据和第二poi融合数据的坐标距离和文本相似度,当坐标距离小于第一预设阈值,且文本相似度值大于第二预设阈值时,生成验证成功信息,无需人工匹配和验证,不仅降低了人工成本,还提高了验证效率和验证准确性。
53.图2是本技术实施例提供了一种兴趣点poi融合数据验证装置200的结构示意图。如图2所示,该装置可以包括获取模块210,计算模块220和生成模块230。
54.获取模块210,用于获取兴趣点poi的第一poi融合数据和第二poi融合数据,第一poi融合数据为与第二poi融合数据不同来源的poi数据,第一poi融合数据包括第一经纬度和第一文本信息,第二poi融合数据包括第二经纬度和第二文本信息。
55.计算模块220,用于根据第一经纬度和第二经纬度,计算第一poi融合数据和第二poi融合数据的坐标距离。
56.计算模块220,还用于根据第一文本信息和第二文本信息,计算第一poi融合数据
和第二poi融合数据的文本相似度。
57.生成模块230,用于当坐标距离小于第一预设阈值,且文本相似度值大于第二预设阈值时,生成验证成功信息。
58.在一些实施例中,第一文本信息包括第一名称文本信息和第一地址文本信息,第二文本信息包括第二名称文本信息和第二地址文本信息,文本相似度包括名称文本相似度和地址文本相似度;计算模块220,具体用于根据第一名称文本信息和第二名称文本信息,计算第一poi融合数据和第二poi融合数据的名称文本相似度。
59.根据第一地址文本信息和第二地址文本信息,计算第一poi融合数据和第二poi融合数据的地址文本相似度。
60.在一些实施例中,生成模块230,具体用于当坐标距离小于第一预设阈值,且名称文本相似度大于第二预设阈值时,或者,当坐标距离小于第一预设阈值,且地址文本相似度大于第二预设阈值时,生成验证成功信息。
61.在一些实施例中,计算模块220,具体用于根据第一poi融合数据、第二poi融合数据和坐标距离,生成逗号分隔值csv格式文件,csv格式文件包括第一文本信息和第二文本信息。
62.提取csv格式文件中的第一文本信息和第二文本信息。
63.根据第一文本信息和第二文本信息,计算第一poi融合数据和第二poi融合数据的文本相似度。
64.在一些实施例中,该装置还包括替换模块,用于提取csv格式文件中的第一文本信息和第二文本信息之后,采用预设字符替换第一文本信息和第二文本信息中的空值。
65.在一些实施例中,计算模块220,具体用于根据第一文本信息和第二文本信息,通过预设可调用函数计算第一poi融合数据和第二poi融合数据的文本相似度。
66.在本技术实施例中,无需人工匹配和验证,不仅降低了人工成本,还提高了验证效率和验证准确性。
67.图2所示装置中的各个模块具有实现图1中各个步骤的功能,并能达到其相应的技术效果,为简洁描述,在此不再赘述。
68.图3示出了本技术实施例提供的兴趣点poi融合数据验证设备的硬件结构示意图。
69.在兴趣点poi融合数据验证设备可以包括处理器301以及存储有计算机程序指令的存储器302。
70.具体地,上述处理器301可以包括中央处理器(central processing unit,cpu),或者特定集成电路(application specific integrated circuit ,asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
71.存储器302可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器302可包括硬盘驱动器(hard disk drive,hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,usb)驱动器或者两个或更多个以上这些的组合。在一个实例中,存储器302可以包括可移除或不可移除(或固定)的介质,或者存储器302是非易失性固态存储器。存储器302可在综合网关容灾设备的内部或外部。
72.在一个实例中,存储器302可包括只读存储器(rom),随机存取存储器(ram),磁盘
frequency,rf)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
81.还需要说明的是,本技术中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本技术不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
82.上面参考根据本技术的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本技术的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
83.以上所述,仅为本技术的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。