首页> 中国专利> 推荐词条以指定本体空间

推荐词条以指定本体空间

摘要

推荐词条以指定本体空间。在一个实施方式中,接收用于搜索的目标搜索词条集。选择候选词条,其中候选词条被选择用于减少该搜索的本体空间。向计算机发送候选词条以推荐候选词条作为搜索词条。在另一个实施方式中,访问存储在一个或更多个有形介质中的文档。接收文档的目标标签集。选择多个词条,其中词条被选择用于减少文档的本体空间。向计算机发送词条以推荐该词条作为标签。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-06-17

    授权

    授权

  • 2009-06-10

    实质审查的生效

    实质审查的生效

  • 2009-04-15

    公开

    公开

说明书

技术领域

本发明总体上涉及词法(lexigraphical)分析,更具体地说,涉及推 荐词条以指定本体空间。

背景技术

本申请要求David Marvit等人于2007年10月5日提交的发明名称 为“Techniques for Improved Tagging”的美国临时申请60/977,934的优先 权。

尽管数据语料库(corpus)可以保存大量信息,但是要找出相关信息 可能仍然很困难。可以对文档进行标记以便于搜索相关信息。然而,在 特定情形中,已知的文档标记技术在定位信息方面不是很有效。类似的 是,已知的搜索技术在定位相关信息方面也不是很有效。

附图说明

图1例示了选择文档的标签的系统的一个实施方式;

图2例示了可以与图1的系统一起使用的亲和度(affinity)模块的 一个实施方式;

图3例示了记录基本亲和度的亲和度矩阵的实施例;

图4例示了记录有向亲和度的亲和度矩阵的实施例;

图5例示了记录平均亲和度的亲和度矩阵的实施例;

图6例示了亲和度图的实施例;

图7例示了可以与图1的系统一起使用的聚类模块的一个实施方式;

图8例示了可以与图1的系统一起使用的本体(ontology)特征模块 的一个实施方式;

图9例示了可以与图1的系统一起使用的标记模块的一个实施方式;

图10例示了用于确定话题的统计分布的方法的实施例;

图11例示了用于通过分析文档的段落来向该文档指配标签的方法的 实施例;以及

图12例示了用于响应于所选择的标签来指配标签的方法的实施例。

具体实施方式

图1例示了选择文档的标签的系统10的一个实施方式。标签可以是 例如作为元数据指配给文档的一个或更多个词语。标签可以用来方便电 子文档的搜索过程。在具体实施方式中,可通过用于减少文档所在的本 体空间的标签来对文档进行标记。使用这些标签可以更容易地检索文档。 在具体实施方式中,在给定一个文档标签的情况下,可以推荐减少文档 所在的本体空间的其他标签。

在具体实施方式中,系统10响应于例如由用户选择的目标标签来指 配标签。在这些实施方式中,系统10推荐文档标签。所推荐的标签可以 与目标标签具有较高的亲和度,并与其它推荐标签具有较低的亲和度, 以减少文档的本体空间。系统10可接收各推荐标签的选项,并且可以响 应于该选项来推荐更多的标签。一旦选定了最终标签,系统10就会向文 档指配该最终标签。本实施方式用来向不包括文本的文档和包括文本的 文档指配标签。

在具体实施方式中,对于给定的词语子集和词典D,可以基于特定 反向索引(inverted index)II计算有向亲和度,其中索引II包括例如针对 词句wi和词句wj的条目I(wi)和I(wj)。一般来说,反向索引是储存从词 条(term)到其位置(即,呈现词条的同现语境)的映射的索引数据结构。 对于D中的每对词语wi和wj,DA(i,j)可以被定义为II中的条目I(wi) 和I(wj)的合取(conjunction)除以I(wi)的数目值。一般来说,DA(i,j) 无需等于DA(j,i)。可以以任何合适的方式(例如,行方式)储存结果, 其中储存D(1,i),接着存储D(2,j),以此类推。对于每行i,可以存储|I(wi)|, 接着是与wj的合取的基数(cardinality)。

在具体实施方式中,可以按三个阶段计算有向亲和度。在该实施方 式中,每一个字典词条都被指配了唯一的整数识别符。反向索引的条目 对应于该整数识别符。在阶段0中,读取对应于D的II条目。对于参数 (s,o)来说,仅保留具有ks+o形式的要素识别符。值ks+o限定要检 查的II条目的子集。按这种方式,可以并行计算有向亲和度。作为一个 实施例,根据参数s的结果,o(1,0)等于根据参数(3,0)、(3,1)、 (3,2)合并计算获得的结果。该步骤允许计算用于很大反向索引的DA 表。

在阶段1中,仅针对DA(i,j)以行方式计算合取。在阶段2中, 读取计算出的上三角UT DA矩阵。据此,获取下三角部分,作为UT的 转置。在具体实施方式中,可以将相同维的多个DA阵列合并成单一阵 列。可以将大的II上的DA阵列计算为具有参数(s,i)的sumi=0..(s-1)DA。 可以利用计算出的合取来存储附加信息,以便计算有向亲和度。在具体 情况下,可以存储II条目的基数。

在具体实施方式中,可以按行方式存储DA,这样AA条目的计算可 以与DA条目的计算并行进行。具体来说,可以通过在从磁盘中读取DA 时对DA的行进行求和并且最后用词典条目的数量将其归一化而生成 AA。

在所示实施方式中,系统10包括:客户端20、服务器22以及存储 器24。客户端20允许用户与服务器22通信,以使生成语言的本体。客 户端20可以向服务器22发送用户输入,并且可以向用户提供(例如, 显示或打印)服务器输出。服务器系统24管理用于生成语言的本体的应 用。存储器24存储服务器系统24使用的数据。

在所示实施方式中,存储器24存储有页面50和记录54。页面50 (或文档或同现语境)可以指词语的集合。页面50的示例包括:文档的 一个或更多个页面、一个或更多个文档、一本或更多本书、一个或更多 个网页、信件(例如,电子邮件或即时消息)和/或其它词语的集合。可 以由页面识别符来识别页面50。页面50可以以电子方式存储在一种或更 多种有形计算机可读介质中。页面50可以与任何合适的内容相关联,例 如,文本(如字符、词语和/或数字)、图像(如图形、照片或视频)、音 频(如录音或计算机生成的声音)和/或软件程序。在具体实施方式中, 一组页面50可以属于一个语料库。语料库可以与特定主题、团体、组织 或其它实体相关联。

记录54描述页面50。在该实施方式中,记录54包括:索引58、反 向索引62、本体66、以及群集67。索引58包括索引列表,其中,页面 50的索引列表指示页面50的词语。反向索引62包括反向索引列表,其 中,词语(或词语集)的反向索引列表指示包括该词语(或词语集)的 页面50。在一个实施例中,列表Wi包括含有词语wi的页面50的页面识 别符。列表Wi&Wj包括含有词语wi和wj两者的合取(conjunction)页 面50的页面识别符。列表Wi+Wj包括含有词语wi和wj中的任一个的析 取(disjunction)页面50的页面识别符。P(Wi)是Wi的页面50的数量, 即,包括词语wi的页面50的数量。

在一个实施方式中,可以将列表(如索引列表或反向索引列表)存 储为二值判决图(BDD:Binary decision diagram)。在一个实施例中,集 合Wi的二值判决图BDD(Wi)代表具有词语wi的页面50。BDD(Wi)的 满足指定计数(satisfying assignment count)Satisf(BDD(Wi))得到具有词 语wi的页面50的数量P(Wi):

P(Wi)=Satisf(BDD(Wi))

相应地,

P(Wi&Wj)=Satisf(BDD(Wi)与BDD(Wj))

