掌桥专利:专业的专利平台
掌桥专利
首页

一种客户分类方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 18:27:32


一种客户分类方法、装置、电子设备及存储介质

技术领域

本申请涉及客户托管技术领域,具体而言,涉及一种客户分类方法、装置、电子设备及存储介质。

背景技术

客户托管:在金融科技中,是指商业银行作为托管人接受客户的委托,按照法律法规规定和合同约定,履行安全保管客户资金、办理资金清算、监督资金使用情况、披露资金保管及使用信息等职责,为客户保障资金专款专用、提高效率、防范风险、提升信用。

为了提高管理效率,需要对托管的客户进行分类,针对不同类别的客户分别进行管理。目前,托管业务对客户分析大多停留在业务经验或利用传统算法简单计算层面。其中,常用聚类算法有DBSCAN一类的密度聚类算法,通过DBSCAN聚类方法将相同类型客户组成同一集合,不同类型客户则分别处于不同聚类集合中。由于DBSCAN算法本身的特点,导致在聚类托管客户时,需要对每个客户与其他客户之间的关系进行计算,从而导致计算时间和计算量十分巨大,严重影响业务处理客户信息的时间。

发明内容

有鉴于此,本申请的目的在于提供一种客户分类方法、装置、电子设备及存储介质,降低了计算量,提高了计算效率。

第一方面,本申请实施例提供了一种客户分类方法,所述方法包括:

针对托管系统包含的待分类客户数据,每个所述客户数据对应一空间中的数据点,从所述客户数据对应的待选数据点中,选出第一随机数量的第一数据点;所述第一随机数量小于所述客户数据的总数量;

根据预设的半径参数和数量参数,从所述第一数据点中确定出第一核心点,并从所述待选数据点中确定出所述第一核心点的第一邻域点;

从除所述第一核心点和所述第一邻域点之外的所述待选数据点中,选出第二随机数量的第二数据点,并且确定出所述第二数据点中的第二核心点和所述第二核心点的第二邻域点;再次选择直至将所有所述待选数据点取完为止,进而将所述待选数据点分为目标核心点、目标邻域点和目标噪声点;其中,所述目标核心点包括所述第一核心点和所述第二核心点;所述目标邻域点包括所述第一邻域点和所述第二邻域点;所述目标噪声点为不属于所述目标核心点且不属于所述目标邻域点的数据点;

根据预设的半径参数和所述目标核心点,对所述目标噪声点再次筛选,得到筛选后的真噪声点和伪噪声点,并使用所述伪噪声点对该目标核心点的邻域点进行更新,得到更新后的目标邻域点;

对所述目标核心点、更新后的所述目标邻域点和所述真噪声点进行分簇,进而对所述客户数据进行分类,得到不同类型的客户,分别进行托管处理。

在本申请一些技术方案中,上述方法通过以下方式得到所述客户数据对应的空间中的数据点:

按照预设的标准,将所述客户数据转化为对应的数值;并将该数值作为预设的坐标系中的坐标,即可得到所述客户数据对应的空间中的数据点。

在本申请一些技术方案中,上述根据预设的半径参数和数量参数,从所述第一数据点中确定出第一核心点和所述第一核心点的第一邻域点,包括:

针对所述第一数据点中的任一目标数据点,根据所述目标数据点和所述半径参数,确定所述目标数据点的目标邻域;

若所述目标邻域中数据点的个数大于等于所述数量参数,则该目标数据点为第一核心点,该目标邻域中的数据点为所述第一核心点的第一邻域点。

在本申请一些技术方案中,上述根据预设的半径参数和所述目标核心点,对所述目标噪声点再次筛选,得到筛选后的真噪声点和伪噪声点,包括:

根据所述半径参数确定和所述目标噪声点,确定所述目标噪声点的检测区域,并对所述检测区域进行检测;

若所述检测区域中存在目标核心点,则该目标噪声点为伪噪声点;

