CN103562916A - 混合与迭代关键词以及类别搜索技术 - Google Patents

混合与迭代关键词以及类别搜索技术 Download PDF

Info

Publication number
CN103562916A
CN103562916A CN201280025518.XA CN201280025518A CN103562916A CN 103562916 A CN103562916 A CN 103562916A CN 201280025518 A CN201280025518 A CN 201280025518A CN 103562916 A CN103562916 A CN 103562916A
Authority
CN
China
Prior art keywords
keyword
classification
inquiry
rank
index
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201280025518.XA
Other languages
English (en)
Other versions
CN103562916B (zh
Inventor
J·J·陶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103562916A publication Critical patent/CN103562916A/zh
Application granted granted Critical
Publication of CN103562916B publication Critical patent/CN103562916B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90324Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • G06F16/3323Query formulation using system suggestions using document space presentation or visualization, e.g. category, hierarchy or range presentation and selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90324Query formulation using system suggestions
    • G06F16/90328Query formulation using system suggestions using search space presentation or visualization, e.g. category or range presentation and selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Abstract

本申请涉及混合与迭代关键词以及类别搜索技术。提供了用于提供改进查询的推荐的技术。接收具有查询关键词和选定类别的查询。响应于参考用于每个选定类别的查询相关指标值确定选定类别排名高,利用关键词相关指标计算查询与每个子类别的查询相关指标,基于查询相关指标给每个子类别排名,以及提供排名后的子类别,在选择要与查询一起提交的新类别时使用。

Description

混合与迭代关键词以及类别搜索技术
技术领域
本发明的实施例涉及用于分布式计算系统与网络环境,而且更具体地说,用于任何基于网络的服务的混合与迭代关键词以及类别搜索技术。
背景技术
在过去的二十年当中,互联网与万维网(WWW或Web)使信息技术有了巨大的变化。作为人-机和客户端-服务器技术,Web使具有连接到互联网的计算机的任何人都能够从他或她的指尖访问互联网上任何公布的信息。
Web页面是用例如超文本标记语言(HTML)编写的文档。由于有巨大量的web内容,因此大多数web用户依赖web搜索引擎通过关键词搜索来搜索有用的web页面。
为了方便计算系统的集成并且向用户提供更加交互式的用户体验和丰富的内容,近年来已经推出了新的web技术,它们当中许多都基于可扩展的标记语言(XML)。这些技术中的两种是Web服务与异步JAVASCRIPT和XML(AJAX)。(JAVASCRIPT是Oracle和/或其附属公司的商标或注册商标。)Web服务可以描述为机器到机器的分布式计算技术,这种技术克服了使计算机程序能够在异类计算环境中彼此通信的困难。这些困难是由不同的计算机平台、不兼容的通信协议和计算机程序使用的各种计算机语言引起的。作为战胜这些挑战的一种基于标准的全面解决方案,Web服务被各行业广泛支持。Web服务基于一系列标准,例如XML、简单对象访问协议(SOAP)和Web服务描述语言(WSDL)。这些标准为运行在计算机和电子设备上的应用提供了经网络在它们之间交换信息的共用格式、语法和协议。与Web服务不同,AJAX没有定义一组标准。AJAX使web应用能够异步地把数据从客户端发送到服务器。AJAX可以用于实现REST(代表性状态传输)风格的Web服务。
例如,一个公司可以为不同的厂家创建销售他们产品的市场网站。web服务的例子包括web站点的灵活实现web服务和支付web服务,这些服务用于集成该市场网站与那些厂家的信息系统。
为了方便公布和搜索web服务,已经开发出了通用描述、发现与集成(UDDI)标准。UDDI标准定义如何创建web服务UDDI注册表,以便使web服务提供商能够公布他们的web服务并且使web服务消费者能够搜索并使用这些公布的web服务。
非UDDI的web服务注册表可以提供web服务支配特征与语义web技术。这种web服务注册表或储存库存储附加的与web服务相关的元数据,以便支配web服务的生命周期。Web本体语言(OWL)是一种基于本体论的标记语言,它最初是在学术研究中开发的,以便以机器可理解的形式在web上呈现数据。OWL可以用于在web服务注册表中组织与web服务相关的元数据。
在常规系统中,关键词搜索被web服务消费者用来在web服务注册表中找出恰当的web服务。Web服务的关键词可以由web服务提供商手动指定。自动关键词生成过程可以用于从web服务元数据生成关键词。也可以使用手动方法与自动方法的组合,例如让提供商验证或修改所生成的关键词。
UDDI与其它的注册表提供了查询应用编程接口(API)和/或图形用户接口(GUI),以使web服务消费者能够搜索在web服务注册表中公布的web服务。利用这些查询API或GUI,用户提供进行搜索的具体web服务元数据域的关键词、串或其它数据。
例如,UDDI客户端可以查询UDDI注册表,以基于名字、它们所属的商业实体和它们所落入的类别找出web服务。在这个例子中,用户提供web服务、商业实体和/或类别的部分或完整名字,来构造这种搜索查询。
现有的web服务注册表技术允许用户利用合成的查询搜索web服务。这种查询的搜索结果是构成合成查询的简单查询的搜索结果集合的交集或并集。
本领域中需要发现服务例如web服务的改进技术。
US20100185619公开了一种采样分析,它包括根据与多个查询关键词关联的页面视图值把多个查询关键词分类为多个查询关键词子集–例如,见摘要;附图1-6;和行[0023]-[0035]。
US20100174691公开了至少部分地基于与缺陷有关的关键词把缺陷自动归类到一个类别中的方法与系统–例如,见摘要;附图1-8;和行[0015]-[0017]、[0030]-[0076]。
US20100131563公开了包括多个搜索列表的一个搜索结果页面,所述多个搜索列表是通过施加到基于用户查询选择的初始匹配文档集合的多个群集操作生成的–例如,见摘要;附图1-9;和行[0014]-[0019]、[0046]-[0047]。
US20100036822公开了用于从先前的结果数据推断类别同义词的系统与方法–例如,见摘要;附图1-7;和行[0008]-[0011]、[0036]-[0060]。
US20090222444公开了在提交到一个或多个搜索引擎之前分解搜索查询。查询被分解成使得该查询明确地对应于包括在把搜索查询关联到搜索类别的查询本体中的类别–例如,见摘要;附图1-17;和行[0005]-[0012]、[0088]-[0124]。
US20070118509公开了用于建议给数字图像加标签的关键词的合作定位关键词注册表服务–例如,见摘要;附图1-8;和行[0005]-[0007]、[0019]-[0063]。
US7,620,627公开了一种生成在搜索内容时所使用的关键词的方法,该方法包括接收关键词、从类别文件获得对应于该关键词的类别、接收对应于这些类别中至少一个类别的选择并且生成与该选择关联的关键词–例如,见摘要;附图1-3;和第1栏第10-67行、第2栏第1-25行。
US6,571,239公开了解决被用户用来进行查询的关键词以及存储在系统关键词索引中、被手动或自动分类系统指定的那些关键词之间的失配问题的方法–例如,见摘要;附图1-5;和第1栏第5-67行、第2栏第1-15行、第3栏第40-55行。
发明内容
提供了用于提供改进查询的推荐的方法、计算机程序产品与系统。接收具有查询关键词和选定类别的查询。响应于参考用于每个选定类别的查询相关指标值确定选定类别排名高,利用关键词相关指标计算查询与每个子类别的查询相关指标,基于查询相关指标给每个子类别排名,以及提供排名后的子类别,以在选择要与查询一起提交的新类别时使用。
附图说明
现在参考附图,其中相同的标号贯穿所有附图都代表对应的部分:
图1说明了根据某些实施例、包括查询增强系统的计算体系结构。
图2说明了根据某些实施例、在分类层次或群集层次中具有两个子类别的一个类别的图。
图3以流程图说明了根据某些实施例、在查询增强系统中由关键词与分类类别匹配过程执行的逻辑。图3由图3A、图3B、图3C和图3D构成。
图4以框图说明了根据某些实施例可以使用的计算机体系结构。
具体实施方式
在以下描述中,参考构成本说明书一部分并且说明本发明几个实施例的附图。应当理解,在不背离本发明范围的情况下,可以使用其它实施例而且可以进行结构与操作变化。
在实施例中,本文提到的服务指在信息系统上实现并且可以从电信网络访问的任何服务。服务包括但不限于web服务。
图1说明了根据某些实施例、包括查询增强系统120的计算体系结构。服务客户端100通过通信网络与服务注册服务器110交互。服务注册服务器110包括查询增强系统120和服务注册表170。在某些实施例中,服务客户端100可以通过由查询增强系统120提供的一个或多个用户接口与服务注册服务器110交互。
查询增强系统120提供一种集成和迭代的过程,以为服务注册表170中所公布的一种或多种服务生成并识别恰当的关键词与分类和/或群集类别,并且所识别出的关键词用于增强(即,改进)查询。查询增强系统120提供了以集成的方式组合关键词搜索与类别选择/搜索的混合技术。另一方面,常规系统可以通过执行两个单独的查询、然后利用逻辑操作(例如“AND”或“OR”)组合结果来把关键词与类别搜索组合成合成查询。
查询增强系统120具有四个组件:分类-群集与服务关键词数据存储130(“关键词数据存储”130)、关键词预处理器140、关键词分类-群集匹配引擎150(“匹配引擎”150)和关键词词库160。
查询增强系统120利用基于迭代关键词与类别的过程来发现例如面向服务的信息系统与网络中可用的web服务。在可供选择的实施例中,查询增强系统120可以发现除web服务之外的项。
服务注册表170使服务提供商能够公布他们的服务并且使服务消费者能够搜索并使用这些公布的服务。服务注册表170存储所公布服务的信息。
匹配引擎150提供一种机制,以通过允许用户提供反馈来把关键词搜索与类别浏览集成到相互校正与自校正搜索过程中。
关键词数据存储130保留由服务提供商提供的或者从服务元数据生成的服务关键词的信息,以及这些关键词与分类/群集类别之间的关系信息。关键词数据存储130中的信息是从存储在服务注册表170中的服务信息检索或导出的。
关键词与分类/群集类别之间的关系信息定义为相关指标(indicator),这是与一个类别关联的关键词的权重(并且在本文中称为关键词相关指标)。相关指标也用作与一个类别关联的查询的权重(并且在本文中称为查询相关指标)。
关键词预处理器140被用来验证查询关键词是否有效。关键词词库160在识别关键词同义词的过程中被采用。参考同义词,词的意义依赖于它们在其中使用的上下文。例如,服务提供商使用的术语可能与服务客户端100使用的术语不同。
服务可以分成分类或群集。分类可以由标准机构创建并且可以具有明确定义并且很好理解的子类别名字。群集或群集层次可以由服务注册服务器110创建,其中服务注册服务器110实现本文所述的迭代关键词与类别搜索技术。在某些实施例中,如果服务具有相似的关键词,就把它们分到相同的群集中。在某些实施例中,群集不具有良好定义的名字。当识别出一个群集并且需要将其呈现给用户时,该群集中一种典型样本服务的信息被发送到用户。用户通过指定该样本服务是否与用户试图找出的服务相似来决定是否选择该群集。在各种实施例中,用户可以是人、计算机程序、设备等。
在某些实施例中,本文所使用的分类指相同类型的事物分到其中的标准类别,例如北美行业分类系统(NAICS)。通常,这些分类是由标准机构开发的而且,如果它们不是内置特征的话,可以插入服务注册表中。分类是一种归类机制,它可以在关键词搜索技术中使用。不管怎样,任何分类都具有有限和固定的级别。在一个分类的最精细的级别,有可能有数千或者更多的服务分到相同的子类别中。在这种情况下,在这个最精细的子类别中期望进一步的归类/分组。
服务客户端100与查询增强系统120之间的通信是迭代的过程。服务客户端100与查询增强系统120来回传递关键词和分类-群集类别信息多次,以便为处于服务客户端100的用户试图找出的服务识别恰当的关键词和分类-群集类别。
当服务客户端100与查询增强系统120通信时,关键词预处理器140首先从服务客户端100接收查询并且检查关键词,以确信关键词有效,例如没有拼写错误。如果关键词预处理器140识别出关键词中的错误,则关键词预处理器140通知匹配引擎150,而且匹配引擎150在发送回服务客户端100的消息中把该信息转发到服务客户端100。
匹配引擎150是实现匹配技术的组件。匹配引擎150从关键词预处理器140接收预处理之后的查询、从关键词数据存储130检索分类-群集类别关键词、从关键词词库提取关键词的同义词、比较查询中的关键词与类别中的关键词,并且生成更新后的关键词版本与排名后的类别列表。匹配引擎150把修改后的关键词与类别信息提供回服务客户端100,用于进一步的反馈和调整。
关键词数据存储130是其中存储用于每个服务与分类/群集类别的关键词的数据存储。查询增强系统120计算用于每个类别的每个关键词的关键词相关指标并且把这些相关指标的值存储在关键词数据存储130中。
关键词词库160是由匹配引擎150用于找出两组关键词之间的同义词的词库。在某些实施例中,如果两个关键词具有相同或者非常相似的意义,则它们是同义词。
在迭代过程中通过指定或选择多个关键词并且通过选择/指定服务所属的恰当分类或群集类别,查询增强系统120使服务消费者能够识别在服务注册表中公布的恰当服务。特别地,匹配引擎150识别最适合的服务所属的恰当关键词与类别。在相互校正过程中利用在每个分类与群集级别的关键词选择,对合适服务的搜索范围可以通过向下导航分类与群集层次而有效地缩小。同义词问题利用关键词词库160来解决。在该过程结束时,查询增强系统120允许服务用户检索候选服务的列表。
在某些实施例中,查询增强系统120为服务消费者和提供商都提供关于关键词选择和类别识别的帮助。通过给类别排名并且引导服务用户做出正确的关键词选择,查询增强系统120方便了服务搜索过程。
对于查询增强系统120,内置了利用被查询的关键词与类别之间的关系、给用户推荐(即,建议)和分析用户的反馈以便作出更有效的搜索的智能。
查询增强系统120提供了收集并利用服务关键词与服务所属的层次性分类与群集类别之间关系的过程。相同的概念也可以应用到服务注册表中其它上下文相关的服务元数据。
更具体地说,通过比较用户提供的关键词和与每个分类和/或群集类别关联的关键词,利用来自关键词词库160的额外帮助和来自用户的反馈,匹配引擎150可以快速识别出恰当的关键词和相关的服务。用户的反馈包括迭代地提供关于服务的关键词与类别信息。
当服务注册表存储了数千或者甚至数百万种服务的信息时,要求用户给出关于他们想找出的服务的详细和具体信息常常是低效的。相反,允许用户给出多个关键词、然后基于匹配引擎150提供的推荐关键词进行直截了当的选择可能更实际。即,对于查询增强系统120,匹配引擎150的任务是帮助识别对用户最适合的服务。
查询增强系统120提供了匹配引擎150,以利用有限的或者没有关于注册表结构以及注册表中所公布服务的确切细节的事先了解,使用户能够搜索在注册表中公布的服务(以类似于web搜索引擎如何用于搜索web页面的方式)。
类似地,查询增强系统120所采用的关键词与归类信息改进技术不仅能帮助服务消费者搜索服务,而且能帮助服务提供商归档并分类它们的服务。
图2说明了根据某些实施例、在分类层次或群集层次中具有两个子类别的一个类别的图。特别地,图2是说明两级类别层次的图。类别A200(在第一级别)具有两个子类别,类别_A1210(在第二级别)和类别_A2220(在第二级别)。
图2用于描述两个实体例如关键词与类别之间关系的测量、相关指标。
在某些实施例中,当一个服务在服务注册表中公布时,服务提供商提供该服务的关键词与分类信息。如果一个服务属于一个类别,则其所有关键词都属于这个类别并且属于其所有祖先类别。
例如,如果汽车保险报价服务在注册表中公布,则服务提供商可以指定这个服务属于北美行业分类系统(NAICS)中的类别“保险代理&经纪业务”。这个类别是类别“保险运营商及相关活动”的子类别,而“保险运营商及相关活动”又是类别“金融与保险”的子类别。在这个例子中,为这个服务指定的所有关键词也都是用于类别“保险代理&经纪业务”及其父类别“保险运营商及相关活动”和祖父类别“金融与保险”的关键词。每个类别中的关键词可以具有与该类别关联的不同权重,称为关键词相关指标。
相关指标可以描述为测量两个文档有多么相关的权重。每个文档都包含一组关键词。文档可以是单个关键词、服务、查询或类别。
特别地,一个具有关键词列表的查询可以被看作是一个文档。一个包含关键词集合的类别也可以被看作是一个文档。基于其关键词的权重来测量文档相似性的不同方案已经在信息检索研究中开发出来了,例如余弦相似性、欧氏距离、骰子系数和杰卡德指数。这些方案中有些可以用来测量查询与类别之间的相似性。在常规的信息检索系统中,在这些方案中一些当中所使用的关键词的权重是利用基于词频-逆文档频率(TF-IDF)的技术计算的。
一个服务的关键词集合也可以被看作是一个文档。为了进一步给服务归类,当分类达到其最精细的级别时,多个相似性方案,例如余弦相似性或者欧氏距离,可以用于基于它们的关键词测量服务之间的相似性。如果单个群集中有太多服务,则这个群集中的服务可以进一步分成更小的群集。这个过程可以递归进行,以产生群集层次。多个群集或群集层次可以在分类层次中建立,以方便迭代关键词搜索。可以实现在层次性文档群集研究中开发出的技术,例如凝聚层次结构群集或基于层次性频率项的群集,以便创建群集层次。
关键词相关指标(RI)是一个与TF-IDF相似的测量,这是一种用于评估一个项对文档集合中的一个文档有多重要的加权方案。
关于相同的记号,与一个类别关联的关键词的关键词频率(KF)类似于TF。KF测量一个关键词在一个类别中出现得多频繁。在某些实施例中,它被定义为类别中包含该关键词的服务总数的与该类别中每个服务具有的所有关键词的个数之和的商。等式(1)规定了KFi
KF i = Σ j = 1 N n ij Σ j = 1 N Σ k = 1 M n kj
在等式(1)中,KFi是一个类别中关键词i的关键词频率;M是该类别中关键词的总数;N是该类别中服务的总数;i和k都是1和M之间的整数;对于任何i∈[1,M]和j∈[1,N],如果该类别中的服务j有关键词i,则nij是1,而如果该类别中的服务j没有关键词i,则nij是0;而且对于任何k∈[1,M]和j∈[1,N],如果该类别中的服务j具有关键词k,则nkj是1,而如果该类别中的服务j没有关键词k,则nkj是0。
等式(1)假设每种服务都具有相同数量的关键词。如果情况不是这样,则在某些实施例中服务被同等地对待,代替如果服务j具有关键词k则为1,nkj(或nij)的值可以调整成使得,对于每种服务j,nkj之和,
Figure BDA0000422112950000102
对于所有服务都是相同的。
但是,服务集合中关键词的唯一性测量,像逆文档频率(IDF),在某些实施例中可能没有在类别级别中定义,因为包括大量服务的类别可能包含相同的关键词。因此,包含该关键词的类别的个数与整个分类系统中类别的总数之商总是等于或者接近等于1,在某些实施例中,使得这种测量是低效的。如果包含个体关键词的文档在服务级别定义,就可以避免这个问题。在某些实施例中,文档集合可以在整个分类/群集域的范围定义。不管怎样,比较相同父类别中的类别都是典型的。通过把文档集合定义为测量其关键词唯一性的一个/多个具体类别的一个/多个父类别在更精细的级别测量关键词唯一性更准确。即,在某些实施例中,在一个或多个具体类别的逆服务频率(ISF)被定义为一个/多个父类别中服务总数与包含该关键词的服务个数之商的对数。等式(2)规定ISFi
ISF i = log N Σ j = 1 N n ij
在等式(2)中,ISFi是一个分类系统中一个或多个具体类别中关键词i的逆服务频率;如果服务j有关键词i,则nij为1,而如果服务j没有关键词i,则nij为0;而且N是在一个或多个父类别中注册的服务的总数。
RIi是关键词i与一个类别的关键词相关指标。等式(3)规定RIi
RIi=KFi×ISFi
RIQ是一个查询与一个类别的查询相关指标,用来测量该查询与类别之间的相似性。包含多个关键词的查询的RIQ是这些关键词与这个类别的关键词相关指标的聚集。在某些实施例中,类似于与在信息检索研究中开发的矢量空间模型一起使用的余弦相似性,RIQ是代表查询与类别的两个多维矢量之间角度的余弦。等式(4)规定RIQ
RI Q = Σ i = 1 M Q RI i ( M Q × ( Σ i = 1 M Q RI i 2 + Σ j = M Q + 1 M C RI j 2 ) ) 1 2
在等式(4)中,RIi是关键词i与这个类别的关键词相关指标;关键词i是在该查询中指定的关键词;MQ是该查询中的关键词总数;RIj是关键词j与这个类别的关键词相关指标;关键词j是该类别中但不在查询中的一个关键词;而MC是该类别和查询中不同关键词的总数(即,MC的大小是查询关键词集合与类别关键词集合的并集)。
由于基于矢量空间模型的等式(4)可能对具有更多服务和关键词的大类别生成过于小的RIQ值,因此,在某些实施例中,如果进行比较的类别的尺寸显著不同,则RIQ的值需要调整。
说明以上概念的一个简单例子在图2中示出。如果类别_A1210有5个服务,而类别_A2220有10个服务,则类别_A200总共有15个服务。这些服务都是唯一的。假设在类别_A1210中只有一个服务包含关键词“保险(insurance)”,而类别_A2220中有五个服务包含相同的关键词“保险”。这意味着类别_A有六个包含关键词“保险”的服务。此外,每个服务都包含10个关键词。在类别_A200的父类别中,假设每五个服务中有一个服务包含关键词“保险”。关键词“保险”与每个类别的关键词相关指标是:
类别_A: RI ′ ′ insurance ′ ′ = 6 10 × 15 × log 5 = 0.028
类别_A1: RI ′ ′ insurance ′ ′ = 1 10 × 5 × log 15 6 = 0.008
类别_A2: R I ′ ′ insurance ′ ′ = 5 10 × 10 × log 15 6 = 0.020
图3以流程图说明了根据某些实施例、在查询增强系统120中由关键词与分类类别匹配过程执行的逻辑。图3由图3A、图3B、图3C和图3D构成。
在图3中,查询增强系统120处理从服务客户端100接收到的查询。在某些实施例中,匹配迭代在每个分类系统中的一个具体分类级别执行(即,服务注册表170可以具有多个分类系统)。查询增强系统120在每次迭代结束时向服务客户端100返回更新后的关键词与分类类别信息。然后,服务客户端100可以通过选择所显示的查询关键词、类别关键词与类别来提供反馈,而且该选择在下一次迭代中使用。在到达其最低类别级别之前,如利用方框308-312所说明的,查询增强系统120所采用的查询改进过程可以迭代多次,或者服务客户端100可以退出过程,如利用方框334-342所说明的。
处理在方框300开始(图3A),查询增强系统120从服务客户端100接收查询Q。该查询中的关键词将被称为查询关键词,而分类类别中的关键词将被称为类别关键词。在某些实施例中,在第一次迭代中,由服务客户端100生成的查询可以包括查询关键词,而且可以包括或者可以不包括由服务客户端100指定的分类类别。但是,在第一次迭代和每次后续的迭代结束时,查询增强系统120都可以推荐类别和类别关键词,而且服务客户端100可以选择要作为查询关键词包括在查询中的这些类别关键词中的一个或多个。在某些实施例中,后续迭代中的每个查询都包含由服务客户端100指定或确认的关键词和分类类别。查询中这些指定或确认的类别被称为选定类别。对于每个分类系统,查询都有可能具有多于一个的选定类别。
在方框302,匹配引擎150设置当前的类别级别。在某些实施例中,如果服务客户端100在开始的时候没有指定任何分类类别,则新的查询在每个分类系统的根/顶类别级别开始。在每次迭代,依赖于服务客户端100反馈是否用于识别一个或多个恰当的子类别,当前的类别级别在每个层次分类系统中向下移动零个、一个或多个级别。在某些实施例中,如果服务客户端100自己改变查询中的一个或多个关键词(即,不是由查询增强系统120建议的推荐改变),则查询可以被查询增强系统120作为新查询来对待。
在方框304,关键词预处理器140接收查询并且预处理关键词。如果关键词预处理器140识别出拼写错误或者停用词,则关键词预处理器140通知匹配引擎150忽略拼写错误的词或停用词,并且把该信息转发到服务客户端100,以便校正查询。
在方框306,匹配引擎150接收预处理之后的查询并且确定该查询的客户端选定类别关于与每个类别的查询相关指标值是否排名高。在某些实施例中,确定是对于所有选定类别。如果一个或多个选定类别具有低关联查询相关指标值,则处理继续到方框322(图3C),以便找出推荐的关键词变化,以便消除查询的关键词与选定类别之间的失配。
说明以上失配场景的一个例子是以下的例子:由客户端100提交的查询Q包含三个关键词:“保险(insurance)”、“小汽车(car)”和“驾驶员(driver)”。选定类别是图2中所绘出的类别_A2220。但是,关于与查询的查询相关指标,也在图2中绘出的类别_A1210排名高,如以下所示出的。假设关键词与两个类别之间的关键词相关指标是:
类别_A1:RI"insurance"=0.008,RI"car"=0.025,RI"driver"=0.030
类别_A2:RI"insurance"=0.020,RI"car"=0.005,RI"driver"=0.004
为了简化,假设等式(4)中项的值对于类别_A1和类别_A2都是0.01。计算出的查询Q与这两个类别的查询相关指标是:
类别_A1: RI Q = 0.008 + 0.025 + 0.030 ( 3 × 0.01 ) 1 2 = 0.364
类别_A2: RI Q = 0.020 + 0.005 + 0.004 ( 3 × 0.01 ) 1 2 = 0.167
如果所有选定类别都具有高查询相关指标值,则处理继续到决定方框308。
在方框308,匹配引擎150确定是否已经到达每个分类系统的最低类别级别。如果是,则处理继续到方框310,否则,处理继续到方框314,以在每个分类层次中向下穿过一级或多级(图3B)。
在某些实施例中,每个分类系统的每个类别的最低类别级别包含一个或多个个体服务。在方框310,匹配引擎150给处于最低类别级别的个体服务排名。在方框312,响应该查询,匹配引擎150把一个或多个高排名服务的信息提供给服务客户端100。然后,处理完成。
在方框314,匹配引擎150从关键词数据存储130为每个选定类别的每个子类别提取(即,检索)查询中每个关键词的关键词相关指标(RIi)。在方框314,提取可以包括提取数据并计算关键词相关指标。在方框316,匹配引擎150利用关键词相关指标计算查询与那些子类别中每一个的查询相关指标(RIQ)。对于一个类别来说,查询相关指标描述该类别与一个查询相关多紧密(即,它们关于它们共同具有的关键词多相似)。
在某些实施例中,一个分类系统中处于选定类别相同级别的其它类别不推荐给服务客户端100或者被其选择。但是,如果用于这些类别的查询相关指标达到某个阈值,显示这些类别可能也与该查询相关,则查询与这些类别的每个子类别的查询相关指标也要计算并排名。
在方框318,匹配引擎150基于每个分类系统中子类别的查询相关指标给它们排名。
在某些实施例中,如果一个分类系统中某个子类别的查询相关指标值显著高于其它子类别的查询相关指标值,则在来自服务客户端100的确认之前匹配引擎150可以假设这个子类别是选定类别。在这种实施例中,匹配引擎150在层次中再向下移动当前类别级别一级,而且匹配引擎150计算并排名这个子类别的子类别的相关指标。这个过程可以重复,直到匹配引擎150到达一个点,在这个点,没有子类别具有显著高的查询相关指标值,而且需要来自服务客户端100的选择。
在方框320,匹配引擎150确定由服务客户端100指定或确认的每个选定类别是否包括至少一个排名高的子类别(基于方框318中的排名)。如果是,则处理继续到方框330,否则,处理继续到方框322。
在方框330,匹配引擎150把当前类别级别的子类别级别设置成当前类别级别。在方框332,匹配引擎150把未改变的关键词与新排名的类别列表(在当前类别级别改变之前被称为子类别列表)发送到服务客户端100,以使服务客户端100能够选择或验证新子类别。
在方框334,匹配引擎150确定是否从服务客户端100接收到具有指定的或确认的关键词与类别的查询。如果是,则过程从方框334(图3D)循环回到方框304(图3A),以执行改进查询的另一次迭代,否则,处理继续到方框336。在方框336,匹配引擎150确定服务客户端100是否指示查询应当以当前形式还是以之前的形式执行,而不需要执行进一步的迭代(例如,经用户接口)。如果是,则处理继续到方框338,否则,处理完成。在某些实施例中,在没有接收到反馈的一段时间后,匹配引擎150确定服务客户端100最好退出该过程,而不以当前形式或者以之前的形式执行查询。在这种情况下,匹配引擎150退出,而不执行查询。
在方框338,匹配引擎150以当前形式或者以之前的形式执行查询。在某些实施例中,服务客户端100能够识别要执行的特定之前形式。在方框340,匹配引擎150基于它们的查询相关指标给服务排名。在方框342,匹配引擎150把一个或多个高排名服务的列表提供给服务客户端100(例如,经用户接口)。即,匹配引擎150提供关于所述一个或多个服务的信息。然后,处理完成(即,由服务客户端100退出)。在某些实施例中,来自该列表的一个或多个服务可以由服务客户端100选择消费(即,提供选定的服务)。
如果存在不具有高排名子类别的一个或多个选定类别,则处理从方框320继续到方框322。这是由服务客户端100指定的关键词与属于相关类别或子类别的关键词之间的失配造成的。在方框322,匹配引擎150识别类别关键词中可以用于替换查询中匹配查询关键词的查询关键词的同义词。特别地,匹配引擎150识别对非排名靠前的选定类别具有低关键词相关指标值的查询关键词,以便匹配非排名靠前的类别中可以用于代替查询中关键词的查询关键词。非排名靠前的选定类别可以被描述为其查询相关指标值不在最高的当中,或者其子类别的查询相关指标值中没有一个在最高的当中的选定类别。
为了识别同义词,匹配引擎150从关键词数据存储130提取属于查询中非排名靠前的选定类别的关键词的关键词相关指标值。然后,匹配引擎150定位在非排名靠前的类别中但不在查询中具有高关键词相关指标值的类别关键词,而且反之亦然(即,定位对非排名靠前的类别具有低关键词相关指标值的查询关键词)。匹配引擎150还从关键词词库160提取同义词并且识别这两组关键词(即,查询关键词与类别关键词)之间的任何同义词。如果识别出一对同义词,每个组有一个(即,一个来自查询关键词,一个来自类别关键词),则产生建议服务客户端100用属于非排名靠前的类别的同义词代替(即,替换)查询中的关键词的推荐。例如,假设非排名靠前的选定类别是类别_A2220。关键词“汽车”在类别_A2220中具有高关键词相关指标值,但是在查询Q中没有。相反,关键词“小汽车”在查询Q中,但是在类别_A2220中具有低关键词相关指标值。关键词词库160指示汽车与小汽车是同义词。因此,产生建议服务客户端100用关键词“汽车”代替查询中的关键词“小汽车”的推荐。
在方框324,匹配引擎150识别非排名靠前的类别中可以添加到查询的新关键词。特别地,对于非排名靠前的类别中具有高关键词相关指标值的关键词,如果它们不在查询中而且在方框322没有找到它们的同义词,则产生建议服务客户端100在查询中添加这些新关键词的推荐。在某些实施例中,当服务客户端100的选择与匹配引擎150的排名之间发生类别失配时,推荐从方框324提供。作为一个例子,关键词“报价”可以被识别为这种关键词而且为服务客户端100产生把关键词“报价”添加到查询Q中的推荐。
在方框326,匹配引擎150识别作为要从查询中除去的候选的查询关键词。特别地,匹配引擎150检查查询中的关键词并且定位对非排名靠前的类别具有低关键词相关指标值并且对排名靠前但未被服务客户端100选择的类别具有高关键词相关指标值的关键词。如果在方框322没有为这些关键词在非排名靠前的类别中找到同义词,则产生建议服务客户端100除去查询中这些关键词的推荐。作为一个例子,关键词“驾驶员”可以被识别为这种关键词并且为服务客户端100产生从查询Q除去关键词“驾驶员”的推荐。
在方框328,匹配引擎150向服务客户端100提供关键词改变推荐和排名后的类别列表(例如,经用户接口)。然后,服务客户端100可以通过选择要在查询中使用的关键词和要与该查询关联的类别来提供反馈。例如,假设服务客户端100采纳用“汽车”代替“小汽车”、添加关键词“报价”和除去关键词“驾驶员”的变化推荐。还假设关键词“汽车”与类别_A1210和类别_A2220的关键词相关指标分别是0.006和0.026,而关键词“报价”的关键词相关指标分别是0.004和0.032。于是,在关键词改变之后,查询Q与这两个类别的查询相关指标是:
类别_A1: RI Q = 0.008 + 0.006 + 0.004 ( 3 × 0.01 ) 1 2 = 0 . 104
类别_A2: RI Q = 0.020 + 0.026 + 0.032 ( 3 × 0.01 ) 1 2 = 0.450
在改变之后,非排名靠前的类别类别_A2220具有比类别_A1210更高的相关指标。类别_A2220变成被匹配引擎150认为是排名靠前的类别。服务客户端100与匹配引擎150之间的类别选择失配在采纳查询关键词变化推荐之后校正。
从方框328,处理继续到方框334(图3D)。
如果当前的类别级别不在层次性分类系统中,而是在群集或群集层次中,则该过程是类似的。区别在于,在某些实施例中,群集类别可能没有有意义的名字。于是,匹配引擎150需要选择类别中的一种典型服务来代表这个类别并且把该服务信息提供给服务客户端100。通过指定所提供的服务是否类似于服务客户端100正在寻找的服务,服务客户端100决定是否选择该类别。
当过程到达分类或群集层次最精细的类别时,当前的类别不具有子类别,但是它们包含个体服务。每个服务都可以作为一个子类别来对待而且也将计算并排名它们的查询相关指标。在这种实施例中,服务客户端100将接收从其进行选择的排名后的服务列表,而不是类别列表。
给定包括一个或多个关键词的用户查询,实施例提供了在服务储存库中对相关条目的有效搜索与检索。除了开发关键词-查询-类别匹配方案,实施例还考虑到服务储存库中服务的关键词之间已有的层次关系,这导致用于精细化查询以便提高查询准确性与质量的有效技术。
实施例提供了一种信息检索技术,这种技术帮助用户基于迭代用户反馈改进依靠具有层次性分类系统的数据存储发布的查询。
对于这些实施例,用户不需要为了指定查询关键词和执行有效的关键词搜索而首先具有关于什么服务元数据以及它们如何存储在服务注册表中和/或这些服务所使用的确切关键词的具体了解。
所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以采取完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或硬件和软件方面结合的实施例的方式,这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以采取在一个或多个计算机可读介质中体现的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质可以是例如,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或设备,或者以上所述的任意组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一根或多根导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或闪存存储器)、光纤、便携式光盘只读存储器(CD-ROM)、光存储设备、磁存储设备、固态存储器、磁带或者以上所述的任意合适组合。在本文档的背景下,计算机可读存储介质可以是包含或存储程序的任何有形介质,该程序可以被指令执行系统、装置或设备使用或者与其结合使用。
计算机可读信号介质可以包括其中,例如,在基带中或者作为载波的一部分,体现计算机可读程序代码的传播数据信号。这种传播信号可以采取多种形式中的任何一种,包括但不限于电-磁、光或者其任意合适组合。计算机可读信号介质可以是非计算机可读存储介质而且可以传送、传播或者运输由指令执行系统、装置或设备使用或者与其联合使用的程序的任何计算机可读介质。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括,但不限于,无线、有线、光缆、RF等等,或者以上所述的任意合适组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如,通过利用互联网服务提供商的互联网)。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图说明和/或框图来描述本发明的实施例的各个方面。应当理解,流程图说明和/或框图的每个方框以及流程图说明和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时产生实现流程图和/或框图中的一个或多个方框中规定的功能/动作的器件。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令会指示计算机、其它可编程数据处理装置、或其他设备以特定方式工作,使得存储在计算机可读介质中的指令产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
计算机程序指令也可以加载到计算机、其它可编程数据处理装置或者其它设备上,使得一系列操作处理(例如,操作或步骤)在计算机、其它可编程装置或者其它设备上执行,产生一种计算机实现的过程,使得在所述计算机或者其它可编程装置上执行的指令提供用于实现在所述流程图和/或框图的一个或多个方框中规定的功能/动作的过程。
实现所述操作的代码可以进一步在硬件逻辑或电路系统(例如,集成电路芯片、可编程门阵列(PGA)、专用集成电路(ASIC)等)中实现。硬件逻辑可以耦合到处理器,来执行操作。
关键词预处理器140和/或关键词分类-群集匹配引擎150(“匹配引擎150”)可以实现为硬件(例如,硬件逻辑或电路系统)、软件或者硬件与软件的组合。
在某些实施例中,匹配引擎150具有自己的处理器和存储器。
图4说明了根据某些实施例可以使用的计算机体系结构400。服务客户端100和/或服务注册服务器110可以实现计算机体系结构400。计算机体系结构400适于存储和/或执行程序代码并且包括至少一个直接地或者通过系统总线420间接地耦合到存储器元件404的处理器402。存储器元件404可以包括在程序代码实际执行过程中采用的本地存储器、大容量储存器和提供至少一些程序代码的临时存储以便减少执行过程中必须从大容量储存器检索代码的次数的高速缓存存储器。存储器元件404包括操作系统405和一个或多个计算机程序406。
输入/输出(I/O)设备412、414(包括但不限于键盘、显示器、定点设备等)可以直接地或者通过中间I/O控制器410间接地耦合到系统。
网络适配器408也可以耦合到系统,以使得数据处理系统能够变得通过中间的私有或公共网络耦合到其它数据处理系统或者远端打印机或存储设备。调制解调器、电缆调制解调器和以太网卡仅仅是一些目前可用类型的网络适配器408。
计算机体系结构400可以耦合到储存装置416(例如,非易失性存储区域,例如磁盘驱动器、光盘驱动器、磁带驱动器等)。储存装置416可以包括内部存储设备或者附连或网络可访问的储存装置。储存装置416中的计算机程序406可以按本领域中已知的方式加载到储存器元件404中并且被处理器402执行。
计算机体系结构400可以包括比所说明更少的组件、未在此说明的附加组件、或者所说明的组件与附加组件的某种组合。计算机体系结构400可以包括本领域中已知的任何计算设备,例如大型机、服务器、个人计算机、工作站、膝上型计算机、手持式计算机、电话设备、网络用具、虚拟化设备、存储控制器、个人数字助理(PDA)、平板计算机、口袋式个人计算机(PC)、网络PC、手持式设备、机顶盒、消费者电子产品、微型计算机、超级计算机等。
附图中的流程图和框图说明了根据本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码部分包含一条或多条用于实现规定的逻辑功能的可执行指令。还应当指出,在有些可供选择的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,依赖于所涉及的功能性,两个连续示出的方框实际上可以基本并行地执行,或者它们有时也可以按相反的顺序执行。还应当指出,框图和/或流程图说明中的每个方框、以及框图和/或流程图说明中方框的组合,可以由执行规定功能或动作的基于硬件的专用系统或者专用硬件与计算机指令的组合来实现。
本文所使用的术语仅仅是为了描述特定的实施例而不是要作为本发明的限制。如本文所使用的,除非上下文明确地另外指出,否则单数形式“一个”和“这个”要也包括复数形式。还应当理解,当在本说明书使用时,术语“包括”和/或“包含”规定了所述特征、整数、步骤、操作、元素和/或部件的存在,但是并不排除一个或多个其它特征、整数、步骤、操作、元素、部件和/或其组的存在或添加。
以下权利要求中所有方法或步骤加功能元素的对应结构、材料、动作及等价物都是要包括用于结合具体所述的其它所述元素执行所述功能的任何结构、材料或行为。已经为了说明和描述的目的给出了本发明实施例的描述,但这不是详尽的或者要把本发明限定到所公开的形式。在不背离本发明范围与主旨的情况下,许多修改和变化对本领域普通技术人员都将是显而易见的。实施例的选择和描述是为了最好地解释本发明的原理和实践应用,并使本领域其他普通技术人员能够理解本发明具有适于预期特定使用的各种修改的各种实施例。
本发明实施例的以上描述是为了说明和描述的目的而给出的。它不是详尽的或者要把实施例限定到所公开的精确形式。根据以上教导,许多修改与变化都是可能的。实施例的范围不是要由具体描述而是要由所附权利要求来限定。以上说明书、例子和数据提供了对实施例成分的制造与使用的完整描述。由于在不背离本发明主旨与范围的情况下可以产生许多实施例,因此实施例在于以下所附的权利要求或者任何后续提交的权利要求及其等价物中。

