数据处理方法、装置和设备与流程

文档序号:24969878发布日期:2021-05-07 22:40阅读:134来源:国知局
数据处理方法、装置和设备与流程

本公开的实施例涉及计算机应用技术领域,尤其涉及一种数据处理方法、装置和设备。



背景技术:

在大数据时代,如何对海量的数据进行分析和利用已经成为各服务商的重点方向之一。在进行数据分析的过程中,常常需要对数据进行聚类,例如对用户数据进行聚类,然后利用聚类后得到的用户数据类别对用户提供更有针对性、更个性化或更人性化的服务。

目前的聚类算法,例如k-means、dbscan等,虽然能够满足业务的实际需求,但是,在利用上述算法进行数据聚类时,针对不同的场景,需要定制不同的聚类模型,然后对聚类模型进行人工调参,最后再根据调整后的聚类模型对数据进行聚类处理。上述过程操作复杂且效率较低。



技术实现要素:

本公开的实施例提供一种数据处理方法、装置和设备,用以解决现有技术中,数据聚类过程中操作复杂且效率低的技术问题。

第一方面,本公开的实施例提供一种数据处理方法,包括:

对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得数据集的分类个数;

获取预设聚类算法的参数的至少一种取值;

针对参数的每种取值,根据预设聚类算法对数据集中的多个样本数据进行聚类处理,获得聚类结果;

根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果。

第二方面,本公开的实施例提供一种数据处理装置,包括:

处理模块,用于对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得数据集的分类个数;

获取模块,用于获取预设聚类算法的参数的至少一种取值;

聚类模块,用于针对参数的每种取值,根据预设聚类算法对数据集中的多个样本数据进行聚类处理,获得聚类结果;

确定模块,用于根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果。

第三方面,本公开的实施例提供一种电子设备,包括:存储器和处理器;

存储器用于存储程序指令;

处理器用于调用存储器中的程序指令执行如第一方面的数据处理方法。

第四方面,本公开的实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序;计算机程序被执行时,实现如第一方面的数据处理方法。

第五方面,本公开的实施例提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时,实现如第一方面的数据处理方法。

本公开的实施例中,对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得数据集的分类个数;获取预设聚类算法的参数的至少一种取值;针对参数的每种取值,根据预设聚类算法对数据集中的多个样本数据进行聚类处理,获得聚类结果;根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果。本公开通过将聚类算法的逻辑黑盒化,根据可视化处理获得的分类个数自动调整聚类算法的参数,直到聚类类别个数和可视化处理得到的分类个数相同时即完成聚类,此过程无需人工调整算法参数,可以简化数据聚类操作,提升数据聚类的效率。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1为本公开一实施例提供的数据处理方法的场景示例图;

图2为本公开一实施例提供的数据处理方法的流程示意图;

图3为本公开另一实施例提供的数据处理方法的流程示意图;

图4为本公开一实施例提供的可视化处理结果示意图;

图5为本公开一实施例提供的样本数据的二维图片示意图;

图6为本公开一实施例提供的经过膨胀处理后的二维图片的示意图;

图7为本公开又一实施例提供的数据处理方法的流程示意图;

图8为本公开一实施例提供的子决策树的结构示意图;

图9为本公开又一实施例提供的数据处理方法的流程示意图;

图10为本公开一实施例提供的数据处理装置的结构示意图;

图11为本公开另一实施例提供的电子设备的结构示意图。

通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

在大数据时代,如何对海量的数据进行分析和利用已经成为各服务商的重点方向之一。在进行数据分析的过程中,常常需要对数据进行聚类,例如,对用户数据进行聚类,然后利用聚类后得到的用户数据类别对用户提供更有针对性、更个性化或更人性化的服务。

目前的聚类算法,例如k-means、dbscan等,虽然能够满足业务的实际需求,但是,在利用上述算法进行数据聚类时,针对不同的场景,需要定制不同的聚类模型,然后对聚类模型进行人工调参,最后再根据调整后的聚类模型对数据进行聚类处理。上述过程操作复杂且效率较低。

有鉴于此,本公开实施例提供一种数据处理方法、装置和设备,通过数据集中的多个样本数据进行可视化处理,获得数据集的分类个数,通过不断的调整聚类算法的参数,根据调整后的参数获得聚类结果,直到聚类结果中的聚类类别个数与分类个数相同时,确定当前的聚类结果为目标聚类结果。本公开通过将聚类算法的逻辑黑盒化,根据可视化处理获得的分类个数自动调整聚类算法的参数,直到聚类类别个数和可视化处理得到的分类个数相同时即完成聚类,此过程无需人工调整算法参数,可以简化数据聚类操作,提升数据聚类的效率。

图1为本公开一实施例提供的数据处理方法的场景示例图。如图1所示,该场景包括:终端设备101以及服务器102。

在实际应用中,服务器102可以是提供处理、数据库、通讯设施的业务点,用于提供样本数据。其中,服务器102可以是整体式服务器或是跨多计算机或计算机数据中心的分散式服务器。服务器102也可以是各种类型的,例如但不限于,网络服务器,消息服务器,应用服务器,交互服务器,数据库服务器,或代理服务器等。

终端设备101可以为能够与服务器102通信连接的任意设备,包括但不限于:台式电脑、便携式电脑、平板电脑、掌上电脑、虚拟现实设备、增强现实设备等或其任何组合,在此不做限定,为方便理解,图1的终端设备101以台式电脑示出。

实际应用中,终端设备101可以通过无线或有线网络与服务器102通信,以从服务器102中获取样本数据。其中,无线网络可以是2g或者3g或者4g或者5g等通信网络,也可以是无线局域网,在此不做限定。