若所述检测区域中不存在目标核心点,则该目标噪声点为真噪声点。

在本申请一些技术方案中,上述方法还包括:

将所述伪噪声点作为所述目标核心点的第三邻域点,并将所述第一邻域点、所述第二邻域点和所述第三邻域点作为更新后的目标邻域点。

在本申请一些技术方案中,上述目标邻域包括独立对象邻域和非独立对象邻域;所述独立对象邻域与所述非独立对象邻域不存在交集;所述非独立对象邻域与其他非独立对象邻域存在交集;

所述对所述目标核心点、更新后的所述目标邻域点和所述真噪声点进行分簇,包括:

将所述独立对象邻域作为所述待选数据点的第一簇类;

按照预设的合并规则,对所述非独立对象邻域进行合并,得到合并后的第二簇类。

在本申请一些技术方案中,上述方法通过以下方式对所述非独立对象邻域进行合并:

对所述非独立对象邻域与其他非独立对象邻域存在的交集进行检测,确定该交集中是否存在所述目标核心点;

若所述交集中存在所述目标核心点,且所述核心点存在密度可达或者密度相连,则将所述非独立对象邻域和与该非独立对象邻域存在交集的其他非独立对象邻域合并为一个簇类。

第二方面,本申请实施例提供了一种客户分类装置,所述装置包括:

第一筛选模块,用于针对托管系统包含的待分类客户数据,每个所述客户数据对应一空间中的数据点,从所述客户数据对应的待选数据点中,选出第一随机数量的第一数据点;所述第一随机数量小于所述客户数据的总数量;

确定模块,用于根据预设的半径参数和数量参数,从所述第一数据点中确定出第一核心点,并从所述待选数据点中确定出所述第一核心点的第一邻域点;

确定模块,还用于从除所述第一核心点和所述第一邻域点之外的所述待选数据点中,选出第二随机数量的第二数据点,并且确定出所述第二数据点中的第二核心点和所述第二核心点的第二邻域点;再次选择直至将所有所述待选数据点取完为止,进而将所述待选数据点分为目标核心点、目标邻域点和目标噪声点;其中,所述目标核心点包括所述第一核心点和所述第二核心点;所述目标邻域点包括所述第一邻域点和所述第二邻域点;所述目标噪声点为不属于所述目标核心点且不属于所述目标邻域点的数据点;

第二筛选模块,用于根据预设的半径参数和所述目标核心点,对所述目标噪声点再次筛选,得到筛选后的真噪声点和伪噪声点,并使用所述伪噪声点对该目标核心点的邻域点进行更新,得到更新后的目标邻域点;

分类模块,用于对所述目标核心点、更新后的所述目标邻域点和所述真噪声点进行分簇,进而对所述客户数据进行分类,得到不同类型的客户。

第三方面,本申请实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的客户分类方法的步骤。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的客户分类方法的步骤。

本申请的实施例提供的技术方案可以包括以下有益效果:

本申请方法包括针对托管系统包含的待分类客户数据,每个所述客户数据对应一空间中的数据点,从所述客户数据对应的待选数据点中,选出第一随机数量的第一数据点;所述第一随机数量小于所述客户数据的总数量;根据预设的半径参数和数量参数,从所述第一数据点中确定出第一核心点,并从所述待选数据点中确定出所述第一核心点的第一邻域点;从除所述第一核心点和所述第一邻域点之外的所述待选数据点中,选出第二随机数量的第二数据点,并且确定出所述第二数据点中的第二核心点和所述第二核心点的第二邻域点;再次选择直至将所有所述待选数据点取完为止,进而将所述待选数据点分为目标核心点、目标邻域点和目标噪声点;其中,所述目标核心点包括所述第一核心点和所述第二核心点;所述目标邻域点包括所述第一邻域点和所述第二邻域点;所述目标噪声点为不属于所述目标核心点且不属于所述目标邻域点的数据点;根据预设的半径参数和所述目标核心点,对所述目标噪声点再次筛选,得到筛选后的真噪声点和伪噪声点,并使用所述伪噪声点对该目标核心点的邻域点进行更新,得到更新后的目标邻域点;对所述目标核心点、更新后的所述目标邻域点和所述真噪声点进行分簇,进而对所述客户数据进行分类,得到不同类型的客户,分别进行托管处理。本申请对传统的聚类算法进行了改进,对托管客户分类过程中有效识别了类别与大多数客户类别差异性很大的特例客户,同时,也大大降低对客户分类的计算复杂度,在业务可接受的时间范围内提供相关算法结果。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本邻域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本申请实施例所提供的一种客户分类方法的流程示意图;

