首页> 中国专利> 基于典型性的评论大数据挖掘方法

基于典型性的评论大数据挖掘方法

摘要

本发明公开一种基于典型性的评论大数据挖掘方法,包括下述步骤:(1)评论典型性挖掘建模,对评论典型性计算和最小代表评论集合挖掘问题进行建模和形式化定义;(2)典型性评论原型自动构建;(3)最小评论集合挖掘,采用最小评论集合挖掘算法,筛选出一个最小评论集合;(4)采用BigSimDet并行计算方法,通过调用分布式集群中的计算节点以并行的方式处理相似性评论检测任务。本发明从认知心理学和观点挖掘这两个角度出发,去研究用户评论的典型性衡量方法,基于此方法来挖掘具有代表性的最小评论集合;从而,帮助商品潜在客户可以更全面、多角度地了解某个商品,帮助用户更准确地筛选其所需的商品,提升用户的购买体验。

著录项

  • 公开/公告号CN104462480A

    专利类型发明专利

  • 公开/公告日2015-03-25

    原文格式PDF

  • 申请/专利权人 刘耀强;

    申请/专利号CN201410796566.X

  • 发明设计人 刘耀强;

    申请日2014-12-18

  • 分类号G06F17/30;

  • 代理机构广州市华学知识产权代理有限公司;

  • 代理人黄磊

  • 地址 511400 广东省广州市番禺祈福新村C区16街15A2楼

  • 入库时间 2023-12-18 08:05:40

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-11-10

    授权

    授权

  • 2015-04-22

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20141218

    实质审查的生效

  • 2015-03-25

    公开

    公开

说明书

技术领域

本发明涉及数据挖掘的研究领域,特别涉及一种基于典型性的评论大数据 挖掘方法。

背景技术

随着我国物联网的高速发展,发布在电子商务网站、社交网络及各种在线 论坛上的评论呈现出爆炸性的增长,这些数以Petabytes(PB)计的评论大数据(Big  Data)揭示了用户对诸如消费产品、组织、人员和社会事件等一系列广泛主题的 个人观点。这些商品评论不仅可以让企业了解他们所关心的客户或潜在客户的 真正需要,而且为消费者的购物决策提供了有益的指导。根据2014中国互联网 络信息中心数据显示,超过90%的网购用户会在购物网站的商品下方发表评论。 与此同时,超过一半的网购用户表示在购买每一种商品前都会阅读相关商品评 论。例如,携程网提供了一个让客户发布其对所住过酒店评论的平台,通过该 平台上发布的酒店评论,不仅为其他客户选择合适的酒店提供了参考,酒店管 理者也可以根据网上的反馈不断提高服务质量,从而吸引更多的国内外客户入 住。此外,分析这些网上评论也可帮助政府部门较快和较广泛地了解各地的民 情,了解群众对政府政策或社区发展的看法和观点。总的来说,从用户的角度来 看,评论可以帮助用户更全面、多角度地了解某个商品,从而做出是否购买该 商品的决定。同时也可以让用户了解哪些商品才能满足其需要。从企业的角度 来看,厂商及服务供应商需要知道用户对其产品的看法,即其产品从用户体验 的角度来看哪些是优点哪些是缺点,这样可以帮助产品制造商获得更多、更全 面的用户反馈意见,从而可以更好地改良商品及服务。综上所述,网上的评论 蕴含丰富的有价值信息,值得我们进行深入挖掘和分析。

虽然网上评论对企业、监管机构和商品用户有着十分重要的意义和作用。 然而在大数据时代,对数量庞大的在线评论人工浏览和分析几乎是不可能的, 传统的评论挖掘方法难以对评论大数据进行实时分析和总结,且由此得到的评 论分析效果并不理想。在大数据背景下,建立智能网上评论观点挖掘系统具有 很高的研究和应用价值。例如,通过从评论大数据里挖掘出最小的代表性评论 集合,让系统用户快速了解评论里不同的观点,从而快速有效地监控市场趋势 或各地的民情。