如图1所示,终端设备101中有聚类模型,终端设备101通过从服务器102中获取样本数据,再根据预设聚类算法对样本数据进行聚类处理,以输出样本数据的目标聚类结果。需要说明的是,本公开的实施例对于聚类算法的类型以及样本数据的类型均不做具体限定。

具体的,终端设备101对待处理的数据集中的多个样本数据进行可视化处理,获得样本数据的分类个数;

进一步的,根据预设聚类算法不断地调整聚类算法的参数,根据参数对样本数据进行聚类处理,以获得聚类结果,当聚类结果中的聚类类别数量与分类个数之差小于预设值时,输出当前参数对应的聚类结果为目标聚类结果。

可以理解的是,本公开的实施例可以适用于多种类型的样本数据的聚类场景,例如但不限于:网约车场景,购物场景等。

其中,在网约车场景中,常常需要对网约车用户,例如司机、乘客等用户进行分层聚类,以根据聚类结果提供个性化服务。下面以网约车场景为例对本公开的实施例的方案进行详细说明:

在上述网约车场景中,对用户分层聚类可以包括以下几种类型:乘客高价值分层聚类,乘客流失分层聚类,乘客高潜分层,司机全兼职分层聚类,司机的高流失分层聚类等。

首先,终端设备101从服务器102中获取样本数据,相应的,该场景对应的样本数据可以包括但不限于:乘客的历史乘车数据以及司机的历史接单数据等,其中,乘客的历史乘车数据还可以包括:乘客的历史乘车路径、时间、区域、评价数据、应用程序登录数据等数据;司机的历史接单数据还可以包括:司机的历史接单区域、接单时段、路径、接单数量等数据。

进一步的,终端设备101根据本公开实施例提供的数据处理方法对上述数据进行聚类处理,从而获得用户分层聚类结果。

本公开通过将聚类算法的逻辑黑盒化,根据可视化处理获得的分类个数自动调整聚类算法的参数,直到聚类类别个数和可视化处理得到的分类个数相同时即完成聚类,此过程无需人工调整算法参数,可以简化数据聚类操作,提升数据聚类的效率。

图2为本公开一实施例提供的数据处理方法的流程示意图。如图2所示,本公开实施例的执行主体可以为上述终端设备。如图2所示,本公开实施例的方法包括如下步骤:

s101、对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得数据集的分类个数。

在实际应用中,可视化处理也可以称为降维处理,用于将高维数据转化为低维数据,可以采用可视化处理算法或者降维算法对数据集中的多个样本数据进行可视化处理,示例性的,可视化处理算法可以包括:t分布-随机邻近嵌入算法(t-distributedstochasticneighborembedding,t-sne),降维算法可以包括:主成分分析算法(principalcomponentanalysis,pca)以及线性判别降维算法(lineardiscriminantanalysis,lda)等。

本步骤中,通过将多个样本数据进行可视化处理,可以将样本数据从高维空间转化为二维空间的数据,从而实现数据可视化,以快速准确的获得数据集的分类个数。

s102、获取预设聚类算法的参数的至少一种取值。

需要说明的是,本公开实施例对于预设聚类算法可以为任意种类的数据聚类算法,例如:kmeans算法、dbscan算法以及hdbscan算法等,为方便理解,本公开实施例以预设聚类算法为hdbscan算法为例进行说明。

hdbscan算法的参数可以为最小簇大小,表示为:min_cluster_size,其中,最小簇大小用于表示聚类过程中每个聚类类别中样本数量的最小值。

可以理解的是,对于其他种类的聚类算法,本步骤中的参数也可以为该聚类算法对应的参数,此处不再一一赘述。

s103、针对参数的每种取值,根据预设聚类算法对数据集中的多个样本数据进行聚类处理,获得聚类结果。

s104、根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果。

需要说明的是,本公开的实施例对于获取预设聚类算法的参数的至少一种取值的方法不做具体限定。示例性的,一种可能的实施方式中,可以同时获取至少一个参数取值,再获取至少一个参数取值对应的至少一个聚类结果,最后从至少一个聚类结果中获取目标聚类结果。

具体的,从预设聚类算法的参数的取值范围中随机获取至少一种参数取值,其中,本公开的实施例对于参数的取值范围也不做具体限定,示例性的,以参数的取值范围为2~100为例,可以从2~100中随机获取至少一种参数取值,需要说明的是,对于随机获取参数取值的方法以及参数取值的个数,本公开实施例均不做具体限定。

相应的,针对获取的每种参数取值,分别根据预设聚类算法对数据集中的多个样本数据进行聚类处理,获得至少一种参数取值对应的至少一个聚类结果。

进一步的,确定至少一个聚类结果中,聚类类别个数与分类个数之差小于等于第一预设值所对应的聚类结果为目标聚类结果。

本方案中,通过同时获取至少一个参数取值,获取至少一个参数取值对应的至少一个聚类结果,再从至少一个聚类结果中获取目标聚类结果,由于不同的参数取值对应的聚类结果不同,通过同时获取至少一个参数取值对应的至少一个聚类结果,可以直观的得出各参数取值对应的聚类结果,从而快速的从至少一个聚类结果中得出目标聚类结果,最终提升聚类效率。

另一种可能的实施方式中,可以逐个获取聚类算法的参数的至少一种取值,再逐个获取每个参数取值对应的聚类结果,直到确定聚类结果为数据集的目标聚类结果,停止获取参数取值。

具体的,一方面,可以通过预设步长的方式逐个获取参数的至少一种取值,具体包括如下步骤:

(1)获取所述预设聚类算法中参数的第1种取值为初始值,根据参数取值的初始值,采用预设聚类算法对数据集中的多个样本数据进行聚类处理,获得参数取值的初始值对应的聚类结果;需要说明的是,对于第1种取值本公开实施例不做具体限定,示例性的,其可以为参数的取值范围中的任意值,例如,第1种取值可以为2。