图2示出了本申请实施例所提供的一种独立对象邻域和非独立对象邻域的示意图;

图3示出了本申请实施例所提供的一种客户分类装置示意图;

图4为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本邻域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。

另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本邻域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。

客户托管:在金融科技中,是指商业银行作为托管人接受客户的委托,按照法律法规规定和合同约定,履行安全保管客户资金、办理资金清算、监督资金使用情况、披露资金保管及使用信息等职责,为客户保障资金专款专用、提高效率、防范风险、提升信用。

为了提高管理效率,需要对托管的客户进行分类,针对不同类别的客户分别进行管理。目前,托管业务对客户分析大多停留在业务经验或利用传统算法简单计算层面。其中,常用聚类算法有DBSCAN一类的密度聚类算法,通过DBSCAN聚类方法将相同类型客户组成同一集合,不同类型客户则分别处于不同聚类集合中。它的流程如下:

输入:样本集D=(x1,x2,...,xm),邻域参数(Eps,MinPts);

输出:簇划分C。

具体的:1)初始化核心对象集合

2)对于j=1,2,...m,按下面的步骤找出所有的核心对象:

通过距离度量方式,找到样本xj的Eps-邻域子样本集NEps(xj);

如果子样本集样本个数满足|NEps(xj)|≥MinPts,将样本xj加入核心对象样本集合:P=P∪{xj};

3)如果核心对象集合

4)在核心对象集合P中,随机选择一个核心对象o,初始化当前簇核心对象队列Pcur={o},初始化类别序号k=k+1,初始化当前簇样本集合Ck={o},更新未访问样本集合Q=Q-{o};

5)如果当前簇核心对象队列

6)在当前簇核心对象队列Pcur中取出一个核心对象o′,通过邻域距离阈值Eps找出所有的Eps-邻域子样本集NEps(o′),令Δ=NEps(o′)∩Q,更新当前簇样本集合Ck=Ck∪Δ,更新未访问样本集合Q=Q-Δ,更新Pcur=Pcur∪(Δ∩P)-o′,转入步骤5)。

7)输出结果为:簇划分C={C1,C2,...,Ck}。

DBSCAN算法在计算样本集的分布紧密程度时,会取每一个非核心点与其它点的距离,从而确定核心点、非核心点以及噪声点,进而进行聚类。这种算法计算成本相当大,收敛速度慢。由于DBSCAN算法本身的特点,导致在聚类托管客户时,需要对每个客户与其他客户之间的关系进行计算,从而导致计算时间和计算量十分巨大,严重影响业务处理客户信息的时间。

基于此,本申请实施例提供了一种客户分类方法、装置、电子设备及存储介质,下面通过实施例进行描述。

图1示出了本申请实施例所提供的一种客户分类方法的流程示意图,其中,该方法包括步骤S101-S105;具体的:

S101、针对托管系统包含的待分类客户数据,每个所述客户数据对应一空间中的数据点,从所述客户数据对应的待选数据点中,选出第一随机数量的第一数据点;所述第一随机数量小于所述客户数据的总数量;

S102、根据预设的半径参数和数量参数,从所述第一数据点中确定出第一核心点,并从所述待选数据点中确定出所述第一核心点的第一邻域点;