P(Wi+Wj)=Satisf(BDD(wi)或BDD(Wj))

本体66表示语言的词语和这些词语之间的关系。在一个实施方式 中,本体66表示词语之间的亲和度。在所示实施例中,本体66包括亲 和度矩阵和亲和度图。参照图3到图5,对亲和度矩阵的实施例进行描述。 参照图6,对亲和度图的实施例进行描述。群集67记录了彼此相关的词 语的群集。参照图7,对群集进行更详细描述。

在所示实施方式中,服务器22包括:亲和度模块30、聚类模块31、 本体特征模块32、以及标记模块35。亲和度模块30可以计算针对词语 对的亲和度,在亲和度矩阵中记录该亲和度,和/或报告该亲和度矩阵。 亲和度模块30也可以生成亲和度图。参照图2,对亲和度模块30进行更 详细描述。

在具体实施方式中,聚类模块31可以通过识别数据集中的相关要素 的群集来发现该数据集中的模式。在具体实施方式中,聚类模块31可以 识别一组词语的群集(例如,一种语言或一组页面50)。一般来说,群集 的词语彼此高度相关,但与该群集以外的词语不相关。词语的群集可以 指定该组词语的主题(或话题)。在具体实施方式中,聚类模块31根据 词语之间的亲和度来识别相关词语的群集。在该实施方式中,群集的词 语彼此高度相关,但与该群集以外的词语不相关。参照图7,对聚类模块 31进行更详细地描述。

在具体实施方式中,本体特征模块32可以确定一个或更多个词语构 成的组(例如,具体词语或包括词语的文档)的一个或更多个本体特征, 并接着可以在多种情形中的任一种中应用该本体特征。本体特征是将词 语集放置在一种语言的本体空间中的词语集特征。本体特征的实施例包 括深度和专度。在具体实施方式中,深度可以指示词语集的文本复杂性 (sophistication)。较深的词语集可能较技术化并且专业化,而较浅的词 语集可能较通用。在具体实施方式中,词语集的专度与词语集的主题的 数量有关。较专的词语集可能具有较少的主题,而不太专的词语集可能 具有较多的主题。

本体特征模块32可以在任何合适的情形下应用本体特征。合适情形 的实施例包括根据本体特征进行的搜索、分类或选择文档;报告文档的 本体特征;以及确定一个或更多个用户的文档的本体特征。参照图8对 本体特征模块32进行更详细地描述。

在具体实施方式中,标记模块35可以选择标签来标记文档。可以以 任何合适的方式选择标签。在具体实施方式中,标记模块35将话题建模 为话题的相关词语的统计分布。标记模块35使用该统计分布来识别文档 的所选词语具有最高出现概率的话题,并且标记模块35根据识别的话题 来选择该文档的标签。在其他实施方式中,标记模块35识别文档的段落 的候选标签。标记模块35确定这些候选标签与文档的其他候选标签的关 联性,并根据该确定来选择该文档的标签。在再一实施方式中,标记模 块35推荐文档的标签。可以基于与用户或计算机输入或选择的目标标签 的亲和度(例如,有向和/或差分亲和度)来推荐标签。一旦选择了最终 标签,标记器314就可以向文档指配选择的标签。参照图9对标记模块 35进行更详细地描述。

系统10的组件可以包括接口、逻辑、存储器和/或其他合适元件。 接口接收输入、发送输出、对输入和/或输出进行处理,和/或执行其他合 适操作。接口可以包括硬件和/或软件。

逻辑执行对组件的操作,例如,执行指令以根据输入来生成输出。 逻辑可以包括硬件、软件和/或其他逻辑。逻辑可以以一种或更多种有形 介质中进行编码,并且可以当计算机执行该逻辑时执行操作。诸如处理 器的特定逻辑可以管理组件的操作。处理器的实施例包括一个或更多个 计算机、一个或更多个微处理器、一个或更多个应用程序,和/或其他逻 辑。

存储器存储信息。存储器可以包括一个或更多个有形的、计算机可 读的和/或计算机可执行的存储介质。存储器的示例包括计算机存储器(例 如,随机存取存储器(RAM)或只读存储器(ROM),)、海量存储介质 (例如,硬盘)、可移动存储介质(光盘(CD)或数字视频光盘(DVD))、 数据库和/或网络存储器(例如,服务器)以及/或其他计算机可读介质。

在不脱离本发明的范围的情况下,可以对系统10进行改进、添加或 省略。系统10的组件可以是集成或分离的。此外,可以通过更多、更少 或其他组件来执行系统10的操作。例如,可以通过一个组件执行生成器 42和生成器46的操作,或者可以通过一个以上的组件来执行亲和度计算 器34的操作。另外,可以使用包括软件、硬件的任何合适逻辑和/或其他 逻辑来执行系统10的操作。如本文档中所使用的,“每个”指集合中各 成员,或集合的子集中的各成员。

在不脱离本发明的范围的情况下,可以对矩阵的实施例进行改进、 添加或省略。矩阵可以包括更多、更少或其他值。另外,可以以任何合 适的顺序来排列矩阵的值。

图2例示了可以与图1的系统10一起使用的亲和度模块30的一个 实施方式。亲和度模块30可以计算词语对的亲和度、将该亲和度记录在 亲和度矩阵中、和/或报告该亲和度矩阵。亲和度模块30还可以生成亲和 度图。

在所示的实施方式中,亲和度模块30包括亲和度计算器34、本体 生成器38以及词语推荐器48。亲和度计算器34计算针对词语wi或针对 包括第一词语wi和第二词语wj的词语对的任何合适类型的亲和度。亲和 度的实施例包括基本亲和度、有向亲和度、平均亲和度、差分亲和度和/ 或其他亲和度。

这一个实施方式中,词语推荐器48接收词根,并且识别其与词根的 亲和度大于阈值亲和度的词语。阈值亲和度可以具有任何合适值,例如 大于或等于0.25、0.5、0.75或0.95。阈值亲和度可以被预编程的或者由 用户指定。

可以根据包括词语wi和/或wj的页面50的量(例如,数量)来计算 基本亲和度。合取页面量是指既包括词语wi又包括词语wj的页面50的 量,而析取页面量是指包括词语wi或词语wj中的任一个的页面50的量。 可以通过合取页面量除以析取页面量来给出基本亲和度。在一个实施例 中,合取页面数量指示包括词语wi和词语wj的页面的数量,而析取页面 数量指示包括词语wi或词语wj的页面的数量。可以通过合取页面的数量 除以析取页面的数量来给出基本亲和度。

亲和度(wi,wj)=P(Wi&Wj)/P(Wi+Wj)

图3例示了记录基本亲和度的亲和度矩阵110的实施例。在所示的 实施例中,亲和度矩阵110记录词语w1……w5的逐对亲和度。根据亲和 度矩阵110,词语w0和w1之间的亲和度为0.003,词语w0和w2之间的 亲和度为0.005等。

返回参照图1,亲和度组包括彼此具有高亲和度的词语对,并且可 以被用来针对页面内容来捕捉词语w1和w2之间的关系。高亲和度可以 被指定为高于亲和度组阈值的亲和度。阈值可以被设置为任何合适的值 (例如,大于或等于0.50、0.60、0.75、0.90或0.95)。一个词语可以属 于一个以上的亲和度组。在一个实施方式中,亲和度组可以表示为BDD。 BDD的指针与该组的每个词语一起被储存在反向索引62中。