(2)根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果;

(3)若分类个数与聚类类别个数之差大于第一预设值,则在取值范围中根据预设步长对初始值进行累加,以获得下一种参数取值,再根据参数取值,采用预设聚类算法对数据集中的多个样本数据进行聚类处理,获得该参数取值对应的聚类结果。重复上述步骤(3),直到分类个数与聚类类别个数之差小于等于第一预设值时,停止获取参数取值,其中,本公开的实施例对于预设步长的大小不做具体限定,示例性的,以第1种取值为2,预设步长为5为例,则第二种参数取值为7,第三种参数取值为12。

另一方面,还可以通过二分法逐个获取参数的至少一种取值,具体包括如下步骤:

(1)获取所述预设聚类算法中参数的第1种取值为初始值,根据参数取值的初始值,采用预设聚类算法对数据集中的多个样本数据进行聚类处理,获得参数取值的初始值对应的聚类结果;需要说明的是,对于第1种取值本公开实施例不做具体限定,示例性的,其可以为参数的取值范围中的任意值,例如,第1种取值可以为2。

(2)根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果;

(3)若分类个数与聚类类别个数之差大于第一预设值,则在取值范围中根据二分法和所述参数的第i种取值,获取所述参数的第i+1种取值;再根据第i+1种取值,采用预设聚类算法对数据集中的多个样本数据进行聚类处理,获得第i+1种对应的聚类结果。重复上述步骤(3),直到分类个数与聚类类别个数之差小于等于第一预设值时,停止获取参数取值。

本方案中,通过逐个获取聚类算法的参数的至少一种取值,再逐个获取每个参数取值对应的聚类结果,直到确定聚类结果为数据集的目标聚类结果,停止获取参数取值。在获取到满足要求的聚类结果时即停止聚类,可以减少聚类次数,降低系统的计算压力。另外,由于通过二分法获取参数取值的效率较高,可以提升参数取值的获取效率,最终提升聚类效率。

本公开的实施例中,对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得数据集的分类个数;获取预设聚类算法的参数的至少一种取值;针对参数的每种取值,根据预设聚类算法对数据集中的多个样本数据进行聚类处理,获得聚类结果;根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果。本公开通过将聚类算法的逻辑黑盒化,根据可视化处理获得的分类个数自动调整聚类算法的参数,直到聚类类别个数和可视化处理得到的分类个数相同时即完成聚类,此过程无需人工调整算法参数,可以简化数据聚类操作,提升数据聚类的效率。

图3为本公开另一实施例提供的数据处理方法的流程示意图。在上述实施例的基础上,本实施例对本公开技术方案进行更详细的描述,如图3所示,本公开的实施例提供的数据处理方法可以包括以下步骤:

s201、对数据集中的多个样本数据进行可视化处理,获得可视化处理结果。

结合图1所示实施例,对数据集中的多个样本数据进行可视化处理的过程有多种实现方式,本公开实施例不做具体限定,为方便理解,步骤s2011~s2013以通过t-sne算法进行可视化处理为例对本步骤进行详细说明:

s2011、获取第一空间维度中多个样本数据的第一概率分布。

首先,利用t-sne算法对每个样本数据近邻的分布进行建模,其中近邻是指相互靠近的样本数据的集合,在第一空间维度中,将第一空间维度中的样本数据建模为高斯分布。

具体的,对于第一空间维度中的样本数据xi和xj,根据随机邻接嵌入(sne)算法将样本数据xi和xj之间的高维欧几里得距离转换为表示相似性的条件概率,其中,可以通过下述公式(1)得出样本数据xi和xj之间的第一概率分布pi|j:

其中,σi是以数据点xi为中心的高斯方差。||xi-xj||为两个样本数据之间的距离。对于每个样本数据,会计算其与其他所有样本数据之间的距离,然后根据公式(1)将距离映射为第一概率分布pi|j。

s2012、获取第二空间维度中多个样本数据的第二概率分布。

其中,第一空间维度的维度高于第二空间维度的维度。

具体的,对于第一空间维度中的样本数据xi和xj,确定其在第二空间维度中对应的样本数据为yi和yj,在第二空间维度中,获取多个样本数据yi和yj的第二概率分布。

示例性的,对于第一空间维度中的样本数据yi和yj,可以根据如下公式(2)得出样本数据yi和yj之间的第二概率分布qi/j:

s2013、根据第一概率分布和第二概率分布,获得可视化结果。

具体的,根据第一概率分布和第二概率分布获得可视化结果可以包括以下步骤:

首先,确定第一概率分布与第二概率分布之间的相对熵。

在一种可能的方式中,可以根据如下公式(3)确定第一概率分布与第二概率分布之间的相对熵c:

进一步的,若相对熵小于等于第二预设值,则根据第二概率分布获得可视化结果。

其中,当相对熵小于等于第二预设值时,说明可视化的结果已经满足预设要求,则输出第二概率分布作为可视化结果。需要说明的是,本公开实施例对于第二预设值的大小不做具体限定。

在一种可行的实施例中,当相对熵大于第二预设值,则需要更新公式(2)中的参数,根据更新的参数在第二空间维度中重新获得样本数据的第二分布概率,以优化第一概率分布与第二概率分布之间的相对熵,直到第一概率分布与第二概率分布之间的相对熵小于第二预设值时,输出当前的第二概率分布作为可视化结果。

可选的,可以使用梯度下降的方法,优化第一概率分布与第二概率分布之间的相对熵。具体的,首先通过如下公式(4)第一概率分布与第二概率分布之间的相对熵求导:

进一步的,根据如下公式(5)获得yk、yl的取值,以根据公式(3)确定第二分布概率。

其中,η为下降梯度,需要说明的是,对于η的具体数值,本公开实施例不做具体限定。

图4为本公开一实施例提供的可视化处理结果示意图。如图4所示,将数据集中的样本数据经过可视化处理,以获得如图4所示的可视化结果示意图。

s202、将可视化结果转化为二维图片。

其中,二维图片表示各样本数据在二维空间中的分布。需要说明的是,将可视化结果转化为二维图片的具体方案可参考现有技术中的方案,此处不再赘述,示例性的,可以直接将可视化结果保存为二维图片格式。

为方便理解,请参考图5,图5为本公开一实施例提供的样本数据在二维空间中的分布的二维图片示意图。如图5所示,将图4中的可视化结果保存为如图5所示的二维图片。

作为一种可选方案,将可视化结果保存为二维图片格式之后,还可以将二维图片转化为灰度图片,具体的,通过图像灰度化算法将二维图片转换为灰度图片,需要说明的是,本公开实施例对于图像灰度化算法不做具体限定,示例性的,图像灰度化算法可以包括:最大值法、平均值法以及加权平均值法。本步骤中,通过将可视化结果转化为二维图片,可以直观的从二维图片中确定样本数据分类情况,从而为后续聚类过程提供参考。另外,由于将二维图片转化为灰度图片,可以避免出现条带失真的情况,且灰度图片的数据量相对原始图片较少,便于后续处理,从而进一步提升数据处理的效率。

s203、根据二维图片,获得数据集的分类个数。

具体的,将二维图片中的各样本数据占据的像素点进行膨胀处理,使得预设距离内的各像素点形成连通区域,获得膨胀处理后的二维图片。

需要说明的是,对于将二维图片中的各样本数据占据的像素点进行膨胀处理的具体方案,可参考现有技术中的方法,本公开实施例不做具体限定。示例性的,在图像的边缘添加像素值,对图片像素值为1的周围的像素点也设置成1,使得整体的像素值扩张,进而达到图像的膨胀效果。

为方便理解,请参考图6,图6为本公开一实施例提供的经过膨胀处理后的二维图片的示意图。对图5中的二维图片中的各样本数据占据的像素点进行膨胀处理,即可获得图6所示的膨胀处理后的二维图片。

根据二值图像连通域标记法,获得膨胀处理后的二维图片中连通区域的个数。

根据连通区域的个数确定分类个数。

其中,连通区域的个数即为分类个数。图6所示,图6中共包括区域1、区域2、区域3以及区域4的4个连通区域,则可以确定数据集的分类个数为4个。

s204、获取预设聚类算法中参数的第i种取值,确定预设聚类算法中参数的取值为第i取值。

需要说明的是,本公开实施例对于预设聚类算法可以为任意种类的数据聚类算法,例如:kmeans算法、dbscan算法以及hdbscan算法等,为方便理解,本公开实施例以预设聚类算法为hdbscan算法为例进行说明。

hdbscan算法的参数可以为最小簇大小,表示为:min_cluster_size,其中,最小簇大小用于表示聚类过程中每个聚类类别中样本数量的最小值。

本步骤中,获取所述预设聚类算法中参数的第1种取值为初始值,根据参数取值的初始值,采用预设聚类算法对数据集中的多个样本数据进行聚类处理,获得参数取值的初始值对应的聚类结果。

需要说明的是,对于第1种取值本公开实施例不做具体限定,示例性的,其可以为参数的取值范围中的任意值,例如,第1种取值可以为2。

s205、根据预设聚类算法中参数的取值,对数据集中的多个样本数据进行聚类处理,获得聚类结果。

s206、判断分类个数与聚类类别个数之差是否小于等于第一预设值。

s207、若是,则确定聚类结果为数据集的目标聚类结果。

具体的,根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果。

s208、若否,根据二分法和参数的第i种取值,获取参数的第i+1种取值。

其中,i为大于等于1的整数。

若分类个数与聚类类别个数之差大于第一预设值,则在取值范围中根据二分法和所述参数的第i种取值,获取所述参数的第i+1种取值;再根据第i+1种取值,采用预设聚类算法对数据集中的多个样本数据进行聚类处理,获得第i+1种对应的聚类结果。

重复上述步骤s206,直到分类个数与聚类类别个数之差小于等于第一预设值时,停止获取参数取值。

本公开的实施例中,对数据集中的多个样本数据进行可视化处理,获得可视化结果;将可视化结果转化为二维图片,根据二维图片,获得数据集的分类个数;获取预设聚类算法中参数的第i种取值;根据预设聚类算法中参数的取值,对数据集中的多个样本数据进行聚类处理,获得聚类结果;当分类个数与聚类类别个数之差小于等于第一预设值时,确定聚类结果为数据集的目标聚类结果。本公开通过将聚类算法的逻辑黑盒化,根据可视化处理获得的分类个数自动调整聚类算法的参数,直到聚类类别个数和可视化处理得到的分类个数相同时即完成聚类,此过程无需人工调整算法参数,可以简化数据聚类操作,提升数据聚类的效率。

图7为本公开又一实施例提供的数据处理方法的流程示意图。在上述实施例的基础上,本实施例对本公开技术方案进行更详细的描述,如图7所示,本公开的实施例提供的数据处理方法可以包括以下步骤:

s301、对数据集中的多个原始数据进行归一化处理,获得数据集中的多个样本数据。

需要说明的是,由于在降维或者可视化过程中,需要计算样本之间的距离,示例性的,以样本数据有两个特征a,b为例,样本1的特征包括a1,b1,样本2特征包括a2,b2,则可以得出样本1和样本2之间的距离为