S103、从除所述第一核心点和所述第一邻域点之外的所述待选数据点中,选出第二随机数量的第二数据点,并且确定出所述第二数据点中的第二核心点和所述第二核心点的第二邻域点;再次选择直至将所有所述待选数据点取完为止,进而将所述待选数据点分为目标核心点、目标邻域点和目标噪声点;其中,所述目标核心点包括所述第一核心点和所述第二核心点;所述目标邻域点包括所述第一邻域点和所述第二邻域点;所述目标噪声点为不属于所述目标核心点且不属于所述目标邻域点的数据点;

S104、根据预设的半径参数和所述目标核心点,对所述目标噪声点再次筛选,得到筛选后的真噪声点和伪噪声点,并使用所述伪噪声点对该目标核心点的邻域点进行更新,得到更新后的目标邻域点;

S105、对所述目标核心点、更新后的所述目标邻域点和所述真噪声点进行分簇,进而对所述客户数据进行分类,得到不同类型的客户,分别进行托管处理。

本申请对传统的聚类算法进行了改进,对托管客户分类过程中有效识别了类别与大多数客户类别差异性很大的特例客户,同时,也大大降低对客户分类的计算复杂度,在业务可接受的时间范围内提供相关算法结果。

下面对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

S101、针对托管系统包含的待分类客户数据,每个所述客户数据对应一空间中的数据点,从所述客户数据对应的待选数据点中,选出第一随机数量的第一数据点;所述第一随机数量小于所述客户数据的总数量。

本申请针对银行的客户托管系统,该托管系统中存储有大量的客户数据。这里的客户数据包括客户个人信息数据、存款数据、贷款数据、信誉数据等。为了便于对客户进行高效管理,需要对客户进行分类,对于不同类型的客户分别实施不同方式的管理措施。在对客户数据进行分类的时候,为了方便处理,本申请将每个客户数据分别对应转化为一个空间中的数据点,通过对数据点进行分类,从而实现对客户数据的分类。

本申请在将客户数据转化为空间中数据点的时候,先按照预设的标准,将所述客户数据转化为对应的数值;然后将该数值作为预设的坐标系中的坐标,即可得到所述客户数据对应的空间中的数据点。例如,客户数据包括存款数据和信誉数据。客户A的存款为五十万,信誉为六十分,根据预设的转化方式,将客户A的存款数据进行归一化处理得到的数值为0.5,信誉对应转化为0.6,则客户A的数据在预设的二维坐标系中对应的点为A’(0.5,0.6)。同理如果客户数据包含三种的话,可以对应转化为三维坐标系中的点。

在得到了每个客户数据对应的空间中的数据点之后,本申请通过对数据点进行聚类的方式,达到对客户进行分类的目的。传统的聚类方法是对每个数据点进行进行计算,确定该数据点是否为核心点。为了提高处理效率,降低计算次数,本申请不对所有的数据点进行计算,而是从客户数据对应的所有数据点中选出第一随机数量的第一数据点,对这里的第一数据点进行计算。需要注意的是,为了与现有的聚类方法进行区分,本申请中的第一随机数量必须小于客户数据的总数量。也就是说,本申请是从客户数据对应的所有数据点中选出来了一部分第一数据点,而且这一部分不会是客户数据对应的全部数据点。

S102、根据预设的半径参数和数量参数,从所述第一数据点中确定出第一核心点,并从所述待选数据点中确定出所述第一核心点的第一邻域点。

在筛选出来了第一数据点之后,本申请确定出第一数据点中的第一核心点。第一核心点是根据邻域参数:半径参数(Eps)和数量参数(MinPts)确定的。其中,如果给定对象Ε邻域内的样本点数大于等于MinPts,则称该对象为核心对象(核心点);给定对象半径为Ε内的区域称为该对象的Ε邻域。

