数据处理方法和装置的制造方法

xiaoxiao2021-2-28  209

数据处理方法和装置的制造方法
【技术领域】
[0001 ]本发明实施例涉及计算机技术,尤其涉及一种数据处理方法和装置。
【背景技术】
[0002]对于海量数据的近似数据查找最为通用的就是局部敏感哈希算法(Locality-Sensitive Hashing,简称LSH) c^LSH的实现原理,简单来说就是先通过哈希函数求出所有数据的哈希值,将处理后的数据全部加载到缓存,然后通过开源接口获取某一个数据的所有邻居列表,进而把所有邻区列表当做候选数据进行相似度精确计算,再筛选出最终的数据。比如需要利用LSH得到50条推荐结果,那么就需要先求出500个邻居列表,然后精确计算当前数据与这500个邻居列表的相似度,再将结果放到长度为50的优先级队列(以相似度值作为优先判断标准),最终得到的队列即为相似度列表。
[0003]然而,使用上述方法获取与一个数据相似的数据过程中,由于需要先生成各个数据的哈希值,进而还需要产生多个邻区列表等中间结果,中间结果的计算量大。

【发明内容】

[0004]本发明实施例提供一种数据处理方法和装置,以减少在获取与一个数据相似的数据过程中的计算数据量。
[0005]本发明中的特征属性具体指可以描述数据的性质以及与不同数据之间的关系的信息,例如,数据是一个歌曲资源数据,那么,该歌曲资源数据的特征属性就可以包括歌手属性、曲风属性、资源格式属性等。数据的每一个特征属性都有该特征属性的具体取值,例如,数据的歌手属性的具体取值为歌手A,数据的曲风属性为曲风A,数据的资源格式属性的具体取值为wmv0
[0006]数据的信息具体指用于唯一标识该数据的信息,例如,可以是标识0001。
[0007]相似度具体指根据两个数据的特征属性计算出的用于描述两个数据的相关性的值。
[0008]特征属性对应的相似度权重具体指用于反映该特征属性对相似度计算的影响大小,特征属性对应的相似度权重可以是人工根据经验设定的,也可以是进行相应计算得出的,其可以根据需求进行灵活设置,此处不作限制。
[0009]第一方面,本发明实施例提供一种数据处理方法,包括:
[0010]根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,所述属性分组表包括各特征属性、所述特征属性的具体取值以及与所述特征属性的具体取值相对应的数据的信息,其中,所述属性分组表中的各特征属性按照所述特征属性对应的相似度权重依序排列;
[0011]获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列;
[0012]根据预设查找个数按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数与所述预设查找个数相同为止;
[0013]计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据。
[0014]结合第一方面,在第一方面的第一种可实现的方式中,所述属性分组表包括特征属性列和数据信息列;
[0015]所述根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,包括:
[0016]将所述特征属性列中的各特征属性按照所述特征属性对应的相似度权重依序排列;各特征属性包括至少一个所述特征属性的具体取值,所述特征属性列中的一行对应一个特征属性的具体取值;
[0017]分别将数据库中的数据的信息存放在数据信息列中与所述数据的特征属性的具体值所在行的相同行中,其中,所述数据包括至少一个特征属性的具体值。
[0018]结合第一方面或第一方面的第一种可实现的方式,在第一方面的第二种可实现的方式中,所述方法还包括:
[0019]获取所述候选数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列;
[0020]所述计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据,包括:
[0021 ]计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度;
[0022]根据各候选数据的相似度,按照从大到小的顺序依序选择预设结果个数的候选数据作为所述目标数据的相关数据。
[0023]结合第一方面的第二种可实现的方式,在第一方面的第三种可实现的方式中,所述计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度,包括:
[0024]将所述目标数据的各特征属性的具体取值与各候选数据的所述特征属性的具体取值进行一一比对,计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。
[0025]结合第一方面的第三种可实现的方式,在第一方面的第四种可实现的方式中,计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度,包括:
[0026]若特征属性为多值属性,则所述特征属性对应的相似度权重为相同的特征属性的具体取值的个数与所述多值属性的具体取值的个数总和的比值乘以所述多值属性对应的相似度权重;
[0027]若特征属性为单值属性,则所述特征属性对应的相似度权重为所述单值属性对应的相似度权重;
[0028]计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。[0029 ]第二方面,本发明实施例提供一种数据处理装置,包括:
[0030]生成模块,用于根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,所述属性分组表包括各特征属性、所述特征属性的具体取值以及与所述特征属性的具体取值相对应的数据的信息,其中,所述属性分组表中的各特征属性按照所述特征属性对应的相似度权重依序排列;
[0031]获取模块,用于获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列;
[0032]处理模块,用于根据预设查找个数按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数与所述预设查找个数相同为止;
[0033]所述处理模块,还用于计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据。
[0034]结合第二方面,在第二方面的第一种可实现的方式中,所述属性分组表包括特征属性列和数据信息列;
[0035]所述生成模块,具体用于将所述特征属性列中的各特征属性按照所述特征属性对应的相似度权重依序排列;各特征属性包括至少一个所述特征属性的具体取值,所述特征属性列中的一行对应一个特征属性的具体取值;
[0036]分别将数据库中的数据的信息存放在数据信息列中与所述数据的特征属性的具体值所在行的相同行中,其中,所述数据包括至少一个特征属性的具体值。
[0037]结合第二方面或第二方面的第一种可实现的方式,在第二方面的第二种可实现的方式中,所述获取模块还用于:
[0038]获取所述候选数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列;
[0039]所述处理模块,用于计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据,包括:
[0040]计算所述目 标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度;
[0041]根据各候选数据的相似度,按照从大到小的顺序依序选择预设结果个数的候选数据作为所述目标数据的相关数据。
[0042]结合第二方面的第二种可实现的方式,在第二方面的第三种可实现的方式中,所述处理模块用于计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度,包括:
[0043]将所述目标数据的各特征属性的具体取值与各候选数据的所述特征属性的具体取值进行一一比对,计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。
[0044]结合第二方面的第三种可实现的方式,在第二方面的第四种可实现的方式中,所述处理模块用于计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度,包括:
[0045]若特征属性为多值属性,则所述特征属性对应的相似度权重为相同的特征属性的具体取值的个数与所述多值属性的具体取值的个数总和的比值乘以所述多值属性对应的相似度权重;
[0046]若特征属性为单值属性,则所述特征属性对应的相似度权重为所述单值属性对应的相似度权重;
[0047]计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。
[0048]第三方面,本发明实施例提供一种数据处理设备,包括:
[0049]处理器,用于根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,所述属性分组表包括各特征属性、所述特征属性的具体取值以及与所述特征属性的具体取值相对应的数据的信息,其中,所述属性分组表中的各特征属性按照所述特征属性对应的相似度权重依序排列;
[0050]所述处理器,还用于获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列;
[0051 ]所述处理器,还用于根据预设查找个数按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数与所述预设查找个数相同为止;并,计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据。
[0052]结合第三方面,在第三方面的第一种可实现的方式中,所述属性分组表包括特征属性列和数据信息列;
[0053]所述处理器,用于将所述特征属性列中的各特征属性按照所述特征属性对应的相似度权重依序排列;各特征属性包括至少一个所述特征属性的具体取值,所述特征属性列中的一行对应一个特征属性的具体取值;分别将数据库中的数据的信息存放在数据信息列中与所述数据的特征属性的具体值所在行的相同行中,其中,所述数据包括至少一个特征属性的具体值。
[0054]结合第三方面或第三方面的第一种可实现的方式,在第三方面的第二种可实现的方式中,所述处理器还用于:获取所述候选数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列;
[0055]所述处理器,用于计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据,包括:
[0056]计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度;
[0057]根据各候选数据的相似度,按照从大到小的顺序依序选择预设结果个数的候选数据作为所述目标数据的相关数据。
[0058]结合第三方面的第二种可实现的方式,在第三方面的第三种可实现的方式中,所述处理器用于计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度,包括:
[0059]将所述目标数据的各特征属性的具体取值与各候选数据的所述特征属性的具体取值进行一一比对,计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。
[0060]结合第三方面的第三种可实现的方式,在第三方面的第四种可实现的方式中,所述处理器用于计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度,包括:
[0061]若特征属性为多值属性,则所述特征属性对应的相似度权重为相同的特征属性的具体取值的个数与所述多值属性的具体取值的个数总和的比值乘以所述多值属性对应的相似度权重;
[0062]若特征属性为单值属性,则所述特征属性对应的相似度权重为所述单值属性对应的相似度权重;
[0063]计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。
[0064]本发明实施例数据处理方法和装置,通过根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列,根据预设查找个数按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数与所述预设查找个数相同为止,计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据,从而在获取目标数据的相关数据过程中可以有效降低计算量和对硬件的需求。
【附图说明】
[0065]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0066]图1为本发明数据处理方法实施例一的流程图;
[0067]图2为本发明数据处理方法实施例二的流程图;
[0068]图3为本发明数据处理方法中的属性分组表;
[0069]图4为本发明数据处理装置实施例一的结构示意图;
[0070]图5为本发明数据处理设备的结构示意图。
【具体实施方式】
[0071]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0072]本发明实施例的数据处理方法是一种对内容相似度算法的改进,该数据处理方法可以用于实现个性化推荐,该数据处理方法中的数据可以是商品数据,例如购物网站上的书籍信息,利用本实施例的数据处理方法可以实现根据数据的特征属性来计算不同数据之间的相关性,进而进行数据推送等操作。
[0073]图1为本发明数据处理方法实施例一的流程图,如图1所示,本实施例的方法可以包括:
[0074]步骤101、根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,所述属性分组表包括各特征属性、所述特征属性的具体取值以及与所述特征属性的具体取值相对应的数据的信息,其中,所述属性分组表中的各特征属性按照所述特征属性对应的相似度权重依序排列。
[0075 ]其中,一个数据可以有多个特征属性,一个特征属性可以有一个特征属性的具体取值,即单值属性,也可以有多个特征属性的具体取值,即多值属性。特征属性可以描述数据之间的相似关系,例如,若数据为歌曲数据,那么特征属性可以包括歌手属性和曲风属性,相同的歌手或相同的曲风的歌曲会存在一定的相似性。特征属性的具体取值即指该数据的该特征数据的值,例如,对于数据为歌曲“Hero”,特征属性为歌手属性,那么该数据的该特征属性的具体取值即为“Mariah Carey”。进一步以上述举例说明单值属性和多值属性,即该歌手属性即为单值属性,即一个数据仅有一个具体取值,而曲风属性即为多值属性,即一个数据可以有多个曲风属性的具体取值,即该歌曲的曲风可以是流行和蓝调两个具体取值。各特征属性对应的相似度权重为在计算数据之间的相似度时,考虑到不同的特征属性对相似性计算结果的影响不同,则对每一个特征属性设置一个对应的相似度权重,各特征属性对应的相似度权重可以需求进行灵活设置。
[0076]具体的,通过步骤101可以获取数据库中所有的特征属性和所有数据的特征属性的具体取值,进而获取数据库中各个特征属性的具体取值所包括的所有数据的信息。
[0077]步骤102、获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列。
[0078]具体的,需要推送与一个目标数据相关的其他数据,那么就需要用本实施例的方法获取与该目标数据相关的数据,首先需要利用步骤102获取该目标数据的各特征属性的具体取值,并按照特征属性对应的相似度权重对各特征属性的具体取值进行排序,需要说明的是,若该特征属性是多值属性,那么该特征属性的多个具体取值的先后顺序可以不做限制。
[0079]步骤103、根据预设查找个数按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数与所述预设查找个数相同为止。
[0080]具体的,本实施例在获取该目标数据的相关数据过程中,先从数据库中的数据中筛选出预设查找个数的候选数据,再在候选数据中获取该目标数据的相关数据,该预设查找个数可以根据需求进行灵活设置,例如可以为500个,相应的步骤103即为利用属性分组表快速的在数据库中筛选出500个数据作为候选数据,获取候选数据的信息。
[0081 ]步骤104、计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据。
[0082]具体的,本实施例通过上述步骤处理之后,仅需要对该500个候选数据与目标数据的相似度进行计算,从而可以有效减少计算次数和中间结果的产生。
[0083]进一步的,所述属性分组表具体可以包括特征属性列和数据信息列;相应的,步骤101中的所述根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,具体可以为:将所述特征属性列中的各特征属性按照所述特征属性对应的相似度权重依序排列;各特征属性包括至少一个所述特征属性的具体取值,所述特征属性列中的一行对应一个特征属性的具体取值;分别将数据库中的数据的信息存放在数据信息列中与所述数据的特征属性的具体值所在行的相同行中,其中,所述数据包括至少一个特征属性的具体值。
[0084]进一步的,本实施例的方法还可以获取所述候选数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列;相应的,步骤104中所述计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据,具体可以为:计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度;根据各候选数据的相似度,按照从大到小的顺序依序选择预设结果个数的候选数据作为所述目标数据的相关数据。即,在通过步骤103选出的候选数据中,进一步根据相似度计算,选择与目标数据最为相似的数据作为该目标数据的相关数据。
[0085]进一步的,所述计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度,具体可以为:将所述目标数据的各特征属性的具体取值与各候选数据的所述特征属性的具体取值进行一一比对,计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。
[0086]进一步的,计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度,具体可以为:若特征属性为多值属性,则所述特征属性对应的相似度权重为相同的特征属性的具体取值的个数与所述多值属性的具体取值的个数总和的比值乘以所述多值属性对应的相似度权重;若特征属性为单值属性,则所述特征属性对应的相似度权重为所述单值属性对应的相似度权重;计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。即,充分考虑单值属性和多值属性的均等性,根据多值属性的具体取值的个数总和与相同的具体取值的关系调节其对应的相似度权重。
[0087]本实施例,通过根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列,根据预设查找个数按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数与所述预设查找个数相同为止,计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据,从而在获取目标数据的相关数据过程中可以有效降低计算量和计算过程中对硬件的处理性能需求。
[0088]下面采用一个具体的实施例,对图1所示方法实施例的技术方案进行详细说明。
[0089]图2为本发明数据处理方法实施例二的流程图,图3为本发明数据处理方法中的属性分组表,假设数据库中的数据总数为Μ个,特征属性包括PI,Ρ2,…,Ρη,每个特征属性对应的相似度权重分别为W1,W2,…,Wn,相似度列表长度最大为50,即每个数据只要找到50个最相似的数据即可,数据库中的数据的信息用编码0001至0013进行示意性说明,如图2所示,本实施例的方法可以包括:
[0090]步骤201、将各特征属性按照权重从大到小排序,处理P1属性,遍历所有数据,找出P1属性的所有具体取值,和与各具体取值相对应的数据的信息,依次获取各个特征属性的所有具体取值和与其对应的数据信息,生成一个属性分组表。
[0091]其中,假设P1,P2,...,?!!为已经排序后的属性,如图3所示,一个特征属性为一列,从左至右依次为P1,P2,…,Ρη,Ρ1属性的编码可以用0表示,P1属性的具体取值可以是Jay、Al 1 en等,Jay前面的0用于标识P1属性,由于P1属性为单值属性,所以数据库中具有该P1属性的数据仅存在于一个P1属性的具体取值中,而数据库中会存在多个具有相同P1属性的具体取值的数据,例如0001和0002。而P3属性为多值属性,具有P3属性的数据会存在于多个P3属性的具体取值中,例如数据0002,该数据0002存在于P3属性的70S和80S的具体取值中,其中,70S前的2用于标识P3属性。依次获取数据库中的所有特征属性,进而获取各特征属性的具体取值,进而将数据的信息存放在与特征属性的具体取值对应的位置处,生成该属性分组表。需要说明的是,图3中的一个特征属性的具体取值对应的数据,例如OJay对应的0001,0002,0003,0004,其可以是位于属性分组表中的一行,附图空间有限用方框表示一 行。当然也可以采用其他存储方式,例如建立相应的映射关系,在与OJay相应的位置获取具有该特征属性的具体取值的数据。
[0092]步骤202、获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列。
[0093]具体的,以目标数据为0001为例,获取0001的各特征属性的具体取值,可以为0001:0Jay,lRock,."。
[0094]步骤203、按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数为500个为止。
[0095]具体的,0001的第一特征属性的具体取值为OJay,那么在属性分组表中查找OJay中的数据,可以找到数据0002、0003和0004作为候选数据,此时的候选数据的个数为3个,那么继续按照相同的方式查找IRock中的数据,可以找到数据0005、0008和0011也作为候选数据,进一步按照上述相同的方式,查找500个数据作为候选数据。
[0096]步骤204、获取各候选数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列。
[0097]具体的,例如候选数据0002,0002的各特征属性的具体取值可以为0002:OJay,1 Jazz,270s,280s。0003的各特征属性的具体取值可以为0003: 1R&B,270s。
[0098]步骤205、计算所述目标数据与各候选数据的相似度,根据各候选数据的相似度获取与所述目标数据相关的数据。
[0099]具体的,计算上述步骤选取的500个数据与数据0001的相似度,最后找出相似度得分最多的50个产品作为最终的计算结果。
[0100]具体的相似度计算方式为,举例而言,如果数据0001和数据0002的单值属性P1相同,那么数据0001和数据0002的相似度Rab = Wl,如果数据0001和数据0002的单值属性P2相同,那么数据0001和数据0002的相似度Rab = Rab+W2,否则Rab不变。使用相同的方法计算数据0001和数据0002的其他单值属性。举例而言(图3未示出),对于多值属性P5,如果数据0001的多值属性P5是5个值,数据0002的多值属性P5是7个值,如果数据0001和数据0002没有一个值相同,则P5对数据0001和数据0002的相似度没有贡献,如果数据0001和数据0002有两个值相同,数据0001和数据0002的相似度为Rab = Rab+2/7*W5。使用相同的方法计算数据0001和数据0002的其他多值属性。进而计算出数据0002的相似度。
[0101]使用相同的方法可以计算出所有候选数据的相似度,从而在各候选数据中获取相似度最高的50个数据,为该目标数据的相关数据。
[0102]本实施例,通过生成属性分组表,在属性分组表中获取目标数据的多个候选数据,进而对各候选数据和目标数据一一进行相似度计算,确定该目标数据的相关数据,实现在获取目标数据的相关数据过程中可以有效降低计算量和对硬件的需求。
[0103]图4为本发明数据处理装置实施例一的结构示意图,如图4所示,本实施例的装置可以包括:生成模块11、获取模块12和处理模块13,其中,生成模块11用于根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,所述属性分组表包括各特征属性、所述特征属性的具体取值以及与所述特征属性的具体取值相对应的数据的信息,其中,所述属性分组表中的各特征属性按照所述特征属性对应的相似度权重依序排列,获取模块12用于获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列,处理模块13,用于根据预设查找个数按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数与所述预设查找个数相同为止;所述处理模块,还用于计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据。
[0104]进一步的,所述属性分组表包括特征属性列和数据信息列;所述生成模块11,具体用于将所述特征属性列中的各特征属性按照所述特征属性对应的相似度权重依序排列;各特征属性包括至少一个所述特征属性的具体取值,所述特征属性列中的一行对应一个特征属性的具体取值;分别将数据库中的数据的信息存放在数据信息列中与所述数据的特征属性的具体值所在行的相同行中,其中,所述数据包括至少一个特征属性的具体值。
[0105]进一步的,所述获取模块11还用于:获取所述候选数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列;所述处理模块13,用于计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据,具体可以为:计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度;根据各候选数据的相似度,按照从大到小的顺序依序选择预设结果个数的候选数据作为所述目标数据的相关数据。
[0106]进一步的,所述处理模块13用于计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度,具体可以为:将所述目标数据的各特征属性的具体取值与各候选数据的所述特征属性的具体取值进行一一比对,计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。
[0107]进一步的,所述处理模块13用于计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度,具体可以为:若特征属性为多值属性,则所述特征属性对应的相似度权重为相同的特征属性的具体取值的个数与所述多值属性的具体取值的个数总和的比值乘以所述多值属性对应的相似度权重;若特征属性为单值属性,则所述特征属性对应的相似度权重为所述单值属性对应的相似度权重;计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。
[0108]本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
[0109]图5为本发明数据处理设备的结构示意图,如图5所示,本实施例的数据处理设备可以包括,通信总线501,以及连接到通信总线501的至少一个处理器502和存储器503。其中,总线系统501用于实现各装置之间的连接通信。处理器502可以是一个中央处理器(Central Processing Uni t,CPU),或者是特定集成电路(Appl icat 1n SpecificIntegrated Circuit,ASIC),或者完成实施本发明实施例的一个或多个集成电路,或者是一个片上系统(System on Chip,简称,SoC)。存储器503中存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被数据处理设备执行时所述数据处理设备执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。可选的,本实施例的数据处理设备还可以包括收发器504,处理器502可以调用存储器503的指令代码,控制本发明实施例中的收发器504将上述方法实施例得到的处理结果发送给相应的设备。
[0110]作为一种实现方式,本发明实施例中的生成模块11、获取模块12和处理模块13可以与数据处理设备的处理器502对应。
[0111]本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程 序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0112]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【主权项】
1.一种数据处理方法,其特征在于,包括: 根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,所述属性分组表包括各特征属性、所述特征属性的具体取值以及与所述特征属性的具体取值相对应的数据的信息,其中,所述属性分组表中的各特征属性按照所述特征属性对应的相似度权重依序排列; 获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列; 根据预设查找个数按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数与所述预设查找个数相同为止; 计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据。2.根据权利要求1所述的方法,其特征在于,所述属性分组表包括特征属性列和数据信息列; 所述根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,包括: 将所述特征属性列中的各特征属性按照所述特征属性对应的相似度权重依序排列;各特征属性包括至少一个所述特征属性的具体取值,所述特征属性列中的一行对应一个特征属性的具体取值; 分别将数据库中的数据的信息存放在数据信息列中与所述数据的特征属性的具体值所在行的相同行中,其中,所述数据包括至少一个特征属性的具体值。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括: 获取所述候选数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列; 所述计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据,包括: 计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度; 根据各候选数据的相似度,按照从大到小的顺序依序选择预设结果个数的候选数据作为所述目标数据的相关数据。4.根据权利要求3所述的方法,其特征在于,所述计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度,包括: 将所述目标数据的各特征属性的具体取值与各候选数据的所述特征属性的具体取值进行一一比对,计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。5.根据权利要求4所述的方法,其特征在于,计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度,包括: 若特征属性为多值属性,则所述特征属性对应的相似度权重为相同的特征属性的具体取值的个数与所述多值属性的具体取值的个数总和的比值乘以所述多值属性对应的相似度权重; 若特征属性为单值属性,则所述特征属性对应的相似度权重为所述单值属性对应的相似度权重; 计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。6.一种数据处理装置,其特征在于,包括: 生成模块,用于根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表,所述属性分组表包括各特征属性、所述特征属性的具体取值以及与所述特征属性的具体取值相对应的数据的信息,其中,所述属性分组表中的各特征属性按照所述特征属性对应的相似度权重依序排列; 获取模块,用于获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列; 处理模块,用于根据预设查找个数按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数与所述预设查找个数相同为止; 所述处理模块,还用于计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据。7.根据权利要求6所述的装置,其特征在于,所述属性分组表包括特征属性列和数据信息列; 所述生成模块,具体用于将所述特征属性列中的各特征属性按照所述特征属性对应的相似度权重依序排列;各特征属性包括至少一个所述特征属性的具体取值,所述特征属性列中的一行对应一个特征属性的具体取值; 分别将数据库中的数据的信息存放在数据信息列中与所述数据的特征属性的具体值所在行的相同行中,其中,所述数据包括至少一个特征属性的具体值。8.根据权利要求6或7所述的装置,其特征在于,所述获取模块还用于: 获取所述候选数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列; 所述处理模块,用于计算所述目标数据与所述候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据,包括: 计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度; 根据各候选数据的相似度,按照从大到小的顺序依序选择预设结果个数的候选数据作为所述目标数据的相关数据。9.根据权利要求8所述的装置,其特征在于,所述处理模块用于计算所述目标数据的各特征属性的具体取值与各候选数据的特征属性的具体取值的相似度,获取所述候选数据的相似度,包括: 将所述目标数据的各特征属性的具体取值与各候选数据的所述特征属性的具体取值进行一一比对,计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。10.根据权利要求9所述的装置,其特征在于,所述处理模块用于计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度,包括: 若特征属性为多值属性,则所述特征属性对应的相似度权重为相同的特征属性的具体取值的个数与所述多值属性的具体取值的个数总和的比值乘以所述多值属性对应的相似度权重; 若特征属性为单值属性,则所述特征属性对应的相似度权重为所述单值属性对应的相似度权重; 计算各候选数据的特征属性的具体取值中与所述目标数据的特征属性的具体取值相同的特征属性对应的相似度权重之和,获取所述候选数据的相似度。
【专利摘要】本发明实施例提供一种数据处理方法和装置。本发明数据处理方法,包括:根据数据库中的数据的特征属性和特征属性对应的相似度权重生成属性分组表;获取目标数据的各特征属性的具体取值,将各特征属性的具体取值按照特征属性对应的相似度权重依序排列;根据预设查找个数按照所述目标数据的各特征属性对应的相似度权重的排列顺序,依序在属性分组表中选取与所述目标数据的特征属性的具体取值相同的候选数据的信息,直至所述候选数据的信息的个数与所述预设查找个数相同为止;计算目标数据与候选数据的相似度,根据所述候选数据的相似度获取与所述目标数据相关的数据。本发明实施例可以有效减少在获取与一个数据相似的数据过程中的计算数据量。
【IPC分类】G06F17/30
【公开号】CN105488176
【申请号】CN201510861335
【发明人】徐铭
【申请人】华为软件技术有限公司
【公开日】2016年4月13日
【申请日】2015年11月30日

最新回复(0)