应用聚类的方法、装置和设备与流程

文档序号:14474729阅读:197来源:国知局
应用聚类的方法、装置和设备与流程

本申请涉及网络技术领域,特别涉及应用聚类的方法、装置和设备。



背景技术:

在应用商店运营过程中,需要对不同应用进行分类,用以生成不同专题推荐给用户。目前的做法是由编辑人员对应用进行人工分类。但是人工分类的方法一方面需要消耗大量的人力,另一方面准确性依赖于编辑人员的经验,主观性很强,无法保证准确率。

因此,需求一种应用聚类的方法,来克服上述技术问题。



技术实现要素:

鉴于上述问题,本申请的目的在于提供了一种应用聚类的方法、装置和设备,降低应用归类所需的人力成本,提高应用归类的准确性。

为解决上述技术问题,本申请实施例是这样实现的:

第一方面,提供了一种应用聚类的方法,包括:

对多个应用中的每个应用执行归类步骤,以获得所述多个应用聚类后的多个分类集合,其中,所述归类步骤包括:

获取应用在重新归类前的多个备选分类集合;

基于应用之间的相关性,计算所述应用分别归属于所述多个备选分类集合时对应的分类方式的价值;

将所述应用重新归类到价值最高的分类方式下所述应用归属的备选分类集合中。

可选地,在对多个应用中的每个应用执行所述归类步骤之前,所述方法还包括:

确定迭代操作的最大迭代次数,其中,所述迭代操作包括对所述多个应用中的每个应用执行所述归类步骤。

可选地,所述方法还包括:

将执行完所述迭代操作的次数达到所述最大迭代次数时所述多个应用聚类后的多个备选分类集合,确定为所述多个应用最终聚类后的多个分类集合。

可选地,所述方法还包括:

若m小于所述最大迭代次数,且执行完所述迭代操作的次数为m次时所述多个应用聚类后的多个备选分类集合与执行完所述迭代操作的次数为m-1次时所述多个应用聚类后的多个备选分类集合一致,则将执行完所述迭代操作的次数为m次时所述多个应用聚类后的多个备选分类集合确定为所述多个应用最终聚类后的多个分类集合;

若执行完所述迭代操作的次数为m次时所述多个应用聚类后的多个备选分类集合与执行完所述迭代操作的次数为m-1次时所述多个应用聚类后的多个备选分类集合不一致,则执行所述迭代操作。

所述基于所述应用之间的相关性,计算所述应用分别归属于所述多个备选分类集合时对应的分类方式的价值,包括:

根据以下公式计算分类方式的价值:

其中,k表示分类方式,kvalue表示分类方式的价值,k表示分类方式下的类别,|sk|表示类别k对应的备选分类集合sk中包括的应用的个数,svaluek表示备选分类集合sk中包括的应用之间的相关性。

可选地,根据以下公式计算svaluek:

其中,i,j分别表示备选分类集合sk中包括的应用i和应用j,simi,j表示应用i和应用j之间的相关性,simi,j基于应用i和应用j的用户集合确定。

可选地,根据以下公式计算simi,j:

其中,usersinstallledi表示安装应用i的用户集合,usersinstallledj表示安装应用j的用户集合。

第二方面,提供了一种应用聚类的装置,包括:

第一归类处理模块,用于对多个应用中的每个应用执行归类步骤,以获得所述多个应用聚类后的多个分类集合;其中,所述归类步骤包括:

获取应用在重新归类前的多个备选分类集合;

基于应用之间的相关性,计算所述应用分别归属于所述多个备选分类集合时对应的分类方式的价值;

将所述应用重新归类到价值最高的分类方式下所述应用归属的备选分类集合中。

可选地,所述装置还包括:

迭代次数确定模块,用于在所述归类处理模块对多个应用中的每个应用执行所述归类步骤之前,确定迭代操作的最大迭代次数,其中,所述迭代操作包括对所述多个应用中的每个应用执行所述归类步骤。

可选地,所述装置还包括:

第二归类处理模块,用于将所述第一归类处理模块执行完所述迭代操作的次数达到所述最大迭代次数时所述多个应用聚类后的多个备选分类集合,确定为所述多个应用最终聚类后的多个分类集合。

所述装置还包括:

第三归类处理模块,用于若m小于所述最大迭代次数,且所述第一归类处理模块执行完所述迭代操作的次数为m次时所述多个应用聚类后的多个备选分类集合与所述第一归类处理模块执行完所述迭代操作的次数为m-1时所述多个应用聚类后的多个备选分类集合一致,则将所述第一归类处理模块执行完所述迭代操作的次数为m次时所述多个应用聚类后的多个备选分类集合确定为所述多个应用最终聚类后的多个分类集合;

若所述第一归类处理模块执行完所述迭代操作的次数为m次时所述多个应用聚类后的多个备选分类集合与所述第一归类处理模块执行完所述迭代操作的次数为m-1次时所述多个应用聚类后的多个备选分类集合不一致,则执行所述迭代操作。

所述第一归类处理模块包括:

第一计算模块,用于根据以下公式计算分类方式的价值:

其中,k表示分类方式,kvalue表示分类方式的价值,k表示分类方式下的类别,|sk|表示类别k对应的备选分类集合sk中包括的应用的个数,svaluek表示备选分类集合sk中包括的应用之间的相关性。

所述第一归类处理模块还包括:

第二计算模块,用于根据以下公式计算svaluek:

其中,i,j分别表示备选分类集合sk中包括的应用i和应用j,simi,j表示应用i和应用j之间的相关性,simi,j基于应用i和应用j的用户集合确定。

所述第一归类处理模块还包括:

第三计算模块,用于根据以下公式计算simi,j:

其中,usersinstallledi表示安装应用i的用户集合,usersinstallledj表示安装应用j的用户集合。

第三方面,提供了一种设备,包括:包括处理器、以及存储有计算机指令的存储器;

所述处理器读取所述计算机指令,并执行如前述的应用聚类的方法。

第四方面,提供了一种存储介质,其特征在于,存储有计算机指令,所述计算机指令被执行时实现如前述的应用聚类的方法。

本申请实施例提供的应用聚类的方法、装置和设备,针对多个应用中的每个应用获取该应用在重新归类前的多个备选分类集合,并基于应用之间的相关性计算该应用分别归属于多个备选分类集合时对应的分类方式的价值,将该应用重新归类到价值最高的分类方式下该应用归属的备选分类集合中,可以通过机器学习的方法对每个应用执行上述的归类步骤实现将每个应用进行归类,降低应用归类所需的人力成本,提高应用归类的准确性。

附图说明

根据下述参照附图进行的详细描述,本申请的上述和其他目的、特征和优先将变得显而易见。在附图中:

图1是根据本申请的一个实施例的应用聚类的方法的流程图。

图2是根据本申请的一个实施例的应用聚类的方法的另一流程图。

图3是根据本申请的一个具体实施例的应用聚类的方法的流程图。

图4是根据本申请的一个实施例的应用聚类的装置的结构示意图。

图5是根据本申请的一个实施例的设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

在本申请中,提供了一种应用聚类的方法、装置、设备及存储介质。下面将结合附图对本申请的具体实施方式进行描述。

参见图1,本申请一实施例提供的应用聚类的方法,包括步骤110。

步骤110,对多个应用中的每个应用执行归类步骤,以获得所述多个应用聚类后的多个分类集合,其中,所述归类步骤包括步骤111至步骤113。

在步骤110中,分类集合与类别相对应,且多个分类集合中任意两个分类集合对应的类别不同。

可选地,在一些实施例中,将多个应用进行编号,按照编号顺序对多个应用中的每个应用执行所述归类步骤。例如可以按照编号由小到大的顺序对多个应用中的每个应用执行所述归类步骤。

具体地,步骤111,获取应用在重新归类前的多个备选分类集合。

需要说明的是,在步骤111中一个应用在重新归类前的多个备选分类集合的数量可以等于多个应用聚类后的多个分类集合的数量,或者一个应用在重新归类前的多个备选分类集合的数量可以小于多个应用聚类后的多个分类集合的数量,并且不同的应用在重新归类前的备选分类集合的数量可以不同。例如,多个应用聚类后的多个分类集合的数量为5,多个应用中的编号为1的应用在重新归类前的多个备选分类集合的数量为3,多个应用中的编号为2的应用在重新归类前的多个备选分类集合的数量为5。

可以理解的是,在对多个应用中的每个应用执行归类步骤时,前一次执行完归类步骤时得到的分类集合将作为后一次执行归类步骤时备选分类集合的选择基础。