针对所述第一数据点中的任一目标数据点,根据所述目标数据点和所述半径参数,确定所述目标数据点的目标邻域;若所述目标邻域中数据点的个数大于等于所述数量参数,则该目标数据点为第一核心点,该目标邻域中的数据点为所述第一核心点的第一邻域点。

具体实施时,本申请将第一数据点中的各个数据点分别基于半径参数建立邻域,检测该数据点邻域中的数据点的个数,如果邻域中数据点的个数大于等于数量参数的话,则将该数据点标记为核心点,并将该数据点邻域中的数据点标记为邻域点。需要注意的是,这里的邻域点存在以下两种情况:第一种情况为邻域中的数据点都是除第一数据点以外的待选数据点,这种情况不影响后续除去该数据点以外第一数据点中其他数据点中的计算过程;第二种情况为邻域点中包含了第一数据点中的其他数据点,此时该被包含的数据点已经被标记上了邻域点,那么后续不在计算该被包含的数据点是否为核心点。

例如,一共十个待选数据点标号分别为1~10,随机选取了五个第一数据点(数据点1、数据点3、数据点4、数据点5、数据点9)。通过半径参数和数量参数分别对这个五个第一数据点进行计算,在计算的过程中,计算了数据点1不是核心点;接着计算数据点3,发现数据点3为核心点,且数据点3的邻域内还包含了数据点4和数据点5,则后续计算的过程中直接跳过计算数据点4和数据点5,直接计算数据点6是否为核心点。

S103、从除所述第一核心点和所述第一邻域点之外的所述待选数据点中,选出第二随机数量的第二数据点,并且确定出所述第二数据点中的第二核心点和所述第二核心点的第二邻域点;再次选择直至将所有所述待选数据点取完为止,进而将所述待选数据点分为目标核心点、目标邻域点和目标噪声点;其中,所述目标核心点包括所述第一核心点和所述第二核心点;所述目标邻域点包括所述第一邻域点和所述第二邻域点;所述目标噪声点为不属于所述目标核心点且不属于所述目标邻域点的数据点。

在通过一次计算的过程,本申请将第一数据点中的每个数据点分别在预设的坐标系下进行了计算,从第一数据点中确定出了一个或者多个的第一核心点和第一核心点第一邻域点,并且分别对第一核心点和第一邻域点进行了标记。为了便于区分,可以通过不同的标记分别标记第一核心点和第一邻域点。此时,所有的待选数据点已经被分为了两部分,一部分为被标记的(第一核心点和第一邻域点),另一部分是没有被标记的。之后,本申请从没有被标记的部分中再次选出第二随机数量的第二数据点,进行核心点计算,计算出第二数据点中的第二核心点和第二核心点的第二邻域点,并对第二核心点和第二邻域点进行了标记。此时,所有的待选数据点还是被分为了两部分一部分为被标记的(第一核心点和第一邻域点、第二核心点和第二邻域点),另一部分是没有被标记的。如果所有的待选数据点中还存在没有被选择的话,再次对没有标记的部分进行选取,直至将所有的待选数据点取完为止。

需要注意的是,这里是本申请与传统聚类算法的区别,传统的聚类方法需要对待选数据点中的每个数据点都进行计算,本申请是先选出了第一数据点,对第一数据点中的数据点进行计算,确定出第一数据点中的第一核心点和第一核心点的第一邻域点。而下次再进行筛选计算的时候,本申请不再选取第一核心点和第一邻域点。也就是说,在第一次进行计算的时候,本申请与传统聚类算法相比减少了第一邻域点个数的计算过程,依次累计,直至将所有的待选数据点取完为止。通过多次的筛选计算,最后,本申请将所有的待选数据点标记为了目标核心点(包括第一核心点、第二核心点等等)、目标邻域点(包括第一邻域点、第二邻域点等等)和目标噪声点(不属于所述目标核心点且不属于所述目标邻域点的数据点)。本申请的过程与传统的聚类算法相比,减少了目标邻域点数量的计算次数,大大提高了处理效率。