发明内容

本发明的主要目的在于克服现有技术的缺点与不足,提供一种基于典型性 的评论大数据挖掘方法,该方法利用认知心理学的“基层概念”(Basic Level  Concept)理论和多原型理论来设计评论典型性计算,以挖掘出具有代表性的最 小评论集合,并运用Hadoop平台并行地处理评论大数据挖掘。。

为了达到上述目的,本发明采用以下技术方案:

基于典型性的评论大数据挖掘方法,包括下述步骤:

(1)评论典型性挖掘建模,对评论典型性计算和最小代表评论集合挖掘问 题进行建模和形式化定义;

(2)典型性评论原型自动构建,基于认知心理学的“基层概念”理论和多 原型理论来设计评论典型性计算方法,用“基层概念”理论中的类别效用来指 导评论原型的生成;

(3)最小评论集合挖掘,采用最小评论集合挖掘算法,筛选出一个最小评 论集合,该集合具有如下特点:集合里的每一条评论都不同且都能代表相当一 部分用户的观点,该最小评论集合里的所有评论能涵盖和代表该商品所有评论 的观点,用户只需要浏览该最小评论集合里的评论,就可以了解所有该商品评 论的用户观点;

(4)采用BigSimDet并行计算方法,通过调用分布式集群中的计算节点以 并行的方式处理相似性评论检测任务。

优选的,步骤(1)中,评论典型性挖掘建模的具体步骤为:

(1-1)把某个商品x的所有评论看成是一个“概念”,所述“概念”即商品 x的评论,每一条评论则是这个“概念”的一个“实例”,则每条评论在该“概 念”中都有不同的典型性,另外,在商品x的评论的所有评论中,抽取出一个 最小代表评论集合,该评论集合有以下两个属性:

(1-1-1)集合所包含的所有n条评论能最大程度上代表所有用户的不同类 型的观点;

(1-1-2)集合里的评论数量n为尽可能小;用户只需浏览为数不多的n条 评论就可以较全面地了解针对商品x的所有观点和意见;

(1-2)采用“方面”来对商品评论进行形式化表示;

pa=(sa,1:va,1:sa,2:va,2,...,sa,k:va,k)

其中sa,i是一个属于商品a的“方面”,va,i是评论中对于sa,i的情感极性值, 即某一个方面的情感倾向值。

(1-3)对于评论典型性计算问题,可以看成是一个如下函数:

χ:Ri→Ti

其中,Ri是属于商品i的评论集合,Ti是根据评论典型性排序后的评论集合;

对于最小代表性评论集合挖掘问题,根据多原型理论,首先对商品评论进 行聚类,然后从每一个评论类别中抽取出一个评论原型来代表这类评论,因此, 商品x的所有评论可以由n个评论原型来表示,即:

tc=(tc,1,tc,2,...,tc,n)

其中,是一个评论原型,可以表示为:

tc,j=(sj,1c:vj,1c,sj,2c:vj,2c,...,sj,mc:vj,mc)

(1-4)最小代表性评论集合挖掘问题可以表示为一个函数:

θ:Ri→Li

其中,Ri是属于商品i的评论集合,Li是商品i的最小代表性评论集合。

优选的,步骤(2)中,典型性评论原型自动构建的具体方法为:

(2-1)在多原型理论中,一个概念可以由多个抽象的对象代表来表示,所 述对象代表即为原型,每个原型分别代表了一组相似的对象,是这些对象的抽 象表示;

(2-2)根据认知心理学的研究,对象的典型性由两个因素决定:Central  Tendency和Frequency of Instantiation;前者是对象与概念成员的相似性,即如 果一个对象和某个概念里的其他对象实例很相似,和该概念以外的其他概念很 不相似,那么这个对象在该概念里的典型性很高;后者是一个人经常遇见某种 对象并把它归类为某个概念的频率;

(2-3)对于一个对象在概念里的Central Tendency,由两方面决定:该对象 和概念里其他对象的相似性,即内部相似性,以及和其他概念里对象的不相似 性,即外部不相似性;内部相似性可以表示为:

β(pa,tc)=sim(pa,tc,s)

其中,表示一个对象a,表示一个概念c,是和a最相似的原型s;

(2-4)为了衡量原型和对象的相似性,采取不同的相似性函数进行处理, 对于一个对象在某个概念中的外部不相似性,把它看成是该对象与其他概念的 不相似性的整合值,用以下公式计算:

δ(pa,tc)=Σxdissimilar(pa,tx,s)NΔ-1,xCandxc

(2-5)通过整合函数(aggregation function)来整合内部相似性和外部不相 似性,获得一个对象a在概念c里的Central Tendency;

对于属于某个概念外的多个对象,对这些对象进行聚类,从而获得一个概 念的多个原型表示,针对影响对象典型性的第二个因素,Frequency of  Instantiation,定义一个原型显著向量来表示不同原型在一个概念中的Frequency  of Instantiation,如下:

wc=(wc,1wc,2,...,wc,n),0<wc,i1

该向量中的每个值是一个原型所对应的聚类里包含的对象数量相对于所有 属于这个概念对象数量的百分比;

在获得一个对象在某个概念里的Central Tendency和Frequency of  Instantiation的值后,根据一个整合函数把两者整合起来,该过程形式化表示如 下:

τc(a)=Φ(wc,s,α(pa,tc));

(2-5)在构建对象原型的过程当中需要对对象进行聚类,通过自动的对象 聚类方法来获取一个概念中的多个原型;采用认知心理学中的“类别效用”作 为基准设计一个概念多原型的自动构建算法,使得所生成的原型都是概念中的 基本层次,所述基本层次为:人们在认知的过程中存在的一种特殊的概念划分; 根据认知心理学的理论,评论中Category Utility如下:

cu(C,T)=1mΣk=1mp(ck)[Σi=1nkwip(ti|ck)2nk-Σi=1nwip(ti)2n]

其中,C是概念集合,F是方面集合,p(ti|ck)2为一个概念拥有一个方面ti, 的概率,p(ck)是一个对象属于一个概念的概率,p(ti)为一个对象拥有方面ti的 概率;

(2-6)采用Basic Level concept的挖掘算法自动地挖掘出针对某一个概念 的基本子概念;利用该算法,商品的所有评论会根据类别效用的变化自动地聚 成若干个类,最后选取形成的聚类结果中类别效用最大的分类,该分类所聚成 的每一个类属于Basic Level这个层次。

优选的,步骤(3)中,所述最小评论集合挖掘的具体步骤为:

(3-1)进行相似评论检测,将相似的评论在该集合中剔除,所述相似评论 检测问题可形式化为:产品评论是由一组向量表示D={d1,d1,...,d|D|},每个向 量di=<wi,1,wi,2,...,wi,|L|>包含|L|个单词权重,其中L是产品评论文集的词汇 集数目总数,所述词汇集为一系列非重复的单词,每个矢量是归一化为单位长 度,如果一对向量的余弦-相似度大于或等于阈值μSIM时,那么认为一对是相似 评论,给定归一化矢量,一对向量(di,dj)的余弦相似性sim(di,dj)是这些矢量的 点积:

sim(di,dj)=Σt=1|L|wi,t·wj,t

(3-2)定义1(类似的评论检测问题):给定表示相应产品评论的文本向量 的集合D和相似性阈值μSIM,相似评论检测问题是要确定评论对di,dj∈D的相 似度sim(di,dj)≥μSIM

(3c)利用一个给定的相似性阈值,减少在所述候选生成阶段产生的候选 对的数量,如过在一个文档向量中的最大项的权重太小,那么它与任意矢量的 余弦相似性将低于给定的阈值,即无需再调用相似性计算;给定两个文档向量 di,dj∈D,代表向量的1-范数的值;此外,在一个向量dj中的 最大项权重是wjmax=max({wj,1,wj,2,...,wj,|L|}),也被称为向量的∞-范数; 那么,可以根据sim(di,dj)可以得到下面的不等式:

sim(di,dj)≤min((||di||1×||dj||),(||dj||1×||di||))

如果||di||1×||dj||<μSIM,可以肯定的是sim(di,dj)<μSIM,即di,dj不是 相似评论。

优选的,步骤(4)中,BigSimDet并行计算方法的具体步骤为:

(4-1)计算每个文档向量di∈D的1-范数||di||1和∞-范数||di||值,并根 据MapReduce并行计算模型中的组大小参数τG分配这些向量到各个组;建立排 序(),并使得每个向量组gi∈G按照1-范数值从大到小排序;

(4-2)对于每个对向量组gi,gj∈G且通过评估gi的最大1-范数值和 gj的最大1-范数值的乘积是否大于阈值μSIM,来确定其非相似关系;

(4-3)对于每个组gi∈G,初始一个MapReduce的分区来计算gi与其 他向量组的相似对;在此过程中,还需考虑非相似关系和分区大小限制τMaxG

(4-4)根据分区大小限制约束τMaxG,执行MapReduce任务如果一 组向量gi∈G有多个潜在的类似向量组,则将gi作为种子,并根据分区大小限制 约束τMaxG形成的额外分区;

(4-5)对于每个分区启动一个MapReduce的并行处理任务来检测相 似性评论。

优选的,步骤(4-1)中,MapReduce并行计算模型的具体实现步骤为:

调用一个MapReduce的作业来计算每个文档向量的1-范数和∞-范数值;所 有向量随后将根据其1-范数的值按升序排列,并根据预先定义组的大小τG把这 些向量放入相应的组,最大分组大小τG是系统的参数之一,整个文档集合D均 匀地分成若干输入分区,每个Mapper将并行地处理其自己的分区的文件向量, 运行Mapper排序的中间生成的键-值对,即1-范数值和文档ID,然后将这些中 间的键-值对进行混洗后输入到Reducer中;通过使用MapReduce中名为 “TotalOrderPartitioner”自定义分区程序,中间生成的键-值对将在第一个Reducer 中根据各个值得大小进行排序后减少处理范围,并将范围缩小后的数据在输入 到第二个Reducer中处理,以此类推;

其中,MapReduce的作业的具体实现过程如下:一个Mapper从它的输入分 区中获取每个输入键-值对,即一个文件ID和文件向量,然后,该Mapper将产 生相应的由归一化后的项权重组成的文档向量;接着,Mapper将计算1-范数 ||di||1和∞-范数||di||值;最后,将输出中间生成的键-值对,即1-范数值和由 文件ID及∞-范数组成的元组;另外,各个Reducer将排序后的中间生成键-值 对作为输入,然后依据组大小参数τG将文档根据1-范数值进行排序;最后,输 出键-值对;每个输出的键-值对包括:一个组ID和包含了有序的文档ID列表、 相应的1-范数和∞-范数值的元组。

优选的,步骤(4-2)具体为:

当某个组在通过衡量1-范数和∞-范数,被发现与其他评论相异时,那么同 时可以确定其它相异文档组;对于每一组gi,具有最大的1-范数值的文档被表示 成而具有最大∞-范数的文档被表示成当两组间的相异关系被确定时, 文档组gj中的∞-范数的值可以应用在另一个组gi的1-范数如果 表明这两个组中的文档没有类似的;由于之前的 MapReduce工作已经产生一个所有文件组的有序队列,并且每一个组内的文档 也根据1-范数的值升序排列,比gi排序较低的其他组(如g1和g2)将被确定于gj不 相似。

优选的,步骤(4-3)具体为:

对于每个组gi∈G,通过并行地合并相似的文档组合排除相异的文档组,来 初始化文档分区排除相异文档组可极大地节约在相似性评论检测阶段的 计算时间;然而,初始化时的文件分区的大小可能非常不平衡,因为某些文档 组可能含有许多潜在的相似文档组而其它仅具有几个潜在的类似文档组;文件 分区的不平衡会造成MapReduce下并行的相似性评论检测任务执行性能极大程 度地下降;其原因在于一个相似评论检测作业的总执行时间是由运行时间最长 的相似性评论检测任务的计算节点控制的。