举例来说,有4个应用分别为应用1、应用2、应用3和应用4,有3个类别分别为类别1、类别2和类别3,其中类别1对应的分类集合为分类集合1,类别2对应的分类集合为分类集合2,类别3对应的分类集合为分类集合3。假设按照编号由小到大的顺序对每个应用执行归类步骤,且在对应用2执行归类步骤前的分类集合分别是包括应用1的分类集合1、包括应用2和应用3的分类集合2、包括应用4的分类集合3,在对应用2执行完归类步骤时的分类集合变成包括应用2的分类集合1、包括应用1的分类集合2、包括应用3和应用4的分类集合3,则在对应用3执行归类步骤时,获取的应用3的多个备选集合指的是上述包括应用2的分类集合1、包括应用1的分类集合2、包括应用3和应用4的分类集合3。

步骤112,基于应用之间的相关性,计算所述应用分别归属于所述多个备选分类集合时对应的分类方式的价值。

可以理解的是,计算应用分别归属于多个备选集合时对应的分类方式的价值实质是指分别假设应用属于多个备选集合中的每个备选集合,应用属于备选集合中的不同的备选集合对应不同的分类方式,分别计算应用属于每个备选集合时对应的分类方式的价值。

举例来说,有6个应用分别为应用1、应用2、应用3、应用4、应用5和应用6,有3个类别分别为类别1、类别2和类别3,其中类别1对应的分类集合为分类集合1,类别2对应的分类集合为分类集合2,类别3对应的分类集合为分类集合3,且6个应用中的应用1归类在分类集合2中,应用2和应用3归类在分类集合1中,应用4、应用5和应用6归类在分类集合3中。假设应用1在重新归类前的多个备选分类集合为分类集合2和分类集合3,则基于应用之间的相关性计算应用1分别归属于分类集合2和分类集合3时对应的分类方式的价值。具体地,在应用1归属于分类集合2中时对应的分类方式下,应用1归类在分类集合2中,应用2和应用3归类在分类集合1中,应用4、应用5和应用6归类在分类集合3中。在应用1归属于分类集合3中时对应的分类方式下,应用2和应用3归类在分类集合1中,应用1、应用4、应用5和应用6归类在分类集合3中。

可选地,在一些实施例中,基于应用之间的相关性计算所述应用分别归属于多个备选分类集合时对应的分类方式的价值为:基于每个备选分类集合中包括的应用之间的相关性计算所述应用分别归属于多个备选分类集合时对应的分类方式的价值,例如,可以根据公式(1)计算分类方式的价值:

其中,k表示分类方式,kvalue表示分类方式的价值,k表示分类方式下的类别,|sk|表示类别k对应的备选分类集合sk中包括的应用的个数,svaluek表示备选分类集合sk中包括的应用之间的相关性。

可选地,作为一个例子,根据公式(2)计算svaluek:

其中,i,j分别表示备选分类集合sk中包括的应用i和应用j,simi,j表示应用i和应用j之间的相关性,simi,j基于应用i和应用j的用户集合确定。

具体在确定simi,j时可以根据公式(3)来计算simi,j:

其中,usersinstallledi表示安装应用i的用户集合,usersinstallledj表示安装应用j的用户集合。

可以理解的是,在公式(3)中,|usersinstallledi∩usersinstallledj|表示既安装应用i又安装应用j的用户构成的用户集合,|usersinstallledi∩usersinstallledj|表示只安装应用i、只安装应用j和同时安装了应用i和应用j的用户构成的用户集合。

举例来说,假设有6个用户分别为用户1、用户2、用户3、用户4、用户5和用户6,其中,用户1、用户2、用户3安装了应用i,用户1、用户2和用户5安装了应用j,则可以确定既安装应用i又安装应用j的用户为用户1和用户2,只安装应用i的用户为用户3,只安装应用j的用户为用户5,则根据公式(3)可以确定应用i和应用j之间的相关性simi,j=2/4=0.5。

步骤113,将所述应用重新归类到价值最高的分类方式下所述应用归属的备选分类集合中。

需要说明的是,如果价值最高的分类方式下所述应用归属的备选分类集合为在执行步骤112之前该应用归属的备选分类集合,则步骤113中的重新归类指的是保持该应用所属的备选分类集合不变。也就是说,将应用重新归类包括不改变该应用所归属的分类集合的情况。

