样本聚类处理方法、装置、设备及存储介质与流程

    专利查询2022-07-07  112

    1.本公开涉及计算机
    技术领域
    :,具体涉及联邦学习与分布式数据处理等
    技术领域
    :,尤其涉及一种样本聚类处理方法、装置、设备及存储介质。
    背景技术
    ::2.基于如联邦学习(federatedlearning;fl)之类的分布式学习,是一种新兴的人工智能基础技术。在保障大数据交换时的信息安全、保护终端数据和个人数据隐私、保证合法合规的前提下,在多参与方或多计算节点之间开展高效率的机器学习。目前,已经成为当前数据科学领域的研究热点之一。然而将无监督学习的算法如聚类算法应用于联邦学习场景中仍然有所缺失。3.现有的聚类处理方案只能运行在单方机构的服务器上,无法打破数据孤岛,合理利用多个参与方的数据进行学习建模,从而释放各参与方的数据价值。技术实现要素:4.本公开提供了一种样本聚类处理方法、装置、设备及存储介质。5.根据本公开的一方面,提供了一种样本聚类处理方法,包括:6.接收参与联邦学习的多个计算设备中各所述计算设备发送的本地样本距离信息;7.基于各所述计算设备的本地样本距离信息,获取样本的聚类信息;8.向各所述计算设备发送所述样本的聚类信息合,以供各所述计算设备基于所述样本的聚类信息,将本地的各样本进行聚类处理。9.根据本公开的另一方面,提供了一种样本聚类处理方法,包括:10.基于本地的各样本的特征信息,获取各所述样本的本地样本距离信息;11.向中心服务器发送所述本地样本距离信息,以供所述中心服务器基于所有计算设备发送的所述本地样本距离信息,获取样本的聚类信息;12.接收所述中心服务器发送的所述样本的聚类信息;13.基于所述样本的聚类信息,将本地的各所述样本进行聚类处理。14.根据本公开的再一方面,提供了一种样本聚类处理装置,包括:15.接收模块,用于接收参与联邦学习的多个计算设备中各所述计算设备发送的本地样本距离信息;16.聚类信息获取模块,用于基于各所述计算设备的本地样本距离信息,获取样本的聚类信息;17.发送模块,用于向各所述计算设备发送所述样本的聚类信息,以供各所述计算设备基于所述样本的聚类信息,将本地的各样本进行聚类处理。18.根据本公开的又一方面,提供了一种计算设备,包括:19.获取模块,用于基于本地的各样本的特征信息,获取各所述样本的本地样本距离信息;20.发送模块,用于向中心服务器发送所述本地样本距离信息,以供所述中心服务器基于所有计算设备发送的所述本地样本距离信息,获取样本的聚类信息;21.接收模块,用于接收所述中心服务器发送的所述样本的聚类信息;22.聚类处理模块,用于基于所述样本的聚类信息,将本地的各所述样本进行聚类处理。23.根据本公开的再另一方面,提供了一种联邦学习系统,包括中心服务器和多个计算设备,各所述计算设备与所述中心服务器通信连接,所述中心服务器上设置有如上所述的方面和任一可能的实现方式的样本聚类处理装置;所述计算设备可以采用如上所述的方面和任一可能的实现方式的计算设备。24.根据本公开的再又一方面,提供了一种电子设备,包括:25.至少一个处理器;以及26.与所述至少一个处理器通信连接的存储器;其中,27.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方面和任一可能的实现方式的方法。28.根据本公开的又另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如上所述的方面和任一可能的实现方式的方法。29.根据本公开的又再一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的方面和任一可能的实现方式的方法。30.根据本公开的技术,能够有效地保证样本聚类处理的准确性和聚类精度。31.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。附图说明32.附图用于更好地理解本方案,不构成对本公开的限定。其中:33.图1是根据本公开第一实施例的示意图;34.图2是根据本公开第二实施例的示意图;35.图3是根据本公开第三实施例的示意图;36.图4是根据本公开第四实施例的示意图;37.图5是根据本公开第五实施例的示意图;38.图6是根据本公开第六实施例的示意图39.图7是根据本公开第七实施例的示意图;40.图8是根据本公开第八实施例的示意图;41.图9是根据本公开第九实施例的示意图;42.图10是根据本公开第十实施例的示意图;43.图11是用来实现本公开实施例的方法的电子设备的框图。具体实施方式44.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。45.显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本公开保护的范围。46.需要说明的是,本公开实施例中所涉及的终端设备可以包括但不限于手机、个人数字助理(personaldigitalassistant,pda)、无线手持设备、平板电脑(tabletcomputer)等智能设备;显示设备可以包括但不限于个人电脑、电视等具有显示功能的设备。47.另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。48.基于现有技术的问题,为了弥补现有技术的不足,本公开提供一种样本的聚类处理方案,可以应用于分布式系统的无监督无监督学习中,如具体可以应用于无监督学习的联邦学习中。49.图1是根据本公开第一实施例的示意图;如图1所示,本实施例提供一种样本聚类处理方法,具体可以应用于联邦学习系统中的中心服务器上,具体可以包括如下步骤:50.s101、接收参与联邦学习的多个计算设备中各计算设备发送的本地样本距离信息;51.s102、基于各计算设备的本地样本距离信息,获取样本的聚类信息;52.s103、向各计算设备发送样本的聚类信息,以供各计算设备基于样本的聚类信息,将本地的各样本进行聚类处理。53.本实施例的样本聚类处理方法,可以应用于分布式学习系统中,如联邦学习系统中。该样本聚类处理方法,基于聚类算法的思想,实现对位于联邦学习系统中的多个计算设备中的样本进行聚类处理,以实现分布式架构中的无监督学习。54.本实施例中的联邦学习系统的架构中,包括一个中心服务器和多个参与联邦学习的计算设备。在本实施例的应用场景中,要求各计算设备在进行本实施例的样本聚类处理之前,已经完成样本对齐工作。样本对齐后,所有参与联邦学习的计算设备中参与联邦学习的样本存在交集。具体地,每个参与联邦学习的计算设备中都包括相同样本id的样本,但是不同计算设备中对于同一样本id的样本的特征不相同。例如,对于某一样本id,在第一个计算设备中包括有特征a、b、c;在第二个计算设备中包括有特征d、e、f;在第三个计算设备中包括有特征g、h、i等等。55.基于联邦学习系统的样本的上述分布特性,在每个单独的计算设备上,存储的都是样本的部分特征,在分布式的联邦学习中,实现无监督学习时,无法在单个的计算设备上对样本进行聚类处理。所以,需要采用本实施例的样本聚类处理方案,以有效地对样本进行聚类处理。56.本实施例中,为了便于中心服务器对样本进行准确有效地聚类,各计算设备需要先在本地计算本地样本距离信息,该本地样本距离信息,能够标识本地的各样本之间的、在特征维度上的空间距离。然后,各计算设备将计算的本地样本距离信息,发送给中心服务器。57.中心服务器获取到各计算设备发送的本地样本距离信息之后,便可以获取到每个样本在全局的特征维度上的距离信息,然后综合分析,可以获取样本的聚类信息。最后,中心服务器还需要向各计算设备发送聚类信息,以便于各计算设备基于样本的聚类信息,将本地的各样本进行聚类处理。本实施例中,中心服务器向各计算设备发送聚类信息的方式可以是以广播的形式发送。58.本实施例的样本聚类处理方法,通过采基于各计算设备的本地样本距离信息,能够综合分析并获取样本的聚类信息,进而向各计算设备发送样本的聚类信息,以供各计算设备基于样本的聚类信息,将各样本进行聚类处理,能够有效地保证样本聚类处理的准确性和聚类精度,提高聚类处理的稳定性,为无监督的联邦学习提供了有效地数据支持。59.图2是根据本公开第二实施例的示意图;如图2所示,本实施例的样本聚类处理方法,在上述图1所示实施例的技术方案的基础上,进一步更加具体可以应用于联邦学习系统中的中心服务器上,具体可以包括如下步骤:60.s201、接收参与联邦学习的多个计算设备中各计算设备发送的携带噪声的本地样本距离信息;且各计算设备对应的噪声之和为零;61.与上述图1所示实施例相同,本实施例的技术方案,应用在包括一个中心服务器和多个计算设备的联邦学习系统中。且各计算设备已经完成样本对齐处理。62.各计算设备在本地计算的本地样本距离信息,可以标识各样本之间的、在特征维度上的空间距离。例如,在第i个计算设备上,可以采用采用如下公式(1)的欧式距离计算公式,计算n维特征空间中样本x1和样本x2的距离:[0063][0064]其中x1i表示样本x1的第i个特征,x2i表示样本x2的第i个特征,此时对应的n可以为任一计算设备的特征维度。[0065]各计算设备的本地样本距离信息中可以包括该计算设备的本地的任意两个样本之间的距离信息。具体地,任意两个样本之间的距离信息可以为上述公式计算的d,或者基于上述公式计算的d的一些变体,如平方或者其他数学变体。[0066]本实施例中,为了保证原始数据的信息不被泄露,各计算设备在向中心服务器发送本地样本距离信息时,可以携带一个噪声,以避免被非法者截取。[0067]s202、基于各计算设备的本地样本距离信息,生成各样本的全特征维度的距离信息;[0068]由于各计算设备对应的噪声之和为零,本实施例中,中心服务器接收到各计算设备的携带噪声的本地样本距离信息之后,可以基于该特性,将各计算设备的本地样本距离信息相加,消除噪声,此时得到样本的全特征维度的距离信息。各样本的全特征维度的距离信息中包括有任意两个样本在所有计算设备的特征维度上的距离信息。[0069]s203、基于样本的全特征维度的距离信息,获取各样本的局部密度和跟随距离;[0070]对于任一样本,本实施例的样本的全特征维度的距离信息包括有该样本在所有计算设备上的所有特征维度的信息,非常全面。基于该样本的全特征维度的距离信息,可以进一步获取到该样本局部密度和跟随距离。该局部密度表征在所有样本空间中该样本所在区域的样本的密度大小,跟随距离表征在所有样本空间中该样本与所要追随的一个理想的目标样本之间的距离。样本的局部密度和跟随距离均为能够直接影响样本聚类的物理量。[0071]s204、基于各样本的局部密度和跟随距离,获取局部密度阈值和跟随距离阈值;[0072]本实施例的局部密度阈值可以为一个统计意义的局部密度值,例如可以基于各样本的局部密度的平均值,获取的一个统计意义上的接近平均值的局部密度值。例如可以对个样本的局部密度的平均值乘以一个系数,作为局部密度阈值。[0073]同理,跟随距离阈值也可以为一个统计意义的跟随距离值,例如可以基于各样本的跟随距离的平均值,获取的一个统计意义上的接近平均值的跟随距离。例如可以对个样本的跟随距离的平均值乘以一个系数,作为跟随距离阈值。局部密度阈值和跟随距离阈值由于是参考所有样本的局部密度和跟随距离,所以携带有全局的信息。所以,局部密度阈值和跟随距离阈值也是能够直接影响样本聚类的物理量。在对各样本聚类处理的时候,也需要参考局部密度阈值和跟随距离阈值,才可以更合理、更准确地对样本进行聚类处理。[0074]s205、向各计算设备发送各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值,以供各计算设备基于各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值,将本地的各样本进行聚类处理。[0075]在各计算设备侧,基于上述得到的各样本的局部密度和跟随距离,可以推断出每个样本在整个样本空间中的相对于其他样本的远近。并基于局部密度阈值和跟随距离阈值,可以了解全局的局部密度和跟随距离情况,进而可以将密度大、距离近的样本聚合在一起,进而得到样本的聚类簇集合。[0076]上述步骤s202-s204为上述图1所示实施例的步骤s102的一种实现方式。[0077]本实施例的样本聚类处理方法,通过获取各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值,并向各计算设备发送获取的信息,使得各计算设备能够基于接收到的信息,合理、有效地对本地的各样本进行聚类处理,而且能够有效地保证对样本聚类处理的准确性和聚类精度,能够有效地提高聚类处理的稳定性,为无监督的联邦学习提供了有效地数据支持。[0078]需要说明的是,上述步骤s202-s205中,是以样本的聚类信息包括各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值为例。[0079]可选地,在步骤s204之后,还可以执行:基于局部密度阈值和跟随距离阈值、以及各样本的局部密度和跟随距离,对各样本的标识进行聚合,得到样本的聚类簇集合。然后对应地,向各计算设备发送样本的聚类簇集合,以供各计算设备基于聚类簇集合,将本地的各样本进行聚类处理。[0080]此时对应地,样本的聚类信息中可以包括样本的聚类簇集合,每个聚类簇集合中可以包括一个、两个或者多个样本的标识。[0081]该方法,通过获取各样本的局部密度和跟随距离,以及局部密度阈值和跟随距离阈值、一起实现对各样本的标识进行聚合,得到样本的聚类簇集合,能够有效地提高聚类簇集合获取的合理性以及准确性。进而可以有效地保证各计算设备基于聚类簇集合中的各样本进行聚类处理的准确性和聚类精度,能够有效地提高聚类处理的稳定性,为无监督的联邦学习提供了有效地数据支持。[0082]图3是根据本公开第三实施例的示意图;如图3所示,本实施例的样本聚类处理方法,在上述图2所示实施例的技术方案的基础上,进一步更加具体可以应用于联邦学习系统中的中心服务器上,具体可以包括如下步骤:[0083]s301、中心服务器控制参与联邦学习的任一计算设备pi,生成一个随机数γ,作为该计算设备的噪声;并基于该随机数和计算设备的数量,生成其他计算设备的噪声控制该计算设备向其他计算设备发送其他计算设备的噪声;[0084]其中,i=1,2,3…s,s为参与联邦学习的计算设备的数量。pi可以为s个计算设备中的任意一个,不做限定。本实施例的随机数γ∈[0,1]。[0085]基于以上可以得知,生成随机数的计算设备发送本地样本距离信息的噪声是γ,而其他s-1个计算设备发送本地样本距离信息的噪声是这样即可以保证各计算设备对应的噪声之和为零。[0086]各计算设备可以采用上述公式(1),在本地计算本地的所有样本之间的欧氏距离,例如可以表示为其中n为样本的数量,ki为计算设备pi上的样本的特征数目。[0087]各计算设备在计算完本地的所有样本之间的欧氏距离之后,向中心服务器发送其中为本地样本距离信息,即取得是本地的所有样本之间的欧氏距离的平方。εi为噪声,其中生成随机数的计算设备的εi取值为γ;而其他计算设备的εi取值为[0088]s302、中心服务器接收各计算设备发送的携带噪声的本地样本距离信息;[0089]s303、中心服务器将各计算设备的携带噪声的本地样本距离信息进行聚合,得到各样本的全特征维度的距离信息dn*m2;[0090]其中n为样本的数量,m为样本在s个计算设备上的所有特征的数量。[0091]具体地,也就是将s个计算设备发送的相加,其中s个计算设备的εi相加之和为0,正好去除噪声,得到各样本的全特征维度的距离信息dn*m2。本实施例中,通过上述步骤s301和s302的处理,不仅可以保证计算设备之间与中心服务器之间通信的安全性,还能够有效地将各计算设备的本地样本距离信息准确地传输至中心服务器。[0092]s304、基于各样本的全特征维度的距离信息,设置各样本的截断距离;基于各样本的全特征维度的距离信息和各样本的截断距离,计算各样本的局部密度;[0093]基于密度峰值的聚类算法,全称为基于快速搜索和发现密度峰值的聚类算法(clusteringbyfastsearchandfindofdensitypeaks,dpc)。本实施例可以基于该dpc算法来实现。[0094]例如,本实施例中,可以先基于各样本的全特征维度的距离信息dn*m2,选取一个相应的截断距离dc,然后基于截断距离dc来计算样本的局部密度。[0095]通过该截断距离dc,可以控制各样本的所有邻居样本中、与该样本的距离小于或者等于截断距离dc的邻居样本的数量占所有邻居样本数量的1-2%。这样,可以更加准确地控制每个样本进行聚类处理。[0096]本实施例中,每个样本的截断距离dc的选取过程中,可以采用迭代的方式来实现。例如,对于任一样本,先设置dc为0,此时由于dc为0,小于dc的样本数量为0。再设置dc为与邻居样本的最大距离dmax;此时由于dc为dmax,小于或者等于dmax的样本数量为占比为100%。[0097]然后设置dc为0和dmax的平均值,然后检测邻居样本中距离小于该dc的数量是否在1-2%。若大于2%,则继续设置dc为0和当前dc值的平均值;继续检测。若小于1%,则继续设置dc为当前dc和dmax的平均值,并继续检测;依次类推,直至获取到一个合理的dc,可以使得该样本的所有邻居样本中,与该样本的距离小于或者等于截断距离dc的邻居样本的数量占所有邻居样本数量的1-2%即可。[0098]上述为本实施例提供的获取各样本的截断距离dc的一种实现方式,实际应用中,也可以采用其他方式来设置截断距离dc,只要能够满足其设置要求即可,在此不做限定。[0099]具体地,为了增加样本的局部密度取值的多样性,减小算法在小数据集上受到大的统计误差的影响。本实施例通过引入幂指数核函数和归一化方法对dpc算法中求取节点的局部密度方法做出改进,改进后的局部密度计算方法如公式(2)所示。由于公式(2)计算的各样本的局部密度是独立的,无法与其他样本的局部密度进行合理比较,所以本实施例中还要采用公式(3)对公式(2)得到的局部密度进行归一化处理,使得所有样本的局部密度具有可比性。[0100]根据如下公式(2)和(3),可以得到各样本的局部密度。[0101][0102][0103]其中,d(i,j)表示样本i和样本j之间的全特征维度的距离信息,ρ′i′表示基于公式(2)计算的各样本的局部密度;ρmin表示基于公式(2)计算的各样本的局部密度ρ′i′的最小值,ρmax表示基于公式(2)计算的各样本的局部密度ρ′i′的最大值,ρi表示样本i的归一化后的局部密度。[0104]s305、基于各样本的全特征维度的距离信息、各样本的截断距离以及各样本的局部密度,获取各样本的跟随距离;[0105]具体地,对于任一样本,在确定对应的截断距离后,可以确定该样本的所有邻居样本中,距离小于截断距离的邻居样本仅有的1-2%。然后进一步地,在该样本的1-2%邻居样本中,寻找一个局部密度大于该样本的局部密度,作为该样本可以跟随的一个理想的目标样本。此时该样本与目标样本之间的距离可以为该样本的跟随距离。[0106]上述步骤s304-s305可以为上述图2所示实施例的步骤s203的一种实现方式。实际应用中,也可以基于参考各样本的全特征维度的距离信息,根据其他方式来获取各样本的局部密度和跟随距离,在此不做限定通过该方式获取的各样本的局部密度和跟随距离非常合理,准备,进而能够有效地提高后续的样本聚类处理效率。[0107]s306、基于各样本的局部密度和跟随距离,计算局部密度阈值和跟随距离阈值;[0108]dpc算法的聚类中心的选取需要根据决策图人为指定,这种方式无法很好的应用在复杂数据集中,所以需要一种根据数据自动选取聚类中心的策略。[0109]基于此,本公开中,可以基于各样本的局部密度和跟随距离,计算局部密度阈值和跟随距离阈值,例如,具体可以采用如下公式(4)和(5)计算局部密度阈值和跟随距离阈值;[0110][0111][0112]其中,ρc为局部密度阈值,δc为跟随距离阈值,λ、β为可以调节的系数,n为样本的数量。[0113]s307、基于局部密度阈值和跟随距离阈值、以及各样本的局部密度和跟随距离,对各样本标识进行聚合,得到样本的聚类簇集合;[0114]由于聚类中心的局部密度ρi和跟随距离δi一般比较大,所以,可以定义聚类中心点的集合c为:[0115]c={(ρi,δi)|ρi≥ρc∧δi≥δc,i=0,1,2,…n}[0116]其中,i为第i个样本,n为样本的数量。[0117]例如,基于此原理,在具体实现时,可以从各样本的标识中获取至少一个局部密度大于局部密度阈值、且跟随距离大于跟随距离阈值的样本标识,分别作为聚类中心点;然后将其他各样本的标识被分派到比自身的局部密度大、且距离最近的聚类中心点上,得到样本的聚类簇集合。通过该方式,可以得到合理、准确地聚类中心点;然后基于聚类中心点进行聚类,可以有效地提高样本聚类处理的准确性和聚类精度,且能够有效地保证样本聚类处理的稳定性。[0118]可选地,在本公开的一个实施例中,在得到聚类中心点之后,也可以先将其他各样本的标识中跟随距离大于预设距离阈值、但是局部密度小于预设密度阈值的样本的标识,作为噪声样本,删除。其中该预设距离阈值可以大于跟随距离阈值,预设密度阈值可以小于局部密度阈值。然后再按照上述方式,即按照局部密度降序的方式,将各样本的标识聚类到比自身局部密度大的聚类中心点,能够有效地提高聚类的准确性和聚类效率。其中预设距离阈值可以大于跟随距离阈值,预设密度阈值可以小于局部密度阈值。[0119]上述步骤s306-s307可以为上述图2所示实施例的步骤s204的一种实现方式。[0120]s308、向各计算设备发送样本的聚类簇集合,以供各计算设备基于聚类簇集合,将本地的各样本进行聚类处理。[0121]本实施例的样本聚类处理方法,通过上述方式计算局部密度阈值和跟随距离阈值,并基于局部密度阈值和跟随距离阈值、以及各样本的局部密度和跟随距离,对各样本标识进行聚合,得到样本的聚类簇集合,能够有效的提高聚类簇集合的生成的合理性和准确性,进而可以有效地保证各计算设备基于聚类簇集合中的各样本进行聚类处理的准确性和聚类精度,能够有效地提高聚类处理的稳定性,为无监督的联邦学习提供了有效地数据支持。[0122]同理,图3所示实施例中,是以样本的聚类信息包括样本的聚类簇集合为例。[0123]可选地,在上述实施例的步骤s306之后,可以直接执行如下步骤:向各计算设备发送各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值,以供各计算设备基于各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值,将本地的各样本进行聚类处理。[0124]此时样本的聚类信息可以包括各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值。对应地,在各计算设备侧,需要基于所有这些聚类信息,将本地的样本进行聚类处理。[0125]具体地,在计算设备侧,基于各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值,对各样本进行聚合,得到样本的聚类簇集合;其实现方式与上述步骤s307的实现原理相同,区别仅在于步骤s307是对样本的标识做聚合,而在计算设备侧,基于相同的原理,可以直接对本地的各样本进行聚类处理。[0126]上述两种方法都能够实现样本聚类处理。一种方法在中心服务器侧生成样本的标识的聚类簇集合,中心服务器通过广播等发送方式向各计算设备发送样本的聚类簇集合,由各计算设备直接执行本地的各样本的聚类处理。该方式中中心服务器向各计算设备发送的信息量较少。而另一种方法中,中心服务器获取到各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值之后,直接向各计算设备发送这些信息,不生成聚类簇集合,而由各计算设备直接基于接收到的信息进行聚类处理。相对于前一方法,传输的信息相对较多,但是隐私性更好。但两种方法均能够有效地进行样本的聚类处理。[0127]本实施例的样本聚类处理方法,利用了密度聚类的优点,无需提前设置聚类簇的数量,适用于处理任何形状的数据集,具有较高的聚类精度和良好的稳定性,可以很好的应用在社交网络、知识图谱、城市电力网络等领域。同时该方法应用在联邦学习中,能够有效地保证各计算设备上的样本数据的隐私,极大的释放了各数据生产力,因而本实施例的样本聚类处理方法具有一定的实用价值。[0128]图4是根据本公开第四实施例的示意图;如图4所示,本实施例提供一种样本聚类处理方法,可以应用于联邦学习系统,如联邦学习系统中的各计算设备侧,具体可以包括如下步骤:[0129]s401、基于本地的各样本的特征信息,获取各样本的本地样本距离信息;[0130]s402、向中心服务器发送本地样本距离信息,以供中心服务器基于所有计算设备发送的本地样本距离信息,获取样本的聚类信息;[0131]s403、接收中心服务器发送的样本的聚类信息;[0132]s404、基于样本的聚类信息,将本地的各样本进行聚类处理。[0133]本实施例与上述图1所示实施例不同的是,本实施例在计算设备侧描述本公开的技术方案,而上述图1在中心服务器侧描述本公开的技术方案,具体实现过程可以参考上述图1所示实施例的相关记载,在此不再赘述。[0134]图5是根据本公开第五实施例的示意图;如图5所示,本实施例的样本聚类处理方法,在上述图4所示实施例的技术方案的基础上,进一步更加详细地描述本公开的技术方案。如图5所示,本实施例的样本聚类处理方法,具体可以包括如下步骤:[0135]s501、生成一个随机数,作为当前计算设备的噪声;[0136]s502、基于随机数,计算参与联邦学习的其他计算设备的噪声,以使得所有的其他计算设备的噪声与当前计算设备的噪声之和为0;[0137]s503、向其他计算设备发送其他计算设备的噪声;[0138]步骤s501-s503的实现方式,可以参考图3所示实施例中的步骤s301中的相关记载。实际应用中,可以由中心服务器控制多个参与联邦学习的s个计算设备中任一计算设备生成噪声。如中心服务器选择多个计算设备中任一生成噪声。本实施例中即以当前计算设备在中心服务器的控制下,生成噪声为例。[0139]具体地,该计算设备先生成一个随机数γ∈[0,1],作为当前计算设备的噪声。另外,还要生成所有其他(s-1)个计算设备的相应的噪声可以使得所有的其他计算设备的噪声与当前计算设备的噪声之和为0。并可以通过广播的方式向其他计算设备发送其他计算设备的噪声。[0140]可选地,若当前计算设备不是生成噪声的设备,此时当前计算设备可以接收其他计算设备发送的噪声,该噪声由其他计算设备基于生成的随机数计算而得的,即根据上述步骤s501-s503得到的。[0141]s504、基于本地的各样本的特征信息,获取各样本的本地样本距离信息;[0142]s505、向中心服务器发送携带噪声的本地样本距离信息,以供中心服务器基于所有计算设备发送的本地样本距离信息,获取样本的聚类信息;[0143]s506、接收中心服务器发送的各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值;[0144]本实施例中,以样本的聚类信息包括各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值。[0145]上述生成噪声的方式,准确、合理,携带在发送的本地样本距离信息中不仅能够有效地保证原始数据的信息不被泄露,而且在接收端也不会对发送的本地样本距离信息产生任何影响。[0146]s507、从各样本中获取至少一个局部密度大于局部密度阈值、且跟随距离大于跟随距离阈值的样本,分别作为聚类中心点;[0147]s508、将其他各样本中跟随距离大于预设距离阈值、但是局部密度小于预设密度阈值的样本的标识,作为噪声样本,删除;[0148]s509、将其他各样本被分派到比自身的局部密度大、且距离最近的聚类中心点上,得到样本的聚类簇集合,实现样本的聚类。[0149]本实施例的步骤s507-s509为上述图4所示实施例的步骤s404的一种实现方式。[0150]该实现过程也可以参考图3所示实施例中,对样本的标识进行聚类,形成聚类簇集合的过程。实现原理以及技术效果完全相同,在此不再赘述。[0151]另外,可选地,本实施例中,样本的聚类信息也可以包括样本的聚类簇集合。此时,可以直接基于样本的聚类簇集合,将本地的各样本进行聚类处理。也可以参考上述图3所示实施例中的相关记载,实现原理以及技术效果完全相同,在此不再赘述。[0152]本实施例的样本聚类处理方法,通过上述方式能够有效地保证样本聚类处理的准确性和聚类精度,能够有效地提高聚类处理的稳定性,为无监督的联邦学习提供了有效地数据支持。[0153]图6是根据本公开第六实施例的示意图;如图6所示,本实施例提供一种样本聚类处理装置600,包括:[0154]接收模块601,用于接收参与联邦学习的多个计算设备中各计算设备发送的本地样本距离信息;[0155]聚类信息获取模块602,用于基于各计算设备的本地样本距离信息,获取样本的聚类信息;[0156]发送模块603,用于向各计算设备发送样本的聚类信息,以供各计算设备基于样本的聚类信息,将本地的各样本进行聚类处理。[0157]本实施例的样本聚类处理装置600,通过采用上述模块实现样本聚类处理的实现原理以及技术效果,与上述相关方法实施例的实现相同,详细可以参考上述相关实施例的记载,在此不再赘述。[0158]图7是根据本公开第七实施例的示意图;如图7所示,本实施例提供一种样本聚类处理装置700,包括:图6所示实施例的同名同功能模块接收模块701、聚类信息获取模块702和发送模块703。[0159]如图7所示,本实施例的样本聚类处理装置700中,聚类信息获取模块702,包括:[0160]生成单元7021,用于基于各计算设备的本地样本距离信息,生成各样本的全特征维度的距离信息;[0161]获取单元7022,用于基于各样本的全特征维度的距离信息,获取各样本的局部密度和跟随距离;[0162]获取单元7022,还用于基于各样本的局部密度和跟随距离,获取局部密度阈值和跟随距离阈值。[0163]进一步地,获取单元7022,用于:[0164]基于各样本的全特征维度的距离信息,设置各样本的截断距离;[0165]基于各样本的全特征维度的距离信息和各样本的截断距离,计算各样本的局部密度;[0166]基于各样本的全特征维度的距离信息、各样本的截断距离以及各样本的局部密度,获取各样本的跟随距离。[0167]对应地,发送模块703,用于:[0168]向各计算设备发送各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值,以供各计算设备基于各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值,将本地的各样本进行聚类处理。[0169]进一步地,本实施例的聚类信息获取模块702中,还包括:[0170]聚合处理单元7023,用于基于局部密度阈值和跟随距离阈值、以及各样本的局部密度和跟随距离,对各样本的标识进行聚合,得到样本的聚类簇集合。[0171]进一步地,聚合处理单元7023,用于:[0172]从各样本的标识中获取至少一个局部密度大于局部密度阈值、且跟随距离大于跟随距离阈值的样本标识,分别作为聚类中心点;[0173]将其他各样本的标识被分派到比自身的局部密度大、且距离最近的聚类中心点上,得到样本的聚类簇集合。[0174]进一步地,聚合处理单元7023,还用于:[0175]将其他各样本的标识中跟随距离大于预设距离阈值、但是局部密度小于预设密度阈值的样本的标识,作为噪声样本,删除。[0176]此时,对应地,发送模块703,用于:[0177]向各计算设备发送样本的聚类簇集合,以供各计算设备基于样本的聚类簇集合,将本地的各样本进行聚类处理。[0178]进一步地,本实施例的样本聚类处理装置700中,接收模块701,用于:[0179]接收各计算设备发送的携带噪声的本地样本距离信息;且各计算设备对应的噪声之和为零。[0180]本实施例的样本聚类处理装置700,通过采用上述模块实现样本聚类处理的实现原理以及技术效果,与上述相关方法实施例的实现相同,详细可以参考上述相关实施例的记载,在此不再赘述。[0181]图8是根据本公开第八实施例的示意图;如图8所示,本实施例提供一种计算设备800,包括:[0182]获取模块801,用于基于本地的各样本的特征信息,获取各样本的本地样本距离信息;[0183]发送模块802,用于向中心服务器发送本地样本距离信息,以供中心服务器基于所有计算设备发送的本地样本距离信息,获取样本的聚类信息;[0184]接收模块803,用于接收所述中心服务器发送的样本的聚类信息;[0185]聚类处理模块804,用于基于所述样聚类信息,将本地的各样本进行聚类处理。[0186]本实施例的计算设备800,通过采用上述模块实现样本聚类处理的实现原理以及技术效果,与上述相关方法实施例的实现相同,详细可以参考上述相关实施例的记载,在此不再赘述。[0187]图9是根据本公开第九实施例的示意图;如图9所示,本实施例提供一种计算设备900,包括:如图8所示的同名同功能模块,获取模块901、发送模块902、接收模块903和聚类处理模块904。[0188]本实施例的计算设备中,聚类处理模块904,用于:[0189]样本的聚类信息包括样本的聚类簇集合时,基于样本的聚类簇集合,将本地的各样本进行聚类处理。[0190]进一步地,聚类处理模块904,用于:[0191]样本的聚类信息包括各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值时,基于各样本的局部密度和跟随距离、以及局部密度阈值和跟随距离阈值,将本地的各样本进行聚类处理。[0192]进一步地,聚类处理模块904,用于:[0193]从各样本中获取至少一个局部密度大于局部密度阈值、且跟随距离大于跟随距离阈值的样本,分别作为聚类中心点;[0194]将其他各样本被分派到比自身的局部密度大、且距离最近的聚类中心点上,得到样本的聚类簇集合。[0195]进一步地,聚类处理模块904,用于:[0196]聚类处理模块,用于:[0197]将其他各样本中跟随距离大于预设距离阈值、但是局部密度小于预设密度阈值的样本的标识,作为噪声样本,删除。[0198]进一步地,发送模块902,用于:[0199]向中心服务器发送携带噪声的本地样本距离信息。[0200]如图9所示,本实施例的计算设备900中,还包括:[0201]生成模块905,用于生成随机数,作为当前计算设备的噪声;[0202]计算模块906,用于基于随机数,计算参与联邦学习的其他计算设备的噪声,以使得所有的其他计算设备的噪声与当前计算设备的噪声之和为0;[0203]发送模块902,还用于向其他计算设备发送其他计算设备的噪声。[0204]进一步地,接收模块903,还用于:[0205]接收其他计算设备发送的噪声,噪声由其他计算设备基于生成的随机数计算而得的。[0206]本实施例的计算设备900,通过采用上述模块实现样本聚类处理的实现原理以及技术效果,与上述相关方法实施例的实现相同,详细可以参考上述相关实施例的记载,在此不再赘述。[0207]图10是根据本公开第十实施例的示意图;如图10所示,本实施例提供一种联邦学习系统1000,包括:中心服务器1001和多个计算设备1002,各计算设备1002与中心服务器1001通信连接,中心服务器1001上设置有如上述图6或者图7所述的样本聚类处理装置,计算设备1002可以采用如上图8或者图9所述的计算设备,并可以采用如上述图1-图5任一所示的样本聚类处理方法,实现对各计算设备1002上的样本进行聚合处理。详细可以参考上述相关实施例的记载,在此不再赘述。[0208]本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。[0209]根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。[0210]图11示出了可以用来实施本公开的实施例的示例电子设备1100的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。[0211]如图11所示,设备1100包括计算单元1101,其可以根据存储在只读存储器(rom)1102中的计算机程序或者从存储单元1108加载到随机访问存储器(ram)1103中的计算机程序,来执行各种适当的动作和处理。在ram1103中,还可存储设备1100操作所需的各种程序和数据。计算单元1101、rom1102以及ram1103通过总线1104彼此相连。输入/输出(i/o)接口1105也连接至总线1104。[0212]设备1100中的多个部件连接至i/o接口1105,包括:输入单元1106,例如键盘、鼠标等;输出单元1107,例如各种类型的显示器、扬声器等;存储单元1108,例如磁盘、光盘等;以及通信单元1109,例如网卡、调制解调器、无线通信收发机等。通信单元1109允许设备1100通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。[0213]计算单元1101可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1101的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元1101执行上文所描述的各个方法和处理,例如本公开的上述方法。例如,在一些实施例中,本公开的上述方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1108。在一些实施例中,计算机程序的部分或者全部可以经由rom1102和/或通信单元1109而被载入和/或安装到设备1100上。当计算机程序加载到ram1103并由计算单元1101执行时,可以执行上文描述的本公开的上述方法的一个或多个步骤。备选地,在其他实施例中,计算单元1101可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行本公开的上述方法。[0214]本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、复杂可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。[0215]用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。[0216]在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。[0217]为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。[0218]可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。[0219]计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。[0220]应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。[0221]上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。当前第1页12当前第1页12
    转载请注明原文地址:https://tc.8miu.com/read-913.html

    最新回复(0)