由于数据集中的多个原始数据中,某些特征值远大于其他特征值,导致在计算原始数据的距离时,值较大的特征值会起到主导作用,使得其他特征值的重要性被掩盖掉,因此,通过对数据集中的多个原始数据进行归一化处理,可以将原始数据的所有特征的维度转化为0-1之间,从而保证各个特征对于计算距离时的贡献度相同,最终提升聚类结果的准确性。

s302、对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得数据集的分类个数。

s303、获取预设聚类算法的参数的至少一种取值;

s304、针对参数的每种取值,根据预设聚类算法对数据集中的多个样本数据进行聚类处理,获得聚类结果;

s305、根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果。

需要说明的是,步骤s302~s305所示的方法及有益效果与图2所示实施例中步骤s201~s204的方法及有益效果类似,具体可参考图2所示的实施例,此处不再赘述。

s306、获取数据集中多个原始数据的多个特征。

s307、根据目标聚类结果,采用决策模型对多个原始数据的多个特征进行学习,获得多个特征的重要度排序。

其中,决策模型可以包括以下至少一种:决策树模型、随机森林和xgboost模型。

为方便理解,本公开的实施例以决策模型是随机森林模型为例进行说明。通过随机森林模型对多个原始数据的多个特征进行学习,获得多个特征的重要度排序,主要包括以下步骤:

首先,根据原始数据构建随机森林,获得多个子决策树,需要说明的是,构建子决策树的方法可参考现有技术中的方案,此处不再赘述。

进一步的,通过如下公式(6)确定目标聚类结果中各子决策树中各节点的中各特征的基尼系数(giniindex):

其中,gim为节点m中m个特征的基尼系数,|k|表示目标聚类结果中有k个类别的样本数据,pmk表示随机森林模型的节点m中类别k的样本数据所占总样本数据的比例,k′为所有类别中与类别k不同的类别的任意样本数据。

进一步的,根据如下公式(7)确定每个节点中的特征在每个节点中的重要程度:

其中,gil和gir均为对节点m中的特征进行分割后,得到的的节点l和节点r中的样本对应的基尼系数。

为方便理解,请参考图8,图8为本公开一实施例提供的子决策树的结构示意图。如图8所示,子决策树包括节点m、节点l和节点r,其中,节点l和节点r为对节点m分割后获得的节点。

图中以节点m中有4个特征为例示出,节点l中包含特征1、2、3,节点r中包括特征5、6、7.

根据公式(7)可以得出,节点m中的特征的重要程度为:vim4=gi4-gi123-gi567。

其中,gi123、gi567分别为节点l和节点r中的特征对应的基尼系数。

进一步的,根据如下公式(8)计算每个特征在每个子决策树中的重要程度:

更进一步的,根据每个特征在每个子决策树中的重要程度,得出每个子决策树在森林中的重要程度。

具体的,根据如下公式(9)确定每个子决策树在随机森林中的重要程度:

其中,n为随机森林中子决策树的个数。

可选的,在获每个子决策树在随机森林中的重要程度后,可以对每个子决策树在随机森林中的重要程度进行归一化处理,以获得每个特征的重要度,其中,对于归一化处理的具体方案,本公开实施例不做具体限定。

最后,根据每个子决策树在随机森林中的重要程度对多个特征进行重要度排序,以获得多个特征的重要度排序。

在一些实施方式中,在确定多个特征的重要度排序之后,还可以输出多个特征的重要度排序,以使得用户关注重要特征,为后续的聚类处理提供参考。

本方案中,通过随机森林对原始数据中的特征进行学习,由于随机森林算法的准确率较高且效率高,因而可以快速、准确的得出聚类过程中的特征重要度排序,从而为后续聚类算法提供参考。

本公开实施例提供的方案,通过对数据集中的多个原始数据进行归一化处理,获得数据集中的多个样本数据;对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得数据集的分类个数;获取预设聚类算法的参数的至少一种取值;针对参数的每种取值,根据预设聚类算法对数据集中的多个样本数据进行聚类处理,获得聚类结果;根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果。通过将聚类算法的逻辑黑盒化,根据可视化处理获得的分类个数自动调整聚类算法的参数,直到聚类类别个数和可视化处理得到的分类个数相同时即完成聚类,此过程无需人工调整算法参数,可以简化数据聚类操作,提升数据聚类的效率。另外,在聚类前,对原始数据进行归一化处理,可以保证各个特征对于计算距离时的贡献度相同,最终提升聚类结果的准确性。

图9为本公开又一实施例提供的数据处理方法的流程示意图。在上述实施例的基础上,本实施例对本公开技术方案进行更详细的描述,如图9所示,本公开的实施例提供的数据处理方法可以包括以下步骤:

s401、对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得数据集的分类个数。

s402、获取预设聚类算法的参数的至少一种取值。

s403、针对参数的每种取值,根据预设聚类算法对数据集中的多个样本数据进行聚类处理,获得聚类结果;

s404、根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果。

需要说明的是,步骤s401~s404所示的方法及有益效果与图2所示实施例中步骤s201~s204的方法及有益效果类似,具体可参考图2所示的实施例,此处不再赘述。

s405、根据多个聚类类别,确定目标聚类结果中各个类别间的特征分布差异。

在实际应用中,聚类结果中包括多个聚类类别,每个聚类类别间的差距越大,则说明聚类效果较好,因此,在聚类完成后,可以根据多个聚类类别质检的差异,来衡量当前的聚类效果。其中,确定目标聚类结果中各类别之间的特征分布差异可以包括以下步骤:

首先,针对多个聚类类别中每两个聚类类别,确定两个聚类类别之间的相对熵,并根据相对熵,确定两个聚类类别之间的js散度。