举例来说,有6个应用分别为应用1、应用2、应用3、应用4、应用5和应用6,有3个类别分别为类别1、类别2和类别3,其中类别1对应的分类集合为分类集合1,类别2对应的分类集合为分类集合2,类别3对应的分类集合为分类集合3,且6个应用中的应用1归类在分类集合2中,应用2和应用3归类在分类集合1中,应用4、应用5和应用6归类在分类集合3中。假设应用1在重新归类前的多个备选分类集合为分类集合2和分类集合3,在基于应用之间的相关性计算应用1分别归属于分类集合2和分类集合3时对应的分类方式的价值时发现应用1归属于分类集合2时对应的分类方式的价值要大于应用1归属于分类集合3时对应的分类方式的价值,则将应用1重新归类指的是仍将应用1归类到应用集合2中。

在本申请实施例中,可选地,如图2所示出的,本申请的应用聚类的方法还包括步骤120,其中,步骤120的执行顺序在步骤110之前。

步骤120,确定迭代操作的最大迭代次数,其中,所述迭代操作包括对所述多个应用中的每个应用执行所述归类步骤。

也就是说,一次迭代操作包括对多个应用中的每个应用执行归类步骤。例如,多个应用为5个应用,则一次迭代操作包括对这5个应用中的每个应用均执行一遍上述的归类步骤。

可选地,在一些实施例中,在第一次执行迭代操作之前,进行系统的初始化。例如,假设有一个应用池a,应用池中有一批应用,需要把这批应用划分为n类,则在初始化过程中,随机把应用池a中的应用划分为n类,且n类对应的分类集合记为s1,s2,….,sn,并设置当前迭代轮数(或者理解为执行完迭代操作的次数)nowlte=0,之后每执行完一次所述迭代操作将nowlte的数值加1,即nowlte=nowlte+1。

具体地,在一些实施例中,本申请的应用聚类的方法还包括:将执行完所述迭代操作的次数达到最大迭代次数时所述多个应用聚类后的多个备选分类集合,确定为所述多个应用聚类最终聚类后的多个分类集合。

举例来说,有6个应用分别为应用1、应用2、应用3、应用4、应用5和应用6,有4个类别分别为类别1、类别2、类别3和类别4,其中类别1对应的分类集合为分类集合1,类别2对应的分类集合为分类集合2,类别3对应的分类集合为分类集合3,类别4对应分类集合4。初始化过程将应用1归类在分类集合1中,应用2和应用3归类在分类集合2中,应用4和应用5归类在分类集合3中,应用6归类在分类集合4中。假设一次迭代操作中按照编号由小到大的顺序对这6个应用执行上述的归类操作,且最大迭代次数为4,并假设完成第一次迭代操作时,应用1重新归类到分类集合2中,应用2和应用3仍归类到分类集合2中,应用4重新归类到分类集合1中,应用5仍归类在分类集合3中,应用6仍归类到分类集合4中,此时为达到最大迭代次数,则继续执行迭代操作,在执行完迭代操作的次数达到4次时,应用1重新归类到分类集合2中,应用2重新归类到分类集合1中,应用3仍归类到分类集合2中,应用4重新归类在分类集合3中,应用5重新归类到分类集合1中,应用6重新归类在分类集合4中,则将包括应用2和应用5分类集合1、包括应用1的分类集合2、包括应用4的分类集合3和包括应用6的分类集合4确定为这6个应用最终聚类后的分类集合。可以理解的是,实际场景中的应用的个数将远远大于6个,类别也远远多于4类,上述的例子仅仅是为了本领域技术人员理解本申请实施例的方法。

具体地,在另一些实施例中,本申请实施例的应用聚类的方法还包括:若m小于所述最大迭代次数,且执行完所述迭代操作的次数为m次时所述多个应用聚类后的多个备选分类集合与执行完所述迭代操作的次数为m-1次时所述多个应用聚类后的多个备选分类集合一致,则将执行完所述迭代操作的次数为m此时所述多个应用聚类后的多个备选分类集合确定为所述多个应用最终聚类后的多个分类集合。或者,如果执行完所述迭代操作的次数为m此时所述多个应用聚类后的多个备选分类集合与执行完所述迭代操作的次数为m-1次时所述多个应用聚类后的多个备选分类不一致,则执行所述迭代操作。

