专利名称:基于标签推荐文档的方法及文档推荐装置的制作方法
技术领域:
本发明涉及搜索技木,尤其涉及ー种基于标签(tag)推荐文档的方法及文档推荐
背景技术:
随着互联网技术的迅速发展,网络文档,例如,博文以及微博文的数量迅速膨胀,如何有效管理网络文档的海量数据资源,以及,从海量数据资源的文档中,向用户有效推荐文档,受到越来越多的关注。其中,文档分类技术作为管理海量数据以及推荐文档的关键技术,得到了巨大的发展,质量高的文档分类,可以为管理和推荐文档提供较好的支持。现有技术中,文档分类主要基于特征值权重技术,特征值权重的计算考虑两个权重因子词频(TF, Term Frequency)以及逆文档词频(IDF, Inverse Document Frequency)。其中,TF表示ー个词(标签)在文档中出现的次数的权重,如果ー个词在文档中出现的次数越高,该词就越能表征该文档的主题,同时,考虑文档的长度,因为文档越长,词在文档中出现的频率越高。TF的权重计算公式为TF =十式中,TF为词频权重;Pw为词w出现在文档中的次数;P为文档长度。IDF是表示文档集体范围的ー种全局因子,IDF的权重计算公式为//)/' = log —
W式中,IDF为逆文档词频权重;Dw为样本(文档库)中含有词w的个体(文档)总数;D为样本总数,即总文档数。如果IDF值越小,表示样本中越多的文档包含有该词,该词包含的信息量越少;如果IDF值越大,表示样本中只有越少的文档包含有该词,该词包含的信息量越大。结合词频及逆文档词频,可以形成词频-逆文档词频(TF-IDF, TermFrequency-Inverse Document Frequency), TF-IDF 是一种用于信息搜索、推荐的常用加权技术,常应用于搜寻引擎,作为文档与用户查询之间相关程度的度量或评级,基于统计方法,用以评估词对ー个文件集或一个语料库中的其中一份文档的重要程度,井向用户推荐查询結果。其中,词的重要性随着该词在文档中出现的次数成正比増加,同时随着在样本库中出现的频率成反比下降。也就是说,如果词在一篇文档中出现的TF高,且在其他文档中很少出现,则认为该词具有较好的类别区分能力,适用于分类。TF-IDF权重可以采用TF与IDF进行表示,其计算公式如下Weighty ニ TFxUW = log—式中,Weightw为词 w 的 TF-IDF 权重。如果TF-IDF权重值越大,表示该词的指示性越好。这样,用户在浏览某一文档时,如果需要获取与该文档相 关的文档信息以作进一步的了解,由于文档一般包含有标签,可以根据用户选取的当前浏览文档的标签(推荐词或推荐词组),获取文档库中包含有该推荐词或推荐词组的文档,井分别计算各文档包含的用户输入标签在文档库中的TF-IDF权重值,并对获取的TF-IDF权重值进行排序,选取排序前N位的TF-IDF权重值对应的文档作为推荐文档,向用户展示,从而使用户根据展示的推荐文档进行推荐或作进ー步浏览。由上述可见,现有基于推荐词(标签)推荐文档的方法,根据当前浏览文档的标签,获取文档库中包含有该标签的文档,并分别计算各文档在文档库中的TF-IDF权重值,根据TF-IDF权重值进行文档推荐,由于仅仅针对推荐词进行相关文档TF-IDF权重值计算,没有对推荐词进行同义词、同类词的语义分析扩展,使得输出的查询结果信息量(推荐文档)较少,不能满足用户的同义查询需求,查询效率较低。例如,如果用户输入包含三个查询字符串(推荐词组)的标签“恭喜久仰过奖”,通过搜索引擎的搜索查询,进行相关TF-IDF权重值计算后,只向用户输出包含有三个推荐词的相关文档。这样,可能导致搜索引擎的文档库中没有与推荐词组“恭喜久仰过奖”相匹配的文档,从而使得推荐失败,推荐效率低,而没有考虑对推荐词进行同义扩展,例如,分别将推荐词“恭喜”进行同义扩展,得到同义推荐词组“恭喜恭贺贺喜”;将推荐词“久仰”进行同义扩展,得到同义推荐词词组“久仰久仰大名久慕盛名”;将推荐词“过奖”进行同义扩展,得到同义推荐词词组“过奖过誉”,再以扩展的同义词组作为ー个空间权重向量的坐标,进行搜索查询,从而获取与通过查询字符串查询得到的文档相关(相近似)的文档作为推荐文档,以扩展查询结果的信息量,满足用户对同义词的查询需求。
发明内容
本发明的实施例提供一种基于标签推荐文档的方法,提升文档推荐效率。本发明的实施例还提供一种基于标签推荐文档的文档推荐装置,提升文档推荐效率。为达到上述目的,本发明实施例提供的一种基于标签推荐文档的方法,包括接收用户选取的文档标签,查询预先设置的同义词词林,获取与文档标签相对应的同义词组;根据获取的同义词组,从预先存储的文档库中,查询并获取包含所述同义词组的文档列表;计算包含所述同义词组的文档列表中每一文档的特征值,构建基于文档标签的空间权重向量;
根据构建的基于文档标签的空间权重向量,计算文档标签对应的文档与文档列表中每ー篇文档的相似度,并选取预定数目的相似度最高的文档作为查询结果输出。其中,所述文档包括文档标识、文档标签、文档更新时间以及文档内容。其中,所述查询预先设置的同义词词林,获取与文档标签相对应的同义词组包括查询预先设置的同义词词林 ,分别获取与文档标签中各标签对应的同义词子组;基于文档标签格式,将各标签对应的同义词子组组合为同义词组。其中,所述从预先存储的文档库中,查询并获取包含所述同义词组的文档列表包括基于文档标签,对获取的同义词组进行组合,得到组合的同义词组;根据组合的同义词组,查询倒排索引集合,获取所述组合的同义词组对应的正排索引集合标识;根据获取的正排索引集合标识,查询正排索引集合,获取正排索引集合标识映射的文档,形成文档列表。其中,所述计算包含所述同义词组的文档列表中每一文档的特征值包括查询预先设置的标签计数器,遍历文档列表,获取文档列表中每一文档基于文档标签的计数值;结合文档库中文档总数以及基于文档标签的计数值,分别得到文档列表中各文档对应的特征值。其中,在所述查询预先存储的标签计数器的步骤之前,所述方法进ー步包括接收发布的携帯博文标识的博文,获取该博文中的博文标签;查询文档库中,获取所述博文标识对应的博文标签数组;根据获取的博文标签以及博文标签数组,更新博文标签数组中的计数值。其中,所述根据获取的博文标签以及博文标签数组,更新博文标签数组中的计数值包括将所述博文标签与所述博文标签数组互为差集,将博文标签差博文标签数组的集合写入输入标签数组,博文标签数组差博文标签的集合写入输出标签数组;根据输入标签数组中的标签,对标签计数器中相应标签对应的计数值执行加I操作;根据输出标签数组中的标签,对标签计数器中相应标签对应的计数值执行减I操作;对输入标签数组中的数据,增加索引倒排数据内容,对输出标签数组中的数据,删除对应的索引倒排数据内容。其中,计算所述相似度采用夹角余弦定理公式。一种基于标签推荐文档的文档推荐装置,该装置包括同义词组获取模块、文档获取模块、空间权重向量构建模块以及文档推荐模块,其中,同义词组获取模块,用于接收用户选取的文档标签,查询预先设置的同义词词林,获取与文档标签相对应的同义词组;文档获取模块,用于根据获取的同义词组,从预先存储的文档库中,查询并获取包含所述同义词组的文档列表;空间权重向量构建模块,用于计算包含所述同义词组的文档列表中每一文档的特征值,构建基于文档标签的空间权重向量;文档推荐模块,用于根据构建的基于文档标签的空间权重向量,计算文档标签对应的文档与文档列表中每ー篇文档的相似度,并选取预定数目的相似度最高的文档作为查询结果输出。较佳地,所述同义词组获取模块包括解析単元、查询单元以及同义词组获取单元,其中,解析単元,用于接收用户选取的文档标签,解析得到文档标签中包含的各标签,依次输出至查询单元;
查询单元,用于根据接收的标签,查询预先设置的同义词词林,获取该标签对应的同义词子组,输出至同义词组获取单元;同义词组获取单元,用于根据文档标签的格式,将接收的同义词子组组合为同义词组。较佳地,所述文档获取模块包括组合单元、倒排索引集合単元、正排索引集合单元以及文档获取単元,其中,组合单元,用于基于文档标签,对获取的同义词组进行组合,得到组合的同义词组;倒排索引集合単元,用于根据接收的组合的同义词组进行查询,获取所述组合的同义词组对应的正排索引集合标识;正排索引集合単元,用于根据接收的正排索引集合标识进行查询,获取正排索引集合标识映射的文档,输出至文档获取単元;文档获取单元,用于存储接收的文档,形成文档列表。较佳地,所述空间权重向量构建模块包括标签计数器、查询单元、特征值计算单元以及空间权重向量构建单元,其中,标签计数器,用于存储文档标签的计数值;查询单元,用于遍历文档列表,查询标签计数器,获取文档列表中每一文档基于文档标签的计数值;特征值计算单元,用于结合文档库中文档总数以及基于文档标签的计数值,分别得到文档列表中各文档对应的特征值;空间权重向量构建单元,用于根据各文档对应的特征值,分别构建各文档基于文档标签的空间权重向量。较佳地,所述空间权重向量构建模块进ー步包括更新単元,用于接收发布的携帯博文标识的博文,获取该博文中的博文标签;查询文档库中的标签计数器,获取所述博文标识对应的博文标签数组;根据获取的所述博文标签以及所述博文标签数组,更新所述博文标签数组中的计数值。较佳地,所述更新単元包括接收子单元、查询子单元以及更新子単元,其中,接收子单元,用于接收发布的携帯博文标识的博文,获取该博文中的博文标签;查询子単元,用于查询文档库中的标签计数器,获取所述博文标识对应的博文标签数组;更新子単元,用于将所述博文标签与所述博文标签数组互为差集,将博文标签差博文标签数组的集合写入输入标签数组,博文标签数组差博文标签的集合写入输出标签数组;根据输入标签数组中的标签,对标签计数器中相应标签对应的计数值执行加I操作;根据输出标签数组中的标签,对标签计数器中相应标签对应的计数值执行减I操作;对输入标签数组中的数据,在倒排索引集合单元中增加相应数据内容,对输出标签数组中的数据,在倒排索引集合单元中,删除对应的数据内容。由上述技术方案可见,本发明实施例提供的一种基于标签推荐文档的方法及文档 推荐装置,接收用户选取的文档标签,查询预先设置的同义词词林,获取与文档标签相对应的同义词组;根据获取的同义词组,从预先存储的文档库中,查询并获取包含所述同义词组的文档列表;计算包含所述同义词组的文档列表中每一文档的特征值,构建基于文档标签的空间权重向量;根据构建的基于文档标签的空间权重向量,计算文档标签对应的文档与文档列表中每ー篇文档的相似度,并选取预定数目的相似度最高的文档作为查询结果输出。这样,通过将文档标签进行同义扩展,得到同义词组,再以扩展的同义词组查询文档库,形成文档列表,计算文档标签对应的文档与文档列表中各文档的相似度,根据相似度输出推荐结果,从而扩展了查询结果的信息量,提升文档推荐效率,满足了用户对同义词的查询需求。
为了更清楚地说明本发明实施例或现有技术中的技术方案,以下将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,以下描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员而言,还可以根据这些附图所示实施例得到其它的实施例及其附图。图I为本发明实施例基于标签推荐文档的方法流程示意图。图2为本发明实施例基于标签推荐文档的方法具体流程示意图。图3为本发明实施例文档A生成的空间权重向量示意图。图4为本发明实施例博文列表中各文档基于文档A标签生成的空间权重向量示意图。图5为本发明实施例基于标签推荐文档的文档推荐装置结构示意图。
具体实施例方式以下将结合附图对本发明各实施例的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施例,都属于本发明所保护的范围。现有基于标签推荐文档的方法,根据标签的精确匹配计算进行查询,获取相关的文档,计算各文档的TF-IDF权重值,根据TF-IDF权重值进行文档推荐,没有考虑推荐词语义的相近程度,也没有考虑推荐词的同义词所在文档应有的权重,使得查询结果信息量较少,不能满足用户的同义查询需求,文档推荐效率较低。向量空间模型(SVM,Vector Space Model)作为向量的标识符,是一个可以用于表示文档的代数模型,可用于搜索引擎的相似度计算,可以对文档与其它文档的相关性进行排序计算,从而向用户输出推荐词对应的推荐文档查询结果,从数学模型的角度看,向量空间模型简单直观,以下进行简要描述。由词Wi组成的词组P =…旧],如果词Wi出现在文档中,则该词Wi在该文档的特征值向量中的值就非零,这样,词频-逆文档词频权重通过向量可以表示为
权利要求
1.一种基于标签推荐文档的方法,包括 接收用户选取的文档标签,查询预先设置的同义词词林,获取与文档标签相对应的同义词组; 根据获取的同义词组,从预先存储的文档库中,查询并获取包含所述同义词组的文档列表; 计算包含所述同义词组的文档列表中每一文档的特征值,构建基于文档标签的空间权重向量; 根据构建的基于文档标签的空间权重向量,计算文档标签对应的文档与文档列表中每一篇文档的相似度,并选取预定数目的相似度最高的文档作为查询结果输出。
2.根据权利要求I所述的方法,其中,所述文档包括文档标识、文档标签、文档更新时间以及文档内容。
3.根据权利要求2所述的方法,其中,所述查询预先设置的同义词词林,获取与文档标签相对应的同义词组包括 查询预先设置的同义词词林,分别获取与文档标签中各标签对应的同义词子组; 基于文档标签格式,将各标签对应的同义词子组组合为同义词组。
4.根据权利要求3所述的方法,其中,所述从预先存储的文档库中,查询并获取包含所述同义词组的文档列表包括 基于文档标签,对获取的同义词组进行组合,得到组合的同义词组; 根据组合的同义词组,查询倒排索引集合,获取所述组合的同义词组对应的正排索引集合标识; 根据获取的正排索引集合标识,查询正排索引集合,获取正排索引集合标识映射的文档,形成文档列表。
5.根据权利要求4所述的方法,其中,所述计算包含所述同义词组的文档列表中每一文档的特征值包括 查询预先设置的标签计数器,遍历文档列表,获取文档列表中每一文档基于文档标签的计数值; 结合文档库中文档总数以及基于文档标签的计数值,分别得到文档列表中各文档对应的特征值。
6.根据权利要求5所述的方法,其中,在所述查询预先存储的标签计数器的步骤之前,所述方法进一步包括 接收发布的携带博文标识的博文,获取该博文中的博文标签; 查询文档库中,获取所述博文标识对应的博文标签数组; 根据获取的博文标签以及博文标签数组,更新博文标签数组中的计数值。
7.根据权利要求6所述的方法,其中,所述根据获取的博文标签以及博文标签数组,更新博文标签数组中的计数值包括 将所述博文标签与所述博文标签数组互为差集,将博文标签差博文标签数组的集合写入输入标签数组,博文标签数组差博文标签的集合写入输出标签数组; 根据输入标签数组中的标签,对标签计数器中相应标签对应的计数值执行加I操作; 根据输出标签数组中的标签,对标签计数器中相应标签对应的计数值执行减I操作;对输入标签数组中的数据,增加索引倒排数据内容,对输出标签数组中的数据,删除对应的索引倒排数据内容。
8.根据权利要求I至7任一项所述的方法,其中,计算所述相似度采用夹角余弦定理公式。
9.一种基于标签推荐文档的文档推荐装置,其特征在于,该装置包括同义词组获取模块、文档获取模块、空间权重向量构建模块以及文档推荐模块,其中, 同义词组获取模块,用于接收用户选取的文档标签,查询预先设置的同义词词林,获取与文档标签相对应的同义词组; 文档获取模块,用于根据获取的同义词组,从预先存储的文档库中,查询并获取包含所述同义词组的文档列表; 空间权重向量构建模块,用于计算包含所述同义词组的文档列表中每一文档的特征值,构建基于文档标签的空间权重向量; 文档推荐模块,用于根据构建的基于文档标签的空间权重向量,计算文档标签对应的文档与文档列表中每一篇文档的相似度,并选取预定数目的相似度最高的文档作为查询结果输出。
10.根据权利要求9所述的装置,其特征在于,所述同义词组获取模块包括解析单元、查询单元以及同义词组获取单元,其中, 解析单元,用于接收用户选取的文档标签,解析得到文档标签中包含的各标签,依次输出至查询单元; 查询单元,用于根据接收的标签,查询预先设置的同义词词林,获取该标签对应的同义词子组,输出至同义词组获取单元; 同义词组获取单元,用于根据文档标签的格式,将接收的同义词子组组合为同义词组。
11.根据权利要求9所述的装置,其特征在于,所述文档获取模块包括组合单元、倒排索引集合单元、正排索引集合单元以及文档获取单元,其中, 组合单元,用于基于文档标签,对获取的同义词组进行组合,得到组合的同义词组;倒排索引集合单元,用于根据接收的组合的同义词组进行查询,获取所述组合的同义词组对应的正排索引集合标识; 正排索引集合单元,用于根据接收的正排索引集合标识进行查询,获取正排索引集合标识映射的文档,输出至文档获取单元; 文档获取单元,用于存储接收的文档,形成文档列表。
12.根据权利要求9至11任一项所述的装置,其特征在于,所述空间权重向量构建模块包括标签计数器、查询单元、特征值计算单元以及空间权重向量构建单元,其中, 标签计数器,用于存储文档标签的计数值; 查询单元,用于遍历文档列表,查询标签计数器,获取文档列表中每一文档基于文档标签的计数值; 特征值计算单元,用于结合文档库中文档总数以及基于文档标签的计数值,分别得到文档列表中各文档对应的特征值; 空间权重向量构建单元,用于根据各文档对应的特征值,分别构建各文档基于文档标签的空间权重向量。
13.根据权利要求12所述的装置,其特征在于,所述空间权重向量构建模块进一步包括 更新单元,用于接收发布的携带博文标识的博文,获取该博文中的博文标签;查询文档库中的标签计数器,获取所述博文标识对应的博文标签数组;根据获取的所述博文标签以及所述博文标签数组,更新所述博文标签数组中的计数值。
14.根据权利要求13所述的装置,其特征在于,所述更新单元包括接收子单元、查询子单元以及更新子单元,其中, 接收子单元,用于接收发布的携带博文标识的博文,获取该博文中的博文标签; 查询子单元,用于查询文档库中的标签计数器,获取所述博文标识对应的博文标签数组; 更新子单元,用于将所述博文标签与所述博文标签数组互为差集,将博文标签差博文标签数组的集合写入输入标签数组,博文标签数组差博文标签的集合写入输出标签数组;根据输入标签数组中的标签,对标签计数器中相应标签对应的计数值执行加I操作;根据输出标签数组中的标签,对标签计数器中相应标签对应的计数值执行减I操作;对输入标签数组中的数据,在倒排索引集合单元中增加相应数据内容,对输出标签数组中的数据,在倒排索引集合单元中,删除对应的数据内容。
全文摘要
本发明公开了一种基于标签推荐文档的方法及文档推荐装置。该方法包括接收用户选取的文档标签,查询预先设置的同义词词林,获取与文档标签相对应的同义词组;根据获取的同义词组,从预先存储的文档库中,查询并获取包含所述同义词组的文档列表;计算包含所述同义词组的文档列表中每一文档的特征值,构建基于文档标签的空间权重向量;根据构建的基于文档标签的空间权重向量,计算文档标签对应的文档与文档列表中每一篇文档的相似度,并选取预定数目的相似度最高的文档作为查询结果输出。应用本发明,可以提升文档推荐效率。
文档编号G06F17/30GK102955849SQ20121042243
公开日2013年3月6日 申请日期2012年10月29日 优先权日2012年10月29日
发明者刘晓震 申请人:新浪技术(中国)有限公司