有向亲和度可以被用来测量词语wi对于词语wj的重要性。亲和度计 算器34根据包括词语wi和词语wj的页面50的数量(例如,数目)来计 算在给定词语wj的情况下词语wi的有向亲和度。词语wj页面数量是指 包括词语wi的页面50的数量。可以通过合取页面数量除以词语wj页面 数量来提供在给定词语wj的情况下wi的有向亲和度。例如,词语wj页 面数量指示包括词语wi的页面50的数量。可由合取页面50的数量除以 词语wi的页面50的数量来提供在给定词语wj的情况下wi的有向亲和度:

DAffinity(wi,wj)=P(Wi&Wj)/P(Wi)

DAffinity(wi,wj)和DAffinity(wj,wi)不同。词语wi和wj之间的高有向 亲和度DAffinity(wi,wj)表示页面50在包括词语wj的情况下包括词语wi的较高概率。在一个实施例中,页面[123456]包括词语wi,而页[42] 包括词语wj。包括词语wj的页面也包括词语wi,因此从词语wj的角度, 词语wi具有高重要性。包括词语wi的页面中仅有三分之一的页面也包括 词语wj,因此从词语wi的角度,词语wj具有较低的重要性。

图4例示了记录针对词语w0,...,w5的有向亲和度的亲和度矩阵120 的实施例。在该实施例中,词语124是A词语,而词语128是B词语。 矩阵120的各行记录了在给定A词语的情况下B词语的亲和度,而亲和 度矩阵120的各列记录了在给定A词语的情况下B词语的亲和度。

返回参照图1,针对其他词语wj计算词语wi的平均亲和度。在一个 实施方式中,平均亲和度可以是词语wi和各其他词语wj之间的亲和度的 平均值。词语wi在N个词语中的平均亲和度可以通过下式给出:

AveAff(wi)=1NΣj=1NP(wi|wj)

图5例示了记录平均亲和度的亲和度矩阵140的实施例。行142记 录了针对词语1到词语50,000的基本亲和度。行144记录了词语1到词 语50,000的平均亲和度。

返回参照图1,词语的平均亲和度可以指示词语的深度。具有较低 平均亲和度的词语可以被认为是较深的词语,而具有较高平均亲和度的 词语可以被认为是较浅的词语。较深的词语倾向于更技术化、专属并且 更准确。具有较高百分比的较深词语的页面50被认为是较深页面,而具 有较低百分比的较深词语的页面50可以被认为是较浅页面。在一个实施 方式中,用户可以指定要检索的词语和/或页面50的深度。

页面50的较深词语可以形成高度相关词语的一个或更多个群集。群 集可以表示共同的思想或主题。页面50的主题的数量可以指示页面50 的专度。具有较少主题的页面50可以被认为较专属页面,而具有较多主 题的页面50可以被认为欠专属(less specific)页面。

词语wi对于词语wj的差分亲和度是词语wi和wj之间的有向亲和度 减去词语wj对于所有其他词语的平均亲和度。差分亲和度可以被表达为:

DiffAff(wi,wj)=DAffinity(wi,wj)-AveAff(wj)

差分亲和度排除了由词语wj在页面50中出现的一般趋势而造成的 偏差(bias)。在具体情况下,假定页面包括词语wj时,差分亲和度可提 供该页面包括词语wi的概率的更精确指示。

差分亲和度可以被用于各种应用中。在一个实施例中,人名之间的 差分亲和度可以被用来研究社会网络。在另一实施例中,语素之间的差 分亲和度可以被用来研究自然语言处理。在另一实施例中,产品之间的 差分亲和度可以被用来研究市场策略。

亲和度计算器34可以使用任何合适的技术来搜索反向索引列表以 计算亲和度。例如,为了识别既包括词语wi又包括wj的页面,亲和度计 算器34可以针对公共要素(即,公共页面识别符)搜索词语wi的列表 Wi和词语wj的列表Wj

在具体实施方式中,本体生成器38生成语言的本体66(例如,亲 和度矩阵或亲和度图)。可以根据诸如基本亲和度、有向亲和度、平均亲 和度、差分亲和度和/或其他亲和度中的任何合适亲和度来生成本体。可 以以任何合适的方式根据从语言中选择的词语来生成本体66。例如,可 以选择来自语言的公用部分的词语或者与一个或更多个具体主题区域相 关的词语。

在所示的实施方式中,本体生成器38包括亲和度矩阵生成器42和 亲和度图生成器46。亲和度矩阵生成器42生成记录词语之间的亲和度的 亲和度矩阵。亲和度图生成器46生成表示词语之间的亲和度的亲和度图。 在亲和度图中,节点表示词语,而节点之间的有向边的权重表示由节点 所表示的词语之间的亲和度。亲和度图可以具有任何合适的维数。

图6例示了亲和度图150的实施例。亲和度图150包括节点154和 链路158。节点154表示词语。在本实施例中,节点154a表示词语“binary (二进制)”。节点154之间的有向边的权重表示由节点154表示的词语 之间的亲和度。例如,较大的权重表示较大的亲和度。节点之间的链路 158指示由节点154表示的词语之间的亲和度高于亲和度阈值。亲和度阈 值可以具有任何合适的值(例如,大于或等于0.25、0.5、0.75或0.95)。

图7例示了可以与图1的系统10一起使用的聚类模块31的一个实 施方式。在具体实施方式中,聚类模块31通过识别数据集中的相关要素 的群集来发现数据集中的模式。在具体实施方式中,聚类模块31可以识 别词语集的群集(例如,语言或页面50的集合)。一般来说,群集的词 语彼此高度相关,而与群集以外的词语不高度相关。词语的群集可以指 定词语集的主题(或话题)。

在具体实施方式中,聚类模块31根据词语之间的亲和度来识别相关 词语的群集。在这些实施方式中,群集的词语彼此高度相关,但是与群 集以外的词语不高度相关。在一个实施方式中,如果词语充分相关,则 可以认为它们高度相关。如果词语满足一个或更多个亲和度标准(例如, 阈值),则词语充分相关,下面提供了其实施例。

可以使用任何合适的亲和度来识别群集。在具体实施方式中,聚类 模块31使用有向亲和度。一词语相对于其他词语的有向亲和度表征了词 语的共现。群集包括具有类似共现的词语。在具体实施方式中,聚类模 块31使用差分亲和度。差分亲和度旨在去除词语在页50中出现的一般 趋势所导致的偏差。

在所示的实施方式中,聚类模块31包括聚类引擎210和聚类分析器 214。聚类引擎210根据亲和度来识别词语的群集,并且群集分析器214 应用亲和度聚类以分析各种情形。

聚类引擎210可以根据亲和度以任何合适的方式来识别词语的群 集。提出了用于识别群集的方法的三种实施例:根据词语集构建群集、 将词语分类成群集,以及比较词语的亲和度矢量。在一个实施方式中, 聚类引擎210根据词语集构建群集。在一个实施例中,聚类引擎210根 据具有亲和度*Aff(wi,wj)的词语{wi}的集W建立群集S。亲和度值*Aff(wi, wj)代表词语wi相对于wj的任意合适类型的亲和度,诸如有向亲和度 DAffinity(wi,wj)或差分亲和度DiffAff(wi,wj)。这里提供的亲和度值的某 些实施例可以被认为是归一化值。在该实施例中,Afffor(wi,wj)代表前向 亲和度,且Affback(wj,wi)代表后向亲和度。

在本实施例中,群集S以词根Wq开始。当前词语wx表示在当前迭 代处群集S的正与来自集合W的词语比较的词语。最初,将当前词语 wx设置为词根wq

在迭代期间,当前词语wx被设置为群集S的词语。根据它们与当前 词语wx的前向亲和度Afffor(wi,wx)来对集合W的词语wi进行分类。从分 类集合W的起点开始,识别满足亲和度标准的候选词语wc。亲和度标准 可以包括对于当前词语wx的前向亲和度标准:

Afffor(wc,wx)>Thcf

和对于词根wq的后向亲和度标准:

Affback(wq,wc)>Thcb

其中,Thcf表示用于候选词语的前向阈值,而Thcb表示用于候选词 语的后向阈值。候选词语(wc)的有序集合的第一词语被添加到群集S, 添加的词语的数量由参数Sizec给出。阈值Thcf和Thcb可以是具有从最小 值到最大值的任何合适值的浮点参数。在特定实施例中,可以根据实际 亲和度的级别有序列表来确定Thcf和Thcb的合适值。例如,可以使用列 表中第200个值。参数Sizec可以是具有任何合适值的整数参数。合适值 的实施例包括默认值1、2、3或4。在具体实施方式中,这些参数在具体 迭代中可以不同。

可以执行任何合适数量的迭代。在一个实施例中,可以在开始执行 该方法之前指定迭代数量。在另一实施例中,可以在方法执行期间计算 该数量。例如,可以根据群集S的大小的增长率来计算该数量。

在另一实施方式中,聚类引擎210通过将词语集的词语分类成群集 来识别群集。在一个实施例中,根据亲和度*Aff(wi,wj)(例如,差分亲和 度或有向亲和度)来对集合W的词语(wi)进行分类。在另一实施例中, 根据词语wi与不同词语集Q的各成员的亲和度的累积函数(例如,求和) 来分类词语(wi)。可以以任何合适方式选择集合W。例如,集合W可 以是与查询最相关的X个词语,其中X可以具有任何合适值(例如,从 10到100、100到200或者等于或大于200的值)。

在本实施例中,群集初始为空。来自集合W的第一词语wi被放置 在群集中。在每次迭代中,从集合W选择当前词语wx。如果*Aff(wx,wf) 满足亲和度阈值Th给出的亲和度标准,则当前词语wx被放置在群集中, 其中wf表示该群集中放置的第一词语。阈值Th可以具有任何合适值(0.1 至0.5范围的值(最小值为0.0和最大值为1.0))。如果*Aff(wx,wf)不满 足阈值Th,则当前词语wx被放置在空群集中。针对集合W的各词语重 复这些迭代。

在处理了集合W的词语之后,可以消除小群集。例如,可以消除具 有少于Y个词语的群集。Y可以是任何合适值(例如范围在3到5、5到 10、10到25、25到50或者大于等于50的范围中的值)。

如果群集的数量不在令人满意的范围内,则可以利用针对群集布置 生成更严格或更宽松的标准的不同阈值Th来重复该处理。可以通过具有 任何合适值的群集数量最小值和群集数量最大值给出令人满意的范围。 合适值的实施例包括最小值在1到5、5到10或者10或大于或等于10 范围的值,以及最大值在10到15、15到20或者20或大于或等于20的 范围中的值。可以增加阈值Th的值,以增加群集的数量,并且可以减小 阈值Th的值以减小群集的数量。

在另一实施方式中,聚类引擎210通过比较词语的亲和度矢量来识 别群集。在具体实施方式中,亲和度矩阵的行和列可以产生亲和度矢量< wi*Aff(wi,w1),...,*Aff(wi,wj),...,*Aff(wi,wn)>,该亲和度矢量表示词语 wi相对于词语wj(j=1,…,n)的亲和度。亲和度值*Aff(wi,wj)表示词 语wi相对于词语wj的任何合适类型的亲和度(例如,有向亲和度或差分 亲和度)。

在具体实施方式中,具有类似亲和度值的亲和度矢量可以表示一个 群集。仅出于描述性目的,可以将亲和度矢量看作是亲和度空间中的词 语的亲和度的坐标。即,每个亲和度值*Aff(wi,wj)可以被认为是针对具体 维的坐标。具有类似亲和度值的亲和度矢量表示与这些矢量相关联的词 语在亲和度空间中彼此接近。即,这些矢量指示这些词语具有与其他词 语类似的亲和度关系,并因此可以适于同一群集中的成员关系。

如果一个亲和度矢量近似于由合适距离函数确定的另一亲和度矢 量,则这些亲和度矢量类似。可以通过亲和度矢量上例如将该距离函数 定义为针对给定大小的矢量的标准欧几里得距离,或者定义为给定大小 的矢量的余弦。该距离函数还可以通过聚类引擎210或者由用户指定。

在具体实施方式中,聚类引擎210应用聚类算法来识别具有彼此近 似的值的亲和度矢量。聚类算法的实施例包括直接、重复二等分(repeated bisection)、聚合(agglomerative)、偏置聚合、和/或其它合适算法。在一 个实施例中,聚类引擎210可以包括诸如CLUTO的聚类软件。

群集分析器214可以在任何合适的应用中使用亲和度聚类来进行分 析。在一个实施方式中,群集分析器214可以使用亲和度聚类来归类页 面50。类别可以与群集识别符或者群集的一个或更多个成员相关联。在 一个实施例中,页面50的群集可以被识别,并且接着可以根据该群集对 页面50进行归类。在另一实施例中,可以选择页面50的重要词语,并 接着对包括这些词语的群集进行定位。然后可以根据定位后的群集对页 面50归类。

在一个实施方式中,群集分析器214可以使用亲和度聚类来分析页 面50的语料库。语料库可以与具体主题、一个或更多个个体的集合 (community)、组织或其他实体相关联。在一个实施例中,群集分析器 214可以识别语料库的群集,并根据该群集确定语料库的语料库字符。语 料库字符可以指示与和该语料库相关联的实体相关的词语。如果一个或 更多个页面50具有语料库字符的群集,则页面50与该实体相关。

在一个实施方式中,群集分析器214可以使用亲和度聚类来搜索查 询歧义消除和查询扩展。在本实施方式中,群集分析器214识别包括给 定搜索查询的搜索词条的群集。群集提供与给定搜索查询相关的可替换 词语和/或类别。在一个实施例中,来自群集的词语可以被报告给搜索者, 以帮助下一搜索查询。在另一实施例中,群集分析器214可以从群集中 选择词语,并自动形成一个或更多个新的搜索查询。群集分析器214可 以串行或并行运行新的查询。

在一个实施方式中,群集分析器214可以使用亲和度聚类来研究社 会网络。在一个实施例中,页面50可以提供对社会网络的深刻见解。这 些页面的实施例包括信件(例如信件、电子邮件以及即时消息)、便笺、 文章以及会议记录。这些页面50可以包括含有社会网络的人员的用户识 别符(例如,姓名)的词语。可以识别姓名的群集,以分析网络的人员 之间的关系。在一个实施例中,差分亲和度聚类可用于过滤大多数页50 中的出现的名字,而不提供诸如系统管理员的名字之类的信息。

在具体实施方式中,群集分析器214可以通过组合和/或比较数据集 的群集来分析数据集。在一个实施方式中,对重叠的数据集的群集进行 比较。来自一个数据集的群集可以被映射到另一数据集的群集上,这样 可以提供对这些数据集之间的关系的深刻见解。例如,该数据集可以来 自对同事组的文档的分析和来自对该组的社会网络研究。可以将社会网 络群集映射至文档主题群集,来分析社会网络与该主题之间的关系。

图8例示了本体特征模块32的一个实施方式。本体特征模块32可 以确定一个或更多个词语(例如,具体词语或包括词语的文档)的集合 的一个或更多个本体特征,并且接着可以在任何不同情形中应用该本体 特征。一个或更多个词语的集合可以包括文档的必要词条。如果与词条t 相关的前k个词条中的至少一个也呈现在该文档中,则词条t可以是必要 词条。否则,该词条对于该文档可能不是必不可少的。