Claims (25)

1.一种用于提供改进查询的推荐的方法,包括:
接收具有查询关键词和选定类别的查询;以及
响应于参考用于每个选定类别的查询相关指标值确定选定类别排名高,
利用关键词相关指标计算查询与每个子类别的查询相关指标;
基于查询相关指标给每个子类别排名;以及
提供排名后的子类别,以在选择要与查询一起提交的新类别时使用。
2.如权利要求1所述的方法,进一步包括:
确定是否到达选定类别中的最低类别级别;以及
响应确定已经到达最低类别级别,
给处于最低类别级别的个体服务排名;以及
从排名后的个体服务提供一个或多个高排名的服务。
3.如权利要求1或权利要求2所述的方法,进一步包括:
响应于参考用于每个选定类别的查询相关指标值确定选定类别中至少有一个选定类别排名低,
识别一对同义词,该对同义词中第一个同义词与查询关键词关联而该对同义词中第二个同义词与类别关键词关联;以及
提供用来自该对同义词中的同义词代替查询关键词的推荐。
4.如权利要求3所述的方法,其中该对同义词是为对非排名靠前的选定类别具有低关键词相关指标值的查询关键词识别的。
5.如前面任何一项权利要求所述的方法,进一步包括:
对于非排名靠前的选定类别中具有高关键词相关指标值的类别关键词,识别不在查询中而且没有为其识别出同义词的类别关键词;以及
提供把所识别出的类别关键词添加到查询的推荐。
6.如前面任何一项权利要求所述的方法,进一步包括:
识别对非排名靠前的选定类别具有低关键词相关指标值并且对排名靠前但未选的类别具有高关键词相关指标值的查询关键词;
从识别出的查询关键词,识别没有为其识别出同义词的查询关键词;以及
提供把没有为其识别出同义词的查询关键词从查询中除去的推荐。
7.如前面任何一项权利要求所述的方法,进一步包括:
提供关于用于在修正查询时使用的查询关键词的推荐;以及
接收基于所提供的推荐的修正后的查询。
8.如前面任何一项权利要求所述的方法,进一步包括:
接收不执行进一步迭代的指示;
以当前形式执行查询;以及
提供一个或多个服务的列表。
9.如前面任何一项权利要求所述的方法,进一步包括:
迭代通过各级别类别。
10.一种用于提供改进查询的推荐的系统,包括:
处理器;以及
匹配引擎,可以耦合到处理器并且可操作执行操作,所述操作包括:
接收具有查询关键词和选定类别的查询;以及
响应于参考用于每个选定类别的查询相关指标值确定选定类别排名高,
利用关键词相关指标计算查询与每个子类别的查询相关指标;
基于查询相关指标给每个子类别排名;以及
提供排名后的子类别,以在选择要与查询一起提交的新类别时使用。
11.如权利要求10所述的系统,其中所述操作进一步包括:
确定是否到达选定类别中的最低类别级别;以及
响应于确定已经到达最低类别级别,
给处于最低类别级别的个体服务排名;以及
从排名后的个体服务提供一个或多个高排名的服务。
12.如权利要求10或权利要求11所述的系统,其中所述操作进一步包括:
响应于参考用于每个选定类别的查询相关指标值确定选定类别中至少有一个选定类别排名低,
识别一对同义词,该对同义词中第一个同义词与查询关键词关联而该对同义词中第二个同义词与类别关键词关联;以及
提供用来自该对同义词中的同义词代替查询关键词的推荐。
13.如权利要求12所述的系统,其中该对同义词是为对非排名靠前的选定类别具有低关键词相关指标值的查询关键词识别的。
14.如权利要求10至13中任何一项所述的系统,其中所述操作进一步包括:
对于非排名靠前的选定类别中具有高关键词相关指标值的类别关键词,识别不在查询中而且没有为其识别出同义词的类别关键词;以及
提供把所识别出的类别关键词添加到查询的推荐。
15.如权利要求10至14中任何一项所述的系统,其中所述操作进一步包括:
识别对非排名靠前的选定类别具有低关键词相关指标值并且对排名靠前但未选的类别具有高关键词相关指标值的查询关键词;
从识别出的查询关键词,识别没有为其识别出同义词的查询关键词;以及
提供把没有为其识别出同义词的查询关键词从查询中除去的推荐。
16.如权利要求10至15中任何一项所述的系统,其中所述操作进一步包括:
提供关于用于在修正查询时使用的查询关键词的推荐;以及
接收基于所提供的推荐的修正后的查询。
17.如权利要求10至16中任何一项所述的系统,其中所述操作进一步包括:
接收不执行进一步迭代的指示;
以当前形式执行查询;以及
提供一个或多个服务的列表。
18.一种用于提供改进查询的推荐的计算机程序产品,所述计算机程序产品包括:
计算机可读存储介质,其中包含计算机可读程序代码,所述计算机可读程序代码包括:
计算机可读程序代码,当被计算机的处理器执行时,可配置成执行:
接收具有查询关键词和选定类别的查询;以及
响应于参考用于每个选定类别的查询相关指标值确定选定类别排名高,
利用关键词相关指标计算查询与每个子类别的查询相关指标;
基于查询相关指标给每个子类别排名;以及
提供排名后的子类别,以在选择要与查询一起提交的新类别时使用。
19.如权利要求18所述的计算机程序产品,其中,所述计算机可读程序代码当被计算机的处理器执行时配置成执行:
确定是否到达选定类别中的最低类别级别;以及
响应确定已经到达最低类别级别,
给处于最低类别级别的个体服务排名;以及
从排名后的个体服务提供一个或多个高排名的服务。
20.如权利要求18或权利要求19所述的计算机程序产品,其中,所述计算机可读程序代码当被计算机的处理器执行时配置成执行:
响应于参考用于每个选定类别的查询相关指标值确定选定类别中至少有一个选定类别排名低,
识别一对同义词,该对同义词中第一个同义词与查询关键词关联而该对同义词中第二个同义词与类别关键词关联;以及
提供用来自该对同义词中的同义词代替查询关键词的推荐。
21.如权利要求20所述的计算机程序产品,其中该对同义词是为对非排名靠前的选定类别具有低关键词相关指标值的查询关键词识别的。
22.如权利要求18至21中任何一项所述的计算机程序产品,其中,所述计算机可读程序代码当被计算机的处理器执行时配置成执行:
对于非排名靠前的选定类别中具有高关键词相关指标值的类别关键词,识别不在查询中而且没有为其识别出同义词的类别关键词;以及
提供把所识别出的类别关键词添加到查询的推荐。
23.如权利要求18至22中任何一项所述的计算机程序产品,其中,所述计算机可读程序代码当被计算机的处理器执行时配置成执行:
识别对非排名靠前的选定类别具有低关键词相关指标值并且对排名靠前但未选的类别具有高关键词相关指标值的查询关键词;
从识别出的查询关键词,识别没有为其识别出同义词的查询关键词;以及
提供把没有为其识别出同义词的查询关键词从查询中除去的推荐。
24.如权利要求18至23中任何一项所述的计算机程序产品,其中,所述计算机可读程序代码当被计算机的处理器执行时配置成执行:
提供关于用于在修正查询时使用的查询关键词的推荐;以及
接收基于所提供的推荐的修正后的查询。
25.如权利要求18至24中任何一项所述的计算机程序产品,其中,所述计算机可读程序代码当被计算机的处理器执行时配置成执行:
接收不执行进一步迭代的指示;
以当前形式执行查询;以及
提供一个或多个服务的列表。
CN201280025518.XA 2011-05-26 2012-04-25 混合与迭代关键词以及类别搜索技术 Active CN103562916B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/117,042 2011-05-26
US13/117,042 US8667007B2 (en) 2011-05-26 2011-05-26 Hybrid and iterative keyword and category search technique
PCT/IB2012/052068 WO2012160456A1 (en) 2011-05-26 2012-04-25 Hybrid and iterative keyword and category search technique

