搜索关键字频度解析方法和装置与流程

文档序号:11276424阅读:299来源:国知局
搜索关键字频度解析方法和装置与流程

本发明涉及电子商务技术领域,尤其涉及一种基于hlsa的搜索关键词频度解析方法和装置。



背景技术:

用户在电商平台搜索栏里输入的关键词是表达其购买某款商品意愿的重要参考信息。在预定义的时间段范围内聚合、分类以及统计商品搜索关键词的出现频度能够有效地量化用户对某款商品的需求程度,进而为采销人员对某款商品是否需要采购、上架或增强其推广力度提供有力的参考决策依据。

统计搜索关键词频度的前提是对其进行分类处理,而分类理论的基础几乎都是依赖于相似度模型。目前,计算搜索关键词相似度的方法主要包括基于vsm(vectorspacemodel,向量空间距离)向量的欧式距离模型、levenshtein距离模型、最长公共子串以及最长公共子序列等。以下对各种方法的优缺点进行分别说明:

(1)基于vsm向量的欧式距离模型,该模型假设搜索关键词内部词条之间互不相关,采用多维向量来表示搜索记录,从而简化关键词之间的复杂关系,使得模型具备可计算性。然而,欧式距离模型在关键词之间线性无关时可以很好地解决问题,但它只考虑了关键词的统计特性,且假定关键词之间线性无关,而没有考虑词本身的语义信息,因此具有一定的局限性。

(2)levenshtein距离,又称编辑距离,指的是两个搜索词之间,由一个转换成另一个所需的最少编辑操作次数。并由此衡量搜索关键词之间的距离,进而获得相似度。levenshtein距离模型虽然具有无需考虑关键词之间是否线性无关的优势,但其不足之处在于若关键词出现顺序发生变化时,相似度计算结果将产生较大误差。

(3)基于权值的最长公共子串方法,采用动态规划方法递归计算搜 索词之间的最大公共部分,进而计算搜索词之间的相似度。该最长公共子串方法对于关键字出现的顺序并无特殊要求,但对关键词的连续性和一致性有严格限制,因此也不能满足我们的实际需求。