同样以上文中的6个应用和4个类别为例,同样假设一次迭代操作中按照编号由小到大的顺序对这6个应用执行上述的归类步骤,且最大迭代次数为4。如果第二次对这6个应用中的每个应用都执行完上述的归类步骤时,应用1重新归类到分类集合2中,应用2重新归类到分类集合1中,应用3仍归类到分类集合2中,应用4重新归类在分类集合3中,应用5重新归类到分类集合1中,应用6重新归类在分类集合4中,由于此时执行完迭代操作的次数小于最大迭代次数4,则第三次执行迭代操作,对这6个应用中的每个应用执行上述的归类步骤。若在第三次执行完迭代操作时,应用1仍归类到分类集合2中,应用2仍归类到分类集合1中,应用3仍归类到分类集合2中,应用4仍归类在分类集合3中,应用5仍归类到分类集合1中,应用6仍归类在分类集合4中,则认为第二次执行完迭代操作后这6个应用聚类后的4个备选分类集合与第三次执行完迭代操作后这6个应用聚类后的4个备选分类集合一致。将包括应用2和应用5分类集合1、包括应用1的分类集合2、包括应用4的分类集合3和包括应用6的分类集合4确定为这6个应用最终聚类后的分类集合。

但如果上文中在第三次执行完迭代操作时,应用1重新归类到分类集合3中,应用2重新归类到分类集合2中,应用3重新归类到分类集合1中,应用4重新归类在分类集合1中,应用5重新归类到分类集合6中,应用6重新归类在分类集合6中,则认为第二次执行完迭代操作后这6个应用聚类后的4个备选分类集合与第三次执行完迭代操作后这6个应用聚类后的4个备选分类集合不一致,需要继续执行迭代操作,对这6个应用进一步进行分类。可以理解的是,继续执行迭代操作直至达到最大迭代次数或者虽未达到最大迭代次数但后一次执行完迭代操作时这6个应用聚类后的4个备选分类集合与前一次执行完迭代操作时这6个应用聚类后的4个备选分类集合一致时,停止执行迭代操作。

换句话说,如果迭代操作被执行的次数为达到最大迭代次数,但是在一次迭代操作被执行完时,应用池中的应用不存在被重新划分分类集合(或者说被重新分类)的应用时,则将该次迭代操作执行完时的多个分类集合作为应用池中的应用最终聚类后的分类集合,如果在该次迭代操作被执行完时,应用池中的应用存在本重新划分分类集合(或者说被重新分类)的应用时,则需要继续执行迭代操作。

图3是本申请一具体实施例提供的应用聚类的方法,包括步骤210至步骤240。

步骤210,设定最大迭代次数,并对应用池中的所有应用进行编号。

例如,设定最大迭代次数为100,应用池中有m个应用,应用的编号依次为1,2…,m。

步骤220,进行初始化,随机把应用池中的所有应用划分为k类,k类对应的分类集合记为s1,s2,…,sk,设定当前迭代次数nowlte=0。

步骤230,按照顺序从第1个应用取到第m个应用,计算把每个应用划分到每一个分类集合中时对应的分类方式的价值,把每个应用划分到价值最大的分类方式下该应用被划分到的分类集合,并记录每个应用是否被重新划分分类。

需要说明的是,步骤230的具体实现方式与图1所示的应用聚类的方法中对多个应用中的每个应用执行归类步骤的实现方式相同,为避免重复,在此不再赘述。

步骤240,将nowlte的值加1,判断nowlte是否大于或等于最大迭代次数。

步骤250,如果nowlte大于或等于最大迭代次数,则输出执行完步骤230时的分类集合作为m个应用的聚类结果。

步骤260,如果nowlte小于最大迭代次数,判断步骤230中是否有应用被重新划分分类。

步骤270,如果步骤s230中没有应用被重新划分分类,则输出执行完步骤230时的分类集合作为m个应用的聚类结果。

可选地,如果在步骤260中判断出步骤s230中有应用被重新划分分类,则返回执行步骤230。

根据上文中对本申请的应用聚类的方法的具体描述可知,本申请的应用聚类的方法针对多个应用中的每个应用获取该应用在重新归类前的多个备选分类集合,并基于应用之间的相关性计算该应用分别归属于多个备选分类集合时对应的分类方式的价值,将该应用重新归类到价值最高的分类方式下该应用归属的备选分类集合中,可以通过机器学习的方法对每个应用执行上述的归类步骤实现将每个应用进行归类,降低应用归类所需的人力成本,提高应用归类的准确性。

以上结合图1至图3详细描述了根据本申请实施例的应用聚类的方法,下面将结合图4详细描述根据本申请实施例的应用聚类的装置。由于装置实施例基本相似于方法实施例,相关之处参见方法实施例的部分说明即可。下面描述的装置实施例仅仅是示意性的。