Publications (2)

Publication Number Publication Date
CN103562916A true CN103562916A (zh) 2014-02-05
CN103562916B CN103562916B (zh) 2017-03-22

Family

ID=47216673

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280025518.XA Active CN103562916B (zh) 2011-05-26 2012-04-25 混合与迭代关键词以及类别搜索技术

Country Status (5)

Country Link
US (3) US8667007B2 (zh)
CN (1) CN103562916B (zh)
AU (1) AU2012260534B2 (zh)
GB (1) GB2504231A (zh)
WO (1) WO2012160456A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105637511A (zh) * 2013-10-18 2016-06-01 谷歌公司 基于距离的搜索排名降级
CN112889066A (zh) * 2018-10-30 2021-06-01 国际商业机器公司 用于学习词和多词表达的特性的分类引擎

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8667007B2 (en) 2011-05-26 2014-03-04 International Business Machines Corporation Hybrid and iterative keyword and category search technique
US8965882B1 (en) * 2011-07-13 2015-02-24 Google Inc. Click or skip evaluation of synonym rules
CN105956137B (zh) 2011-11-15 2019-10-01 阿里巴巴集团控股有限公司 一种搜索方法、搜索装置及一种搜索引擎系统
US8909627B1 (en) 2011-11-30 2014-12-09 Google Inc. Fake skip evaluation of synonym rules
US9152698B1 (en) 2012-01-03 2015-10-06 Google Inc. Substitute term identification based on over-represented terms identification
US8965875B1 (en) 2012-01-03 2015-02-24 Google Inc. Removing substitution rules based on user interactions
US9141672B1 (en) * 2012-01-25 2015-09-22 Google Inc. Click or skip evaluation of query term optionalization rule
CN103294684B (zh) * 2012-02-24 2016-08-24 浙江易网科技股份有限公司 关联词汇搜索系统及方法
US8959103B1 (en) 2012-05-25 2015-02-17 Google Inc. Click or skip evaluation of reordering rules
US9305103B2 (en) * 2012-07-03 2016-04-05 Yahoo! Inc. Method or system for semantic categorization
WO2014040169A1 (en) * 2012-09-14 2014-03-20 Broadbandtv, Corp. Intelligent supplemental search engine optimization
CN103699549B (zh) * 2012-09-27 2016-11-23 阿里巴巴集团控股有限公司 一种图形码库更新、查询方法及相关装置
US9146966B1 (en) 2012-10-04 2015-09-29 Google Inc. Click or skip evaluation of proximity rules
US9836795B2 (en) * 2012-11-08 2017-12-05 Hartford Fire Insurance Company Computerized system and method for pre-filling of insurance data using third party sources
US20140200950A1 (en) * 2013-01-16 2014-07-17 Xerox Corporation Methods and Systems for Automatic Operation Abstraction and Custom Service Instantiation
KR101485940B1 (ko) * 2013-08-23 2015-01-27 네이버 주식회사 시멘틱 뎁스 구조 기반의 검색어 제시 시스템 및 방법
DE102013109295A1 (de) * 2013-08-28 2015-03-05 Dataforce Verlagsgesellschaft Für Business Informationen Mbh Verfahren zur Auswertung von Daten und Analysesystem
US20150205828A1 (en) * 2014-01-21 2015-07-23 Sap Ag Methods, systems, and apparatus for auto-complete suggestion lists
US9589050B2 (en) 2014-04-07 2017-03-07 International Business Machines Corporation Semantic context based keyword search techniques
CN104503975B (zh) * 2014-11-20 2021-08-06 百度在线网络技术(北京)有限公司 推荐卡片的定制方法及装置
US9864775B2 (en) 2015-03-26 2018-01-09 International Business Machines Corporation Query strength indicator
JP5933083B1 (ja) * 2015-07-23 2016-06-08 株式会社Cygames サーバ及びプログラム
CN106484721B (zh) * 2015-08-28 2020-01-17 深圳市世强元件网络有限公司 一种智能搜索系统及方法
US20170277737A1 (en) * 2016-03-23 2017-09-28 Ebay Inc. Compact index document generation for smart match autocomplete system
CN105975492A (zh) * 2016-04-26 2016-09-28 乐视控股(北京)有限公司 一种提示搜索词的方法和装置
US9721026B1 (en) 2016-07-27 2017-08-01 Searchmetrics Gmbh Systems for topic exploration and related methods
CN106547902A (zh) * 2016-11-07 2017-03-29 山东浪潮云服务信息科技有限公司 一种业务平台及查询业务实现的方法
CN108241643B (zh) * 2016-12-23 2021-12-24 北京国双科技有限公司 关键词的指标数据分析方法及装置
US10956409B2 (en) 2017-05-10 2021-03-23 International Business Machines Corporation Relevance model for session search
US11762863B2 (en) * 2017-10-13 2023-09-19 Microsoft Technology Licensing, Llc Hierarchical contextual search suggestions
US20190266288A1 (en) * 2018-02-28 2019-08-29 Laserlike, Inc. Query topic map
US11423102B2 (en) * 2018-09-27 2022-08-23 Sap Se Learning model based search engine
CN109635180A (zh) * 2018-12-13 2019-04-16 武汉虹旭信息技术有限责任公司 基于互联网海量信息的关键词分类处理系统及其方法
US11646870B2 (en) 2019-01-23 2023-05-09 International Business Machines Corporation Securing mobile device by RAM-encryption
CN109918555B (zh) * 2019-02-20 2021-10-15 百度在线网络技术(北京)有限公司 用于提供搜索建议的方法、装置、设备和介质
US10489454B1 (en) 2019-06-28 2019-11-26 Capital One Services, Llc Indexing a dataset based on dataset tags and an ontology
US11531703B2 (en) 2019-06-28 2022-12-20 Capital One Services, Llc Determining data categorizations based on an ontology and a machine-learning model
US11100170B2 (en) * 2019-11-15 2021-08-24 Microsoft Technology Licensing, Llc Domain-agnostic structured search query exploration

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6385602B1 (en) * 1998-11-03 2002-05-07 E-Centives, Inc. Presentation of search results using dynamic categorization
US20070214154A1 (en) * 2004-06-25 2007-09-13 Gery Ducatel Data Storage And Retrieval
CN101984423A (zh) * 2010-10-21 2011-03-09 百度在线网络技术(北京)有限公司 一种热搜词生成方法及系统

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374241B1 (en) * 1999-03-31 2002-04-16 Verizon Laboratories Inc. Data merging techniques
US6571239B1 (en) 2000-01-31 2003-05-27 International Business Machines Corporation Modifying a key-word listing based on user response
US20040078216A1 (en) * 2002-02-01 2004-04-22 Gregory Toto Clinical trial process improvement method and system
US20030187841A1 (en) * 2002-03-28 2003-10-02 International Business Machines Corporation Method and structure for federated web service discovery search over multiple registries with result aggregation
US20030088553A1 (en) 2002-11-23 2003-05-08 Emergency 24, Inc. Method for providing relevant search results based on an initial online search query
US7562069B1 (en) 2004-07-01 2009-07-14 Aol Llc Query disambiguation
CN1609859A (zh) 2004-11-26 2005-04-27 孙斌 搜索结果聚类的方法
EP1681823A1 (en) 2005-01-17 2006-07-19 Sap Ag A method and a system to organize and manage a semantic web service discovery
US7636714B1 (en) 2005-03-31 2009-12-22 Google Inc. Determining query term synonyms within query context
US7620627B2 (en) 2005-11-01 2009-11-17 Lycos, Inc. Generating keywords
US20070118509A1 (en) 2005-11-18 2007-05-24 Flashpoint Technology, Inc. Collaborative service for suggesting media keywords based on location data
US7627548B2 (en) 2005-11-22 2009-12-01 Google Inc. Inferring search category synonyms from user logs
US7836460B2 (en) * 2005-12-12 2010-11-16 International Business Machines Corporation Service broker realizing structuring of portlet services
US7428582B2 (en) 2005-12-29 2008-09-23 American Express Travel Related Services Company, Inc Semantic interface for publishing a web service to and discovering a web service from a web service registry
US7933764B2 (en) 2006-01-05 2011-04-26 The United States Of America As Represented By The Secretary Of The Navy System and method for adding semantic support to existing syntactic infrastructure
US7814112B2 (en) * 2006-06-09 2010-10-12 Ebay Inc. Determining relevancy and desirability of terms
US7937403B2 (en) 2006-10-30 2011-05-03 Yahoo! Inc. Time-based analysis of related keyword searching
US8799250B1 (en) 2007-03-26 2014-08-05 Amazon Technologies, Inc. Enhanced search with user suggested search information
US8074234B2 (en) 2007-04-16 2011-12-06 Microsoft Corporation Web service platform for keyword technologies
US8595246B2 (en) 2007-08-17 2013-11-26 Oracle International Corporation System and method for semantic asset search in a metadata repository
US8364693B2 (en) 2008-06-13 2013-01-29 News Distribution Network, Inc. Searching, sorting, and displaying video clips and sound files by relevance
US8539061B2 (en) 2008-09-19 2013-09-17 Georgia Tech Research Corporation Systems and methods for web service architectures
US20100131563A1 (en) 2008-11-25 2010-05-27 Hongfeng Yin System and methods for automatic clustering of ranked and categorized search objects
US9020943B2 (en) 2009-01-07 2015-04-28 Oracle International Corporation Methods, systems, and computer program product for automatically categorizing defects
CN101477542B (zh) 2009-01-22 2013-02-13 阿里巴巴集团控股有限公司 一种抽样分析方法、系统和设备
US8041729B2 (en) 2009-02-20 2011-10-18 Yahoo! Inc. Categorizing queries and expanding keywords with a coreference graph
US9043314B2 (en) 2009-11-16 2015-05-26 David Y. Chen Search engine query customization and search site rating system
CN101931654B (zh) 2010-09-07 2012-11-28 上海交通大学 基于本体的异构服务匹配系统
US8332393B2 (en) * 2010-10-19 2012-12-11 Microsoft Corporation Search session with refinement
US8352491B2 (en) 2010-11-12 2013-01-08 International Business Machines Corporation Service oriented architecture (SOA) service registry system with enhanced search capability
US8667007B2 (en) 2011-05-26 2014-03-04 International Business Machines Corporation Hybrid and iterative keyword and category search technique
US9323859B2 (en) 2011-09-30 2016-04-26 Verisign, Inc. Dynamic client side name suggestion service

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6385602B1 (en) * 1998-11-03 2002-05-07 E-Centives, Inc. Presentation of search results using dynamic categorization
US20070214154A1 (en) * 2004-06-25 2007-09-13 Gery Ducatel Data Storage And Retrieval
CN101984423A (zh) * 2010-10-21 2011-03-09 百度在线网络技术(北京)有限公司 一种热搜词生成方法及系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105637511A (zh) * 2013-10-18 2016-06-01 谷歌公司 基于距离的搜索排名降级
CN105637511B (zh) * 2013-10-18 2019-11-26 谷歌有限责任公司 基于距离的搜索排名降级
US11442946B2 (en) 2013-10-18 2022-09-13 Google Llc Distance based search ranking demotion
US11893034B2 (en) 2013-10-18 2024-02-06 Google Llc Distance based search ranking demotion
CN112889066A (zh) * 2018-10-30 2021-06-01 国际商业机器公司 用于学习词和多词表达的特性的分类引擎
CN112889066B (zh) * 2018-10-30 2023-06-23 国际商业机器公司 用于学习词和多词表达的特性的分类引擎