优选的,步骤(4-4)中,

调用一个平滑任务按分区大小限制τMaxG将大文件分割成几个较小的分区, τMaxG的值是通过计算集群节点的平均本地存储容量决定的,如果超过计算节点 的本地存储容量时,那么文档组必须从远程节点进行检索,每一次远程磁盘访 问都会消耗比本地磁盘访问多得多的时间,其结果是,总执行时间可能大大增 加,对于每个组gi∈G,如果其初始的文件分区超过τMaxG的限制,该组gi将被用 作种子,并与其他可能相似的文档组进行合并,使得生成每个分区的大小 不会超过限制,最后,相似评论检测任务可以被均匀地分布在集群中的所有计 算节点之间。

优选的,步骤(4-5)中,

通过调用分布式集群中的计算节点以并行的方式处理相似性评论检测任务; 对于每一个文档分区启动一个MapReduce并行的相似性评论检测任务, 在相似性的计算之前,需要在每个本地分区进行一个倒索引作业,倒索引之后 再运行形似评论作业运行;为每个分区内的计算文档向量相似度的Map和 Reduce函数,每个Mapper接受来自本地的键-值对,键是一个项t,而它的值并 且是文档ID列表和相应的归一化项权重,调用Map函数,每对文档向量只被计 算一次,只有当两个向量在倒索引中含有至少一个相同的项时,才计算它们之 间的相似度,对于每个文档向量di,采用一个关联数组H来保持潜在的相似文 档与di的相似度分值;最后,Map函数输出文档IDni和关联数组H来最小化中 间生成的键的数目,并将它们进行混洗;另外,Reduce函数接受中间生成的键- 值对,并对存储在关联数组的局部相似性得分进行求和操作;最后,Reduce函 数输出在本地分区中包括文档ID和文档最红的相似度分值键-值对。

本发明与现有技术相比,具有如下优点和有益效果:

(1)本发明是一个带有学科交叉的研究方法,通过应用认知心理学学里 的多原型概念表示理论和Basic Level Concept理论来衡量一条评论的典型程度, 公开了一个新的评论典型性计算方法。此外,基于认知心理学家所提出的分类 效用作为聚类指标来辅助评论原型的生成,使得聚类生成出来的原型和所计算 的评论典型性更接近人们的真实认知。

(2)与现有的观点挖掘技术主要集中评论中的情感分析和观点摘要不同的 是,本发明旨在研究评论大数据中最小代表评论集合挖掘这一新问题。通过挖 掘出最小代表评论集合,可以让用户无需浏览大数据的评论也能全面便捷地了 解所有评论的概貌和评论中观点的多样性,填补该问题的研究空白,且可以更 大限度地加强评论大数据中有意义评论对用户的参考作用。

(3)本发明公开的研究成果可以帮助潜在客户更全面、多角度地了解某个 商品,帮助用户更准确地筛选其所需的商品,提升用户的购买体验。另外,从 厂商及服务供应商的角度来看,他们可以更全面地了解用户对其产品的看法, 即从产品在用户体验的角度来说哪些是优点哪些是确定,这样可以帮助产品制 造商获得更多更全面的用户反馈意见,从而更好地改良商品,提升商品的销售。 此外,本发明公开的方法还可以帮助政府部门较快和较广泛、全面地了解各地 民情,了解群众对政府政策比较典型的看法和各种不同的代表性观点。

(4)本发明公开的方法是基于网络上评论大数据进行的,通过研究在 Hadoop和MapReduce下并行和分布式地实现所公开的评论典型性计算方法和最 小代表评论挖掘算法,以应对在大数据环境下的应用。

附图说明

图1为本发明的挖掘方法的处理流程图;

图2为评论向量排序和分组设计模式。

图3为文档向量组相异度计算。