本体特征是沿一个或更多个特征轴表征文档的可量化测量,所述特 征轴可以在给定区域中从语义上对该文档与其他文档进行区分。例如, 文档的深度可以针对它的可理解性来区分文档、文档的专度可以针对它 的关注点来区分文档,而文档的主题可以针对其关注的话题范围来区分 文档。可以以任何合适方式定义本体特征。例如,计算机语言中的独立 算法可以被用来表征文档的可读性或深度。

在所示的实施方式中,本体特征模块32包括深度引擎230、主题引 擎240、专度引擎244以及本体特征(OF:ontology feature)应用引擎250。 深度引擎230可以确定一个或更多个词语(例如,具体词语或包括词语的 文档)的深度。一般来说,深度可以指示词语的文本复杂性。越深的词语 可以是更加技术化的并且更专业的,而越浅的词语可以是更通用的。在 具体实施方式中,深度模块32可以计算文档的词语的深度,并接着根据 词语的深度来计算文档的深度。在具体实施方式中,深度引擎230可以 为文档和/或词语指配深度值和/或深度级别。越深的文档或词语可以被指 配越高的深度值或级别,而越浅的文档或词语可以被指配越低的深度值 或级别。

深度引擎230可以以任何合适的方式计算词语深度。在具体实施方 式中,深度引擎230根据平均亲和度来计算词语深度。在这些实施方式 中,词语的深度是词语的平均亲和度的函数。较深的词语可以具有较低 的平均亲和度,而较浅的词语可以具有较高的平均亲和度。在具体实施 例中,深度引擎230可以通过根据它们的平均亲和度对词语进行排位来 计算词语的深度。对具有较低平均亲和度的词语给予较高的深度级别, 而对具有较高平均亲和度的词语给予越低的深度级别。

在具体实施方式中,深度引擎230可以使用聚类分析来计算词语深 度。在这些实施方式中,群集的词语相互高度相关,而与群集以外的词 语较低相关。可以根据能够作为深度指示符的亲和度来测量群集空间中 的距离。在具体实施方式中,属于较少数群集或者属于较小群集和/或离 其他群集较远的群集的词语可以被认为较深,而属于较多数群集或者属 于较大群集和/或离其他群集较近的群集的词语被认为较浅。

在其他具体实施方式中,深度引擎230可以通过向亲和度图150应 用链路分析来计算词语深度。可以通过任何合适的链路分析算法(例如, PAGERANK)来执行该链路分析。仅出于描述性目的,图6的亲和度图 150可以被用来计算词语深度。亲和度图150包括节点154和链路158。 节点154表示词语。节点154之间的链路158指示由节点154表示的词 语之间的亲和度高于亲和度阈值,即,这些词语令人满意地相关。

在具体实施方式中,深度引擎230计算节点154的通用性。较通用 的节点154可以表示较浅的词语,而较不通用的节点154可以表示较深 的词语。从第一节点154到第二节点154的链路136被认为第一节点154 对第二节点154的通用性选票。另外,来自较通用节点154的选票(vote) 可以具有比来自较不通用节点154的选票更大的权重。此外,第一节点 154与第二节点154的亲和度加权了该选票。深度引擎230根据节点154 的加权后的选票来计算节点154的通用性。较不通用的词语被认为较深 词语,而较通用的词语可以被认为较浅词语。

深度引擎230可以以任何合适方式来计算文档深度。在具体实施方 式中,深度引擎230根据文档中的至少一个、一些或所有词语的深度来 计算文档的深度。在具体实施方式中,词语深度根据平均亲和度给出, 因此可以根据文档的词语的平均亲和度来计算文档深度。例如,文档的 浅度可以是文档的词语的平均亲和度的平均值(即,文档中各词语的平 均亲和度的和除以用文档中的词语的总数)。接着,文档的深度可以被计 算为文档的浅度的倒数。

在具体实施方式中,可以根据文档的所选词语集的平均深度来计算 深度。所选的集合可以包括文档必要词语(例如,前(最深)X%的词语, 其中X可以小于10、10到20、20到30、30到40、40到50、50到60、 60到70,或者大于10)。所选的集合可以排除P%的标准语法词语和/或 Q%的停顿词(stop word),其中P和Q具有任何合适值(例如小于10、 10到20、20到30、30到40、40到50、50到60、60到70,或者大于 10)。

在具体实施方式中,深度引擎230根据文档中词语深度的分布来计 算文档的深度。在具体实施方式中,较深的文档可以具有较高百分比的 较深词语。

在具体实施方式中,深度引擎230根据文档亲和度来计算文档的深 度。文档之间的亲和度描述文档之间的关系。在具体实施方式中,平均 文档亲和度可以以类似于平均词语亲和度怎样指示词语深度的方式来指 示文档深度。可以以任何合适方式来定义文档亲和度。在一个实施例中, 通用词语的数量P(D1&D2)指示既存在于文档D1中又存在于文档D2中的 词语的数量,而分立词语数量P(D1+D2)指示存在于文档D1或D2中词语 的数量。文档D1和D2之间的文档亲和度DocAff可以被定义为:

DocAff(D1,D2)=P(D1&D2)/P(D1+D2)

深度引擎230可以以与计算平均词语亲和度类似的方式来计算平均 文档亲和度。具有较低平均亲和度的文档被认为较深,而具有较高平均 亲和度的文档被认为较浅。

在具体实施方式中,深度引擎230可以通过向文档亲和度图应用链 路分析来计算文档深度。除文档亲和度图的节点表示文档而不是词语之 外,文档亲和度图可以与亲和度图150类似。深度引擎230使用第二文 档相对于给定的第一文档的文档亲和度来加权从代表第一文档的节点到 代表第二文档的第二节点的链路。接着,可以对外发链路(outgoing link) 的权重进行归一化。

在具体实施方式中,深度图可以被显示在用户接口上以示出文档的 深度。也可以显示可以用来选择深度级别的深度滑块。在具体实施方式 中,如果文档包括多个部分的较大文档,则深度图可以指示各部分的深 度。

在具体实施方式中,深度引擎230可以以任何其他合适方式来计算 文档深度(例如,处理文档的亲和度直方图,和/或基于深度截取不同词 语的百分比,接着处理直方图)。其他方法包括Gunning-Fog、Flesch或 Fry方法。

在具体实施方式中,深度引擎230可以通过将深度值映射到具体深 度级别来计算深度。在具体实施方式中,范围Ri中的深度值可以被映射 到级别Li。例如,R0={r0:r0<c0}可以被映射到级别L0、R1={r1:c0< r1<c1}可以被映射到级别L1,...,以及Rn={rn:cn<rn}可以被映射到级别 Ln。该范围可以包括任何合适深度值并且不需要具有相同大小。可以存 在任何合适数量的级别(例如小于5、5到7、7或8、8到10、10到20、 20到50、50到100,等于或大于100)。

主题引擎240可以确定文档的主题(或话题)。在具体实施方式中, 主题引擎240根据由聚类模块31识别的、文档中词语的群集来确定主题。 如上面所讨论的,词语的群集可以指定词语集的主题(或话题)。文档的 主题可以提供关于文档的内容的有用信息。例如,包括群集{肾脏的 (renal)、肾(kidney)、蛋白质、问题}的文档可能关于由于肾功能衰退 而导致的蛋白质流失,而不是芸豆的蛋白质含量。

在具体实施方式中,主题引擎240根据主题映射来确定主题。在这 些实施方式中,使用任何合适技术(例如,词条频率-逆文档频率(TF-IDF: term frequency-inverse document frequency)技术)从文档中提取关键词。 关键词被用来从主题映射中选择候选主题。候选主题与文档进行比较, 以确定该主题多大程度上与文档匹配。在具体实施例中,候选主题的直 方图可以与文档的直方图进行比较。如果候选主题与文档匹配,则这些 主题可以提供文档的主题的类型估计和数量估计。