示例性的,以目标聚类结果中包含a、b、c三个聚类类别为例,计算出多个聚类类别中每两个聚类类别的相对熵,即计算a与b、b与c、a与c之间的相对熵;

具体的,根据如下公式(11)确定每两个聚类类别的相对熵:

其中,p、q分别为多个聚类类别中的任意两个类别,p(x)、q(x)分别为类别p、q中各特征的概率分布。

进一步的,根据a与b、b与c、a与c之间的相对熵,确定a与b、b与c、a与c之间的js散度;

具体的,根据如下公式(12)确定每两个聚类类别之间的js散度:

其中,p1、p2分别为多个聚类类别中的任意两个类别,kl为p1、p2之间的相对熵。

然后,根据多个聚类类别中每两个聚类类别之间的js散度,确定目标聚类结果中的多个js散度。

按照上述步骤,依次获取目标聚类结果中的多个js散度。

最后,确定目标聚类结果中的多个js散度中的最大值为目标聚类结果中各类别之间的特征分布差异。

示例性的,若聚类类别a和b之间的js散度最大,则确定聚类类别a和b之间的js散度为目标聚类结果中各类别之间的特征分布差异。

s406、根据特征分差异,确定目标聚类结果的数据聚类评分。

本公开的实施例中,对于聚类评分的确定方法不做具体限定,一种可行的方案中可以根据特征分布差异与数据聚类评分之间的对应关系确定数据聚类评分。

本公开的实施例提供的方案,通过根据多个聚类类别,确定目标聚类结果中各个类别间的特征分布差异,根据特征分差异,确定目标聚类结果的数据聚类评分。本公开通过将聚类算法的逻辑黑盒化,根据可视化处理获得的分类个数自动调整聚类算法的参数,直到聚类类别个数和可视化处理得到的分类个数相同时即完成聚类,此过程无需人工调整算法参数,可以简化数据聚类操作,提升数据聚类的效率。另外,在聚类完成后,根据特征分差异对聚类结果进行评分,可以直观的展示出每次聚类的聚类效果,为后续聚类过程提供数据参考。

图10为本公开一实施例提供的数据处理装置的结构示意图。如图10所示,该数据处理装置100包括:处理模块1001、获取模块1002、聚类模块1003以及确定模块1004。

其中,处理模块1001,用于对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得数据集的分类个数;

获取模块1002,用于获取预设聚类算法的参数的至少一种取值;

聚类模块1003,用于针对参数的每种取值,根据预设聚类算法对数据集中的多个样本数据进行聚类处理,获得聚类结果;

确定模块1004,用于根据聚类结果,确定聚类类别个数,若分类个数与聚类类别个数之差小于等于第一预设值,则确定聚类结果为数据集的目标聚类结果。

可以理解的是,本公开的实施例所提供的数据处理装置,可用于执行如上述任一方法实施例的技术方案,其实现原理和技术效果类似,具体可参考上述方法实施例,此处不再赘述。

在一种可能的实现方式中,获取模块1002,具体用于获取预设聚类算法中参数的第1种取值为初始值;以及

根据二分法和参数的第i种取值,获取参数的第i+1种取值;

其中,i为大于等于1的整数。

在一种可能的实现方式中,获取模块1002,具体用于针对参数的第i种取值,若分类个数与根据第i种取值确定的聚类类别个数之差大于第一预设值,则根据二分法和参数的第i种取值,获取参数的第i+1种取值。

在一种可能的实现方式中,处理模块1001,具体用于将可视化结果转化为二维图片,二维图片表示各样本数据在二维空间中的分布;

根据二维图片,获得数据集的分类个数。

在一种可能的实现方式中,处理模块1001,具体用于将二维图片中的各样本数据占据的像素点进行膨胀处理,使得预设距离内的各像素点形成连通区域,获得膨胀处理后的二维图片;

根据二值图像连通域标记法,获得膨胀处理后的二维图片中连通区域的个数;

根据连通区域的个数确定分类个数。

在一种可能的实现方式中,处理模块1001,具体用于获取第一空间维度中多个样本数据的第一概率分布;

获取第二空间维度中多个样本数据的第二概率分布;

根据第一概率分布和第二概率分布,获得可视化结果;

其中,第一空间维度的维度高于第二空间维度的维度。

在一种可能的实现方式中,处理模块1001,具体用于确定第一概率分布与第二概率分布之间的相对熵;

若相对熵小于等于第二预设值,则根据第二概率分布获得可视化结果。

在一种可能的实现方式中,处理模块1001,还用于对数据集中的多个原始数据进行归一化处理,获得数据集中的多个样本数据。

在一种可能的实现方式中,获取模块1002,还用于获取数据集中多个原始数据的多个特征;

根据目标聚类结果,采用决策模型对多个原始数据的多个特征进行学习,获得多个特征的重要度排序。

在一种可能的实现方式中,决策模型包括以下至少一种:决策树模型、随机森林和xgboost模型。

在一种可能的实现方式中,目标聚类结果中包括多个聚类类别;

确定模块1004,还用于根据多个聚类类别,确定目标聚类结果中各类别之间的特征分布差异;

根据特征分差异,确定目标聚类结果的数据聚类评分。

在一种可能的实现方式中,确定模块1004,具体用于针对多个聚类类别中每两个聚类类别,确定两个聚类类别之间的相对熵,并根据相对熵,确定两个聚类类别之间的js散度;

根据多个聚类类别中每两个聚类类别之间的js散度,确定目标聚类结果中的多个js散度;

确定目标聚类结果中的多个js散度中的最大值为目标聚类结果中各类别之间的特征分布差异。