S104、根据预设的半径参数和所述目标核心点,对所述目标噪声点再次筛选,得到筛选后的真噪声点和伪噪声点,并使用所述伪噪声点对该目标核心点的邻域点进行更新,得到更新后的目标邻域点。

本申请在通过上述的计算过程,将所有的待分类数据点分为了目标核心点、目标邻域点和目标噪声点。上述的过程为初筛过程,存在一些误差的情况。为了提高分类的准确度,本申请增加了一个对目标噪声点的判断过程,避免目标噪声点中存在伪噪声点没有被分为合适的类别中。

在对目标噪声点进行判断的时候,本申请是根据预设的半径参数和所述目标核心点,对所述目标噪声点再次筛选,得到筛选后的真噪声点和伪噪声点。具体的,根据所述半径参数确定和所述目标噪声点,确定所述目标噪声点的检测区域,并对所述检测区域进行检测;若所述检测区域中存在目标核心点,则该目标噪声点为伪噪声点;若所述检测区域中不存在目标核心点,则该目标噪声点为真噪声点。

本申请通过以目标噪声点为圆心,并以半径参数确定的半径确定出该目标噪声点的检测区域,然后对该检测区域进行检测,判断该检测区域中是否存在核心点,进而确定该目标噪声点为的真伪。这里的真噪声点表征该目标噪声点与其他数据点的差距较大,不能与其他数据点分为一类,这里的伪噪声点表征该目标噪声点其实是某个核心点的邻域点。

如果目标噪声点为伪噪声点的话即该目标噪声点真实为邻域点,则将所述伪噪声点作为所述目标核心点的第三邻域点,并将所述第一邻域点、所述第二邻域点和所述第三邻域点作为更新后的目标邻域点。在确定了目标噪声点为伪噪声点、真邻域点之后,将该目标噪声点标记为第三邻域点,并将该第三邻域点与上述的第一邻域点、第二邻域点(如果需要的话,第四邻域点、第五邻域点等)进行合并,对初始的目标邻域点进行补充更新,得到更新后的目标邻域点。至此,本申请对所有的待选数据点的标记工作正是完成,不仅保证了速度同时兼顾了准确度。

S105、对所述目标核心点、更新后的所述目标邻域点和所述真噪声点进行分簇,进而对所述客户数据进行分类,得到不同类型的客户,分别进行托管处理。

在得到了目标核心点、更新后的目标邻域点和真噪声点之后,本申请通过对目标核心点、更新后的目标邻域点和真噪声点进行分簇,能够将所有的待选数据点分为不同的簇,这些不同的簇也代表不同类型的客户,针对不同类型的客户,可以采取不同的措施进行托管处理,提高了处理效率。

本申请中目标邻域包括独立对象邻域和非独立对象邻域;所述独立对象邻域与所述非独立对象邻域不存在交集;所述非独立对象邻域与其他非独立对象邻域存在交集;如图2所示,数据点1的邻域为独立对象邻域,数据点2和数据点3的邻域都为非独立对象邻域。

本申请在对所述目标核心点、更新后的所述目标邻域点和所述真噪声点进行分簇时,包括:将所述独立对象邻域作为所述待选数据点的第一簇类;按照预设的合并规则,对所述非独立对象邻域进行合并,得到合并后的第二簇类。

具体的,通过以下方式对所述非独立对象邻域进行合并:

对所述非独立对象邻域与其他非独立对象邻域存在的交集进行检测,确定该交集中是否存在所述目标核心点;

若所述交集中存在所述目标核心点,且所述核心点存在密度可达或者密度相连,则将所述非独立对象邻域和与该非独立对象邻域存在交集的其他非独立对象邻域合并为一个簇类。