专度引擎240可以计算文档的专度。在具体实施方式中,专度引擎 240可以对文档指配专度值和/或专度级别。较专属的文档可以被指配较 高的专度值或级别,而较不专属的文档可以被指配较低的专度值或级别。

在具体实施方式中,专度引擎240根据文档的主题数量来计算专度。 在具体实施例中,较专属的文档可以具有较少的主题,而较不专属的文 档可以具有较多主题。在具体实施方式中,专度引擎240根据文档的主 题数量和这些主题之间的亲和度来计算专度。在具体实施例中,较专属 的文档可以具有较少的主题,且这些主题之间具有较高的亲和度,而较 不专属的文档可以具有较多的主题,且这些主题之间具有较低的亲和度。

在具体实施方式中,主题数量可以取决于深度(或级别)。例如,较 浅深度处的单个主题可以表示较大深度处的多个主题。在具体实施方式 中,可以通过用户使用深度滑块来选择深度,或者深度可以是预先确定 的。在具体实施方式中,级别可以由用户选择或者可以被预先确定。例 如,可以定义任何合适数量的级别,并且可以根据该级别计算深度。例 如,级别可以是基于领域(例如,工程、医学、新闻、体育或金融领域)、 基于专业(例如,心病学、眼科学或肾脏专业)、基于课题(例如,高血 压、胆固醇、搭桥手术或动脉阻断题目)、基于细节(例如,体位性低血 压、慢性高血压或急性高血压细节)、基于消退(resolution)(例如,老 年病因、药学、或遗传消退)、基于个人的(例如,用户查询级别)。

本体特征应用引擎250可以应用本体特征(例如深度、主题或专度), 来在任何合适情形中执行本体特征分析。合适的情形的实施例包括:根 据本体特征来搜索、分类、推荐或选择文档;报告文档的本体特征;以 及确定一个或更多个用户的文档(或文档集)的本体特征。在具体实施 方式中,本体特征应用引擎250可以使用包括关于本体特征的信息的索 引。在一个实施例中,本体特征应用引擎250使用根据深度级别生成和/ 或维护的文档深度(DD:document depth)反向索引62。DD反向索引 62包括DD反向索引列表,其中词语的DD反向索引列表列出了包括该 词语的文档(或页面50)的文档识别符。文档的文档识别符可以指示文 档的深度。例如,用来编码文档识别符的二进制编码可以指示深度。在 一些情况下,DD反向索引列表可以仅列出具有令人满意的深度的文档。 在另一实施例中,除反向索引62之外,本体特征应用引擎250还使用级 别表和深度表。该深度表可以指示文档的深度。

在具体实施方式中,本体特征应用引擎250搜索具有本体特征的指 定值(例如,文档深度或专度的指定值)的文档。该指定值可以由用户 预先确定、计算或者选择。在具体实施方式中,可以使用深度滑块和/或 专度滑块来选择这些值。

在具体实施方式中,本体特征应用引擎250可以将本体特征用作分 类标准来分类文档。例如,本体特征应用引擎250可以针对主题以及其 它分类标准根据文档深度和/或专度来分类文档。在具体实施例中,本体 特征应用引擎250搜索DD反向索引62以获得根据文档深度分类的文档。 在一些实施例中,本体特征应用引擎250使用非DD反向索引62来搜索 文档,并接着根据深度对这些文档分类。

在具体实施方式中,本体特征应用引擎250可以向客户端20以图形 方式显示本体特征的值。可以为一些或所有文档(例如,为来自搜索结 果的前X%的文档)提供图形显示。该本体特征值可以以任何合适方式呈 现。在一些实施例中,图形指示符(例如,数量、词语或图标)可以指 示该值。例如,图形指示符例如可以靠近搜索结果列表中的项、在线新 闻的标题或文档图标放置。在某些实施例中,现有的插图(iconograph) 的变更可以表示值。例如,图形指示符或文本的大小、字体、类型、颜 色可以指示值。在另一实施例中,图表可以指示值。本体特征直方图可 以包括文档数量轴和本体特征轴,且可以指示特定本体特征值的文档数 量。例如,包括文档数量轴和文档深度轴的文档深度直方图可以指示特 定文档深度的文档数量。

在具体实施方式中,文档特征应用引擎250可以允许用户请求搜索 具有特定本体特征值的文档。可以允许用户指定用于查询的不同词语的 值。在特定实施例中,本体特征应用引擎250可以为用户提供选项以选 择深度,用户然后可以输入所选的深度。这些选项可以以任意合适的方 式呈现,诸如以:(i)绝对词条(例如,代表深度的数值或数值范围); (ii)相对词条(例如,搜索结果相对于深度的比例,诸如,“最深的X %”);(iii)语义学词条(例如,‘介绍性的’、‘浅’、‘深’、‘很深’和/或‘高 度专业’);(iv)图形词条(例如,滑块、按钮和/或其他图形元素)或(v) 词条的任意合适的组合(例如具有语义学标签的滑块)。在某些情况下, 滑块可以包括浅端和深端。用户可以移动滑动器朝向一端或另一端以指 示所选的深度。当提供搜索结果时,文档深度直方图可以通过滑块呈现, 且可以使用滑动器作为文档深度轴。

在具体实施方式中,本体特征应用引擎250可以计算一个或更多个 用户的集合的本体特征字符。本体特征字符可以包括主题上下文中的用 户深度和用户专度。本体特征字符描述了文档的与用户集相关联的本体 特征。例如,科学家可以使用比三年级学生更深的文档。可以针对一个 或更多个主题给出本体特征字符。例如,遗传学家可以在遗传学领域中 使用比他在诗歌领域中使用的文档更深的文档。本体特征字符可以被用 来确定用户的专长、为用户自动构建简历,以及分析用户的社会网络。

可以分析与用户相关联的任何合适的文档,以估计本体特征字符(例 如,信件(例如,电子邮件和即时消息)、网页、以及搜索历史(例如搜 索查询和选择的页面))。在具体实施方式中,本体特征应用引擎250可 以随着时间跟踪本体特征字符,并且可以使用过去的字符来预测未来的 字符。在具体实施例中,本体特征应用引擎250可以假设用户深度和/或 专度总体上随时间和/或区域中的活动而增加。

在具体实施方式中,本体特征应用引擎250可以组合某些操作。例 如,本体特征应用引擎250可以监视用户的深度,并且接着根据该用户 深度来搜索文档。在一个实施例中,监视用户深度,并且接着根据该深 度向用户提供新闻。预测未来的用户深度,并且提供适合预测的用户深 度的新闻。

图9例示了可以选择标签来标记文档的标记模块35的一个实施方 式。可以以任何合适的方式来选择标签。在具体实施方式中,标记模块 35将话题(或主题)建模为话题的相关词语的统计分布。标记模块35使 用统计分布来识别文档的高排位的词语中具有最高出现概率的话题,并 且根据识别出的话题来选择文档的标签。在所示的实施方式中,标记模 块35包括话题建模器310和文档标记器314。在具体实施方式中,话题 建模器310生成建模话题的统计分布,而文档标记器314基于该统计分 布来选择标签。话题建模器310和文档标记器314可以利用任何合适方 法来建模话题和选择标签。参照图10来描述方法的实施例。

在其他实施方式中,标记模块35通过分析文档的段落来指配标签。 在这些实施方式中,标记模块35识别文档的段落的候选标签。标记模块 35确定候选标签与文档的其他候选标签的关联性,并根据该关联性来选 择该文档的标签。参照图11对通过分析文档的段落来指配标签的方法的 实施例进行更详细地说明。