如图4所示出的,本申请实施例提供的应用聚类的装置40包括:

第一归类处理模块41,用于对多个应用中的每个应用执行归类步骤,以获得所述多个应用聚类后的多个分类集合,其中,所述归类步骤包括:

获取应用在重新归类前的多个备选分类集合;

基于应用之间的相关性,计算所述应用分别归属于所述多个备选分类集合时对应的分类方式的价值;

将所述应用重新归类到价值最高的分类方式下所述应用归属的备选分类集合中。

在本申请实施例中,可选地,如图4所示出的,所述装置40还包括:

迭代次数确定模块42,用于在所述归类处理模块对多个应用中的每个应用执行所述归类步骤之前,确定迭代操作的最大迭代次数,其中,所述迭代操作包括对所述多个应用中的每个应用执行所述归类步骤。

在本申请实施例中,可选地,所述装置40还包括:

第二归类处理模块,用于将所述第一归类处理模块执行完所述迭代操作的次数达到所述最大迭代次数时所述多个应用聚类后的多个备选分类集合,确定为所述多个应用最终聚类后的多个分类集合。

在本申请实施例中,可选地,所述装置40还包括:

第三归类处理模块,用于若m小于所述最大迭代次数,且所述第一归类处理模块执行完所述迭代操作的次数为m次时所述多个应用聚类后的多个备选分类集合与所述第一归类处理模块执行完所述迭代操作的次数为m-1次时所述多个应用聚类后的多个备选分类集合一致,则将所述第一归类处理模块执行完所述迭代操作的次数为m次时所述多个应用聚类后的多个备选分类集合确定为所述多个应用最终聚类后的多个分类集合。

在本申请实施例中,可选地,所述第三归类处理模块还用于:

若所述第一归类处理模块执行完所述迭代操作的次数为m次时所述多个应用聚类后的多个备选分类集合与所述第一归类处理模块执行完所述迭代操作的次数为m-1次时所述多个应用聚类后的多个备选分类集合不一致,则执行所述迭代操作。

在本申请实施例中,可选地,所述第一归类处理模块41包括:

第一计算模块,用于根据以下公式计算分类方式的价值:

其中,k表示分类方式,kvalue表示分类方式的价值,k表示分类方式下的类别,|sk|表示类别k对应的备选分类集合sk中包括的应用的个数,svaluek表示备选分类集合sk中包括的应用之间的相关性。

在本申请实施例中,可选地,所述第一归类处理模块41还包括:

第二计算模块,用于根据以下公式计算svaluek:

其中,i,j分别表示备选分类集合sk中包括的应用i和应用j,simi,j表示应用i和应用j之间的相关性,simi,j基于应用i和应用j的用户集合确定。

在本申请实施例中,可选地,所述第一归类处理模块41还包括:

第三计算模块,用于根据以下公式计算simi,j:

其中,usersinstallledi表示安装应用i的用户集合,usersinstallledj表示安装应用j的用户集合。

根据本申请实施例的应用聚类的装置对多个应用中的每个应用获取该应用在重新归类前的多个备选分类集合,并基于应用之间的相关性计算该应用分别归属于多个备选分类集合时对应的分类方式的价值,将该应用重新归类到价值最高的分类方式下该应用归属的备选分类集合中,能够降低应用归类所需的人力成本,提高应用归类的准确性。

下面将结合图5详细描述根据本申请的一个实施例的设备。参考图5,在硬件层面,设备包括处理器,可选地,包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(random-accessmemory,ram),也可能还包括非易失性存储器(non-volatilememory),例如至少1个磁盘存储器等。当然,该设备还可能包括其他业务所需要的硬件。

处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。

处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成应用聚类的装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:

对多个应用中的每个应用执行归类步骤,以获得所述多个应用聚类后的多个分类集合,其中,所述归类步骤包括:

获取应用在重新归类前的多个备选分类集合;

基于应用之间的相关性,计算所述应用分别归属于所述多个备选分类集合时对应的分类方式的价值;

将所述应用重新归类到价值最高的分类方式下所述应用归属的备选分类集合中。

上述如本申请图1和图2所示实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。

当然,除了软件实现方式之外,本申请的设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。

本申请实施例还提出了一种存储介质,该存储介质存储有计算机指令,所述计算机指令被执行时实现如上所述的应用聚类的方法。

总之,以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

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