需要解释的是:直接密度可达:对于样本集合D,如果样本点q在p的Ε邻域内,并且p为核心对象,那么对象q从对象p直接密度可达。

密度可达:对于样本集合D,给定一串样本点p

密度相连:存在样本集合D中的一点o,如果对象o到对象p和对象q都是密度可达的,那么p和q密度相联。

本申请中的目标核心点的目标邻域存在独立对象邻域和非独立对象邻域,本申请将独立对象邻域直接作为一个簇类,将符合合并条件的非独立对象邻域进行合并之后作为一个簇类,否则不进行合并。

本申请实施例中,作为一可选实施例,本申请在具体实施的时候,可以使用如下方式:

1)将待聚类的数据集称为数据集A,随机选择初始化的k个样本作为初始聚类中心,其中k大于0且小于等于N,N为全部数据个数;

2)将k个样本点分别计算它们的NBHD(半径Eps,是否超过MinPts数目)判断是否为核心点,假设a为k个样本点中任意一点,若a为核心点,则半径Eps中的点均称为邻域点,并打上邻域点标记;

3)重复2),依次取k个未标记核心点和未标记邻域点的样本进行NBHD判断是否为核心点或邻域点,直到全部点都判断,该判断过程称为核心对象初筛阶段,该过程与传统DBSCAN算法不同之处在于不是将所有数据点都进行核心点计算;

4)经过核心对象初筛阶段,数据点可分为核心点、邻域点、噪声点,噪声点为非核心点和非邻域点的数据点,这个阶段的噪声点可能存在不确定性,需要计算这些噪声点的半径Eps内的点是否有核心点,若有数据点为核心点,则该噪声点变为邻域点,该阶段称为噪声点辨识阶段,经过该阶段数据点中的噪声点将明确为真正的噪声点,即不属于任何邻域;

5)进入聚类集合并阶段,此时,由核心点构建的邻域可分为独立核心对象Eps邻域和非独立核心对象Eps邻域,独立核心对象Eps邻域将无法进行合并,非独立核心对象Eps邻域需要计算交集内的点是否为核心点,若存在核心点,则存在密度可达以及密度相连,将对密度可达的非独立核心对象Eps邻域进行合并成一个簇;

6)重复5),计算可以合并的所有非独立核心对象Eps邻域,待所有非独立核心对象Eps邻域都计算完毕,算法结束输出聚类集;

本申请将“独立核心对象Eps邻域和非独立核心对象Eps邻域”思想的引入,有效的解决了原算法对所有核心点的合并计算,并且在计算上述邻域过程中有效识别了噪声点真伪的同时,解决了最低计算度邻域补录。由于采取新的聚类策略(划分三阶段),将计算复杂度大幅度降低(不用计算全量数据点)。利用了三阶段改进计算思想,对托管客户分类过程中有效识别了类别与大多数客户类别差异性很大的特例客户,同时,也大大降低了对客户分类的计算复杂度,在业务可接受的时间范围内提供相关算法结果。

图3示出了本申请实施例所提供的一种客户分类装置的结构示意图,所述装置包括:

第一筛选模块,用于针对托管系统包含的待分类客户数据,每个所述客户数据对应一空间中的数据点,从所述客户数据对应的待选数据点中,选出第一随机数量的第一数据点;所述第一随机数量小于所述客户数据的总数量;

确定模块,用于根据预设的半径参数和数量参数,从所述第一数据点中确定出第一核心点,并从所述待选数据点中确定出所述第一核心点的第一邻域点;

确定模块,还用于从除所述第一核心点和所述第一邻域点之外的所述待选数据点中,选出第二随机数量的第二数据点,并且确定出所述第二数据点中的第二核心点和所述第二核心点的第二邻域点;再次选择直至将所有所述待选数据点取完为止,进而将所述待选数据点分为目标核心点、目标邻域点和目标噪声点;其中,所述目标核心点包括所述第一核心点和所述第二核心点;所述目标邻域点包括所述第一邻域点和所述第二邻域点;所述目标噪声点为不属于所述目标核心点且不属于所述目标邻域点的数据点;