可以理解的是,本实施例所提供的报文处理装置,可用于执行如上述任一方法实施例的技术方案,其实现原理和技术效果类似,具体可参考上述方法实施例,此处不再赘述。

图11为本公开一实施例提供的电子设备的结构示意图。图11所示,本公开实施例的电子设备110可用于实现上述任一项方法实施例中描述的方法,具体参见上述方法实施例中的说明。

电子设备110可以包括一个或多个处理器1101,该处理器1101也可以称为处理单元,可以实现一定的控制或者处理功能。处理器1101可以是通用处理器或者专用处理器等。例如可以是基带处理器、或中央处理器。基带处理器可以用于对数据进行处理,中央处理器可以用于对电子设备110进行控制,执行软件程序,处理软件程序的数据。

在一种可能的设计中,处理器1101也可以存有指令或者数据(例如设备绑定数据、广播数据等)。其中,指令可以被处理器1101运行,使得终端110执行上述方法实施例中描述的对应于第一终端或者第二终端的方法。

在又一种可能的设计中,电子设备110可以包括电路,该电路可以实现前述方法实施例中发送或接收或者通信的功能。

在一种可能的实现方式中,电子设备110中可以包括一个或多个存储器1102,其上可以存有指令,该指令可在处理器1101上被运行,使得电子设备110执行上述方法实施例中描述的方法。

在一种可能的实现方式中,存储器1102中也可以存储有数据。处理器1101和存储器1102可以单独设置,也可以集成在一起。

在一种可能的实现方式中,电子设备110还可以包括接收器1103和/或发送器1104。处理器1101可以称为处理单元,对电子设备110进行控制。接收器器1103可以称为接收单元、接收机、或者接收电路等,用于实现电子设备110的接收功能。

其中,处理器1101、接收器1103以及发送器1104的具体实现过程可以参见上述各实施例的相关描述,此处不再赘述。

本公开中描述的处理器1101、接收器1103以及发送器1104可实现在集成电路(integratedcircuit,简称:ic)、模拟ic、射频集成电路(radiofrequencyintegratedcircuit,简称:rfic)、混合信号ic、专用集成电路(applicationspecificintegratedcircuit,简称:asic)、印刷电路板(printedcircuitboard,简称:pcb)、电子设备等上。

本领域技术人员可以理解的是,图11中示出的电子设备的结构并不构成对本终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

在此需要说明的是,本公开提供的上述电子设备,用于实现上述方法实施例中描述的方法,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。

本公开的实施例还提供一种计算机可读存储介质,当该存储介质中的指令由终端设备的处理器执行时,使得处理器能够执行上述方法实施例中的数据处理方法。

本公开的实施例还提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时,实现上述方法实施例中的数据处理方法。

本公开还提供如下实施例:

实施例1、一种数据处理方法,包括:

对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得所述数据集的分类个数;

获取预设聚类算法的参数的至少一种取值;

针对所述参数的每种取值,根据所述预设聚类算法对所述数据集中的多个样本数据进行聚类处理,获得聚类结果;

根据所述聚类结果,确定聚类类别个数,若所述分类个数与所述聚类类别个数之差小于等于第一预设值,则确定所述聚类结果为所述数据集的目标聚类结果。

实施例2、根据实施例1所述的方法,所述获取预设聚类算法的参数的至少一种取值,包括:

获取所述预设聚类算法中参数的第1种取值为初始值;以及

根据二分法和所述参数的第i种取值,获取所述参数的第i+1种取值;

其中,所述i为大于等于1的整数。

实施例3、根据实施例2所述的方法,所述根据二分法和所述参数的第i种取值,获取所述参数的第i+1种取值,包括:

针对所述参数的第i种取值,若所述分类个数与根据所述第i种取值确定的聚类类别个数之差大于所述第一预设值,则根据二分法和所述参数的第i种取值,获取所述参数的第i+1种取值。

实施例4、根据实施例1所述的方法,所述根据可视化处理结果获得所述数据集的分类个数,包括:

将所述可视化结果转化为二维图片,所述二维图片表示各样本数据在二维空间中的分布;

根据所述二维图片,获得所述数据集的分类个数。

实施例5、根据实施例4所述的方法,所述根据所述二维图片,获得所述数据集的分类个数,包括:

将所述二维图片中的各样本数据占据的像素点进行膨胀处理,使得预设距离内的各像素点形成连通区域,获得膨胀处理后的所述二维图片;

根据二值图像连通域标记法,获得膨胀处理后的所述二维图片中连通区域的个数;

根据所述连通区域的个数确定所述分类个数。

实施例6、根据实施例1所述的方法,所述对数据集中的多个样本数据进行可视化处理,包括:

获取第一空间维度中所述多个样本数据的第一概率分布;

获取第二空间维度中所述多个样本数据的第二概率分布;

根据所述第一概率分布和所述第二概率分布,获得可视化结果;

其中,所述第一空间维度的维度高于所述第二空间维度的维度。

实施例7、根据实施例6所述的方法,所述根据所述第一概率分布和所述第二概率分布,获得可视化结果,包括:

确定所述第一概率分布与所述第二概率分布之间的相对熵;

若所述相对熵小于等于第二预设值,则根据所述第二概率分布获得可视化结果。

实施例8、根据实施例1至实施例7中任一实施例所述的方法,所述对数据集中的多个样本数据进行可视化处理之前,还包括:

对数据集中的多个原始数据进行归一化处理,获得所述数据集中的多个样本数据。

实施例9、根据实施例8所述的方法,所述确定所述聚类结果为所述数据集的目标聚类结果之后,还包括:

获取所述数据集中多个原始数据的多个特征;

根据所述目标聚类结果,采用决策模型对所述多个原始数据的多个特征进行学习,获得所述多个特征的重要度排序。