具体实施方式

下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方 式不限于此。

实施例

如图1所示,基于典型性的评论大数据挖掘方法,包括下述步骤:

(1)评论典型性挖掘建模,对评论典型性计算和最小代表评论集合挖掘问 题进行建模和形式化定义;

(2)典型性评论原型自动构建,基于认知心理学的“基层概念”理论和多 原型理论来设计评论典型性计算方法,用“基层概念”理论中的类别效用来指 导评论原型的生成;

(3)最小评论集合挖掘,采用最小评论集合挖掘算法,筛选出一个最小评 论集合,该集合具有如下特点:集合里的每一条评论都不同且都能代表相当一 部分用户的观点,该最小评论集合里的所有评论能涵盖和代表该商品所有评论 的观点,用户只需要浏览该最小评论集合里的评论,就可以了解所有该商品评 论的用户观点;

(4)采用BigSimDet并行计算方法,通过调用分布式集群中的计算节点以 并行的方式处理相似性评论检测任务。

本实施例中,评论典型性评论挖掘建模,采用“方面”来对商品评论进行 形式化表示:

pa=(sa,1:va,1:sa,2:va,2,...,sa,k:va,k)

其中sa,i是一个属于商品a的“方面”,va,i是评论中对于sa,i的情感极性值, 即某一个方面的情感倾向值。

对于评论典型性计算问题,可以看成是一个如下函数:

χ:Ri→Ti

其中,Ri是属于商品i的评论集合,Ti是根据评论典型性排序后的评论集合。

对于最小代表性评论集合挖掘问题,根据多原型理论,首先对商品评论进 行聚类,然后从每一个评论类别中抽取出一个评论原型来代表这类评论。因此, 商品x的所有评论可以由n个评论原型来表示,即:

tc=(tc,1,tc,2,...,tc,n)

其中,是一个评论原型,可以表示为:

tc,j=(sj,1c:vj,1c,sj,2c:vj,2c,...,sj,mc:vj,mc)

最小代表性评论集合挖掘问题可以表示为一个函数

θ:Ri→Li

其中,Ri是属于商品i的评论集合,Li是商品i的最小代表性评论集合。

本实施例中,典型性评论原型自动构建包括以下步骤:

1.对于一个对象在概念里的Central Tendency,由两方面决定:该对象和概 念里其他对象的相似性(内部相似性),以及和其他概念里对象的不相似性(外 部不相似性)。内部相似性可以表示为:

β(pa,tc)=sim(pa,tc,s)

其中,表示一个对象a,表示一个概念c,是和a最相似的原型s。

2.为了衡量原型和对象的相似性,本发明采取不同的相似性函数,比如 Cosine相似性函数,Jaccard相似性函数等。对于一个对象在某个概念中的外部 不相似性,把它看成是该对象与其他概念的不相似性的整合值,用以下公式计 算:

δ(pa,tc)=Σxdissimilar(pa,tx,s)NΔ-1,xCandxc

3.本发明设计一个整合函数(aggregation function)来整合内部相似性和外 部不相似性,从而获得一个对象a在概念c里的Central Tendency。针对影响对 象典型性的第二个因素,Frequency of Instantiation,本发明定义一个原型显著向 量来表示不同原型在一个概念中的Frequency of Instantiation,如下:

wc=(wc,1wc,2,...,wc,n),0<wc,i1

该向量中的每个值是一个原型所对应的聚类里包含的对象数量相对于所有 属于这个概念对象数量的百分比。

4.在获得一个对象在某个概念里的Central Tendency和Frequency of  Instantiation的值后,将根据一个整合函数把两者整合起来,该过程形式化表示 如下:

τc(a)=Φ(wc,s,α(pa,tc));

5.采用认知心理学中的“类别效用”作为基准来设计一个概念多原型的自 动构建算法,使得所生成的原型都是概念中的基本层次。根据认知心理学的理 论,评论中Category Utility如下:

cu(C,T)=1mΣk=1mp(ck)[Σi=1nkwip(ti|ck)2nk-Σi=1nwip(ti)2n]

其中,C是概念集合,F是方面集合,p(ti|ck)2为一个概念拥有一个方面ti, 的概率,p(ck)是一个对象属于一个概念的概率,p(ti)为一个对象拥有方面ti的 概率。

6.基层概念(Basic Level concept)的挖掘算法如表1所示,该算法可以自动 地挖掘出针对某一个概念的基本子概念(Basic Level Concept)。利用该算法,商 品的所有评论会根据类别效用的变化自动地聚成若干个类,最后选取形成的聚 类结果中类别效用最大的分类,该分类所聚成的每一个类属于Basic Level这个层 次。

表1

本实施例中,最小评论集合挖掘具体包括以下步骤:

1.相似评论检测,将相似的评论在该集合中剔除。所述相似评论检测问题 可形式化为:产品评论(即文档)是由一组向量表示D={d1,d1,...,d|D|}。每个 向量di=<wi,1,wi,2,...,wi,|L|>包含|L|个单词权重,其中L是产品评论文集的词 汇集(即一系列非重复的单词)数目总数。每个矢量是归一化为单位长度。如 果一对向量的余弦‐相似度大于或等于阈值μSIM时,那么认为一对是相似评论。 给定归一化矢量,一对向量(di,dj)的余弦相似性sim(di,dj)是这些矢量的点积:

sim(di,dj)=Σt=1|L|wi,t·wj,t

2.利用一个给定的相似性阈值,以减少在所述候选生成阶段产生的候选对 的数量。假如在一个文档向量中的最大项的权重太小,那么它与任意矢量的余 弦相似性将低于给定的阈值,即无需再调用相似性计算。给定两个文档向量 di,dj∈D,代表向量的1‐范数的值。此外,在一个向量dj中的 最大项权重是wjmax=max({wj,1,wj,2,...,wj,|L|}),也被称为向量的∞‐范数。 那么,可以根据sim(di,dj)可以得到下面的不等式:

sim(di,dj)≤min((||di||1×||dj||),(||dj||1×||di||))

如果||di||1×||dj||<μSIM,可以肯定的是sim(di,dj)<μSIM,即di,dj不是 相似评论。

本实施例中,BigSimDet并行算法包括以下步骤:

1.调用一个MapReduce的作业来计算每个文档向量的1‐范数和∞‐范数值。 所有向量随后将根据其1‐范数的值按升序排列,并根据预先定义组的大小τG把 这些向量放入相应的组。最大分组大小τG是系统的参数之一。一般情况下,一 个小的τG将以更多的组构建耗时为代价,允许发现更多的相异关系向量组。如 图2所示,为第一个MapReduce作业的并行处理模式。整个文档集合D均匀地 分成若干输入分区。每个Mapper将并行地处理其自己的分区的文件向量(例如, 计算1‐范数和∞‐范数的值)。运行Mapper排序的中间生成的键‐值对(即,1‐ 范数值和文档ID),然后将这些中间的键‐值对进行混洗后输入到Reducer中。通 过使用MapReduce中名为“TotalOrderPartitioner”自定义分区程序,中间生成 的键‐值对将在第一个Reducer中根据各个值得大小进行排序后减少处理范围, 并将范围缩小后的数据在输入到第二个Reducer中处理,以此类推。

所述的第一个MapReduce作业的算法细节如表2所示,其主要负责并行地 对文件向量进行排序和分组。其中,一个Mapper从它的输入分区中获取每个输 入键-值对(即,一个文件ID和文件向量)。然后,该Mapper将产生相应的由 归一化后的项权重组成的文档向量。接着,Mapper将计算1-范数||di||1和∞-范 数||di||值。最后,将输出中间生成的键-值对(即,1-范数值和由文件ID及∞ -范数组成的元组)。另外,各个Reducer将排序后的中间生成键-值对作为输入, 然后依据组大小参数τG将文档根据1-范数值进行排序。最后,输出键-值对。每 个输出的键-值对包括:一个组ID和包含了有序的文档ID列表、相应的1-范 数和∞-范数值的元组。

