【技术实现步骤摘要】
向量聚类方法、装置及存储介质
本申请涉及数据处理领域,特别涉及一种向量聚类方法、装置及存储介质。
技术介绍
随着机器学习的发展,现实中很多实体的特征都可以通过向量表示。在这种情况下,当需要对实体进行分类时,可以对用于表示实体的特征的向量进行聚类,通过向量的聚类来表征实体的分类。在相关技术中,计算机设备可以将多个向量分为多个向量组,其中,每个向量组内包含有多个向量。之后,对于该多个向量组内的每个向量组,计算机设备可以计算这个向量组内的每两个向量之间的相似度,以及这个向量组内的每个向量与其余的向量组内的每个向量之间的相似度,进而可以根据计算得到的相似度,将该多个向量进行聚类。由此可见,上述计算相似度的过程中,一个向量组内的每个向量与其余的向量组内的每个向量之间的相似度会重复计算,比如,对于A向量组,计算机设备会计算A向量组内的每个向量与其余的向量组内的每个向量之间的相似度,对于其余的向量组,计算机设备还会计算其余的向量组内的每个向量与A向量组内的每个向量之间的相似度。这样,就会出现较多的重复计算,增加计算开销。并 ...
【技术保护点】
1.一种向量聚类方法,其特征在于,所述方法包括:/n将待聚类的N个向量划分为M组,得到M个向量组,每个向量组包括一个或多个向量,所述N和所述M均为大于或等于2的整数;/n将所述M个向量组组合成M个分组,每个分组包括一个A向量组,以及一个或多个B向量组,所述M个向量组一一作为所述M个分组中的A向量组,同一个分组包括的向量组均不同,且第一分组中的B向量组与第二分组中的A向量组相同时,所述第二分组中的B向量组中不存在与所述第一分组中的A向量组相同的向量组,所述第一分组和所述第二分组为所述M个分组中的任意两个分组;/n确定每个A向量组中任意两个向量之间的相似度,以及同一个分组中A向 ...
【技术特征摘要】
1.一种向量聚类方法,其特征在于,所述方法包括:
将待聚类的N个向量划分为M组,得到M个向量组,每个向量组包括一个或多个向量,所述N和所述M均为大于或等于2的整数;
将所述M个向量组组合成M个分组,每个分组包括一个A向量组,以及一个或多个B向量组,所述M个向量组一一作为所述M个分组中的A向量组,同一个分组包括的向量组均不同,且第一分组中的B向量组与第二分组中的A向量组相同时,所述第二分组中的B向量组中不存在与所述第一分组中的A向量组相同的向量组,所述第一分组和所述第二分组为所述M个分组中的任意两个分组;
确定每个A向量组中任意两个向量之间的相似度,以及同一个分组中A向量组包括的每个向量与每个B向量组包括的每个向量之间的相似度,得到所述N个向量中每两个向量之间的相似度;
根据所述N个向量中每两个向量之间的相似度,对所述N个向量进行聚类。
2.如权利要求1所述的方法,其特征在于,所述将所述M个向量组组合成M个分组,包括:
建立结点数为M的完全图,所述完全图中的M个结点一一对应所述M个向量组;
从所述完全图中的M个结点中选择度不为0的结点,将选择出的结点作为第一结点;
从所述完全图中确定所述第一结点的K个邻居结点,将所述第一结点对应的向量组作为A向量组,将所述K个邻居结点分别对应的向量组作为B向量组,得到一个分组,所述K为M-1的一半向上取整后得到的数值;
删除所述完全图中连接所述第一结点与所述K个邻居结点的边,返回从所述完全图中的M个结点中选择度不为0的结点的步骤,直至所述M个结点的度均为0时,得到所述M个分组;
其中,当所述M为奇数时,每个分组均包括K个B向量组,当所述M为偶数时,所述M个分组中的K个分组均包括K个B向量组,其他分组均包括K-1个B向量组。
3.如权利要求1所述的方法,其特征在于,所述将所述M个向量组组合为M个分组,包括:
将一个向量组作为一个整体,对所述M个向量组进行排序,得到第一排序结果;
当所述M为奇数时,按照所述第一排序结果中的前K个向量组在所述第一排序结果中的顺序,将所述前K个向量组添加至所述第一排序结果的尾部,得到第二排序结果;
从所述第二排序结果的第一个或最后一个向量组开始,将所述第二排序结果中每相邻的K+1个向量组组成一个分组,得到所述M个分组,同一个分组中排序最靠前的一个向量组为A向量组,其他的向量组为B向量组。
4.如权利要求1所述的方法,其特征在于,所述对所述M个向量组进行排序,得到第一排序结果之后,还包括:
将一个向量组作为一个整体,对所述M个向量组进行排序,得到第一排序结果;
当所述M为偶数时,按照所述第一排序结果中的前K-1个向量组在所述第一排序结果中的顺序,将所述前K-1个向量组添加至所述第一排序结果的尾部,得到第二排序结果;
从所述第二排序结果的第一个或最后一个向量组开始,将所述第二排序结果中每相邻的K+1个向量组组成一个分组,并且每组成一个分组统计一次当前组成的分组的数量;
当统计的分组的数量等于所述K时,从所述第二排序结果的第K+1个向量组开始,将所述第二排序结果中每相邻的K个向量组组成一个分组;
其中,同一个分组中排序最靠前的一个向量组为A向量组,其他的向量组为B向量组。
5.如权利要求1所述的方法,其特征在于,所述根据所述N个向量中每两个向量之间的相似度,对所述N个向量进行聚类,包括:
根据所述N个向量中每两个向量之间的相似度,生成全局相似度图,所述全局相似度图中包括与所述N个向量一一对应的N个结点,且相似度大于相似度阈值的两个向量对应的结点之间连接有边;
从所述全局相似度图中选择一个结点,将选择出的结点作为第二结点;
令j=1,将所述第二结点对应的向量作为聚类中心,从所述第二结点开始,对所述全局相似度图进行搜索,得到所述第二结点的第j跳结点;
将与所述聚类中心之间的相似度大于所述相似度阈值的第j跳结点对应的向量加入所述聚类中心对应的聚类结果中;
根据已加入所述聚类结果的向量,更新所述聚类中心;
令j=j+1,返回从所述第二结点开始,对所述全局相似度图进行搜索,得到所述第二结点的第j跳结点的步骤,直至所述第二结点的第j跳结点为空集时,从所述全局相似度图包括的未聚类的结点中选择一个结点,返回将选择出的结点作为第二结点的步骤。
6.如权利要求5所述的方法,其特征在于,所述根据已加入所述聚类结果的向量,更新所述聚类中心,包括:
确定已加入所述聚类结果的所有向量的平均向量,将所述平均向量作为更新后的聚类中心。
7.如权利要求1-6任一所述的方法,其特征在于,所述方法应用于分布式系统中的管理节点,所述分布式系统还包括M个计算节点;
所述确定每个A向量组中任意两个向量之间的相似度,以及同一个分组中A向量组包括的每个向量与每个B向量组包括的每个向量之间的相似度,得到所述N个向量中每两个向量之间的相似度,包括:
将所述M个分组一一分配给所述M个计算节点,以指示所述M个计算节点并行地确定当前分配到的分组中A向量组中任意两个向量之间的相似度,以及当前分配到的分组中A向量组包括的每个向量与每个B向量组包括的每个向量之间的相似度;
获取所述M个计算节点分别计算得到的相似度,得到所述N个向量中每两个向量之间的相似度。
8.如权利要求1-7任一所述的方法,其特征在于,所述N个向量为多个类型的目标物的媒体资源对应的向量,所述媒体资源包括音频、视频或图像;
所述根据所述N个向量中每两个向量之间的相似度,对所述N个向量进行聚类之后,还包括:
将得到的多个聚类结果中同一聚类结果包括的每个向量对应的媒体资源划分为一类,所述多个聚类结果与所述多个类型一一对应;
将划分后得到的多类媒体资源进行存储,所述多类媒体资源与所述多个类型一一对应。
9.如权利要求8所述的方法,其特征在于,所述将划分后得到的多类媒体资源进行存储之后,还包括:
接收查询请求,所述查询请求携带目标资源;
从存储的多类媒体资源中,查找与所述目标资源匹配的一类媒体资源;
将查找到的一类媒体资源发送给所述查询请求的发送者。
10.一种...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。