1.本技术涉及通信技术领域,具体而言,涉及一种常驻小区的获取方法、常驻小区的获取装置、电子设备以及存储介质。
背景技术:2.随着金融科技(fintech),尤其是互联网科技金融的不断发展,越来越多的技术(如人工智能、大数据、云存储等)应用在金融领域,但金融领域也对各类技术提出了更高的要求,如要求对用户常驻地址的精准分析。所谓用户常驻点(即用户的常驻点),指的用户在一段时间内出现频次超过一定阈值的地点,在现有技术中,用户常驻点的发现,一般需要通过对用户上报的经纬度进行聚类来得到。例如,服务器可以获取用户所在移动终端的终端标识,比如国际移动设备识别码(mei,internationalmobile equipment identity)等,然后根据该终端标识确定该移动终端当前所在的经纬度,对该经纬度进行聚类,并基于聚类结果确定用户常驻点等等。但是,利用现有的方法获取用户的常驻点的精确度比较低。
技术实现要素:3.为解决上述技术问题,本技术的实施例提供了一种常驻小区的获取方法、常驻小区的获取装置、电子设备以及计算机可读存储介质,能够提高获取的用户常驻小区的精度。
4.本技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本技术的实践而习得。
5.根据本技术实施例的一个方面,提供了一种常驻小区的获取方法,包括:获取用户在预设时间段内的多个地理位置信息,地理位置信息包括经纬度坐标和时间戳;确定多个地理位置信息分布的小区;利用基于密度的聚类算法模型对多个地理位置信息进行聚类处理,得到聚类结果,基于密度聚类模型中含有的邻域参数正比于多个地理位置信息分布的小区的面积;根据聚类结果和多个地理位置信息分布的小区确定用户的常驻小区。
6.根据本技术实施例的一个方面,提供了一种常驻小区的获取装置,包括:获取模块,用于获取用户在预设时间段内的多个地理位置信息,地理位置信息包括经纬度坐标和时间戳;确定模块,用于确定多个地理位置信息分布的小区;聚类模块,用于利用基于密度的聚类算法模型对多个地理位置信息进行聚类处理,得到聚类结果,基于密度聚类模型中含有的邻域参数值正比于多个地理位置信息分布的小区的面积;结果获取模块,用于根据聚类结果和多个地理位置信息分布的小区确定用户的常驻小区。
7.根据本技术实施例的一个方面,提供了一种电子设备,包括处理器及存储器,存储器上存储有计算机可读指令,计算机可读指令被处理器执行时实现如上的常驻小区的获取方法。
8.根据本技术实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当计算机可读指令被计算机的处理器执行时,使计算机执行如前提供的常驻小区的获取方法。
9.根据本技术实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的常驻小区的获取方法。
10.在本技术的实施例所提供的技术方案中,利用用户的多个地理位置信息分布的小区面积大小控制基于密度聚类算法模型的邻域参数大小,一方面,能够自动给定聚类处理过程的邻域参数,提高聚类自动化程度;另一方面,设置基于密度的聚类算法模型的邻域参数值正比于小区面积,能够避免邻域参数值过小造成模型将用户正常的地理位置信息判定为噪声点,也能够避免邻域参数值过大,造成模型将噪声点当成正常的地理位置信息参与聚类处理,带来较大的误差,从而能够提高获取的常驻小区的精度。
11.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
12.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
13.图1是本技术的一示例性实施例示出的常驻小区的获取方法的流程图;
14.图2是图1所示实施例中步骤s200一示例性实施例的流程图;
15.图3是图1所示实施例中步骤s300一示例性实施例的流程图;
16.图4是图3所示实施例中步骤s310一示例性实施例的流程图;
17.图5是图1所示实施例中的步骤s400一示例性实施例的流程图;
18.图6是图5所示实施例中的步骤s410一示例性实施例的流程图;
19.图7是本技术一示例性实施例示出的常驻小区的获取装置的框图。
具体实施方式
20.这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
21.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
22.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
23.还需要说明的是:在本技术中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b可以表示:单独存在a,同时存
在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
24.用户的常驻地址是指用户经常驻扎或者居住的一个地方,或者指用户在一段时间内出现频次超过一定阈值的地点,简称常驻地。用户的常驻小区,是指用户的常驻地址所属的小区。
25.现实生活中,有很多应用场景需要获取用户的常驻地址,例如,当用户到达某个地区时,系统会自动给用户推送附近的美食,当用户回到家时,会自动帮用户开空调等等,而这些往往需要基于用户常驻地址的发现。对于运营商来说,如何挖掘岀用户常驻地信息,甚至进一步挖掘岀用户的工作地及居住地或职住地,从而运营商可以有针对性、有目的地开展营销工作,可以对用户进行定点营销或网络测试,这对于宽带业务、手机入网等都是非常有益的。
26.现有技术一般利用基于密度的聚类算法对用户上报的经纬度信息进行聚类,进而经过聚类结果得到用户的常驻小区。基于密度的聚类算法模型是根据样本的密度分布来进行聚类,通常情况下,密度聚类从样本密度的角度出发,来考查样本之间的可连接性,并基于可连接样本不断扩展聚类簇,以获得最终的聚类结果。相比其他的聚类方法,该模型可以在有噪音的数据中发现各种形状和各种大小的簇。其中最著名的算法就是dbscan(density-based spatialclustering of applicationswith noise,基于密度的噪声应用空间聚类)模型。
27.dbscan算法模型有两个参数:邻域参数eps和密度阈值minpts,具体步骤为:
28.1、以每一个数据点xi为圆心,以eps为半径画一个圆,这个圆被称为xi的eps邻域。
29.2、对xi的eps邻域内包含的点进行计数,如果一xi的eps邻域的点的数目超过了密度阈值minpts,那么将xi的eps邻域的圆心记为核心点,又称核心对象;如果某个点的eps邻域内点的个数小于密度阈值minpts,但是落在核心点的eps邻域内,则称该点为边界点;既不是核心点也不是边界点的点,就是噪声点。
30.3、核心点xi的eps邻域内的所有的点,都是xi的直接密度直达。如果xj由xi密度直达,xk由xj密度直达,
……
,xn由xi密度直达,那么xn由xi密度可达,这个性质说明了密度直达的传递性,可以推导出密度可达。
31.4、如果对于xk,使xi和xj都可以由xk密度可达,那么,就称xi和xj密度相连,将密度相连的点连接在一起,就形成了聚类簇。
32.用更通俗易懂的话描述就是如果一个点的eps邻域内的点的总数小于密度阈值minpts,那么该点就是低密度点;如果大于密度阈值minpts,就是高密度点;如果一个高密度点在另外一个高密度点的eps邻域内,就直接把这两个高密度点相连,这是核心点;如果一个低密度点在高密度点的eps邻域内,就将低密度点连在距离它最近的高密度点上,这是边界点;不在任何高密度点的eps邻域内的低密度点,就是异常点。
33.dbscan算法模型的优点:
34.1、对噪声不敏感。这是因为该算法模型能够较好地判断离群点,并且即使错判离群点,对最终的聚类结果也没什么影响。
35.2、能发现任意形状的簇。这是因为dbscan算法模型是靠不断连接邻域内高密度点来发现簇的,只需要定义邻域参数和密度阈值,因此可以发现不同形状,不同大小的簇。
36.为了得到合适的聚类中心,通常会根据经验值人为设定对经纬度进行密度聚类时
所用到的邻域参数值和密度阈值。具体地,通常设minpts=2*dim,dim为用户的地理位置信息的维度。eps常常用k-距离曲线(k-distance graph)得到,计算每个样本与所有样本的距离,选择第k个最近邻的距离并从大到小排序,得到k-距离曲线,曲线拐点对应的距离设置为eps。如果觉得通过经验值得到的eps和minpts进行聚类的结果不好,可以适当调整eps和minpts的值,经过多次迭代计算对比,选择最合适的参数值。
37.显然,基于利用经验获取的eps和minpts两个参数值对地理位置信息进行聚类,并根据聚类结果得到的用户常驻小区的精确度不高。
38.为解决上述问题,本技术的实施例分别提出了常驻小区的获取方法、常驻小区的获取装置、电子设备以及计算机可读存储介质,以下将对这些实施例进行详细描述。
39.请参阅图1,图1是本技术的一示例性实施例示出的常驻小区的获取方法的流程图,方法包括以下步骤:
40.步骤s100:获取用户在预设时间段内的多个地理位置信息,地理位置信息包括经纬度坐标和时间戳。
41.用户的多个地理位置信息可以是用户终端通过全球定位系统(globalpositioning system,gps)对终端进行定位得到的gps信息,但并不限于此,还可以是通过其他定位方式获取到的定位信息,如,可以基于获取的手机信号塔(蜂窝塔)数据、用户设备的wifi数据、用户设备的ip地址信息、用户报告信息等方式来搜集用户的地理位置信息。
42.在现有技术中,大部分互联网公司通过应用程序中的sdk(software developmentkit,软件工具开发包)采集该应用程序的用户每次使用该应用程序时所在的经纬度,以获取每个用户的地理位置信息。
43.时间戳是能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。时间戳的提出主要是为用户提供一份电子证据,以证明用户的某些数据的产生时间。在实际应用上,它可以使用在包括电子商务、金融活动的各个方面,尤其可以用来支撑公开密钥基础设施的“不可否认”服务。时间戳服务的本质是将用户的数据和当前准确时间绑定,在此基础上用时间戳系统的数字证书进行签名,凭借时间戳系统在法律上的权威授权地位,产生可用于法律证据的时间戳,用来证明用户数据的产生时间,达到“不可否认”或“抗抵赖”的目标。时间戳系统的组成主要包括三个部分:可信时间源、签名系统和时间戳数据库。
44.在本实施例中,用户的地理位置信息包括的时间戳表示用户位于对应地理位置信息的经纬度坐标处,这件事所发生的准确时间。
45.用户的地理位置信息包括用户所在地理位置信息对应的经度信息、纬度信息和时间戳,例如,用户a在2021年1月1日的10:00所在位置的经度信息为东经45度,纬度信息为北纬80度。
46.步骤s200:确定多个地理位置信息分布的小区。
47.示例性地,若一个地理位置信息的经纬度信息属于一个小区的范围内,则确定这个小区为用户的多个地理位置信息分布的小区之一。示例性地,请求地图接口确定用户的地理位置信息的经纬度信息所属的小区范围。地图接口就是地图应用程序接口(map application programming interface),地图应用程序接口是一种通过javascript(或其他语言)将地图嵌入到网页的应用程序接口。该应用程序接口提供了大量实用工具用以处
理地图,并通过各种服务向地图添加内容,从而使用户能够在网站上创建功能全面的地图应用程序。具体而言,地图应用程序接口能够将用户所需要的数据呈现于地图之上,不仅仅是可视化,更是探索、挖掘、发现数据的新的价值之旅,能够用于连接地图所有的信息。本实施例可以利用高德地图接口、谷歌地图接口、百度地图接口等等来确定用户的地理位置信息的经纬度信息所属的小区范围。
48.多个地理位置信息分布的小区根据实际分布情况可以为一个或多个,可以理解的是,若多个地理位置信息分布的小区只有一个时,那么这个小区就是用户的常驻小区,无需再对多个地理位置信息进行聚类。
49.步骤s300:利用基于密度的聚类算法模型对多个地理位置信息进行聚类处理,得到聚类结果。
50.示例性地,可以利用dbscan算法模型对多个地理位置信息进行聚类。当然,本实施例并不限定基于密度的聚类算法模型的具体种类,只要是含有邻域参数的基于密度的聚类算法模型,都适用于本实施例提供的常驻小区的获取方法,例如,optics(ordering points to identify the clustering structure)算法模型。
51.本实施例设置基于密度聚类模型中含有的邻域参数值正比于多个地理位置信息分布的小区的面积。显然,多个地理位置信息分布的小区可能为多个,若多个小区的面积大小不同,则可能存在多个与小区面积正相关的邻域参数值,本实施例针对每个小区,分别将该小区对应的邻域参数作为dbscan算法模型的邻域参数值,对多个地理位置信息进行聚类处理,得到对应于每个小区的聚类结果。
52.步骤s400:根据聚类结果和多个地理位置信息分布的小区确定用户的常驻小区。
53.在本实施例中,利用所有小区对应的聚类结果从多个地理位置信息分布的多个小区中选出一个作为用户的常驻小区。
54.示例性地,步骤s400可以包括以下步骤:
55.针对每个小区,获取对应的聚类结果的每个聚类簇属于对应小区范围的地理位置信息个数;
56.选出属于对应小区范围的地理位置信息个数最多的聚类簇,记为最优聚类簇;
57.将最优聚类簇包括在小区范围内的地理位置信息个数作为对应小区的得分;
58.从多个小区中选出得分最高的小区作为用户的常驻小区。
59.在本实施例中,由于小区的得分与对应小区的最优聚类簇中属于对应小区范围内的地理信息位置个数成正比,因此,最终得到的用户的常驻小区的最优聚类簇中所包含的属于该最优聚类簇的地理位置信息个数最多。
60.需要说明的是,本实施例获取用户常驻小区的方式仅仅作为示例,还可以通过其他方式获取用户的常驻小区,在此不做过多叙述。
61.本实施例利用用户的多个地理位置信息分布的小区面积大小控制基于密度聚类算法模型的邻域参数值的大小,一方面,能够自动给定聚类处理过程的邻域参数值,提高聚类自动化程度;另一方面,设置基于密度的聚类算法模型的邻域参数正比于小区面积,能够避免邻域参数值过小造成模型将用户正常的地理位置信息判定为噪声点,也能够避免邻域参数值过大,造成模型将噪声点当成正常的地理位置信息参与聚类,带来较大的误差。从而本技术提供的常驻小区的获取方法能够提高获取的常驻小区的精度。
62.请参阅图2,图2是图1所示实施例中步骤s200一示例性实施例的流程图,步骤s200包括以下步骤:
63.步骤s210:获取每个地理位置信息对应的小区,得到多个候选小区。
64.在本实施例中,每个地理位置信息对应的小区就是该地理位置信息的经纬度坐标所属的小区,示例性地,请求地图接口确定该地理位置信息的经纬度坐标所属的小区,地图接口可以是高德地图、百度地图等等,在此不做具体限定。
65.在确定每个地理位置信息的经纬度坐标所属的小区之后,得到的所有小区都有可能是用户的常驻小区,因此,本实施例将所有用户的地理位置信息的经纬度坐标所属的小区作为候选小区。
66.步骤s220:统计每个候选小区所包含的地理位置信息的数量。
67.步骤s230:若候选小区所包含的地理位置信息的数量大于预设阈值,则确定对应候选小区为多个地理位置信息分布的小区。
68.在本实施例中,预设阈值可以根据实际应用场景或实际需求设定,在此不做具体限定。示例性地,预设阈值根据用户的地理位置信息的数量多少进行设定,例如获取的用户地理位置信息相对较多,则设置预设阈值设置稍大,反之获取的用户地理位置信息相对较少,则设置预设阈值稍小。
69.本实施例在一些小区所包含的用户的地理位置信息比较少时,直接将这样的小区筛除。示例性地,用户可能是在常驻小区之间偶尔经过其他小区,在这种情况下,属于该小区的地理位置信息的数量通常会比较少,例如1个、2个等。由于常驻小区的一个特点是属于该小区的用户的地理位置信息数量通常比较多,因此,在属于一个小区的地理位置信息数量很少时,本实施例可以直接将这种小区筛除,无需对其进行分析。通过这种方式,可以减少工作量,提高获取用户常驻小区的效率。
70.请参阅图3,图3是图1所示实施例中步骤s300一示例性实施例的流程图,步骤s300包括以下步骤s310至步骤s340,详细介绍如下:
71.步骤s310:确定多个地理位置信息分布的小区的面积。
72.在本实施例中,多个地理位置信息分布的小区的面积可以通过多种方式来获取,例如,通过实地测量的方式获取,或者从历史数据库中获取等等,在此不做过多限定。
73.请参阅图4,图4是图3所示实施例中步骤s310一示例性实施例的流程图,步骤s310包括以下步骤:
74.步骤s311:请求地图接口以获取多个地理位置信息分布的小区的轮廓边界。
75.地图接口可以是高德地图接口、百度地图接口等等,在此不做限定。百度地图接口是开发者为用户提供的一套基于百度地图服务的应用接口,高德地图接口是开发者为用户提供的一套基于高德地图服务的应用接口。
76.现有技术中,地图软件通常标记有每个小区的轮廓边界,小区的轮廓边界由多个轮廓边界点,轮廓边界点包括其对应的经纬度坐标。因此本实施例可以通过请求地图接口获取用户的多个地理位置信息分布的小区的轮廓边界。
77.步骤s312:根据轮廓边界确定多个地理位置信息分布的小区的面积。
78.示例性地,对每个小区的轮廓边界对应的多个经纬度坐标进行曲线拟合,得到对应小区的轮廓边界曲线,然后再基于对应小区的轮廓边界曲线进行积分运算,得到对应小
区的小区面积。
79.曲线拟合用连续曲线近似地刻画或比拟平面上离散点组所表示的坐标之间的函数关系的一种数据处理方法。在科学实验或社会活动中,通过实验或观测得到量x与y的一组数据对(xi,yi),其中,i=1,2,
……
,m,各xi是彼此不同的,用一类与数据的背景材料规律相适应的解析表达式,y=f(x,c)来反映量x与y之间的依赖关系,即在一定意义下“最佳”地逼近或拟合已知数据。f(x,c)常称作拟合模型,式中c是一些待定参数,当c在f中线性出现时,称为线性模型,否则称为非线性模型。现有技术有许多衡量拟合优度的标准,最常用的一种做法是选择参数c使得拟合模型与实际观测值在各点的残差(或离差)ek=y
k-f(xk,c)的加权平方和达到最小,此时所求曲线称作在加权最小二乘意义下对数据的拟合曲线。有许多求解拟合曲线的成功方法,对于线性模型一般通过建立和求解方程组来确定参数,从而求得拟合曲线。至于非线性模型,则要借助求解非线性方程组或用最优化方法求得所需参数才能得到拟合曲线,有时称之为非线性最小二乘拟合。
80.步骤s320:获取多个地理位置信息分布的小区的面积与地理位置信息的总数之间的比值。
81.本实施例获取每个小区面积与地理位置信息总数之间的比值。
82.步骤s330:以比值为圆面积计算对应的圆半径,并将圆半径作为基于密度的聚类算法模型中含有的邻域参数值。
83.不妨设圆面积为s,圆面积对应的圆半径为r,则有公式(1):
[0084][0085]
本实施例可以通过上述方式精确确定基于密度的聚类算法模型的邻域参数值,并且由于本实施例确定的邻域参数值与用户的多个地理位置信息所分布的小区成正比,能够避免邻域参数值过小造成模型将用户正常的地理位置信息判定为噪声点,也能够避免邻域参数值过大,造成模型将噪声点当成正常的地理位置信息参与聚类处理,带来较大的误差,从而本技术提供的常驻小区的获取方法能够提高获取的常驻小区的精度。
[0086]
步骤s340:利用包含有邻域参数的聚类算法模型对多个地理位置信息进行聚类处理,得到聚类结果。
[0087]
在本实施例中,每个小区对应一个邻域参数值,遍历所有邻域参数值,利用基于密度的聚类算法模型对多个地理位置信息进行聚类,得到每个小区对应的聚类结果。
[0088]
可选的,参阅图5,图5是图1所示实施例中的步骤s400一示例性实施例的流程图,在本实施例中,多个地理位置信息分布的小区包括多个小区,聚类结果包括对应于每个小区的至少一个地理位置信息簇。
[0089]
如图5所示,步骤s400包括以下步骤:
[0090]
步骤s410:获取每个小区的第一中心,以及获取对应小区的每个地理位置信息簇的第二中心。
[0091]
在本实施例中,小区的第一中心就是对应小区的几何中心或形心,地理位置信息簇的第二中心就是对应地理位置信息簇的几何中心或形心。n维空间中一个对象x的几何中心或形心是将x分成矩相等的两部分的所有超平面的交点。非正式地说,中心是x中所有点的平均。有限个点总存在几何中心,可以通过计算这些点的每个坐标分量的算术平均值得
到。
[0092]
可选的,参阅图6,图6是图5所示实施例中的步骤s410一示例性实施例的流程图,如图6所示,步骤s410中获取每个小区的第一中心包括以下步骤:
[0093]
步骤s411:获取每个小区的轮廓边界。
[0094]
同理,本实施例可以基于地图接口获取每个小区的轮廓边界,在本实施例中,每个小区的轮廓边界包括若干个边界点坐标,边界点坐标为边界点的经纬度坐标。
[0095]
步骤s412:根据获取到的轮廓边界确定相应小区的第一中心。
[0096]
在本实施例中,计算每个小区所有边界点的经度坐标的算术平均,得到第一中心的经度坐标;计算每个小区所有边界点的纬度坐标的算术平均,得到第一中心的纬度坐标,进而得到对应小区的第一中心。
[0097]
在利用基于密度的聚类算法模型对用户的多个地理位置信息进行聚类处理之后,得到对应小区的至少一个地理位置信息簇,每个地理位置信息簇包括多个地理位置信息中的部分或全部。在本实施例中,计算每个地理位置信息簇包含的所有地理位置信息的经度坐标的算术平均,将其作为该地理位置信息簇的第二中心的经度坐标,计算每个地理位置信息簇包含的所有地理位置信息的纬度坐标的算术平均,将其作为该地理位置信息簇的第二中心的纬度坐标,进而得到每个地理位置信息簇的第二中心。
[0098]
步骤s420:计算第一中心分别与对应小区的每个第二中心之间的欧式距离,并确定最小欧式距离。
[0099]
欧式距离的计算公式为公式(2):
[0100][0101]
i=1,2,
……
,n;j=1,2,
……
,m;
[0102]
其中,n表示多个地理位置信息分布的小区总数,m表示对应小区的地理位置信息簇的总数,l
ij
表示小区i的第一中心与小区i对应的第j个地理位置信息簇的第二中心的欧式距离,x
i1
为小区i第一中心的经度坐标,y
i1
为小区i的第一中心的纬度坐标,x
ij
表示小区i对应的第j个地理位置信息簇的第二中心的经度坐标,y
ij
表示小区i对应的第j个地理位置信息簇的第二中心的纬度坐标。
[0103]
步骤s430:根据最小欧式距离对相应小区进行打分,得到对应的分数值,得分用于表征用户的常驻小区为相应小区的可能性。
[0104]
在本实施例中,相应小区的分数值与对应的最小欧式距离成反比,也即,每个小区对应的最小欧式距离越大,则其对应的分数值越低,反之,该小区对应的最小欧式距离越小,则其对应的分数值越高。
[0105]
示例性地,根据公式(3)获取相应小区的分数值:
[0106]ci
=k/l
imin
ꢀꢀꢀꢀ
(3)
[0107]
其中,ci表示小区i的分数值,k为比例参数,l
imin
表示小区i对应的最小欧式距离。
[0108]
步骤s440:选取分数值最高的小区作为用户的常驻小区。
[0109]
综上,本实施例利用用户的多个地理位置信息分布的小区面积大小控制基于密度聚类算法模型的邻域参数值的大小,一方面,能够自动给定聚类处理过程的邻域参数值,提高聚类自动化程度;另一方面,设置基于密度的聚类算法模型的邻域参数值正比于小区面
积,能够避免邻域参数值过小造成模型将用户正常的地理位置信息判定为噪声点,也能够避免邻域参数值过大,造成模型将噪声点当成正常的地理位置信息参与聚类处理,带来较大的误差,从而本技术提供的常驻小区的获取方法能够提高获取的常驻小区的精度。
[0110]
上述提及的常驻小区的获取方法可由计算机设备(或文本处理设备)执行。此处的计算机设备可包括但不限于:诸如智能手机、平板电脑、膝上计算机、台式电脑等终端设备:或者诸如数据处理服务器、web服务器、应用服务器等服务设备,其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器,这里的服务器可以是区块链上的节点服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端设备以及服务设备可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。
[0111]
参与图7,图7是本技术一示例性实施例示出的常驻小区的获取装置的框图,如图7所示,常驻小区的获取装置1000包括获取模块1100、第一确定模块1200、聚类模块1300以及第二确定模块1400。
[0112]
其中,获取模块1100用于获取用户在预设时间段内的多个地理位置信息,地理位置信息包括经纬度坐标和时间戳;第一确定模块1200用于确定多个地理位置信息分布的小区;聚类模块1300用于利用基于密度的聚类算法模型对多个地理位置信息进行聚类处理,得到聚类结果,基于密度聚类模型中含有的邻域参数值正比于多个地理位置信息分布的小区的面积;第二确定模块1400用于根据聚类结果和多个地理位置信息分布的小区确定用户的常驻小区。
[0113]
在另一示例性实施例中,第一确定模块1200包括第一获取单元、统计单元以及第一确定单元,其中获取单元用于获取每个地理位置信息对应的小区,得到多个候选小区;统计单元用于统计每个候选小区所包含的地理位置信息的数量;确定单元用于若候选小区所包含的地理位置信息的数量大于预设阈值,则确定对应候选小区为多个地理位置信息分布的小区。
[0114]
在另一示例性实施例中,聚类模块1300包括第二确定单元、第二获取单元、第一计算单元以及聚类单元,其中,第二确定单元用于确定多个地理位置信息分布的小区的面积;第二获取单元用于获取多个地理位置信息分布的小区的面积与地理位置信息的总数之间的比值;第一计算单元用于以比值为圆面积计算对应的圆半径,并将圆半径作为基于密度的聚类算法模型中含有的邻域参数值;聚类单元用于利用包含有邻域参数值的聚类算法模型对多个地理位置信息进行聚类处理,得到聚类结果。
[0115]
在另一示例性实施例中,第二确定单元包括请求子单元和第二确定子单元,其中,请求子单元用于请求地图接口以获取多个地理位置信息分布的小区的轮廓边界;第二确定子单元用于根据轮廓边界确定多个地理位置信息分布的小区的面积。
[0116]
在另一示例性实施例中,第二确定模块1400包括第三获取单元、第二计算单元、打分单元以及选取单元。
[0117]
其中,第三获取单元用于获取每个小区的第一中心,以及获取对应小区的每个地理位置信息簇的第二中心;第二计算单元用于计算第一中心分别与对应小区的每个第二中
心之间的欧式距离,并确定最小欧式距离;打分单元用于根据最小欧式距离对相应小区进行打分,得到对应的分数值,得分用于表征用户的常驻小区为相应小区的可能性;选取单元用于选取分数值最高的小区作为用户的常驻小区。
[0118]
在另一示例性实施例中,第三获取单元包括第三获取子单元和第三确定子单元,其中,第三获取子单元用于获取每个小区的轮廓边界;第三确定子单元用于根据获取到的轮廓边界确定相应小区的第一中心。
[0119]
需要说明的是,上述实施例所提供的装置与上述实施例所提供的方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
[0120]
在另一示例性实施例中,本技术提供一种电子设备,包括处理器和存储器,其中,存储器上存储有计算机可读指令,该计算机可读指令被处理器执行时实现如前的常驻小区的获取方法。
[0121]
本技术的另一方面还提供了一种计算机可读存储介质,其上存储有计算机可读指令,该计算机可读指令被处理器执行时实现如前实施例中的常驻小区的获取方法。
[0122]
本技术的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的常驻小区的获取方法。
[0123]
需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0124]
附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可
以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0125]
描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
[0126]
上述内容,仅为本技术的较佳示例性实施例,并非用于限制本技术的实施方案,本领域普通技术人员根据本技术的主要构思和精神,可以十分方便地进行相应的变通或修改,故本技术的保护范围应以权利要求书所要求的保护范围为准。