表2

2.查找有关的相异文档组,并由此节省大量在不必要的文档相似性计算的 时间。为给定阈值μSIM=0.5时,相异文档组查找的过程。当某个组在通过衡量 1‐范数和∞‐范数,被发现与其他评论(如图3中的g3和g5)相异时,那么同时 可以确定其它相异文档组(例如,g5和g2,g5和g1)。对于每一组gi,具有最大 的1‐范数值的文档被表示成而具有最大∞‐范数的文档被表示成当两 组间的相异关系被确定时,文档组gj中(如g5中的d10)的∞‐范数的值被可 以应用在另一个组gi的1‐范数(如g3中的d6)。如果表明这两个组中(如g3和g5)的文档没有类似的。由于之前的MapReduce工作 已经产生一个所有文件组的有序队列,并且每一个组内的文档也根据1‐范数的 值升序排列,比gi排序较低的其他组(如g1和g2)将被确定于gj不相似。原因在 于对于任何一组gi-k||di-kL1||1×||djL||<μSIM,因为||di-kL1||1×||djL||1.事 实上,步骤1中对文档组全排序可以显著降低步骤2中文档组的比较数目。此 外,由于每个组对之间的1‐范数和∞‐范数的值(和)是独立并行计算得 到的,评估||di-kL1||1×||djL||<μSIM而不是评估和之间的点积可以显著 地节省计算时间,特别是在处理当词汇量是非常大的大数据时。

3.对于每个组gi∈G,通过并行地合并相似的文档组合排除相异的文档组, 来初始化文档分区排除相异文档组可极大地节约在相似性评论检测阶段 的计算时间。然而,初始化时的文件分区的大小可能非常不平衡,因为某些文 档组可能含有许多潜在的相似文档组而其它仅具有几个潜在的类似文档组。文 件分区的不平衡会造成MapReduce下并行的相似性评论检测任务执行性能极大 程度地下降。其原因在于一个相似评论检测作业的总执行时间是由运行时间最 长的相似性评论检测任务的计算节点控制的。

4.调用一个平滑任务按分区大小限制τMaxG将大文件分割成几个较小的分 区。τMaxG的值是通过计算集群节点的平均本地存储容量决定的。一般来说,如 果超过计算节点的本地存储容量时,那么文档组必须从远程节点进行检索。每 一次远程磁盘访问都会消耗比本地磁盘访问多得多的时间。其结果是,总执行 时间可能大大增加。.对于每个组gi∈G,如果其初始的文件分区超过τMaxG的限 制,该组gi将被用作种子,并与其他可能相似的文档组进行合并,使得生成每个 分区的大小不会超过限制。最后,相似评论检测任务可以被均匀地分布在 集群中的所有计算节点之间。

通过调用分布式集群中的计算节点以并行的方式处理相似性评论检测任务。 对于每一个文档分区启动一个MapReduce并行的相似性评论检测任务。 在相似性的计算之前,需要在每个本地分区进行一个倒索引作业。倒索引之后 再运行形似评论作业运行。如表3所示,为每个分区内的计算文档向量相似度 的Map和Reduce函数。每个Mapper接受来自本地的键-值对。键是一个项t, 而它的值并且是文档ID列表和相应的归一化项权重。调用Map函数,每对文档 向量只被计算一次。只有当两个向量在倒索引中含有至少一个相同的项时,才 计算它们之间的相似度。对于每个文档向量di(由文档ID为ni),采用一个关联 数组H来保持潜在的相似文档与di的相似度分值。最后,Map函数输出文档IDni和关联数组H来最小化中间生成的键的数目,并将它们进行混洗。另外,Reduce 函数接受中间生成的键-值对,并对存储在关联数组的局部相似性得分进行求和 操作。最后,Reduce函数输出在本地分区中包括文档ID和文档最红的相似度分 值键-值对。

表3

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实 施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、 替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号