在再一实施方式中,标记模块35可以基于由用户或计算机选择的推 荐标签来指配标签。在这些实施方式中,标记模块35推荐文档的标签。 推荐词条可以与目标标签具有较高的亲和度,而彼此之间具有较低的亲 和度,以减小文档的本体空间。标记模块35可以响应于选择的标签来连 续推荐标签。一旦已经选择了最终标签,标记模块35就可以对文档指配 所选择的标签。参照图12对用于指配标签的方法的实施例进行更详细地 说明。

图10例示了用于根据话题的统计分布来指配标签的方法的实施例。 可以根据词语的总体来生成统计分布。可以使用任何合适的总体(例如 语言或语料库(例如,因特网)的词语)。相对于其他词语,与话题相称 的词语可能具有相对较高的出现概率。例如,对于话题“自行车”,相对 于“砖块”、“桶”以及“披萨”等词语的出现概率来说,“轮胎”、“链条”、 以及“骑乘”等词语可以具有相对更高的出现概率。

在步骤410处开始该方法,其中使用任何合适的排位技术来为语料 库的文档的词条进行排位。在排位技术的一个实施例中,根据频率(例 如词条频率或者词语频率-逆文档频率(TF-IDF))对词条进行排位。较 高的频率可以产生较高的级别。在排位技术的另一实施例中,根据在以 上随机机会中与其他词条共现的词条的标准差数量来对词条进行排位。 较高的标准差数量可以产生较高的级别。

在步骤414,将一个或更多个高排位的词条选作文档的关键词。在 一些实施例中,可以使用排位的前N项,其中N可以是1到5、5到10 或者大于等于10的值。在其他实施例中,可以使用具有高于文档的平均 级别的预定距离(例如,一个标准差)的词条。

在步骤418,根据它们的关键词来对文档进行聚类,其中各群集与 关键词相关联。针对群集定义的关键词是该群集的话题。如果文档具有N 个关键词,则将在N个群集中呈现该文档。在步骤422移除小群集。小 群集可以是未满足大小阈值的群集(例如,表现为低于M个文档的群集, 其中M可以是在范围0到50、50到100,或者大于等于200的值)。在 一些实施例中,可以根据语料库的大小来计算M。例如,M可以是在范 围0%到3%、3%到5%或者大于等于5%的值。

在步骤426收集群集的统计,并在步骤428根据该统计来生成群集 的统计分布。可以收集任何合适的统计来生成任何合适的统计分布(例 如频率分布和/或概率分布)。在具体实施例中,针对群集的各词语计算指 示群集中的词语频率的词条频率。可以根据群集中词语出现的数量或者 根据在包括该词语的群集中文档的数量来计算词条频率。根据该词条频 率来生成词条分布。在其他实施例中,针对各其他群集计算指示群集的 话题与另一群集的话题的共现的共现值。根据该共现值来生成共现分布。 如果在步骤430存在下一群集,则方法返回到步骤426来收集下一群集 的统计。如果在步骤430不存在下一群集,则方法前进到步骤434。

在步骤434处合并具有类似统计分布的群集。可以对统计分布进行 比较,并且类似的统计分布可以被合并入单个频率分布。例如,话题“轿 车”和“汽车”的群集可以具有类似统计分布,因此将它们合并到单个 群集。如果分布之间的差异小于差异阈值(difference threshold),则可以 认为统计分布是类似的。差异阈值可以具有任何合适值(例如,在小于 或等于1%、5%到10%或者大于等于10%的范围中的值)。较大群集的话 题可以被选作合并后的群集的话题。

在步骤438,基于产生的群集将话题重新指配为文档的标签。因为 一些群集已经被合并,而其他群集已经被移除,所以指配给文档的话题 可能改变。重新指配的话题可以用作文档的信息量更大、重复性更少的 标签。接着该方法结束。可以在更新语料库的文档时执行该方法。

在步骤442,向文档指配标签。文档标记器314可以根据统计分布 以任何合适方式为文档指配标签。在一些实施例中,文档标记器314可 以根据在步骤438处执行的话题的重新指配来为语料库中的文档指配标 签。

在其他实施例中,文档标记器314可以为语料库中非必要的文档指 配标签。可以使用统计分布来识别文档的所选词语中具有较高的出现概 率的话题,并且识别的话题可以被选作标签。在这些实施例中,文档标 记器314根据任何合适的排位技术(例如上面所讨论的技术)来对文档 的词语排位。从最高排位的词语开始,文档标记器314根据话题的统计 分布来确定该词语对于各话题的频率。文档标记器314接着可以从词语 最频繁出现的话题到词语最少出现的话题对话题进行排位。可以生成该 词语针对这些话题的统计分布。

在这些实施例中,文档标记器314接着可以针对文档的一个或更多 个其他高排位的词语以类似方式生成统计分布。在具体实施例中,可以 例如等同地或者根据词语的级别来对词语的统计分布进行加权。例如, 较高排位的的词语可以具有包括较高权重的统计分布。统计分布可以被 合并,以产生合并的统计分布。在具体实施方式中,可以对加权后的统 计分布求和。例如,对与具体话题相关联的值求和以产生一值,该值表 示该话题在文档的给定高排位的词语中的可能性。文档标记器314可以 将一个或更多个可能的话题指配为文档的标签。

图11例示了用于通过分析文档的段落来为文档指配标签的方法的实 施例。该方法可以用于包括微观点(micro-idea)、观点以及学说 (hypothesis)的文档。在具体实施方式中,微观点包括独立、完整的表 达单元。一个或更多个相关微观点可以形成观点。一个或更多个相关观 点可以形成学说。在具体实施例中,语句表达微观点、段落表达观点, 而一系列相关段落表达学说。在这些实施例中,段落是相关的,所以段 落的核心词条可以具有相对高的有向亲和度。多个核心词条的一些交集 可以被用作标签。

在步骤506开始该方法,其中文档的段落Pi被识别为用于分析的文 本单元。段落可以指以任何合适方式(例如,通过固定数量或可变数量 的词语、通过段落标志或通过群集)指定的字符、词语和/或语句的任何 合适集合。段落可以被定义为例如包括足够数量的足够复杂的词语。

在步骤510选择段落Pi。在步骤514处,针对段落Pi建立标签tk的 候选标签集Si=<t1,t2,...,tm>。在具体实施方式中,更高排位的的词语可 以被选作候选标签。(可以根据任何合适的排位技术对词语排位。)在具 体实施方式中,可以根据期望产生的候选标签的数量来选择候选标签的 初始数量。例如,如果期望产生的数量为k,则初始数量可以为c*k,其 中c>1。参数c可以具有任何合适值(例如,c=2、3、4或5)。最高排位 的的候选标签可以被选作用于集合Si的根ri

在步骤518,根据任何合适的关联性技术来确定候选标签彼此间的 关联性。一般来说,可以以任何合适方式(例如,使用任何合适亲和度) 来测量关联性。例如,与目标标签更相关的标签可以被认为更相关标签, 而与目标标签较少相关的标签可以被认为较不相关标签。在具体实施方 式中,可以(例如,使用有向亲和度和/或差分亲和度)对标签进行聚类, 从而认为群集的标签是相关的。

在步骤520为候选标签指配偏好权重。可以根据任何合适排位技术 来指配偏好权重。例如,较大的偏好权重可以被赋予在段落中具有较高 频率和/或在文档中具有较大平均亲和度的倒数的候选标签。在步骤524, 从候选标签集中移除与其他候选标签不充分相关的候选标签。任何合适 关联性阈值都可以指明标签是否与其他标签充分相关。在步骤530,询问 是否存在下一段落。如果存在下一段落,则方法返回到步骤510以选择 下一段落。如果不存在下一段落,则方法前进到步骤534。

