【技术实现步骤摘要】
数据存储方法、数据检索方法和识别相似视频的方法
[0001]本公开涉及计算机
,尤其涉及人工智能、大数据、数据检索等
技术介绍
[0002]随着CNN(Convolutional Neural Network,卷积神经网络))的广泛应用,使得应用在CNN特征上的基础检索技术ANN(Approximate Nearest Neighbor,近似最近邻检索)也得到了较快发展。针对大规模数据集,可以利用HNSW(Hierarchical Navigable Small World)。但是HN SW算法的计算量较大。
技术实现思路
[0003]本公开提供了一种数据存储方法、数据检索方法和识别相似视频的方法、装置、设备、存储介质以及程序产品。
[0004]根据本公开的一方面,提供了一种数据存储方法,包括:对多个数据进行聚类,得到至少一个第一聚类中心;根据所述至少一个第一聚类中心,对所述多个数据进行聚类,得到至少一个第二聚类中心;根据所述至少一个第一聚类中心和所述至少一个第二聚类中心,将所述多个数据划分为至少一个数据组;根据所述至少一个数据组,生成图结构;以及将所述图结构存储至数据库。
[0005]根据本公开的另一方面,提供了一种数据检索方法,包括:确定至少一个第一聚类中心与待检索数据匹配的目标第一聚类中心;确定至少一个第二聚类中心与所述待检索数据匹配的目标第二聚类中心;根据所述目标第一聚类中心和所述目标第二聚类中心,确定多个数据组中的目标数据组;以及在数据库的图结构中,以与所述目 ...
【技术保护点】
【技术特征摘要】
1.一种数据存储方法,包括:对多个数据进行聚类,得到至少一个第一聚类中心;根据所述至少一个第一聚类中心,对所述多个数据进行聚类,得到至少一个第二聚类中心;根据所述至少一个第一聚类中心和所述至少一个第二聚类中心,将所述多个数据划分为至少一个数据组;根据所述至少一个数据组,生成图结构;以及将所述图结构存储至数据库。2.根据权利要求1所述的方法,其中,所述根据所述至少一个第一聚类中心,对所述多个数据进行聚类,得到至少一个第二聚类中心,包括:确定所述多个数据中的每个数据与该数据最接近的第一聚类中心之间的残差,得到残差向量空间;以及基于所述残差向量空间,对所述多个数据进行聚类,得到所述至少一个第二聚类中心。3.根据权利要求1所述的方法,其中,所述根据所述至少一个数据组,生成图结构,包括:根据所述至少一个数据组中的每个数据,确定图结构中的节点;以及根据所述节点与数据组的对应关系,生成所述节点之间的边,其中,所述边用于表示节点之间的邻居关系。4.根据权利要求3所述的方法,其中,所述边包括邻接边和相邻边;所述根据所述节点与数据组的对应关系,生成所述节点之间的边,包括:对于任意两个节点,在所述两个节点对应于同一个数据组的情况下,在所述两个节点之间生成相邻边;在所述两个节点对应于不同数据组的情况下,确定所述两个节点之间的相似度;以及在所述相似度高于相似度阈值的情况下,在所述两个节点之间生成邻接边。5.根据权利要求1所述的方法,其中,所述对多个数据进行聚类,得到至少一个第一聚类中心,包括:确定所述多个数据中每个数据的原始特征,得到原始特征空间;以及基于所述原始特征空间,对所述多个数据进行聚类,得到所述至少一个第一聚类中心。6.根据权利要求1所述的方法,其中,所述根据所述至少一个第一聚类中心和所述至少一个第二聚类中心,将所述多个数据划分为至少一个数据组,包括:将所述多个数据中对应于相同第一聚类中心和相同第二聚类中心的数据划分为一个数据组。7.根据权利要求1所述的方法,还包括:计算每个第一聚类中心和每个第二聚类中心之间的第一距离;以及在所述数据库中记录所述第一距离。8.一种数据检索方法,包括:确定至少一个第一聚类中心与待检索数据匹配的目标第一聚类中心;确定至少一个第二聚类中心与所述待检索数据匹配的目标第二聚类中心;
根据所述目标第一聚类中心和所述目标第二聚类中心,确定多个数据组中的目标数据组;以及在数据库的图结构中,以与所述目标数据组对应的节点作为起点,检索与所述待检索数据匹配的数据,得到检索结果,其中,所述图结构包括多个节点,所述多个节点与多个原始数据一一对应,所述多个原始数据是根据权利要求1
‑
7中任一项所述的方法存储至所述数据库的。9.根据权利要求8所述的方法,其中,所述确定至少一个第一聚类中心与待检索数据匹配的目标第一聚类中心,包括:计算所述至少一个第一聚类中心中每个第一聚类中心与所述待检索数据之间的距离;以及确定所述至少一个第一聚类中心中距离小于第一距离阈值的第一聚类中心,作为所述目标第一聚类中心。10.根据权利要求9所述的方法,其中,所述确定至少一个第二聚类中心与所述待检索数据匹配的目标第二聚类中心,包括:获取所述目标第一聚类中心和所述第二聚类中心之间的第一距离;根据所述第一距离和所述目标第一聚类中心与所述待检索数据之间的第二距离,确定距离上界;根据所述第一距离、所述第二距离和与所述第二聚类中心对应的残差,确定距离下界;以及确定所述至少一个第二聚类中心中与所述待检索数据之间的距离与所述距离上界和所述距离下界匹配的第二聚类中心,作为所述目标第二聚类中心。11.根据权利要求8所述的方法,其中,所述在数据库的图结构中,以与所述目标数据组对应的节点作为起点,检索与所述待检索数据匹配的数据,得到检索结果,包括:将与所述目标数据组对应的节点添加至候选集;对所述候选集中的每个节点,确定与每个节点具有邻居关系的邻居节点;确定所述邻居节点中是否存在与所述待检索数据匹配的目标节点;在所述邻居节点中存在与所述待检索数据匹配的目标节点的情况下,根据所述目标节点,更新所述候选集,并针对更新后的候选集,返回所述对所述候选集中的每个节点,确定与每个节点具有邻居关系的邻居节点的操作;以及在所述邻居节点中不存在与所述待检索数据匹配的目标节点的情况下,确定与所述候选集对应的原始数据,作为所述检索结果。12.根据权利要求11所述的方法,其中,所述确定所述邻居节点中是否存在与所述待检索数据匹配的目标节点,包括:计算所述邻居节点与所述待检索数据之间的相似度;以及在所述相似度大于相似度阈值的情况下,确定所述邻居节点作为所述目标节点。13.一种识别相似视频的方法,包括:确定至少一个第一聚类中心与待识别视频信息匹配的目标第一聚类中心;确定至少一个第二聚类中心与所述待识别视频信息匹配的目标第二聚类中心;根据所述目标第一聚类中心和所述目标第二聚类中心,确定多个数据组中的目标数据
组;以及在数据库的图结构中,以与所述目标数据组对应的节点作为起点,检索与所述待识别视频信息匹配的视频信息,得到识别结果,其中,所述图结构包括多个节点,所述多个节点与多个原始视频信息一一对应,所述多个原始视频信息是根据权利要求1
‑
7中任一项所述的方法存储至所述数据库的。14.根据权利要求13所述的方法,其中,所述确定至少一个第一聚类中心与待识别视频信息匹配的目标第一聚类中心,包括:计算所述至少一个第一聚类中心中每个第一聚类中心与所述待识别视频信息之间的距离;以及确定所述至少一个第一聚类中心中距离小于第一距离阈值的第一聚类中心,作为所述目标第一聚类中心。15.根据权利要求14所述的方法,其中,所述确定至少一个第二聚类中心与所述待识别视频信息匹配的目标第二聚类中心,包括:获取所述目标第一聚类中心和所述第二聚类中心之间的第一距离;根据所述第一距离和所述目标第一聚类中心与所述待识别视频信息之间的第二距离,确定距离上界;根据所述第一距离、所述第二距离和与所述第二聚类中心对应的残差,确定距离下界;以及确定所述至少一个第二聚类中心中与所述待识别视频信息之间的距离与所述距离上界和所述距离下界匹配的第二聚类中心,作为所述目标第二聚类中心。16.根据权利要求13所述的方法,其中,所述在数据库的图结构中,以与所述目标数据组对应的节点作为起点,检索与所述待识别视频信息匹配的目标视频信息,得到识别结果,包括:将与所述目标数据组对应的节点添加至候选集;对所述候选集中的每个节点,确定与每个节点具有邻居关系的邻居节点;确定所述邻居节点中是否存在与所述待识别视频信息匹配的目标节点;在所述邻居节点中存在与所述待识别视频信息匹配的目标节点的情况下,根据所述目标节点,更新所述候选集,并针对更新后的候选集,返回所述对所述候选集中的每个节点,确定与每个节点具有邻居关系的邻居节点的操作;以及在所述邻居节点中不存在与所述待识别视频信息匹配的目标节点的情况下,确定与所述候选集对应的视频信息,作为所述识别结果。17.根据权利要求16所述的方法,其中,所述确定所述邻居节点中是否存在与所述待识别视频信息匹配的目标节点,包括:计算所述邻居节点与所述待识别视频信息之间的相似度;以及在所述相似度大于相似度阈值的情况下,确定所述邻居节点作为所述目标节点。18.一种数据存储装置,包括:第一聚类模块,用于对多个数据进行聚类,得到至少一个第一聚类中心;第二聚类模块,用于根据所述至少一个第一聚类中心,对所述多个数据进行聚类,得到至少一个第二聚类中心;
划分模块,用于根据所述至少一个第一聚类中心和所述至少一个第二聚类中心,将所述多个数据划分为至少一个数据组;图生成模块,用于根据所述至少一个数据组,生成图结构;以及存储模块,用于将所述图结构存储至数据库。19.根据权利要求18所述的装置,其中,所述第二聚类模块包括:残差确定子模块,用于确定所述多个数据中的每个数据与该数据最接近的第一聚类中心之间的残差,得到...
【专利技术属性】
技术研发人员:尹洁,黄贲,
申请(专利权)人:北京百度网讯科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。