实施例10、根据实施例9所述的方法,所述决策模型包括以下至少一种:决策树模型、随机森林和xgboost模型。

实施例11、根据实施例1至7中任一实施例所述的方法,所述目标聚类结果中包括多个聚类类别;

所述确定所述聚类结果为所述数据集的目标聚类结果之后,还包括:

根据所述多个聚类类别,确定所述目标聚类结果中各类别之间的特征分布差异;

根据所述特征分差异,确定所述目标聚类结果的数据聚类评分。

实施例12、根据实施例11所述的方法,所述根据所述多个聚类类别,确定所述目标聚类结果中各类别之间的特征分布差异,包括:

针对所述多个聚类类别中每两个聚类类别,确定所述两个聚类类别之间的相对熵,并根据所述相对熵,确定所述两个聚类类别之间的js散度;

根据所述多个聚类类别中每两个聚类类别之间的js散度,确定所述目标聚类结果中的多个js散度;

确定所述目标聚类结果中的多个js散度中的最大值为所述目标聚类结果中各类别之间的特征分布差异。

实施例13、一种数据处理装置,包括:

处理模块,用于对数据集中的多个样本数据进行可视化处理,根据可视化处理结果获得所述数据集的分类个数;

获取模块,用于获取预设聚类算法的参数的至少一种取值;

聚类模块,用于针对所述参数的每种取值,根据所述预设聚类算法对所述数据集中的多个样本数据进行聚类处理,获得聚类结果;

确定模块,用于根据所述聚类结果,确定聚类类别个数,若所述分类个数与所述聚类类别个数之差小于等于第一预设值,则确定所述聚类结果为所述数据集的目标聚类结果。

实施例14、根据实施例13所述的装置,所述获取模块,具体用于获取所述预设聚类算法中参数的第1种取值为初始值;以及

根据二分法和所述参数的第i种取值,获取所述参数的第i+1种取值;

其中,所述i为大于等于1的整数。

实施例15、根据实施例14所述的装置,所述获取模块,具体用于针对所述参数的第i种取值,若所述分类个数与根据所述第i种取值确定的聚类类别个数之差大于所述第一预设值,则根据二分法和所述参数的第i种取值,获取所述参数的第i+1种取值。

实施例16、根据实施例13所述的装置,所述处理模块,具体用于将所述可视化结果转化为二维图片,所述二维图片表示各样本数据在二维空间中的分布;

根据所述二维图片,获得所述数据集的分类个数。

实施例17、根据实施例16所述的装置,所述处理模块,具体用于将二维图片中的各样本数据占据的像素点进行膨胀处理,使得预设距离内的各像素点形成连通区域,获得膨胀处理后的二维图片;

根据二值图像连通域标记法,获得膨胀处理后的二维图片中连通区域的个数;

根据连通区域的个数确定分类个数。

实施例18、根据实施例13所述的装置,所述处理模块,具体用于获取第一空间维度中所述多个样本数据的第一概率分布;

获取第二空间维度中所述多个样本数据的第二概率分布;

根据所述第一概率分布和所述第二概率分布,获得可视化结果;

其中,所述第一空间维度的维度高于所述第二空间维度的维度。

实施例19、根据实施例18所述的装置,所述处理模块,具体用于确定所述第一概率分布与所述第二概率分布之间的相对熵;

若所述相对熵小于等于第二预设值,则根据所述第二概率分布获得可视化结果。

实施例20、根据实施例13至实施例19中任一实施例所述的装置,所述处理模块,还用于对数据集中的多个原始数据进行归一化处理,获得所述数据集中的多个样本数据。

实施例21、根据实施例20所述的装置,所述获取模块,还用于获取所述数据集中多个原始数据的多个特征;

根据所述目标聚类结果,采用决策模型对所述多个原始数据的多个特征进行学习,获得所述多个特征的重要度排序。

实施例22、根据实施例21所述的装置,所述决策模型包括以下至少一种:决策树模型、随机森林和xgboost模型。

实施例23、根据实施例13至实施例19中任一实施例所述的装置,所述目标聚类结果中包括多个聚类类别;

所述确定模块,还用于根据所述多个聚类类别,确定所述目标聚类结果中各类别之间的特征分布差异;

根据所述特征分差异,确定所述目标聚类结果的数据聚类评分。

实施例24、根据实施例23所述的装置,所述确定模块,具体用于针对所述多个聚类类别中每两个聚类类别,确定所述两个聚类类别之间的相对熵,并根据所述相对熵,确定所述两个聚类类别之间的js散度;

根据所述多个聚类类别中每两个聚类类别之间的js散度,确定所述目标聚类结果中的多个js散度;

确定所述目标聚类结果中的多个js散度中的最大值为所述目标聚类结果中各类别之间的特征分布差异。

实施例25、一种电子设备,包括:存储器和处理器;

所述存储器用于存储程序指令;

所述处理器用于调用所述存储器中的程序指令执行如实施例1至实施例12中任一实施例所述的方法。

实施例26、一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序;所述计算机程序被执行时,实现如实施例1至实施例12中任一实施例所述的方法。

实施例27、一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如实施例1至实施例12中任一实施例所述的方法。

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

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本公开各个实施例方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文:read-onlymemory,简称:rom)、随机存取存储器(英文:randomaccessmemory,简称:ram)、磁碟或者光盘等各种可以存储程序代码的介质。

在上述服务器的实施例中,应理解,处理器可以是中央处理单元(英文:centralprocessingunit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)等。结合本公开所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

本领域技术人员在考虑说明书及实践这里公开的方案后,将容易想到本公开的其它实施方案。本公开的实施例旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的实施例书指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的实施例书来限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1