在步骤534,确定不同段落的候选标签集的关联性。可以根据任何 合适关联性技术来确定关联性。在具体实施方式中,与段内分析的情况 类似,可以对候选标签进行聚类,并且可以认为群集中的候选标签充分 相关。在其他实施方式中,可以针对各候选标签生成互相关概况(profile)。 互相关概况指示候选标签与其他候选标签(例如,其他候选标签集的标 签)的互关联性。较大的互关联性代表了较大关联性。

可以以任何合适方式计算互相关概况。在一些实施例中,根据包括 候选标签的候选标签集的数量生成候选标签的互相关概况,并且候选标 签的互相关概况可以考虑候选标签集中的候选标签的频率。在较多具有 较高频率的候选标签集中出现的候选标签可以具有较高互关联性。

在其他实施例中,可以根据根ri和根rj的有向亲和度来确定集合Si(具有根ri)相对于其它集合Sj(具有根rj)的候选标签的互相关概况。 在这些实施例中,可以通过将候选标签的偏好权重与集合Sj上的根ri→rj的有向亲和度相乘来计算集合Si和具体集合Sj的候选标签的互关联值。 可以通过合并(例如,求和)具体集合的互关联值来计算候选标签与集 合Sj的互关联性。

在再一实施例中,可以根据单独标签ti和tj的有向亲和度来确定集合 Si的候选标签ti相对于其他集合Sj(具有标签tj)的互相关概况。在这些 实施例中,通过确定集合Sj上的标签ti→tj的有向亲和度并对这些有向 亲和度求和来计算集合Si和具体集合Sj的候选标签的互关联值。可以通 过合并具体集合的互关联值来计算候选标签和集合sj的互关联性。

在步骤538,从候选标签中选择标签。在具体实施方式中,选择与 其他候选标签最高度相关的候选标签。在一些实施例中,可以选择群集 的高排位的候选标签。在其他实施例中,可以根据互相关概况来选择具 有最高互关联性的候选标签。选择的标签的数量k可以是预定常数,或 者可以是根据查询词条的深度确定的值。例如,对于具有较深词条的查 询,可以使用更小或更大的k。随后该方法结束。

图12例示了用于响应于选择的标签指配标签的方法的实施例。该方 法在步骤450处的初始阶段启动。在初始阶段,文档标记器314接收初 始标签作为文档的目标标签。初始标签可以来自任何合适源。例如,可 以通过用户或逻辑(例如,计算机)输入初始标签。逻辑可以输入从文 档的分析产生的标签、与用户相关联的其他文档,或者针对文档选择的 其他标签。文档标记器314可以记录标签的源。

在具体实施方式中,文档标记器314可以在客户端20处启动图形用 户接口的初始显示,该图形用户接口允许用户与文档标记器314交互。 在一些实施例中,接口可以允许用户请求添加或删除标签。在其他实施 例中,接口可以包括图形要素,该图形要素允许用户对具体词条指示标 签应该具有的期望亲和度。例如,接口可以包括滑块,该滑块可以更靠 近词条移动以指示较高亲和度,或者远离词条移动以指示较低亲和度。

在步骤454处的候选阶段,文档标记器314响应于输入的标签来推 荐词条。可以选择所推荐的词条以将文档与最小本体空间量相关联。例 如,所推荐的词条可以与输入标签具有较高的亲和度,而彼此间具有较 低的亲和度。例如,如果输入标签为“树”,则推荐标签可以为“植物”、 “族”或者“计算机科学”。

推荐词条可以避免多余指定(over specification)和不足指定(under specification)。该多余指定是由于实质上提供了未提供很多额外信息的本 体冗余标签而引起的。例如,如果文档具有标签“树”和“木材”,则添 加“森林”就没有提供很多额外信息。该不足指定是由于提供无法消除 文档歧义的标签而引起的。例如,文档的标签“bank(银行、河堤、台 边)”无法指明该文档是涉及金融机构、河流还是台球桌的边沿。

在步骤458处的测试阶段中,文档标记器314监视(例如,由用户) 已选择的推荐词条和未选择或淘汰的词条。例如,文档标记器314接收 “流体”,并推荐“可适应的”、“灵活的”、“液体”、“溶液”以及“融化 的”。文档标记器314注意到“液体”和“融化的”被淘汰,因此文档标 记器314没有推荐“溶液”。已选词条被添加到目标标签的集合中。

在具体实施方式中,文档标记器314可以记录标签的源(例如,用 户或逻辑(例如计算机))。源可以具有任何合适的应用。例如,源可以 被用来排位搜索结果。在一个实施例中,对于具有由用户选择的标签的 搜索结果分配比具有由逻辑生成的标签的结果更高的级别。

在步骤462的演进阶段,文档标记器314评估推荐词条和选择词条 之间的差异,以推荐新的词条。文档标记器314可以推荐与选择词条具 有较高亲和度(例如有向亲和度和/或差分亲和度)和/或与被淘汰词条具 有较低亲和度的词条,并且可以避免推荐与被淘汰词条具有较高亲和度 和/或与选择词条具有较低亲和度的词条。在具体实施方式中,文档标记 器314可以移除一个或更多个本体冗余标签。可以针对任何合适数量的 迭代(例如1到5、6到10或者大于等于10个迭代)来推荐和选择标签。

在步骤466处的指配阶段,文档标记器314向文档指配一个或更多 个标签。在具体实施方式中,文档标记器314可以响应于测试阶段指配 标签,或者独立于测试阶段而指配一个或更多个初始标签。接着该方法 结束。

在不脱离本发明的范围的情况下,可以对这些方法进行修改、添加 或省略。这些方法可以包括更多、更少或其他步骤。另外,可以以任何 合适顺序来执行这些步骤。

在具体实施方式中,这些方法可以被执行以选择搜索词条而不是选 择标签。可以在本文档中包括的说明(具体地说,与用于指配标签的方 法相关联的说明)中通过用“搜索词条”替换“标签”来描述这些实施 方式。

例如,方法可以在初始阶段启动。在初始阶段,初始搜索词条被接 收为搜索的目标搜索词条。初始搜索词条可以来自例如可以由用户或逻 辑(例如计算机)输入的任何合适源。在候选阶段,可以响应于输入的 搜索词条来推荐词条。推荐词条可以被选择以将搜索与最小本体空间量 相关联。在测试阶段,可以监视(例如由用户)已选择的推荐词条和未 被选择或被淘汰的词条。在演进阶段,可以评估推荐词条和选择词条之 间的差异,以推荐新的词条。可以针对任何合适数量的迭代(例如1到5、 6到10或者大于等于10个迭代)来推荐和选择搜索词条。可以响应于已 选择的搜索词条来选择搜索词条。

在不脱离本发明的范围的情况下,可以对这些方法进行修改、添加 或省略。这些方法可以包括更多、更少或其他步骤。另外,可以按任何 合适顺序来执行这些步骤。

本发明的具体实施方式可以提供一个或更多个技术优点。一个实施 方式的技术优点可以是:通过分析文档的段落来为文档指配标签。向用 户推荐可以减少文档的本体空间的标签。用户可以从推荐的标签中选择 标签,并且基于这些选择来推荐更多个标签。标签可以被指配给不包括 文本的文档以及包括文本的文档。

尽管根据具体实施方式对该公开进行了说明,但本领域技术人员应 当清楚这些实施方式的改变例和置换例。因此,这些实施方式的上述描 述不对本公开构成限制。在不脱离如下列权利要求所限定的本公开的精 神和范围的情况下,可以对本发明进行其它改变、代替以及变更。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号