第二筛选模块,用于根据预设的半径参数和所述目标核心点,对所述目标噪声点再次筛选,得到筛选后的真噪声点和伪噪声点,并使用所述伪噪声点对该目标核心点的邻域点进行更新,得到更新后的目标邻域点;

分类模块,用于对所述目标核心点、更新后的所述目标邻域点和所述真噪声点进行分簇,进而对所述客户数据进行分类,得到不同类型的客户。

通过以下方式得到所述客户数据对应的空间中的数据点:

按照预设的标准,将所述客户数据转化为对应的数值;并将该数值作为预设的坐标系中的坐标,即可得到所述客户数据对应的空间中的数据点。

所述根据预设的半径参数和数量参数,从所述第一数据点中确定出第一核心点和所述第一核心点的第一邻域点,包括:

针对所述第一数据点中的任一目标数据点,根据所述目标数据点和所述半径参数,确定所述目标数据点的目标邻域;

若所述目标邻域中数据点的个数大于等于所述数量参数,则该目标数据点为第一核心点,该目标邻域中的数据点为所述第一核心点的第一邻域点。

所述根据预设的半径参数和所述目标核心点,对所述目标噪声点再次筛选,得到筛选后的真噪声点和伪噪声点,包括:

根据所述半径参数确定和所述目标噪声点,确定所述目标噪声点的检测区域,并对所述检测区域进行检测;

若所述检测区域中存在目标核心点,则该目标噪声点为伪噪声点;

若所述检测区域中不存在目标核心点,则该目标噪声点为真噪声点。

将所述伪噪声点作为所述目标核心点的第三邻域点,并将所述第一邻域点、所述第二邻域点和所述第三邻域点作为更新后的目标邻域点。

所述目标邻域包括独立对象邻域和非独立对象邻域;所述独立对象邻域与所述非独立对象邻域不存在交集;所述非独立对象邻域与其他非独立对象邻域存在交集;

所述对所述目标核心点、更新后的所述目标邻域点和所述真噪声点进行分簇,包括:

将所述独立对象邻域作为所述待选数据点的第一簇类;

按照预设的合并规则,对所述非独立对象邻域进行合并,得到合并后的第二簇类。

通过以下方式对所述非独立对象邻域进行合并:

对所述非独立对象邻域与其他非独立对象邻域存在的交集进行检测,确定该交集中是否存在所述目标核心点;

若所述交集中存在所述目标核心点,且所述核心点存在密度可达或者密度相连,则将所述非独立对象邻域和与该非独立对象邻域存在交集的其他非独立对象邻域合并为一个簇类。

如图4所示,本申请实施例提供了一种电子设备,用于执行本申请中的客户分类方法,该设备包括存储器、处理器、总线及存储在该存储器上并可在该处理器上运行的计算机程序,其中,上述处理器执行上述计算机程序时实现上述的客户分类方法的步骤。

具体地,上述存储器和处理器可以为通用的存储器和处理器,这里不做具体限定,当处理器运行存储器存储的计算机程序时,能够执行上述的客户分类方法。

对应于本申请中的客户分类方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述的客户分类方法的步骤。

具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述的客户分类方法。

在本申请所提供的实施例中,应该理解到,所揭露系统和方法,可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本邻域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

相关技术
  • 一种客户分群方法及装置、电子设备、可读存储介质
  • 图像分类方法及装置、电子设备、计算机程序及存储介质
  • 一种应用程序的测试方法、装置、电子设备及存储介质
  • 一种软件运行异常的分析方法、装置、电子设备及存储介质
  • 一种条形码归类方法、归类装置、电子设备及存储介质
  • 一种客户分类方法、装置、电子设备及存储介质
  • 一种客户分类方法及装置、存储介质及电子设备
技术分类

06120115574970