(4)在最长公共子串方法的基础上,提出了基于权值和词条的最长公共子序列lcs((longestcommonsubsequence)方法,相比最长公共子串而言,最长公共子序列对搜索关键词的出现顺序不敏感,因此具有更好的适用性。然而,最长公共子序列方法在关键词不连续的情况下依然能够良好地工作,但由于其判别关键字的基本特征粒度过于太细,往往产生过判,造成误差的引入和累计,因而使用场合往往受到限制。

可见,现有技术解析搜索关键词相似度方法在一定程度和范围内具有一定的适用性,但或多或少也存在一些问题。



技术实现要素:

(一)要解决的技术问题

鉴于上述技术问题,本发明提供了一种基于hlsa的搜索关键词频度解析方法和装置,以提升搜索关键词频度解析的准确性和有效性。

(二)技术方案

根据本发明的一个方面,提供了一种搜索关键字频度解析方法。该搜索关键字频度解析方法包括:

步骤a:提取搜索关键词记录,对其进行分词、清洗,得到目标词条,多条的目标词条构成目标词库;

步骤b:去除目标词库中对语义权重贡献较小的弱相关词条;

步骤c:对目标词库中的目标词条进行近义词或同义词的替换;

步骤d:采用特征-对象矩阵将高维空间映射到低维的潜在语义结构上所构建出的lsa空间模型,结合汉明码计算词条特征向量之间的距离,聚合特征向量距离等同或相近的特征向量对应的词条,生成词条组;

步骤e:对聚合后的每一个词条组,根据预设半径参数确定词条聚合分布的区域,在该范围内采用k近邻算法对聚合的词条进行分类;以及

步骤f:基于分类结果与目标词库中每个词条的搜索次数进行频度解析,其中,归结为一类的词条的搜索次数作为整体进行频度解析。

根据本发明的另一个方面,还提供了一种搜索关键字频度解析装置。 该搜索关键字频度解析装置包括:

预处理模块301,用于提取搜索关键词记录,对其进行分词、清洗,得到目标词条,多条的目标词条构成目标词库;

词条过滤模块302,用于去除目标词库中对语义权重贡献较小的弱相关词条;

词条替换模块303,用于对目标词库中的目标词条进行近义词或同义词的替换;

词条聚合模块304,用于采用特征-对象矩阵,将高维空间映射到低维的潜在语义结构上所构建出的lsa空间模型,结合汉明码计算词条特征向量之间的距离,聚合特征向量距离等同或相近的特征向量对应的词条;

词条分类模块305,用于对聚合后的每一个词条组,根据预设半径参数确定词条聚合分布的区域,在该范围内采用k近邻算法对聚合的词条进行分类;以及

词条解析模块306,用于基于分类结果与目标词库中每个词条的搜索次数进行频度统计,其中,归结为一类的词条的搜索次数作为整体进行频度解析。

(三)有益效果

从上述技术方案可以看出,本发明基于hlsa的搜索关键词频度解析方法和装置具有以下有益效果:

(1)引入包含主题思想的lsa(latentsemanticanalysis)空间模型进行关键词聚合,进而解决和弥补了基于vsm(vectorspacemodel)向量的欧式距离模型没有考虑词本身语义信息的不足之处以及基于编辑距离模型关键词顺序发生变化时带来的误差;

(2)结合汉明码计算关键词间特征向量的相似度,形成新型hlsa算法,提高了相似度计算效率;

(3)利用k近邻算法分类并统计关键词频度,可以将不同粒度的关键词进行聚合,从而有效地避免了最长公共子串模型由于粒度太细所产生的误判。

附图说明

图1为根据本发明实施例基于hlsa的搜索关键词频度解析方法的流 程示意图;

图2为图1所示搜索关键词频度解析方法中预处理步骤的示意图;

图3为根据本发毛实施例基于hlsa的搜索关键词频度解析装置的结构示意图。

【符号说明】

301-预处理模块;302-词条过滤模块;

303-词条替换模块;304-词条聚合模块;

305-词条分类模块;306-词条解析模块。

具体实施方式

本发明在充分利用用户搜索关键词数据库的基础上,采用同类商品相似度聚合技术hlsa(hamminglatentsemanticanalysis,汉明码+潜语义分析)及knn(k-nearestneighbor,k近邻)分类方法,对商品搜索关键词出现频度进行解析。

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。

在本发明的一个示例性实施例中,提供一种基于hlsa的搜索关键词频度解析方法。如图1所示,本实施例基于hlsa的搜索关键词频度解析方法包括:

步骤a:预处理,即提取搜索关键词记录,对其进行分词、清洗,得到目标词条,多条的目标词条构成目标词库;

如图2所示,该步骤a具体包括:

子步骤a1:从数据库中提取搜索关键词记录;

子步骤a2:利用ictclas(instituteofcomputingtechnology,chineselexicalanalysissystem)对记录进行分词处理,去除副词、助词、标点符号等无意义且出现频率高的词,得到一个或多个词条;

子步骤a3:将词条作为参数进行停用词库的查询,删除停用的词条,进而完成对词条的清洗工作,最后分割出后期的聚合、分类和统计所需的目标词条,构成目标词库。

步骤b:词条过滤,即采用预先定义的过滤词库,对预处理得到的目标词库中的目标词条按照预设的权重门限进行条件过滤,去除对语义权重 贡献较小的弱相关词条,从而保障词条的收敛性;

此处,“语义权重贡献较小”被定义为“语义权重小于预设的权重门限”。

具体而言,设定“漂亮”权重为0.1,“女”权重为1,“鞋”权重为1。词条过滤前的目标词库中为{漂亮、女、鞋}。故将其中的词条“漂亮”去除,词条“女”和“鞋”保留。则词条过滤后的目标词库为{女、鞋}。

步骤c:词条替换,即对目标词库中的目标词条进行近义词或同义词的替换,保证词条的唯一性;

由于自然语言本身的自由特性,造成词条经常出现近义词或者同义词,因而需在词条聚合操作之前进行近义词或同义词的替换操作,以便使词条具有唯一性,从而简化后续操作。

具体而言,假设目标词库为{方便面、泡面、康师傅、红烧、牛肉},其中,词条“方便面”和词条“泡面”的含义相同,可以认定两者为近义词,故将目标词库中的词条“泡面”替换为词条“方便面”。则词条替换后的目标词库为{方便面、康师傅、红烧、牛肉}。

需要说明的是,上述词条过滤和词条替换的具体执行方式,在现有技术中均有相关的详细说明,此处不再赘述。此外,步骤b和步骤c的执行顺序可以互换,即先执行词条替换,而后再执行词条过滤,同样可以实现本发明。

步骤d:词条聚合,采用特征-对象矩阵将高维空间映射到低维的潜在语义结构上所构建出的lsa空间模型,结合汉明码(hammingcode)计算词条特征向量之间的距离,聚合特征向量距离等同或相近的特征向量对应的词条,生成词条组;

此处所述的“聚合”,其含义就是将一类相似的目标词条聚集在一起。本步骤中,摒弃了传统bow(bagofwords)计算关键词相似度的常规模型,利用结合特征-对象矩阵及汉明码技术的lsa空间模型,可以解决和弥补基于vsm向量欧式距离模型因未考虑词义信息导致的信息丢失及基于levenshtein距离模型关键词顺序发生变化时带来的误差。从而能够在充分考虑基本特征粒度的情况下兼顾主题聚合度的准确性和有效性。

具体而言,该步骤d包括:

子步骤d1:由目标词库中的词条构建二维的特征-对象矩阵,该特征-对象矩阵中的每一个元素为两个词条对应的特征向量组成的特征向量簇;

子步骤d2:对每一特征向量簇,将其包括的两个特征向量分别转换为二进制码,利用汉明码计算该两个特征向量之间的距离;

子步骤d3:将目标词库中距离小于预设阈值的两特征向量对应的词条聚合,作为一词条对,并将包含同一词条的多个词条对合并为一词条组。

为了更清楚的理解本步骤,以下进行举例说明:假设目标词库为{杯子、水杯、外套、上衣},记为{s1、s2、s3、s4},则据此生成的特征-对象矩阵为:

对应每一词条,经过上述步骤后会生成特征向量簇,形如{s1s1、s1s2、s1s3、…、s4s4}。将每个特征向量簇转为二进制后,如{1001010110010101、1001010100110100…},通过汉明码计算两两特征向量之间的距离,当词条对应的特征向量之间的距离小于预设阈值3时即将相近的词条聚合,如{杯子、水杯}、{外套、上衣}、{水杯、玻璃杯}、{水杯、茶杯}。将{杯子、水杯}、{水杯、玻璃杯}、{水杯、茶杯}合并为一词条组{杯子、水杯、玻璃杯、茶杯}。

步骤e:词条分类,对聚合后的每一个词条组,根据预设半径参数确定词条聚合分布的区域,在该范围内采用k近邻算法对聚合的词条进行分类;

本步骤中,可以将不同粒度的词条进行聚合,从而有效地避免了最长公共子串模型由于粒度过细所产生的误判。另外,由于是在一定半径范围内进行聚合统计,因此可以巧妙地规避最长公共子串关键词连续性和一致性问题。

具体而言,对聚合后的每一个词条组,该步骤e包括:

子步骤e1:设定半径r0,将其作为词条有效分类的判定阈值;

子步骤e2:求取词条组中全部词条对应特征向量的平均值向量;

子步骤e3:计算词条组中每一词条对应特征向量与该平均值向量的 距离;

子步骤e4:将距离小于半径r0的特征向量对应的词条归结为一类;

子步骤e5:将分类结果存储至数据库。

为了更清楚的理解本步骤,以下进行举例说明:假设聚合后的整个词条组为{杯子、水杯、玻璃杯、茶杯},根据不同的半径,将会得到不同的分类,如;{杯子、水杯}、{杯子、水杯、玻璃杯}、{杯子、水杯、玻璃杯、茶杯}。

步骤f:频度解析,即基于分类结果与目标词库中每个词条的搜索次数进行频度解析,其中,归结为一类的词条的搜索次数作为整体进行频度解析。

可见,本实施例在充分利用用户搜索关键词数据库的基础上,采用同类商品相似度聚合技术hlsa(hamminglatentsemanticanalysis,汉明码+潜语义分析)及knn(k-nearestneighbor)分类方法,对商品搜索关键词出现频度进行统计,在弥补现有技术方案不足的同时,还保障了关键词分类统计的有效性和容错性,从而有利于采销人员按照统计频度决策是否需要采购某类商品或增强其推广力度,提高电子商务平台的运营效率。

至此,本发明第一实施例基于hlsa的搜索关键词频度解析方法介绍完毕。

在本发明的另一个示例性实施例中,还提供一种基于hlsa的搜索关键词频度解析装置。如图3所示,本实施例基于hlsa的搜索关键词频度解析装置包括:预处理模块301,用于提取搜索关键词记录,对其进行分词、清洗,得到目标词条,多条的目标词条构成目标词库;词条过滤模块302,用于去除目标词库中对语义权重贡献较小的弱相关词条;词条替换模块303,用于对目标词库中的目标词条进行近义词或同义词的替换;词条聚合模块304,用于采用特征-对象矩阵,将高维空间映射到低维的潜在语义结构上所构建出的lsa空间模型,结合汉明码计算词条特征向量之间的距离,聚合特征向量距离等同或相近的特征向量对应的词条;词条分类模块305,用于对聚合后的每一个词条组,根据预设半径参数确定词条聚合分布的区域,在该范围内采用k近邻算法对聚合的词条进行分类;词条统计模块306,用于基于分类结果与目标词库中每个词条的搜索次数进 行频度解析,其中,归结为一类的词条的搜索次数作为整体进行频度解析。

其中,词条聚合模块304又可以包括:矩阵构建子模块,用于由目标词库中的词条构建二维的特征-对象矩阵,该特征-对象矩阵中的每一个元素为两个词条对应的特征向量组成的特征向量簇;第一计算子模块,用于对每一特征向量簇,将其包括的两个特征向量分别转换为二进制码,利用汉明码计算该两个特征向量之间的距离;聚合子模块,用于将目标词库中距离小于预设阈值的两特征向量对应的词条聚合,作为一词条对,并将包含同一词条的多个词条对合并为一词条组。

其中,词条分类模块305又可以包括:平均值向量计算子模块,用于求取词条组中全部词条对应特征向量的平均值向量;第二计算子模块,用于计算词条组中每一词条对应特征向量与该平均值向量的距离;归类子模块,用于将距离小于半径r0的特征向量对应的词条归结为一类。

为了达到简要说明的目的,上述第一实施例中任何可作相同应用的技术特征及所取得的有益效果的叙述皆并于此,无需再重复相同叙述。

至此,本发明第二实施例基于hlsa的搜索关键词频度解析装置介绍完毕。

至此,已经结合附图对本发明两实施例进行了详细描述。依据以上描述,本领域技术人员应当对本发明基于hlsa的搜索关键字频度解析方法和装置有了清楚的认识。

需要说明的是,在附图或说明书正文中,未绘示或描述的实现方式,均为所属技术领域中普通技术人员所知的形式,并未进行详细说明。此外,上述对各元件和方法的定义并不仅限于实施例中提到的各种具体结构、形状或方式,本领域普通技术人员可对其进行简单地更改或替换,例如:

(1)ictclas还可以以自建分词引擎的形式呈现;

(2)过滤操作可以用规则库来代替;

(3)除非特别描述或必须依序发生的步骤,上述实施例中步骤的顺序并无限制于以上所列,且可根据所需设计而变化或重新安排。

综上所述,本发明采用同类商品相似度聚合技术hlsa及knn分类方法,对商品搜索关键词出现频度进行统计,在弥补现有技术方案不足的同时,还保障了关键词分类统计的有效性和容错性,从而有利于采销人员 按照统计频度决策是否需要采购某类商品或增强其推广力度,提高电子商务平台的运营效率,具有较好的推广应用前景。

需要说明的是,在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征 的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本发明实施例的相关设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1