Also Published As

Publication number Publication date
US20130191400A1 (en) 2013-07-25
AU2012260534A1 (en) 2013-12-12
US9703891B2 (en) 2017-07-11
WO2012160456A1 (en) 2012-11-29
CN103562916B (zh) 2017-03-22
US8682924B2 (en) 2014-03-25
AU2012260534A8 (en) 2013-12-19
US8667007B2 (en) 2014-03-04
US20140108390A1 (en) 2014-04-17
AU2012260534B2 (en) 2016-02-25
US20120303651A1 (en) 2012-11-29
GB201318733D0 (en) 2013-12-04
GB2504231A (en) 2014-01-22

Similar Documents

Publication Publication Date Title
CN103562916A (zh) 混合与迭代关键词以及类别搜索技术
US20220237246A1 (en) Techniques for presenting content to a user based on the user's preferences
US10409880B2 (en) Techniques for presenting content to a user based on the user's preferences
Ganu et al. Improving the quality of predictions using textual information in online user reviews
CN102760138B (zh) 用户网络行为的分类方法和装置及对应的搜索方法和装置
Desarkar et al. Preference relations based unsupervised rank aggregation for metasearch
CN103309886A (zh) 一种基于交易平台的结构化信息搜索方法和装置
Tang et al. On optimization of expertise matching with various constraints
WO2007038713A2 (en) Search engine determining results based on probabilistic scoring of relevance
Serrano Neural networks in big data and Web search
Ortega et al. Artificial intelligence scientific documentation dataset for recommender systems
Yang et al. Identifying opinion leaders in social networks with topic limitation
Ma et al. The graph-based behavior-aware recommendation for interactive news
Moya et al. Integrating web feed opinions into a corporate data warehouse
Ma et al. Test-oriented restful service discovery with semantic interface compatibility
Das et al. Leveraging collaborative tagging for web item design
AU2012272479A1 (en) Preference-guided data exploration and semantic processing
CN104462556A (zh) 问答页面相关问题推荐方法和装置
CN102708104A (zh) 对文档排序的方法和设备
Brefeld et al. Document assignment in multi-site search engines
Santosa et al. S3PaR: Section-Based Sequential Scientific Paper Recommendation for Paper Writing Assistance
CN111694929B (zh) 基于数据图谱的搜索方法、智能终端和可读存储介质
Palaniammal Refining Search Performance through Semantic based CBR Model and QoS Ranking Methodology
Zhang et al. Real‐time helpfulness prediction based on voter opinions
Jiang et al. A Hybrid News Recommendation Approach Based on Title-Content Matching

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant