CN103339623B - 涉及因特网搜索的方法和设备 - Google Patents

涉及因特网搜索的方法和设备 Download PDF

Info

Publication number
CN103339623B
CN103339623B CN201180043219.4A CN201180043219A CN103339623B CN 103339623 B CN103339623 B CN 103339623B CN 201180043219 A CN201180043219 A CN 201180043219A CN 103339623 B CN103339623 B CN 103339623B
Authority
CN
China
Prior art keywords
search
inquiry
search engine
user
engine
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.)
Active
Application number
CN201180043219.4A
Other languages
English (en)
Other versions
CN103339623A (zh
Inventor
V·塞吉诺哈
G·B·克雷顿
V·S·陈
S·哈奇
W·F·伽侬
G·艾弗曼
M·W·里根
S·W·拉弗蒂
P·J·沃兹拉
N·M·博顿斯塔布
Y·塔姆
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.)
Microsoft Technology Licensing LLC
Original Assignee
Nuance Communications Inc
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
Priority claimed from US12/877,765 external-priority patent/US20120060113A1/en
Priority claimed from US12/877,690 external-priority patent/US20120059658A1/en
Priority claimed from US12/877,549 external-priority patent/US8239366B2/en
Priority claimed from US12/877,647 external-priority patent/US20120059814A1/en
Priority claimed from US12/877,440 external-priority patent/US8341142B2/en
Application filed by Nuance Communications Inc filed Critical Nuance Communications Inc
Publication of CN103339623A publication Critical patent/CN103339623A/zh
Application granted granted Critical
Publication of CN103339623B publication Critical patent/CN103339623B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • 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/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • 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/953Querying, e.g. by the use of web search engines

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明的各实施例涉及对因特网上的内容的搜索。用户可以向设备提供搜索查询,而设备可以向多个搜索引擎发出搜索查询,包括至少一个通用搜索引擎和至少一个站点特定的搜索引擎。如此,用户不必分别地向多个搜索引擎中的每一个发出搜索查询。

Description

涉及因特网搜索的方法和设备
技术领域
此处所描述的技术一般指通过因特网发出搜索查询的领域。
背景技术
因特网是存储海量信息的互连的计算机网络的全球***。万维网(WWW)是建立在因特网之上的信息共享模型,其中,互相链接的超文本文档的***是使用特定协议(即,超文本传输协议以及其变体)来访问的。
由于通过WWW以及因特网可用的信息量巨大,并且由于可用的信息是跨大量的独立地拥有的以及操作的网络和服务器分布的,因此,定位WWW以及因特网上所需内容是具有挑战性的。
已经开发出搜索引擎以帮助用户定位因特网上的所需内容。搜索引擎是从用户那里接收表示用户所需的内容的搜索查询(例如,以一组关键字的形式),并返回搜索引擎确定为与用户的搜索查询相关的信息和/或到信息的超链接的计算机程序。
搜索引擎的工作方式通常是通过使用叫做网络爬虫的计算机程序来检索大量的WWW网页和/或其他内容,网络爬虫以自动的方式来浏览WWW(例如,沿着在它浏览的每一个网页中它碰到的每一超链接)。分析检索到的网页和/或内容,并将有关网页或内容的信息存储在索引中。当用户向搜索引擎发出搜索查询时,搜索引擎使用该索引来标识它确定为最佳匹配用户的搜索查询的网页和/或内容,并返回带有最佳匹配的网页和/或内容的结果列表。这列表常常是一个或多个网页的形式,该一个或多个网页包括到被确定为最佳匹配用户的查询的网页和/或内容的一组超链接。
有至少两种一般类型的通过因特网可访问的搜索引擎:通用搜索引擎和站点特定的搜索引擎。如此处所使用的,术语“通用搜索引擎”被定义为意味着提供包括在至少两个不同并且独立的网站或域上托管的网页和/或内容(或到网页和/或内容的超链接)的搜索结果的搜索引擎。通用搜索引擎尝试从跨因特网的广阔幅员分布的内容索引并提供搜索结果。通用搜索引擎的示例包括由位于美国加州芒廷维尤市的谷歌公司运营的GoogleTM、由位于美国加州桑尼维尔市的雅虎公司运营的Yahoo!TM;以及由位于美国华盛顿州雷德蒙的微软公司运营的BingTM
如此处所使用的,术语“站点特定的搜索引擎”被定义为意味着提供包括仅在一个网站或域上托管的网页和/或内容(或到网页和/或内容的超链接)的搜索结果的搜索引擎。站点特定的搜索引擎常常供网站的运营商使用以使用户在他们的网站上查找特定网页或内容。例如,在线零售商(或“电子零售商”)的网站可以包括便于用户定位由该零售商销售的产品的网页的站点特定的搜索引擎。
发明内容
一个实施例涉及一种至少部分地通过至少一个硬件计算机处理器实现的通过因特网执行对内容的搜索的方法,所述方法包括:接收来自用户的输入;响应于接收到输入向多个搜索引擎发出至少一个搜索查询,其中,所述多个搜索引擎包括至少一个通用搜索引擎和至少一个站点特定的搜索引擎,其中,所述至少一个搜索查询至少部分地基于所述输入的内容。另一实施例涉及利用指令编码的至少一个计算机可读取的介质,当执行所述指令时,执行上文所描述的方法。
再一个实施例涉及一种***,包括:存储用于通过因特网执行对内容的搜索的处理器可执行的指令的至少一个有形的存储器;以及,执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:接收来自用户的输入;响应于接收到输入向多个搜索引擎发出至少一个搜索查询,其中,所述多个搜索引擎包括至少一个通用搜索引擎和至少一个站点特定的搜索引擎,其中,所述至少一个搜索查询至少部分地基于所述输入的内容。
另一实施例涉及一种至少部分地通过至少一个硬件计算机处理器实现的通过因特网执行对内容的搜索的方法,所述方法包括:向多个搜索引擎发出至少一个搜索查询;响应于向所述多个搜索引擎发出所述至少一个搜索查询,从所述多个搜索引擎中的至少一些搜索引擎接收搜索结果;以及,促使所述搜索结果显示在显示设备的显示器上,其中,所显示的搜索结果被分类为多个集合,每一个集合都与特定搜索引擎相关联。再一个实施例涉及利用指令编码的至少一个计算机可读取的介质,当执行所述指令时,执行上文所描述的方法。
再一个实施例涉及一种***,包括:存储用于通过因特网执行对内容的搜索的处理器可执行的指令的至少一个有形的存储器;以及,执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:向多个搜索引擎发出至少一个搜索查询;响应于向所述多个搜索引擎发出所述至少一个搜索查询,从所述多个搜索引擎中的至少一些搜索引擎接收搜索结果;以及,促使所述搜索结果显示在显示设备的显示器上,其中,所显示的搜索结果被分类为多个集合,每一个集合都与特定搜索引擎相关联。
再一个实施例涉及一种至少部分地通过硬件计算机处理器实现的执行对因特网上内容的搜索的方法,所述方法包括:向多个搜索引擎发出至少一个搜索查询,所述多个搜索引擎包括至少一个站点特定的搜索引擎;响应于向所述多个搜索引擎发出所述至少一个搜索查询,从所述多个搜索引擎中的至少一些搜索引擎接收搜索结果,其中,所述搜索结果包括从所述至少一个站点特定的搜索引擎返回的至少一个网页;以及,促使从所述至少一个站点特定的搜索引擎返回的所述至少一个网页显示在显示设备的显示器上。另一实施例涉及利用指令编码的至少一个计算机可读取的介质,当执行所述指令时,执行上文所描述的方法。
再一个实施例涉及一种***,包括:存储用于通过因特网执行对内容的搜索的处理器可执行的指令的至少一个有形的存储器;以及,执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:向多个搜索引擎发出至少一个搜索查询,所述多个搜索引擎包括至少一个站点特定的搜索引擎;响应于向所述多个搜索引擎发出所述至少一个搜索查询,从所述多个搜索引擎中的至少一些搜索引擎接收搜索结果,其中,所述搜索结果包括从所述至少一个站点特定的搜索引擎返回的至少一个网页;以及,促使从所述至少一个站点特定的搜索引擎返回的所述至少一个网页显示在显示设备的显示器上。
再一个实施例涉及一种至少部分地通过至少一个硬件计算机处理器实现的通过因特网执行通过内容的搜索的方法,所述方法包括:接收第一搜索查询;基于所述第一搜索查询的内容,生成至少一个第二搜索查询;选择将向其提供所述至少一个第二搜索查询的多个搜索引擎,其中,所述多个搜索引擎中的至少一个是至少部分地基于所述第一搜索查询的内容来选择的。
再一个实施例涉及涉及利用指令编码的至少一个计算机可读取的介质,当由至少一个硬件计算机处理器执行所述指令时,执行通过因特网执行对内容的搜索的方法,所述方法包括:接收第一搜索查询;基于所述第一搜索查询的内容,生成至少一个第二搜索查询;选择将向其提供所述至少一个第二搜索查询的多个搜索引擎,其中,所述多个搜索引擎中的至少一个是至少部分地基于所述第一搜索查询的内容来选择的。
再一个实施例涉及一种***,包括:存储用于通过因特网执行对内容的搜索的处理器可执行的指令的至少一个有形的存储器;以及,执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:接收第一搜索查询;基于所述第一搜索查询的内容,生成至少一个第二搜索查询;选择将向其提供所述至少一个第二搜索查询的多个搜索引擎,其中,所述多个搜索引擎中的至少一个是至少部分地基于所述第一搜索查询的内容来选择的。
再一个实施例涉及一种至少部分地通过至少一个硬件计算机处理器实现的通过因特网执行通过内容的搜索的方法,所述方法包括:接收来自用户的第一搜索查询;基于所述第一搜索查询的内容生成至少一个第二搜索查询;选择将向其提供所述至少一个第二搜索查询的多个搜索引擎,其中,所述多个搜索引擎中的至少一个是至少部分地基于表示所述用户对特定搜索引擎的使用频率的历史信息来选择的。
再一个实施例涉及涉及利用指令编码的至少一个计算机可读取的介质,当由至少一个硬件计算机处理器执行所述指令时,执行通过因特网执行对内容的搜索的方法,所述方法包括:接收来自用户的第一搜索查询;基于所述第一搜索查询的内容生成至少一个第二搜索查询;选择将向其提供所述至少一个第二搜索查询的多个搜索引擎,其中,所述多个搜索引擎中的至少一个是至少部分地基于表示所述用户对特定搜索引擎的使用频率的历史信息来选择的。
再一个实施例涉及一种***,包括:存储用于通过因特网执行对内容的搜索的处理器可执行的指令的至少一个有形的存储器;以及,执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:接收来自用户的第一搜索查询;基于所述第一搜索查询的内容,生成至少一个第二搜索查询;选择将向其提供所述至少一个第二搜索查询的多个搜索引擎,其中,所述多个搜索引擎中的至少一个是至少部分地基于表示所述用户对特定搜索引擎的使用频率的历史信息来选择的。
再一个实施例涉及一种至少部分地通过至少一个硬件计算机处理器实现的执行对因特网上内容的搜索的方法,所述方法包括:接收来自第一用户的第一搜索查询;基于选择将向其提供至少一个第二搜索查询的多个搜索引擎的第一搜索查询的内容生成至少一个第二搜索查询,所述多个搜索引擎中的至少一个是至少部分地基于表示不同于所述第一用户的至少一个第二用户对特定搜索引擎的使用的频率的历史信息来选择的。
再一个实施例涉及涉及利用指令编码的至少一个计算机可读取的介质,当由至少一个硬件计算机处理器执行所述指令时,执行通过因特网执行对内容的搜索的方法,所述方法包括:接收来自第一用户的第一搜索查询;基于所述第一搜索查询的内容生成至少一个第二搜索查询;选择将向其提供所述至少一个第二搜索查询的多个搜索引擎,其中,所述多个搜索引擎中的至少一个是至少部分地基于表示不同于所述第一用户的至少一个第二用户对特定搜索引擎的使用的频率的历史信息来选择的。
再一个实施例涉及一种***,包括:存储用于通过因特网执行对内容的搜索的处理器可执行的指令的至少一个有形的存储器;以及,执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:接收来自第一用户的第一搜索查询;基于所述第一搜索查询的内容生成至少一个第二搜索查询;选择将向其提供所述至少一个第二搜索查询的多个搜索引擎,其中,所述多个搜索引擎中的至少一个是至少部分地基于表示不同于所述第一用户的至少一个第二用户对特定搜索引擎的使用的频率的历史信息来选择的。
再一个实施例涉及一种显示内容的方法,包括:在显示设备的显示器的第一部分中显示具有多个槽口的转盘;以及,响应于用户对所述多个槽口中的一个的选择,在所述显示器的与所述第一部分分开的第二部分中显示基于用户输入动态地生成的内容。
再一个实施例涉及利用指令编码的至少一个计算机可读取的介质,当由至少一个硬件计算机处理器执行所述指令时,执行一种显示内容的方法,所述方法包括:在显示设备的显示器的第一部分中显示具有多个槽口的转盘;以及,响应于用户对所述多个槽口中的一个的选择,在所述显示器的与所述第一部分分开的第二部分中显示基于用户输入动态地生成的内容。
再一个实施例涉及一种***,包括:存储用于显示内容的处理器可执行的指令的至少一个有形的存储器;以及,执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:在显示设备的显示器的第一部分中显示具有多个槽口的转盘;以及,响应于用户对所述多个槽口中的一个的选择,在所述显示器的与所述第一部分分开的第二部分中显示基于用户输入动态地生成的内容。
再一个实施例涉及一种方法,包括:在显示设备上显示具有包括第一槽口以及最后一个槽口的多个槽口的转盘,其中,一次在所述显示设备上显示所述转盘中的所述多个槽口的仅一部分,其中,用户输入导致所述转盘跨所述显示器滑动,其中,当所述转盘上的所述最后一个槽口被显示,所述转盘折回到所述第一槽口。
再一个实施例涉及利用指令编码的至少一个计算机可读取的介质,当由至少一个硬件计算机处理器执行所述指令时,执行一种方法,包括:在显示设备上显示具有包括第一槽口以及最后一个槽口的多个槽口的转盘,其中,一次在所述显示设备上显示所述转盘中的所述多个槽口的仅一部分,其中,用户输入导致所述转盘跨所述显示器滑动,其中,当所述转盘上的所述最后一个槽口被显示,所述转盘折回到所述第一槽口。
再一个实施例涉及一种***,包括:存储处理器可执行的指令的至少一个有形的存储器;以及,执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:在显示设备上显示具有包括第一槽口以及最后一个槽口的多个槽口的转盘,其中,一次在所述显示设备上显示所述转盘中的所述多个槽口的仅一部分,其中,用户输入导致所述转盘跨所述显示器滑动,其中,当所述转盘上的所述最后一个槽口被显示,所述转盘折回到所述第一槽口。
再一个实施例涉及一种至少部分地在微处理器上实现的执行对因特网上内容的搜索的方法,所述方法包括:接收从用户那里提供的语音输入;对于多个搜索引擎,生成至少一个文本搜索查询,其中,所述至少一个文本搜索查询至少部分地是通过对所述语音输入执行语音识别来生成的。
再一个实施例涉及涉及利用指令编码的至少一个计算机可读取的介质,当由至少一个硬件计算机处理器执行所述指令时,执行在因特网上执行对内容的搜索的方法,所述方法包括:接收从用户提供的语音输入;对于多个搜索引擎生成至少一个文本搜索查询,其中,所述至少一个文本搜索查询至少部分地是通过对所述语音输入执行语音识别来生成的。
再一个实施例涉及一种***,包括:存储用于通过因特网执行对内容的搜索的处理器可执行的指令的至少一个有形的存储器;以及,执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:接收从用户提供的语音输入;对于多个搜索引擎生成至少一个文本搜索查询,其中,所述至少一个文本搜索查询是至少部分地通过对所述语音输入执行语音识别来生成的。
再一个实施例涉及一种至少部分地通过移动通信设备的至少一个硬件计算机处理器实现的通过因特网执行对内容的搜索的方法,所述方法包括:在所述移动通信设备处接收指定第一搜索查询的用户输入;从所述移动通信设备向多个搜索引擎发出至少一个第二搜索查询,其中,所述至少一个第二搜索查询至少部分地基于所述第一搜索查询的内容。
再一个实施例涉及涉及利用指令编码的至少一个计算机可读取的介质,当由至少一个硬件计算机处理器执行所述指令时,执行通过因特网执行对内容的搜索的方法,所述方法包括:在所述移动通信设备处接收指定第一搜索查询的用户输入;从所述移动通信设备向多个搜索引擎发出至少一个第二搜索查询,其中,所述至少一个第二搜索查询至少部分地基于所述第一搜索查询的内容。
再一个实施例涉及一种移动通信设备,包括:存储用于通过因特网执行对内容的搜索的处理器可执行的指令的至少一个有形的存储器;以及,执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:在所述移动通信设备处接收指定第一搜索查询的用户输入;从所述移动通信设备向多个搜索引擎发出至少一个第二搜索查询,其中,所述至少一个第二搜索查询至少部分地基于所述第一搜索查询的内容。
再一个实施例涉及一种至少部分地通过至少一个硬件计算机处理器实现的通过因特网促进对内容的搜索的方法,所述方法包括:接收来自客户端设备的第一搜索查询;标识要被查询的至少一个搜索引擎;生成至少一个第二搜索查询,其中,所述至少一个第二搜索查询是至少部分地基于所述第一搜索查询的内容生成的;以及,向所述客户端设备发送所述至少一个第二搜索查询以及指定所标识的要用于使用至少一个第二搜索查询来执行因特网搜索的信息。
再一个实施例涉及涉及利用指令编码的至少一个计算机可读取的介质,当由至少一个硬件计算机处理器执行所述指令时,执行通过因特网促进对内容的搜索的方法,所述方法包括:接收来自客户端设备的第一搜索查询;标识要被查询的至少一个搜索引擎;生成至少一个第二搜索查询,其中,所述至少一个第二搜索查询是至少部分地基于所述第一搜索查询的内容生成的;以及,向所述客户端设备发送所述至少一个第二搜索查询以及指定所标识的要用于使用至少一个第二搜索查询来执行因特网搜索的信息。
再一个实施例涉及一种***,包括:存储用于通过因特网促进对内容的搜索的处理器可执行的指令的至少一个有形的存储器;以及执行所述处理器可执行的指令以执行下列操作的耦合到所述至少一个有形的存储器的至少一个硬件计算机处理器:接收来自客户端设备的第一搜索查询;标识要被查询的至少一个搜索引擎;生成至少一个第二搜索查询,其中,所述至少一个第二搜索查询是至少部分地基于所述第一搜索查询的内容来生成的;以及,向所述客户端设备发送所述至少一个第二搜索查询以及指定所标识的要用于使用至少一个第二搜索查询来执行因特网搜索的信息。
附图说明
在附图中:
图1是示出了来自多个不同的搜索引擎的搜索结果的集合的维恩图;
图2是根据一些实施例的用于向多个搜索引擎发送搜索查询并从多个搜索引擎接收搜索结果的说明性过程的流程图;
图3是其中可以实现一些实施例的计算机环境的框图;
图4是根据一些实施例的执行用于查询多个搜索引擎的应用程序以及用于对语音搜索查询执行语音识别的自动化语音识别器的客户端设备的框图;
图5是根据一些实施例的执行用于查询多个搜索引擎的应用程序的客户端设备以及执行自动化语音识别器并为该客户端设备提供语音识别服务以对语音搜索查询执行语音识别的服务器的框图;
图6是其中可以实现一些实施例的计算环境的框图;
图7是其中根据一些实施例使用多个不同的语言模型来识别语音查询的音频数据的框图;
图8是根据一些实施例的响应于接收到用户所提供的搜索查询来指示客户端设备查询哪些搜索引擎的服务器的框图;
图9是根据一些实施例的示出了可以被生成以查询多个搜索引擎的通用资源定位符(URL)的图;
图10是其中可以显示来自多个搜索引擎的搜索结果的客户端设备的显示器的图;以及
图11是在其上面可以实现下面所描述的各方面的说明性计算设备的框图。
具体实施方式
发明人已经认识到,对于给定用户生成的搜索查询,用户可能对涉及该搜索查询的不同类型的信息感兴趣。例如,对于搜索查询“Miles Davis”,用户可能对获取有关MilesDavis的传记信息,听Miles Davis的音乐的样本或购买Miles Davis的音乐,和/或与对Miles Davis感兴趣的其他人建立社交网络感兴趣。历史上,为获取这三种不同类型的信息,用户将向三个不同的搜索引擎输入搜索字符串“Miles Davis”。例如,用户将向百科全书网站的搜索引擎输入此搜索字符串以获取传记信息,将向销售音乐以收听或购买音乐的网站的搜索引擎输入搜索字符串,并将向社交网络站点的搜索引擎输入搜索字符串以与其他人进行联系。发明人已经认识到,此过程常常费时费力,因为用户必须导航到多个不同的网站(并潜在地管理多个不同的浏览器窗口或标签)并反复地输入相同搜索字符串。
发明人还认识到,由于不同的搜索引擎以不同的方式来索引网页和/或内容、索引内容的不同的领域,和/或使用不同的算法来确定哪些网页和/或内容最佳匹配特定搜索查询,不同的搜索引擎可以响应于相同搜索查询,提供不同的(尽管可能是重叠的)的搜索结果的集合。此概念通过图1中的维恩图示出。图1的维恩图中所描绘的每一个集合都表示响应于关键字“Miles Davis”的用户提供的搜索查询,所提供的来自四个假设的搜索引擎(即,搜索引擎1、搜索引擎2、搜索引擎3,以及搜索引擎4)中的一个的搜索结果。在图1中,集合101包括从搜索引擎1所提供的结果,并包括搜索结果“Q”、“R”、“S”,以及“T”。集合103包括从搜索引擎2所提供的结果,并包括结果“R”、“S”,以及“Y”。集合105包括从搜索引擎3所提供的结果,并包括结果“S”,“T”以及“X”。集合107包括从搜索引擎4所提供的结果,并包括结果“Z”。如图1所示,某些搜索结果只包括在其中一个集合中,因而只从四个搜索引擎中的一个返回,而其他搜索结果包括在多个集合中,因而从搜索引擎中的两个或更多返回。
当一个搜索引擎响应于搜索查询返回一组搜索结果时,该搜索引擎一般以有序列表返回结果。列表可以按相关性排序,可以基于为搜索结果中的较高的位置支付的金额来排序,和/或可以基于其他准则来排序。例如,搜索引擎确定为最相关的网页或内容位于结果的列表的顶部,而搜索引擎确定为不太相关的网页或内容位于结果列表的更底部。作为另一个示例,特定电子设备制造商可以给电子设备零售商支付费用,以当用户向该电子零售商的网站的站点特定的搜索引擎输入包括单词“电视机”的搜索查询时在列表中的较高的位置列出其电视机。
发明人已经认识到,由于不同的搜索引擎使用不同的算法来确定网页和/或内容将以什么顺序在搜索结果中列出,甚至在两个不同的搜索引擎响应于特定搜索查询(例如,“Miles Davis”)在它们的搜索结果中包括相同网页或内容段的情况下,该网页或内容段可以位于由两个搜索引擎中的第一搜索引擎所提供的结果列表的顶部或靠近顶部(例如,由于第一搜索引擎确定该网页或内容段在评估中的内容领域特别相关),但是,在由两个搜索引擎中的第二搜索引擎所提供的结果列表中位于更底部(例如,由于两个搜索引擎中的第二搜索引擎确定该网页或内容段在它评估的内容领域不太相关)。类似地,在来自第二搜索引擎的搜索结果的列表的顶部附近列出的某些结果可能在由第一引擎所提供的结果的列表中被列的低得多。发明人已经认识到,用户更有可能觉察并访问位于列表的顶部附近的结果。如此,通过只使用两个搜索引擎中的一个,用户可能不会觉察或访问可能与用户高度相关的结果。
如此,发明人已经认识到,只向单个搜索引擎发出用户指定的搜索查询增大潜在地相关的某些网页和/或内容段不包括在搜索结果中或在返回的搜索结果的列表中被列得太低以致于用户忽略它们的风险。另外,发明人还认识到,只向单个搜索引擎发出这样的搜索查询可能将返回的内容限制到仅由该搜索引擎搜索的和/或索引的内容的类型,而用户可能对涉及该搜索查询的许多不同类型的内容感兴趣。
已经开发出称为元搜索(metasearch)引擎或搜索引擎综合器的某些基于Web的软件程序,它们接收用户指定的搜索查询,向多个搜索引擎发出该搜索查询,从这些搜索引擎中的每一个接收结果,去除重复,将这些搜索结果聚合为单个列表,并向用户显示聚合的搜索结果的此列表。这样的元搜索引擎的一个示例是由美国华盛顿州贝尔维尤市的Infospace公司运营的DogpileTM。然而,发明人已经认识到,这些元搜索引擎具有若干个缺点。
首先,被这些元搜索引擎查询的搜索引擎只包括通用搜索引擎,而不包括任何站点特定的搜索引擎。
第二,由于元搜索引擎响应于用户指定的搜索查询,向用户显示来自若干个不同的搜索引擎的聚合的搜索结果的单个列表,用户没有能力看到哪一个搜索引擎提供了哪一个搜索结果,从而看到多个搜索引擎中的每一个认为特定搜索结果相关性如何,或看看从任何特定搜索引擎返回的结果全集。
第三,元搜索引擎在接收从在用户的客户端设备上执行的浏览器或其他软件应用程序发出的用户指定的搜索查询的一个或多个服务器上运行,并从服务器向将被查询的多个搜索引擎发出搜索查询。由于元搜索引擎可能从大量的用户接收搜索查询并向他们提供聚合的搜索结果,因此,元搜索引擎在其上面操作的服务器可以定期发出大量的搜索查询给它聚合其结果的搜索引擎。这种情况的一个后果是,搜索引擎可能每天从同一个服务器或IP地址接收成千上万或者甚至数百万的搜索查询,并可能将此行为感觉为单个用户向搜索引擎发出大量的搜索查询。许多搜索引擎运营商将把此行为视为是对搜索引擎服务的滥用和/或潜在的拒绝服务攻击,并将采取措施以阻止来自发出这样的大量的查询的IP地址的到它们的搜索引擎的搜索查询。因此,元搜索引擎运营商必须通常与其搜索引擎结果被元搜索引擎聚合的搜索引擎运营商签订合同,以允许元搜索引擎向这些搜索引擎发出大量的搜索查询。
第四,这些元搜索引擎不为用户提供控制他的或她的搜索查询将向哪些搜索引擎提供的任何能力。相反,现有的元搜索引擎具有搜索引擎的固定集合,以向其提供每一搜索查询。如此,用户不能控制响应于搜索查询将提供哪些搜索引擎的结果,且元搜索引擎不执行基于哪一个用户发出搜索查询或基于用户的搜索查询的内容来查询哪些搜索引擎的任何自定义。
下面所描述的一些实施例指向涉及向多个搜索引擎发出用户指定的搜索查询和/或向用户显示这样的查询的结果的技术。尽管下面所讨论的某些实施例解决现有的元搜索引擎的上文所讨论的缺陷中的全部,但是,不是每一个实施例都解决元搜索引擎的上文所讨论的缺陷中的全部,一些实施例不解决这些缺陷中的任何缺陷。如此,应该理解,本发明不仅限于解决元搜索引擎的上文所描述的缺陷中的全部或任何一个的实施例。
图2是在某些实施例中,可以由在用户的客户端设备上运行的应用程序执行以向多个搜索引擎发出搜索查询并向用户显示来自这些搜索引擎中的每一个的搜索结果的说明性过程200的流程图。应用程序在其上运行以执行过程200的客户端设备可以是具有能够运行软件计算机程序的任何类型的计算设备。可以使用的客户端设备的类型的示例包括膝上型计算机或台式个人计算机、个人数字助理(PDA)、移动电话、服务器计算机,和/或各种其他类型的计算设备。在此处所描述的一个特定实现中,下面所描述的技术可以在移动电话(例如,智能电话)上实现,并与语音识别能力相结合,以便用户可以通过语音发出搜索查询,但是,本发明的全部方面不仅限于在移动电话上使用或与语音识别接口一起使用。
从上文的描述可以理解,过程200准许用户启动客户端设备上的应用程序,输入搜索查询(例如,通过语音或通过文本),并查看从多个不同的搜索引擎所提供的该搜索查询的搜索结果。
过程200可以在其中被执行的环境的一个非限制性示例是图3所示的联网的计算机环境300。在图3中,用户301通过客户端设备303访问因特网305。搜索引擎307a、307b、307c、...以及307n在通过因特网305可访问的服务器上运行。过程200从动作201开始,在此,在客户端设备303上运行的应用程序接收用户指定的搜索查询。如下面比较详细地讨论的,查询可以通过各种可能的客户端设备用户界面中的任何一种以各种可能的方式中的任何一种接收。过程接下来继续到动作203,在此,应用程序响应于接收到用户指定的查询,确定要查询哪个搜索引擎307。如下面详细地讨论的,要被查询的搜索引擎集合可以动态地确定,并可以是用户可配置的,尽管本发明的各方面不仅限于这一方面,因为在某些实施例中,要被查询的搜索引擎集合可以是静态的,并且是不可配置的。
过程接下来前进到动作205,在此,应用程序通过因特网305,向在动作203中标识的搜索引擎307发出基于在动作201中接收到的用户指定的搜索查询所生成的搜索查询。在某些实施例中,这些搜索引擎可以包括通用搜索引擎和/或站点特定的搜索引擎,但是,本发明不仅限于这一方面,因为在某些实施例中,可以只查询站点特定的搜索引擎或只查询通用搜索引擎。过程接下来继续到动作207,在此,应用程序通过因特网305接收来自在动作205中查询的搜索引擎的搜索结果。然后,过程前进到动作209,在此,搜索结果通过客户端设备303上的显示器向用户显示。
应该理解,过程200描绘了可以执行动作201、203、205、207以及209的一个说明性顺序。各种其他顺序也是可以的,在各种不同的实施例中,这些动作可以以不同的顺序来执行。另外,过程200的每一个动作的各种可能的实现也是可以的,下面对它们进行了比较详细的讨论。
I.接收搜索查询
如上文所讨论的,在过程200的动作201,应用程序接收指定搜索查询的用户输入。此用户输入可以以各种方式中的任何一种并以各种格式中的任何一种来接收。例如,在某些实施例中,用户输入可以作为文本来接收,并可以通过被集成到客户端设备中或耦合到客户端设备的输入设备来接收。这样的输入设备的示例包括键盘、触摸屏、鼠标,和/或用户可以用来向计算设备提供文本输入的任何其他输入设备。
在某些实施例中,用户输入可以作为音频通过被集成到客户端设备中或耦合到客户端设备的麦克风来接收。例如,用户可以向麦克风说出搜索查询,应用程序可以接收用户的语音输入作为音频数据。可以对音频数据执行自动化语音识别,以获取可以被用作用于查询搜索引擎的基础的识别结果(例如,以文本形式)。在某些实施例中,要被查询的搜索引擎中的一个或多个可以具有语音接口。在这样的实施例中,可以向这样的搜索引擎提供音频,以代替例如基于音频的自动化语音识别提供文本搜索查询。自动化语音识别技术已为大家所熟知,可以使用各种自动化语音识别技术中的任何一种来获取音频数据的识别结果。
在某些实施例中,客户端设备可以提供若干个不同的选项,用户可以从这些选项中选择一选项来提供搜索查询。例如,在某些实施例中,客户端设备可以允许用户以语音格式(例如,通过向麦克风说出查询)或以文本格式(例如,通过在键盘或者触摸屏上键入查询)来输入查询。
在其中执行对语音输入的自动化语音识别的各实施例中,对用户所提供的音频数据的自动化语音识别可以以各种方式中的任何一种来完成。例如,如图4所示,在某些实施例中,客户端设备可以运行自动化语音识别器,该语音识别器是对音频数据执行自动化语音识别的软件程序,应用程序可以使用自动化语音识别器来获取音频数据的识别结果。在图4中,客户端设备401运行应用程序403,该应用程序403执行过程200和自动化语音识别器405。当应用程序403接收用户所提供的音频数据407时,它可以将音频数据传递到自动化语音识别器405。自动化语音识别器405可以对音频数据执行自动化语音识别,以获取识别结果409,并可以将识别结果409返回到应用程序403,用于格式化对于语音引擎的查询。
发明人认识到,某些客户端设备可能没有足够的计算资源来运行以所需精确度和/或效率操作的自动化语音识别器。即,例如,客户端设备可能没有足够的存储器来存储语音模型、语言模型、语法,和/或这样的语音识别器的其他组件,和/或可能没有足够强大以便以所需的有效度来执行自动化语音识别的处理器。这可能在任意数量的情况下发生,特别是当客户端设备是诸如PDA或移动电话之类的手持式设备时。
如此,在某些实施例中,对从用户提供的音频数据的自动化语音识别可以由执行接收用户输入并基于这样的输入来管理搜索的应用程序的客户端设备外部的计算机来执行。例如,如图5所示,客户端设备501执行接收由用户以音频数据的形式所提供的语音输入的应用程序503。自动化语音识别可以由在服务器505上执行的自动化语音识别器507对音频数据执行。如此,如图5所示,在某些实施例中,应用程序可以向在服务器505上执行的自动化语音识别器507发送用户所提供的音频数据509。音频数据509可以以各种可能的方式中的任何一种发送到自动化语音识别器。例如,在某些实施例中,用户所提供的音频可以被麦克风捕捉,可以对捕捉到的麦克风音频执行模数转换,以生成数字音频数据。此数字音频数据可以被提供给自动化语音识别器507。在某些实施例中,在将数字音频数据发送到自动化语音识别器之前,可以执行对数字音频数据的某种处理。例如,可以压缩数字数据,或者也可以执行某种预处理,以提取音频的对自动化语音识别有用的参数。可以将所提取的参数与音频数据一起传递到自动化语音识别器507。在使用压缩的各实施例中,可以使用各种可能的压缩算法中的任何一种。例如,在某些实施例中,可以使用speexTM编解码器。
如此,应该理解,如此处所使用的,术语“音频数据”可以指模拟音频信号或模拟音频信号的数字表示或压缩的数字表示。
自动化语音识别器507可以对音频数据509执行自动化语音识别,并将包括来自音频数据509的结果的响应511返回到应用程序503。结果可以采取任何合适的形式。作为一个非限制性示例,结果可以包括由自动化语音识别器507通过对音频数据执行自动化语音识别所获取的文本识别结果。
在图5的示例中,客户端设备501被描绘成直接与服务器505进行通信。应该理解,这种描绘仅仅是为促进对在客户端设备501和服务器505之间发送的信息的类型的理解而提供的,客户端设备501可以以各种方式中的任何一种并通过任何合适的通信介质,包括例如通过因特网来与服务器505进行通信。
在图4的示例中,对在客户端设备处接收到的音频数据的自动语音识别是在客户端设备上执行的,而在图5的示例中,音频数据被从客户端设备提供到服务器,服务器在服务器上执行自动语音识别。然而,在某些实施例中,自动语音识别可以部分地由客户端设备执行,部分地由服务器执行。例如,ASR的一部分可以在客户端上执行,一部分可以在服务器上执行。可以这样做,例如,以使得客户端设备能够执行语音识别过程的一部分,而将计算密集的部分留给服务器。
在某些实施例中,服务器505可以为多个客户端设备提供自动化语音识别服务。图6示出了多个用户601a,601b,...601n中的每一个操作客户端设备603a,603b,...,603n所在的计算环境。每一个客户端设备603都可以执行应用程序,该应用程序执行图2的过程200,以通过因特网607向搜索引擎609a,609b,609c,...,609n发送搜索查询,并向它们的相应的用户显示这些搜索查询的结果。服务器605可以提供自动化语音识别服务。
如此,在客户端设备603以音频数据的形式接收用户所提供的搜索查询的各实施例中,客户端设备603可以将音频数据发送到服务器605以对音频数据执行自动化语音识别,并可以接收识别结果和/或基于响应中的识别结果的其他信息。
在上文所讨论的示例中,服务器605为多个客户端设备603提供自动化语音识别服务。在某些替换实施例中,服务器605可以提供额外的功能,以促进搜索查询从客户端设备603向搜索引擎609中的一个或多个的发出。下面详细描述了此额外的功能的某些示例。为简单起见,在图6的示例中,只描绘了一个服务器605。然而,应该理解,如对于接收大量的业务量的因特网服务器所常见的,可以使用任意数量的服务器来提供服务器605的此处所描述的功能,可以使用各种负载平衡技术中的任何一种来跨这些服务器平衡来自客户端设备603的业务量负载。
在用户通过语音(即,以音频数据的形式)来提供搜索查询的各实施例中,可以使用多种技术来促进对音频数据的自动化语音识别,以生成搜索查询。这些技术可以用于在客户端设备上执行自动化语音识别的各实施例中,以及在客户端设备外部的计算机上执行自动化语音识别的各实施例中。
在某些实施例中,可以基于将被查询的搜索引擎,来选择在对用户所提供的搜索查询的音频数据执行语音识别时自动化语音识别器所使用的语言模型。例如,如图7所示,在某些实施例中,自动化语音识别器可以使用多个不同的语言模型,对相同音频数据执行识别,以产生多个不同的识别结果。在图7中,使用语言模型703a,703b,...,703n,对音频数据701执行语音识别,以生成识别结果705a,705b,...,705n。取决于音频数据701的内容以及语言模型703之间的差异,识别结果705中的每一个都可以相同,每一个都可以不同于其他的,或者某些可以相同,而某些可以不同。语言模型703中的一个或多个可以与特定搜索引擎相关联,使用与特定搜索引擎相关联的语言模型所生成的识别结果可以充当向该搜索引擎发出的搜索查询的基础。
如此,例如,在某些实施例中,对由特定搜索引擎索引的内容训练的语言模型可以被用来生成充当向该搜索引擎发出的查询的基础的识别结果。这会导致更加可能产生对于该搜索引擎的相关搜索结果的查询。
当向索引一般指向特定的主题领域的有限量的内容的站点特定的搜索引擎发出查询时,此技术可能特别有用。例如,在线鞋零售商可以具有对于其电子商务网站的站点特定的搜索引擎。如此,此网站的内容可以包括鞋特定的术语以及短语,诸如鞋的品牌和型号的名称,对鞋的属性的描述,以及各种其他鞋特定的信息。通过对于此网站的内容训练语音识别器所使用的语言模型,识别器更有可能准确地识别包括鞋特定的术语和短语的语音。
如此,例如,如果接收到以音频输入的形式的用户所提供的搜索查询并将其向站点特定的搜索引擎和通用搜索引擎发出,可以使用第一语言模型(例如,针对涉及由站点特定的搜索引擎索引的内容的内容而训练的语言模型)来识别音频输入,以生成充当要向站点特定的搜索引擎发出的查询的基础的识别结果,还可以使用不同于第一语言模型的第二语言模型(例如,针对更一般性的内容训练的语言模型)来识别音频输入以生成充当要向通用搜索引擎发出的查询的基础的识别结果。
在上文所描述的示例中,通过使用与特定搜索引擎相关联的语言模型来执行语音识别而获取的识别结果充当向该搜索引擎发出的搜索查询的基础。然而,在某些实施例中,并非向不同的搜索引擎发出使用不同的语言模型获取的识别结果,可以使用不同的语言模型来获取多个识别结果,带有最高分数或置信度值的识别结果可以充当向多个搜索引擎发出的搜索查询的基础。例如,在图7中,识别结果705中的每一个都可以通过使用特定语言模型来对音频数据701执行自动语音识别来生成。在某些实施例中,识别结果705中的一个可以被选择为充当用于生成要向多个搜索引擎发出的搜索查询的基础的结果。可以以任何合适的方式来进行此选择。例如,如上文所讨论的,可以选择具有最高分数或置信度的识别结果作为语音识别的结果,或可以使用任何其他合适的准则或准则的组合。
发明人认识到,在使用多种语言模型对相同音频数据执行语音识别的情况下,利用不同的语言模型中的每一个来执行多个分开的并且独立的语音识别过程可能会增加获取识别结果的延迟和/或可能会增大在执行语音识别时所使用的处理资源的量。
如此,在某些实施例中,并非对于每一个语言模型都对音频数据执行整个独立语音识别过程,可以使用一个一般化语言模型来创建假设单词序列的网格,可以使用一个或多个选择的语言模型来重新确定此网格的分数,以特别对于所选语言模型产生识别结果。如此,在生成识别结果时所消耗的时间和处理资源可以减少,因为相同网格用于产生每一个识别结果,如此,网格只须生成一次。
在图7的示例中,音频数据701被示为直接被提供到语言模型703中的每一个。这种描绘仅仅是为促进对如何可以使用多种语言模型的理解而提供的,应该理解,在实践中,语言模型可以不直接对音频数据进行操作。例如,可以使用语音模型和通用语言模型来从音频数据中获取带有多个假设的单词序列的网格,并可以使用专用语言模型703来对一般性的网格进行重新评分,并获取适合于特定的搜索引擎的单词的序列。
在某些实施例中,并非在生成要被提供到搜索引擎的搜索查询时使用多个不同的语言模型,可以从多个可用的语言模型中选择一种语言模型。例如,在某些实施例中,可以将一种语言模型标识为很好地适合于识别特定语音查询,在识别该查询时可以使用该语言模型。
可以使用各种可能的准则中的任何一种或准则的组合来选择要用于识别特定语音查询的语言模型。例如,在某些实施例中,查询的内容可以被用作用于选择要使用的语言模型的基础。例如,可以使用两遍通过过程,其中使用没有专业词汇的通用语言模型来执行语音查询的第一遍通过自动语音识别或语音查询的一部分。这样的语言模型可以识别查询中的某些单词,但是,可能不会准确地识别全部单词。从第一遍通过中获取的识别结果可以被用来基于主题或类别对查询进行分类。可以使用各种已知的分类技术中的任何一种。
基于该分类,可以选择具有涉及标识的主题或类别的专业词汇的语言模型。在选择语言模型之后,可以使用所选语言模型来执行自动语音识别的第二遍通过。例如,如果在第一遍通过之后确定语音查询包括诸如“方向”、“街道”或“公路”之类的单词,则可以确定语音查询是地图相关的查询,则可以在第二遍通过中选择和使用地图相关的语言模型(例如,包括美国和/或其他国家的城市、街道,以及位置名称的语言模型)。
如下面比较详细地讨论的,来自第二遍通过的识别结果可以充当要被提供到一个或多个搜索引擎的一个或多个搜索查询的基础。另外,如下面比较详细地讨论的,可以基于被选择识别第二遍通过中的查询或从第二遍通过中获取的识别结果的内容的语言模型来选择查询的搜索引擎(一个或多个)。
在某些实施例中,用来识别从用户作为音频数据提供的语音搜索查询的语言模型可以基于所感兴趣的主题来更新。这可以以各种可能的方式中的任何一种来进行。发明人认识到,当前事件频繁地导致搜索引擎接收到包括与特定事件相关联的关键字(包括以前未使用的并且不是频繁搜索的主题的关键字)的大量的搜索查询。例如,如果在电影院正在放映流行的新电影,搜索引擎可能从不同的用户那里接收到包括该电影的名称、电影中的演员们的姓名,或与该电影相关联的其他关键字的大量的搜索查询。类似地,如果一个大型体育事件即将来临,则搜索引擎可能接收到包括参与该事件的队伍的名称和/或运动员名称的大量的查询,或者流行文化中的一个事件可能将以前公众不知道的人推到镁光灯下(例如,中了大奖的人、被控告引人注目的罪行的人、涉及引人注目的丑闻的人等等)。
在某些实施例中,可以标识与最近的用户兴趣的主题相关联的单词和/或短语,并可以更新语言模型以改善识别这些单词和/或短语的精确度。可以以各种方式中的任何一种来标识这些单词和/或短语。例如,在用户所提供的查询(例如,以音频格式、文本格式,或某种其他格式)从多个客户端设备被提供到服务器或服务器集合的某些实施例中,服务器或服务器集合可以标识频繁地使用的搜索项或这些搜索查询中的短语,可以基于这些频繁地使用的搜索项来更新语言模型。在其他实施例中,与所感兴趣的主题相关联的单词和/或短语可以由带有标识这样的单词或短语的任务的一个或多个人手动标识。
可以利用任何所需的频率度以此方式来更新语言模型。例如,在某些实施例中,可以以规则间隔,诸如每天一次、每两天一次、每天两次、每周一次,或各种其他可能的间隔中的任何一种,来更新语言模型。在某些实施例中,可以响应于用户动作,诸如来自用户的更新语言模型的指示或以任何其他合适的方式,来更新语言模型。
在某些实施例中,在用户搜索查询中提供的单词、从网络爬行中获取的单词,和/或来自其他来源的单词可以被收集,并用来更新语言模型。可以维护指出单词在源数据中的的出现的次数的单词计数,可以将其单词计数超过阈值的单词添加到语言模型中。
在某些实施例中,可以生成要被添加到语言模型中的每一个单词的自动发音(例如,音素的序列),和与其对应的单词一起被包括在语言模型中。在某些实施例中,人审查者(例如,语言学家)可以审查,并且如果批准,在将它添加到语言模型中之前修改自动地生成的发音,。
在某些实施例中,在对搜索查询的自动化语音识别中所使用的语言模型可以使用指出用户选择了哪些搜索结果的反馈来更新。这可以以各种可能的方式中的任何一种来进行。例如,在某些实施例中,自动化语音识别器可以从用户所提供的语音搜索查询的音频数据生成识别结果。此识别结果可以充当向一个或多个搜索引擎提供的一个或多个搜索查询的基础,来自一个或多个搜索引擎的搜索结果可以响应于查询而被返回并向用户显示。用户可以选择搜索结果中的一个或多个来查看特定网页或内容段。在某些实施例中,有关用户选择了哪些搜索结果的信息可以被用来更新自动化语音识别器所使用的语言模型。例如,用户可以说出搜索查询“Willie Mays”,并且自动化语音识别器可能不正确地将该语音识别为“Willy Maze”。因而可能向一个或多个搜索引擎发出短语“Willy Maze”的搜索查询。然而,搜索引擎中的一个或多个可能在其结果列表中返回指向带有关于Willie Mays的传记信息的网页的超链接。如果用户选择此超链接来访问该网页,则该网页的内容可以被用来更新语言模型。这可以增大下一次用户说短语“Willie Mays”时,它将被正确地识别的可能性。
在某些实施例中,可以使用从特定用户获取的以前的发声,针对该用户的语音自定义用于该用户的语言模型。这可以以各种方式中的任何一种来进行。例如,在某些实施例中,从特定说话者接收到的语音数据可以被表示为“词袋”特征矢量,目标是发现一组代表性的潜在的说话者“说明”数据。结果是,例如,类似的说话者以概率方式被聚集在一起。这些集群可以被用来构建一组潜在的说话者语言模型组件。通过使用这些潜在的组件,通过使用从正在为其执行自适应的特定说话者接收到的语音数据估计语言模型组件的说话者特定的线性内插权重,执行对特定用户的自适应。
在某些实施例中,用于特定用户的语言模型可以基于该用户的历史浏览信息来更新。这可以以各种方式中的任何一种来进行。例如,基于用户的浏览历史,可以标识频繁地访问的网站。用来识别语音查询的语言模型可以使用其中强调了来自被频繁地访问的网站的内容的训练语料库被重新训练。
上文所描述的用于选择语言模型以促进自动化语音识别的技术中的任何或全部可以彼此组合地使用。另外,应该理解,不必使用这些用于选择语言模型的技术,在某些实施例中,可以使用相同语言模型来处理全部语音输入。
II.确定要查询哪一个搜索引擎
如上文所讨论的,在过程200中的动作203中,响应于接收到用户指定的查询,应用程序确定要查询多少搜索引擎以及哪些搜索引擎。这可以以各种方式中的任何一种来进行。
例如,在某些实施例中,被查询的搜索引擎集合可以是静态的。例如,应用程序可以被硬编码或以其他方式被配置成查询特定的搜索引擎集合。在这样的实施例中,应用程序响应于它接收到的每一用户所提供的搜索查询来查询搜索引擎的相同集合。相应地,在这些实施例中,动作203可以被视为通过执行应用程序的软件代码来执行,该应用程序通过简单地利用应用程序中的静态信息或可被应用程序访问的静态信息来标识那些搜索引擎,来确定要被查询的搜索引擎。
在其他实施例中,确定要查询哪些搜索引擎可以基于各种可能的准则中的一个或多个来动态地进行。例如,要被查询的搜索引擎可以基于来自用户的指出要查询的一个或多个搜索引擎的显式的指令来确定,可以基于查询的内容来确定,可以基于提供查询的用户的历史浏览信息或访问模式来确定,可以基于不同于提供查询的用户的一个或更多其他用户的历史浏览信息或访问模式来确定,可以基于上述各项中的两个或更多项的任何组合,和/或可以基于若干个其他可能的准则中的任何一个或更多来确定。
在某些实施例中,使用上面列出的准则来确定要查询哪些搜索引擎可以由在客户端设备上运行的应用程序来进行。在其他实施例中,使用上面列出的准则来确定要查询哪些搜索引擎可以由运行应用程序的客户端设备外部的计算机来进行,而此计算机可以向应用程序提供标识要被查询的搜索引擎的信息。在这些实施例中,应用程序根据由外部计算机向它提供的信息来确定要查询哪些搜索引擎。
例如,在图6中的说明性环境中,关于要查询哪些搜索引擎的确定可以由服务器605来进行,基于此确定,服务器605可以指示在客户端设备603上运行的应用程序要查询哪些搜索引擎。在某些实施例中,服务器605可以通过向应用程序提供要被查询的搜索引擎的通用资源定位符(URL),来指示应用程序要查询哪些搜索引擎,其中,要被查询的每一个搜索引擎的URL包括适当地为该搜索引擎格式化的搜索字符串。例如,如图8所示,在客户端设备803上运行的应用程序可以从用户801接收可以是文本格式、音频格式或某种其他格式的搜索查询。客户端设备803可以将用户所提供的搜索查询传递到服务器805,该服务器805可以确定要查询哪些搜索引擎,为确定的搜索引擎生成带有适当的搜索字符串的URL,并将该URL返回到客户端设备803上的应用程序。在用户所提供的查询是作为音频数据提供的语音查询的情况下,在某些实施例中,服务器805可以对音频数据执行自动化语音识别,以生成识别结果,并基于识别结果来确定要查询哪些搜索引擎。在其他实施例中,可以在客户端设备803上执行自动化语音识别,识别结果,并非音频数据,可以从客户端设备803发送到服务器805。
图9示出了对于搜索查询“Miles Davis”可以为三个不同的搜索引擎生成的URL的示例。在关于要查询哪些搜索引擎的确定只在客户端设备上作出的各实施例中,客户端设备可以生成不同的搜索引擎的URL。在关于要查询哪些搜索引擎的确定在服务器上进行的某些实施例中,服务器可以指示客户端设备要查询哪些搜索引擎,客户端设备可以生成这些搜索引擎的URL。
某些搜索引擎不能利用简单URL来查询。例如,对于某些搜索引擎,客户端首先与搜索引擎建立连接或会话,然后,将查询发送到搜索引擎。如果这样的搜索引擎被标识为要被查询的搜索引擎,可以以适于该搜索引擎的格式生成基于用户所提供的查询的内容的查询。类似于URL,对于这样的搜索引擎的查询可以由客户端设备上的应用程序生成和/或由客户端设备外部的计算机(例如,服务器605)生成。
如上文所讨论的,在某些实施例中,关于要查询哪些搜索引擎的确定可以至少部分地基于来自用户的标识他或她希望查询的哪些搜索引擎的直接输入来进行。例如,用户可以从由应用程序所提供的列表中选择他或她希望查询哪些搜索引擎,用户可以在查询中标识搜索引擎(例如,“给我关于乔治华盛顿的***页面(give me the Wikipediapage for George Washington)”或“给我关于约翰烧烤酒吧的Yelp点评(give me theYelp review for John Doe's Bar and Grill)”等等),或可以以某种其他方式来提供此输入。
在某些实施例中,每当用户向应用程序提供搜索查询时,都可以提供这样的输入。在其他实施例中,此输入可以由用户提供一次,应用程序可以存储标识用户指出的搜索引擎的信息,每当接收到用户所提供的搜索查询时,应用程序可以使用此存储的信息来确定要查询哪些搜索引擎。
在某些实施例中,代替应用程序存储此信息,应用程序可以向外部计算机(例如,图6中的服务器605)提供此信息,信息可以存储在其上。如此,当用户向应用程序输入搜索查询时,服务器605可以使用此信息来确定要查询哪些搜索引擎,并可以指示应用程序查询这些搜索引擎(例如,通过提供URL或以某种其他方式)。
如上文所讨论的,要被查询的搜索引擎中的一个或多个可以基于用户所提供的搜索查询的内容来确定。在某些实施例中,如果用户所提供的搜索查询包括用户所提供的搜索查询从其请求内容的搜索引擎的名称,可以选择该搜索引擎作为要被查询的搜索引擎。例如,用户可以提供搜索查询“给我关于Miles Davis的***页面(get me thewikipedia page on Miles Davis)”。如此,可以选择wikipedia.com的搜索引擎作为要被查询的搜索引擎。
在某些实施例中,要被查询的搜索引擎中的一个或多个可以基于用户请求信息的类型来确定。例如,如果用户提供请求有关鞋的信息的搜索查询,可以选择在线鞋零售商的网站的搜索引擎作为要被查询的搜索引擎。作为另一个示例,如果用户提供诸如“纽约现在什么天气?(what is the current weather in New York City?)”之类的搜索查询,可以选择天气网站的搜索引擎作为要被查询的搜索引擎。
也如上文所讨论的,在某些实施例中,要被查询的搜索引擎中的一个或多个可以基于发出该查询的用户的历史浏览信息或访问模式和/或一个或多个其他不同的用户的历史浏览信息或访问模式来确定。例如,如果历史浏览信息指出用户非常频繁地选择在来自搜索引擎A的搜索结果中返回的链接,但是非常不经常地选择在来自搜索引擎B的搜索结果中返回的链接,则可以选择搜索引擎A作为要被查询的搜索引擎,而可以不选择搜索引擎B。
类似地,在某些实施例中,如果其他用户的历史访问模式指出其他用户频繁地选择在来自特定搜索引擎的搜索结果中返回的链接,则可以选择该搜索引擎作为要被查询的搜索引擎。例如,如果其他用户的历史访问模式指出用户频繁地选择来自搜索引擎A的天气的链接,而不太频繁地选择来自搜索引擎B的天气的链接,那么,可以选择搜索引擎A作为要查询的搜索引擎。
III.向选定的搜索引擎发出查询
如上文所讨论的,在过程200的动作205中,在客户端设备上运行的应用程序可以向在动作203中标识的搜索引擎发出搜索查询。如上所述,应用程序或客户端设备外部的计算机(例如,服务器)可以生成URL或对应于搜索引擎中的每一个搜索引擎的其他类型的搜索查询,其中,每一个URL或查询包括基于从用户那里接收到的搜索查询(例如,在过程200的动作201中接收到的搜索查询)的搜索字符串,并对于其对应的搜索引擎适当地格式化。
在动作205中,应用程序可以发出搜索查询(例如,通过访问URL)以导致选定的搜索引擎中的每一个对其对应的URL中所包括的搜索字符串执行搜索。
在图2的过程200中,搜索查询由在客户端设备上运行的应用程序发出,以便搜索结果从搜索引擎返回到客户端设备上的应用程序。这提供被查询的搜索引擎不从相同服务器或IP地址接收大量的查询的优点。如上所述,如果服务器代表大量的客户端向搜索引擎发出查询,则被查询的搜索引擎可以从单个源接收非常大量的查询,并可以将此行为感觉为单个用户向搜索引擎发出大量的搜索查询。许多搜索引擎运营商将把此行为视为是对搜索引擎服务的滥用和/或潜在的拒绝服务攻击,并将采取措施,以阻止来自发出这样的大量的查询的源的到它们的搜索引擎的搜索查询。通过从客户端设备发出搜索查询,搜索引擎可以感觉到查询好像是从导致它们被发出的客户端设备发出的,并可以将这样的查询的发出当做正常的用户行为。
然而,在URL或查询是由客户端设备外部的计算机(例如,图6中的服务器605)所生成的各实施例中,该计算机可以发出查询,从对应的搜索引擎接收搜索结果,并向客户端设备上的应用程序返回那些搜索结果。
在某些实施例中,可以响应于在动作201中从用户那里接收到搜索查询,自动地发出对于在动作203中选择的搜索引擎中的每一个的查询。在其他实施例中,可以不向在动作203中选择的搜索引擎中的全部或某些发出针对这些搜索引擎的查询,直到用户提供请求查看来自那些搜索引擎的搜索结果的输入。例如,来自某些搜索引擎的搜索结果可能包括大量的内容。作为一个示例,来自托管视频剪辑的网站的搜索引擎的搜索结果可以包括结果的列表中所包括的每一个视频的缩略图。因此,将搜索结果从搜索引擎传输到客户端设备或外部计算机可能要花费相对地比较长的时间。传输搜索结果所花的时间可以是如果用户不查看来自该搜索引擎的搜索结果则没有太花费的时间。如此,在某些实施例中,响应于接收用户所提供的搜索查询可以不自动地发出到返回包括带宽密集的内容(诸如,大量的图像、视频数据、音频数据),和/或其他带宽密集的内容的结果的搜索引擎的搜索查询,而可以自动地发出到返回不包括带宽密集的内容的结果的搜索引擎的搜索查询。
应该理解,一组搜索结果的内容的大小(或内容的期望的大小)是可以被用来确定是否向特定搜索引擎自动地发出搜索查询或是否在向该搜索引擎发出查询之前等待某种用户指示的准则的一个示例。可以使用各种其他准则中的任何一种或准则的组合。
IV.接收来自搜索引擎的搜索结果
如上文所讨论的,在过程200的动作207中,在客户端设备上运行的应用程序可以接收由在动作205中查询的搜索引擎所生成的搜索引擎结果。可以以各种可能的方式中的任何一种来接收搜索引擎结果。在客户端设备向这些搜索引擎发出搜索查询的各实施例中,每一个搜索引擎都可以将其结果直接提供到客户端设备。在外部计算机(例如,图6中的服务器605)向搜索引擎发出搜索查询的各实施例中,每一个搜索引擎都可以将其结果提供到外部计算机,外部计算机可以将这些结果提供到客户端设备。
可以以各种格式中的任何一种来接收结果。某些搜索引擎作为包括到内容的超链接列表的超文本标记语言(HTML)网页,和/或被标识为与搜索查询相关的网页来提供结果。其他搜索引擎可以以不同的格式来提供结果。应该理解,应用程序可以以各种格式中的任何一种来接收结果,接收到的搜索结果中的全部不必是相同格式。
V.显示搜索结果
在过程200的动作209,应用程序可以导致在动作207中接收到的搜索结果被显示在集成到客户端设备中或耦合到客户端设备的显示设备上。结果可以以各种格式中的任何一种来显示,并可以以各种可能的方式中的任何一种来呈现。
例如,在某些实施例中,来自作为HTML网页来提供搜索结果的搜索引擎的搜索结果可以通过在网页中呈现HTML代码来显示。这不同于从诸如上文所讨论的DogpileTM之类的元搜索引擎显示的结果,DogpileTM之类的元搜索引擎不呈现从搜索引擎接收到的HTML代码,而是从此HTML代码提取链接,并生成新HTML代码,以显示所提取的链接。
对于不以HTML格式接收到的搜索结果,可以自动地生成HTML代码,以显示接收到的搜索结果,这些搜索结果可以通过呈现自动地生成的HTML代码来显示。
在某些实施例中,来自每一个搜索引擎的搜索结果可以与来自其他搜索引擎的搜索结果可视地分离地显示,以便用户很清楚地查看哪一个搜索引擎提供了每一个搜索结果集合。另外,在这样的实施例中的某些实施例中,从每一个搜索引擎返回的搜索结果的列表的顺序可以在对于每一个搜索引擎的显示的搜索结果中保持,以便用户可以查看每一个搜索引擎确定其列表中的每一个搜索结果的相关性如何。
来自每一个搜索引擎的搜索结果可以以各种可能的方式中的任何一种可视地彼此分离。例如,在某些实施例中,来自多个搜索引擎的搜索结果可以在显示器上并行地显示,按列、行,或以某种其他方式分隔。在某些实施例中,在任何给定时间,只有一个搜索引擎的搜索结果可以显示在显示器上,用户可以通过选择图标、按钮,或其他用户界面元素来控制哪一个搜索引擎的搜索结果被显示。
在某些实施例中,具有多个槽口的转盘可以显示在显示设备上,每一个槽口都对应于搜索引擎中的从其接收到搜索结果的一个搜索引擎。用户选择转盘的槽口之一导致来自对应于所选槽口的搜索引擎的搜索结果被显示在显示器中。图10示出了使用这样的转盘的显示器1000的示例。图10是用于美国加州库珀蒂诺的Apple Computer公司所提供的iPhone的马萨诸塞州伯林顿的Nuance Communications公司所提供的Dragon SearchTM应用程序的搜索结果的屏幕抓图。图10的屏幕抓图是可以被用来显示来自多个搜索引擎的搜索结果的各种可能性的一个示例。
在图10中,显示器1000包括其中显示转盘1001的第一区域。转盘1001包括若干个槽口1003a、1003b、1003c、1003d以及1003e,其中每一个都对应于在动作207中从其接收到搜索结果的搜索引擎。如上文所讨论的,槽口1003所对应的搜索引擎可以包括通用搜索引擎和/或站点特定的搜索引擎,以便响应于一个用户所提供的查询所提供的搜索结果可以来自多个不同的搜索引擎(其中一些可以是通用搜索引擎,其中一些可以是站点特定的搜索引擎)。
在某些实施例中,可以通过在每一个槽口中显示表示对应于该槽口的搜索引擎的符号、图标、文本、图像或其他信息,来标识每一个槽口所对应的搜索引擎。由于在某些实施例中,响应于在客户端设备处接收到的用户所提供的查询而查询的搜索引擎可以是动态地确定的,分配给转盘中的槽口的搜索引擎也可以动态地确定。即,例如,可以在转盘中对于在过程200的动作203中选择的每一个搜索引擎分配槽口,作为要查询的搜索引擎。如此,应该理解,在用户指定(无论直接或间接地)哪些搜索引擎将被查询的各实施例中,用户可以配置哪些搜索引擎将被分配给转盘中的槽口。另外,在某些实施例中,转盘槽口向特定搜索引擎的分配可以基于由搜索引擎返回的结果来进行。例如,如果在过程200的动作203中作为要被查询的搜索引擎选择的搜索引擎中的一个不返回任何搜索结果或返回作为查询的结果没有查找到搜索结果的指示,可以不为该搜索引擎分配转盘中的槽口,从该搜索引擎返回的页面可以不向用户显示。
显示器1000也可以包括其中显示搜索结果的区域1005。用户对转盘1001中的槽口1003中的一个的选择导致从对应于所选槽口的搜索引擎接收到的结果被显示在区域1005中。由于当槽口1003被选中时显示在区域1005中的结果取决于从用户接收到的查询,因此,在区域1005中显示的内容可以对于每一个不同的用户发出查询而不同。即,例如,当用户选择转盘1001中的槽口1003b时,对于查询“Miles Davis”,在区域1005中显示的内容可以不同于对于查询“George Washington”的内容。如此,并非每当槽口被选中时都显示相同内容,可以对于由用户所发出的不同的搜索查询,显示不同的内容。在这种意义上讲,响应于用户对转盘槽口的选择显示的内容可以被视为“动态的”。
显示器1000还可以包括指出转盘1001中的哪一个槽口1003当前被选中的指示器(例如,箭头或某种其他类型指示器)1007。此指示器向用户标识哪一个搜索引擎的搜索结果正在被显示在区域1005中。
显示器1000还可以包括查询字段1009。在字段1009中显示的搜索查询向用户指出向从其接收到搜索结果的搜索引擎中的每一个发出的搜索查询的基础。从以上的讨论应该认识到,在某些实施例中,可以向不同的搜索引擎发出全部都基于用户所提供的搜索查询的不同的搜索查询。在这样的实施例中,查询字段1009可以显示用户所提供的查询,该用户所提供的查询充当响应于该查询发出的不同的搜索查询的每一个的基础。
用户可以以各种方式中的任何一种向字段1009中输入搜索查询。在某些实施例中,用户可以向字段1009提供文本输入(例如,通过物理或触摸屏键盘)。在某些实施例中,用户可以向字段1009提供语音输入。在图10的示例中,当用户希望向字段1009提供语音输入时,用户可以选择按钮1011,并向客户端设备上的麦克风说他的或她的搜索查询。
在某些实施例中,当从在过程200的动作205中查询的搜索引擎接收到搜索结果时,可以默认地选择一个转盘槽口,以便一个搜索引擎的结果被自动地显示在区域1005中。可以以各种方式中的任何一种来选择默认转盘槽口。例如,可以基于用户最频繁地查看哪些搜索引擎的结果、基于用户的查询的内容、基于哪一个搜索引擎提供了最普遍的结果,和/或基于任何其他合适的准则,来选择默认转盘槽口。
另外,并非所有响应于查询从特定搜索引擎返回的结果可以一次适合区域1005。因此,在某些实施例中,用户可以具有向上和向下滚动搜索结果的列表和/或调整显示结果的缩放级别的能力,以便调整搜索结果的哪些部分中显示在区域1005。
另外,可以以各种方式中的任何一种来选择转盘槽口中的搜索引擎的顺序。在某些实施例中,可以基于用户的使用的频率、基于用户的查询的内容,和/或基于任何其他合适的准则,来在转盘中排序搜索引擎。
如图10所示,由于显示器的尺寸,并非转盘1001的所有槽口都能够一次地在显示器上显示。例如,在图10中,槽口1003a和1003e只部分地显示。另外,转盘1001可以包括在图10中根本没有显示的额外的槽口。在某些实施例中,用户可以通过向显示器的右侧和/或左侧移动转盘来调整显示转盘的哪些槽口。这可以以各种方式中的任何一种来进行。例如,用户可以使用诸如鼠标之类的指示设备在一个方向拖动转盘。在显示1000在触摸屏上显示的各实施例中,用户可以使用他的或她的手指在一个方向拖动转盘。
在某些实施例中,转盘1001可以绕回显示器1000。如此,例如,如果用户连续地向显示器1000的左侧拖动转盘1001,向左移动的转盘1001的槽口将从显示器的左侧离开,最终将在右侧重新进入显示器上。在这一方面,在特定方向拖动转盘1001可以被视为在该方向旋转转盘。
VI.监视用户动作
如上文所讨论的,当向用户显示来自一个或多个搜索引擎的搜索结果时,用户可以查看搜索结果的列表中的某些或全部,并可以访问超链接以查看结果的列表中标识的网页或内容。
在某些实施例中,应用程序可以监视对于搜索结果所采取的用户动作,并可以存储有关监视的用户动作的信息。被监视的动作可以采取任何合适的形式,本发明的涉及监视用户动作的方面不仅限于在这一方面。在某些实施例中,被监视的用户动作可以包括,例如,用户查看了哪些搜索引擎的搜索结果,用户访问了什么网页和/或内容。
描述被监视的用户动作的信息可以随后被用来更新在对语音查询的自动语音识别中所使用的语言模型、响应于随后的用户查询确定要查询哪些搜索引擎、确定将如何呈现搜索引擎结果(例如,确定哪一个转盘槽口是默认槽口和/或搜索引擎以什么顺序将被定位在转盘槽口中),和/或以促进查询搜索引擎和/或显示搜索引擎结果的各种其他方面。
在客户端设备外部的计算机使用这样的信息以促进查询搜索引擎的上文所讨论的各方面中的任何一个方面的各实施例中,客户端设备可以将被监视的信息发送到外部计算机。外部计算机可以将此信息与客户端设备、客户端设备的用户,和/或从其发送信息的网络地址相关联,并可以存储它,供随后使用。
VII.额外的实现细节
上面所讨论的计算设备(例如,客户端设备、服务器、外部计算机,和/或任何其他上文所讨论的计算设备)可以以各种方式中的任何一种来实现。图11是可以被用来实现上面所讨论的计算设备中的任何一个的说明性计算设备1100的框图。
计算设备1100可以包括一个或多个处理器1101以及一个或多个有形的、非瞬时的计算机可读取的存储介质(例如,存储器1103)。存储器1103可以在有形的非瞬时的计算机可读取的存储介质中存储实现上文所描述的功能中的任何一个的计算机指令。处理器1101可以耦合到存储器1103,并可以执行这样的计算机指令来导致功能被实现和执行。计算设备1100还可以包括网络输入/输出(I/O)接口1105,通过该接口1105,计算设备可以与其他计算机进行通信(例如,通过网络),还可以包括一个或多个用户I/O接口,通过该用户I/O接口,计算机可以向用户提供输出并接收来自用户的输入。用户I/O接口可以包括诸如键盘、鼠标、麦克风、显示设备(例如,监视器或触摸屏)、扬声器、照相机之类的设备,和/或各种其他类型的I/O设备。
可以用多种方式中的任一种来实现本发明的本发明的上文所描述的各实施例。例如,各实施例可以使用硬件、软件或其组合来实现。当使用软件实现时,该软件代码可在无论是在单个计算机中提供的还是在多个计算机之间分布的任何合适的处理器或处理器的集合上运行。应该理解,执行上文所描述的功能的任何组件或组件的集合可以一般地被视为控制上文所讨论的功能的一个或多个控制器。该一个或多个控制器可以以多种方式来实现,诸如利用专用硬件,或利用使用微码或软件编程以执行上文列举的功能的通用硬件(例如,一个或多个处理器)。
在这一方面,应该理解,本发明的各实施例的一个实现包括利用一个或多个计算机程序(即,多个指令)编码的至少一个有形的、非瞬时的计算机可读取的存储介质(例如,计算机存储器、软盘、压缩盘、磁带、闪存、现场可编程门阵列或其他半导体器件中的电路配置等等),当程序在一个或多个计算机上或其他处理器上运行时,执行本发明的各实施例的上文所讨论的功能。计算机可读取的存储介质可以是可传送的,以便存储在其上的程序可以被加载到任何计算机资源上,以实现此处所讨论的本发明的各方面。另外,还应该理解,对当执行时执行上文所讨论的功能的计算机程序的引用不仅限于在主机计算机上运行的应用程序。相反,此处以一般的意义使用术语“计算机程序”来指可被用来对处理器编程以实现本发明上文所讨论的各个方面的任何类型的计算机代码(例如,软件或微码)。
本发明的各个方面可单独、组合或以未在前述实施例中特别讨论的各种安排来使用,从而并不将它们的应用限于前述描述中所述或附图中所示的组件的细节和安排。例如,可使用任何方式将一个实施例中描述的各方面与其它实施例中描述的各方面组合。
同样,本发明的各实施例可被实现为一个或多个方法,其示例已经提供。作为方法的一部分所执行的动作可以按任何合适的方式来排序。因此,可以构建各个实施例,其中各动作以与所示的次序所不同的次序执行,不同的次序可包括同时执行某些动作,即使这些动作在各说明性实施例中被示为顺序动作。
在权利要求书中使用诸如“第一”、“第二”、“第三”等序数词来修饰权利要求元素本身并不意味着一个权利要求元素较之另一个权利要求元素的优先级、先后次序或顺序、或者方法的各动作执行的时间顺序。这样的序数词仅用作将具有某一名称的一个权利要求元素与(若不是使用序数词)具有同一名称的另一元素区分开的标签。
此处所使用的短语和术语是出于描述的目的而不应被认为是限制。对“包括”、“具有”、“包含”、或“涉及”及其变型的使用旨在包括其后所列的项目以及其它项目。
已经详细地描述了本发明的多个实施例,本领域的技术人员可容易地想到各种修改和改进。这样的修改方案及改善都在本发明的精神和范围内。相应地,前述的描述只作为示例,而不作为限制。本发明只受下列权利要求书以及等效内容的限制。

Claims (36)

1.一种至少部分地通过使用至少一个硬件计算机处理器实现的执行对因特网上内容的搜索的方法,所述方法包括:
接收从用户提供的语音输入;
对于搜索因特网上内容的多个因特网可访问的搜索引擎,生成至少一个文本搜索查询,其中,所述至少一个文本搜索查询至少部分地是通过对所述语音输入执行语音识别来生成的;以及
其中,所述至少一个文本搜索查询包括至少两个文本搜索查询,并且其中,生成的动作还包括:
至少部分地通过使用与所述多个搜索引擎中的第一搜索引擎相关联并且对由所述多个搜索引擎中的第一搜索引擎索引的内容训练的第一语言模型,对所述语音输入执行语音识别,来生成所述至少两个文本搜索查询中的第一文本搜索查询;以及
至少部分地通过使用与所述多个搜索引擎中的第二搜索引擎相关联并且对由所述多个搜索引擎中的第二搜索引擎索引的内容训练的第二语言模型,对所述语音输入执行语音识别,来生成所述至少两个文本搜索查询中的第二文本搜索查询。
2.如权利要求1所述的方法,还包括:
向所述多个搜索引擎中的所述第一搜索引擎发出至少两个文本语音查询中的第一文本语音查询;以及
向所述多个搜索引擎中的所述第二搜索引擎发出至少两个文本语音查询中的第二文本语音查询。
3.如权利要求1所述的方法,其中,所述至少两个文本搜索查询中的所述第一文本搜索查询不同于所述至少两个文本搜索查询中的所述第二文本搜索查询。
4.如权利要求1所述的方法,其中,所述第一语言模型不同于所述第二语言模型。
5.如权利要求1所述的方法,其中,所述方法还包括:
基于频繁地被搜索的项,周期性地更新所述语言模型。
6.如权利要求1所述的方法,其中,所述方法还包括:
基于所述用户的以前的对搜索结果的选择,来更新所述语言模型。
7.一种用于执行对因特网上内容的搜索的设备,所述设备包括:
接收从用户提供的语音输入的装置;
对于搜索因特网上内容的多个因特网可访问的搜索引擎,生成至少一个文本搜索查询的装置,其中,所述至少一个文本搜索查询至少部分地是通过对所述语音输入执行语音识别来生成的;以及
其中,所述至少一个文本搜索查询包括至少两个文本搜索查询,并且其中,生成的装置还包括:
至少部分地通过使用与所述多个搜索引擎中的第一搜索引擎相关联并且对由所述多个搜索引擎中的第一搜索引擎索引的内容训练的第一语言模型,对所述语音输入执行语音识别,来生成所述至少两个文本搜索查询中的第一文本搜索查询的装置;以及
至少部分地通过使用与所述多个搜索引擎中的第二搜索引擎相关联并且对由所述多个搜索引擎中的第二搜索引擎索引的内容训练的第二语言模型,对所述语音输入执行语音识别,来生成所述至少两个文本搜索查询中的第二文本搜索查询的装置。
8.如权利要求7所述的设备,其中,所述设备进一步包括:
向所述多个搜索引擎中的所述第一搜索引擎发出至少两个文本语音查询中的第一文本语音查询的装置;以及
向所述多个搜索引擎中的所述第二搜索引擎发出至少两个文本语音查询中的第二文本语音查询的装置。
9.如权利要求7所述的设备,其中,所述至少两个文本搜索查询中的所述第一文本搜索查询不同于所述至少两个文本搜索查询中的所述第二文本搜索查询。
10.如权利要求7所述的设备,其中,所述第一语言模型不同于所述第二语言模型。
11.如权利要求7所述的设备,其中,所述设备还包括:
基于频繁地被搜索的项,周期性地更新所述语言模型的装置。
12.如权利要求7所述的设备,其中,所述设备还包括:
基于所述用户的以前的对搜索结果的选择,来更新所述语言模型的装置。
13.一种至少部分地通过移动通信设备的至少一个硬件计算机处理器实现的通过因特网执行对内容的搜索的方法,所述方法包括:
在所述移动通信设备处接收指定第一搜索查询的用户输入;
基于表示所述移动通信设备的用户对特定搜索引擎的使用频率的历史信息,选择第一搜索查询将要被提供给的多个搜索引擎;
从所述移动通信设备向多个搜索引擎发出至少一个第二搜索查询,其中,所述至少一个第二搜索查询至少部分地基于所述第一搜索查询的内容,
其中所述多个搜索引擎包括至少两个不同的站点特定的搜索引擎。
14.如权利要求13所述的方法,还包括下列动作:
响应于向所述多个搜索引擎发出所述至少一个第二搜索查询,接收来自于所述多个搜索引擎中的每一个的响应,其中,来自所述多个搜索引擎中的每一个的响应包括从相应的搜索引擎提供的搜索结果。
15.如权利要求14所述的方法,其中,所述用户输入是第一用户输入,并且其中,所述方法还包括:
促使所述搜索结果中的至少一些在所述移动通信设备的显示器上显示;
接收选择所述搜索结果中的一个的第二用户输入;以及
生成标识从所述多个搜索引擎中的哪一个提供了所述搜索结果中的所选择的一个的监视信息。
16.如权利要求15所述的方法,其中,所述移动通信设备是移动电话。
17.如权利要求13所述的方法,其中,所述第一搜索查询与所述第二搜索查询相同。
18.如权利要求13所述的方法,其中,所述用户输入是语音输入。
19.如权利要求13所述的方法,其中,所述多个搜索引擎包括至少一个通用搜索引擎。
20.一种用于通过因特网执行对内容的搜索的设备,所述设备包括:
在移动通信设备处接收指定第一搜索查询的用户输入的装置;
基于表示所述移动通信设备的用户对特定搜索引擎的使用频率的历史信息,选择第一搜索查询将要被提供给的多个搜索引擎的装置;
从所述移动通信设备向多个搜索引擎发出至少一个第二搜索查询的装置,其中,所述至少一个第二搜索查询至少部分地基于所述第一搜索查询的内容,
其中所述多个搜索引擎包括至少两个不同的站点特定的搜索引擎。
21.如权利要求20所述的设备,其中,所述设备还包括:
响应于向所述多个搜索引擎发出所述至少一个第二搜索查询,从所述多个搜索引擎中的每一个接收响应的装置,其中,来自所述多个搜索引擎中的每一个的响应包括从相应的搜索引擎提供的搜索结果。
22.如权利要求21所述的设备,其中,所述用户输入是第一用户输入,并且其中,所述设备还包括:
促使所述搜索结果中的至少一些在所述移动通信设备的显示器上显示的装置;
接收选择所述搜索结果中的一个的第二用户输入的装置;以及
生成标识从所述多个搜索引擎中的哪一个提供了所述搜索结果中的所选择的一个的监视信息的装置。
23.如权利要求22所述的设备,其中,所述移动通信设备是移动电话。
24.如权利要求22所述的设备,其中,所述第一搜索查询与所述第二搜索查询相同。
25.如权利要求20所述的设备,其中,所述用户输入是语音输入。
26.如权利要求20所述的设备,其中,所述多个搜索引擎包括至少一个通用搜索引擎。
27.一种至少部分地通过至少一个硬件计算机处理器实现的通过因特网促进对内容的搜索的方法,所述方法包括:
接收来自客户端设备的第一搜索查询;
基于表示所述客户端设备的用户对特定搜索引擎的使用频率的历史信息,标识要被查询的至少一个搜索引擎;
生成至少一个第二搜索查询,其中,所述至少一个第二搜索查询是至少部分地基于所述第一搜索查询的内容生成的;以及
向所述客户端设备发送所述至少一个第二搜索查询以及指定要用于使用所述至少一个第二搜索查询来执行因特网搜索的所标识的至少一个搜索引擎的信息。
28.如权利要求27所述的方法,其中,所述第一搜索查询是音频形式,并且其中,生成所述至少一个第二搜索查询还包括:
至少部分地通过对所述第一搜索查询执行语音识别,来生成所述至少一个第二搜索查询。
29.如权利要求27所述的方法,其中,所述至少一个第二搜索查询包括至少两个第二搜索查询,其中,所述至少一个搜索引擎包括多个搜索引擎,并且其中,生成的动作还包括:
生成按照所述多个搜索引擎中的第一搜索引擎特定的格式的所述至少两个第二搜索查询中的第一个,其中,发送的动作向所述客户端设备标识所述至少两个第二搜索查询中的所述第一个将和所述多个搜索引擎中的第一搜索引擎一起使用。
30.如权利要求27所述的方法,其中,所标识的至少一个搜索引擎是站点特定的搜索引擎。
31.如权利要求27所述的方法,其中,所述第一搜索查询与所述第二搜索查询相同。
32.一种用于通过因特网促进对内容的搜索的设备,所述设备包括:
接收来自客户端设备的第一搜索查询的装置;
基于表示所述客户端设备的用户对特定搜索引擎的使用频率的历史信息,标识要被查询的至少一个搜索引擎的装置;
生成至少一个第二搜索查询的装置,其中,所述至少一个第二搜索查询是至少部分地基于所述第一搜索查询的内容生成的;以及
向所述客户端设备发送所述至少一个第二搜索查询以及指定要用于使用至少一个第二搜索查询来执行因特网搜索的所标识的至少一个搜索引擎的信息的装置。
33.如权利要求32所述的设备,其中,所述第一搜索查询是音频形式,并且其中,生成至少一个第二搜索查询的装置还包括:
至少部分地通过对所述第一搜索查询执行语音识别,来生成所述至少一个第二搜索查询的装置。
34.如权利要求32所述的设备,其中,所述至少一个第二搜索查询包括至少两个第二搜索查询,其中,所述至少一个搜索引擎包括多个搜索引擎,并且其中,生成的装置还包括:
生成按照所述多个搜索引擎中的第一搜索引擎特定的格式的所述至少两个第二搜索查询中的第一个的装置,其中,发送的装置向所述客户端设备标识所述至少两个第二搜索查询中的所述第一个将和所述多个搜索引擎中的第一搜索引擎一起使用。
35.如权利要求32所述的设备,其中,所标识的至少一个搜索引擎是站点特定的搜索引擎。
36.如权利要求32所述的设备,其中,所述第一搜索查询与所述第二搜索查询相同。
CN201180043219.4A 2010-09-08 2011-09-07 涉及因特网搜索的方法和设备 Active CN103339623B (zh)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US12/877,765 US20120060113A1 (en) 2010-09-08 2010-09-08 Methods and apparatus for displaying content
US12/877,690 US20120059658A1 (en) 2010-09-08 2010-09-08 Methods and apparatus for performing an internet search
US12/877,765 2010-09-08
US12/877,549 US8239366B2 (en) 2010-09-08 2010-09-08 Method and apparatus for processing spoken search queries
US12/877,440 2010-09-08
US12/877,647 US20120059814A1 (en) 2010-09-08 2010-09-08 Methods and apparatus for selecting a search engine to which to provide a search query
US12/877,440 US8341142B2 (en) 2010-09-08 2010-09-08 Methods and apparatus for searching the Internet
US12/877,549 2010-09-08
US12/877,647 2010-09-08
US12/877,690 2010-09-08
PCT/US2011/050669 WO2012033820A2 (en) 2010-09-08 2011-09-07 Internet search related methods and apparatus

Publications (2)

Publication Number Publication Date
CN103339623A CN103339623A (zh) 2013-10-02
CN103339623B true CN103339623B (zh) 2018-05-25

Family

ID=45811141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180043219.4A Active CN103339623B (zh) 2010-09-08 2011-09-07 涉及因特网搜索的方法和设备

Country Status (5)

Country Link
EP (1) EP2612261B1 (zh)
JP (1) JP5851507B2 (zh)
KR (1) KR20130108563A (zh)
CN (1) CN103339623B (zh)
WO (1) WO2012033820A2 (zh)

Families Citing this family (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20120309363A1 (en) 2011-06-03 2012-12-06 Apple Inc. Triggering notifications associated with tasks items that represent tasks to perform
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US8769624B2 (en) 2011-09-29 2014-07-01 Apple Inc. Access control utilizing indirect authentication
US9002322B2 (en) 2011-09-29 2015-04-07 Apple Inc. Authentication with secondary approver
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US8589164B1 (en) * 2012-10-18 2013-11-19 Google Inc. Methods and systems for speech recognition processing using search query information
DE112014000709B4 (de) 2013-02-07 2021-12-30 Apple Inc. Verfahren und vorrichtung zum betrieb eines sprachtriggers für einen digitalen assistenten
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
WO2014143776A2 (en) 2013-03-15 2014-09-18 Bodhi Technology Ventures Llc Providing remote interactions with host device using a wireless device
EP3008641A1 (en) 2013-06-09 2016-04-20 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
KR101749009B1 (ko) 2013-08-06 2017-06-19 애플 인크. 원격 디바이스로부터의 활동에 기초한 스마트 응답의 자동 활성화
CN104516887B (zh) * 2013-09-27 2019-08-30 腾讯科技(深圳)有限公司 一种网页数据搜索方法、装置和***
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
CN103617278A (zh) * 2013-12-09 2014-03-05 北京奇虎科技有限公司 一种地址栏搜索的控制方法及装置
RU2580431C2 (ru) 2014-03-27 2016-04-10 Общество С Ограниченной Ответственностью "Яндекс" Способ и сервер для обработки поискового запроса и машиночитаемый носитель
WO2015146017A1 (ja) * 2014-03-28 2015-10-01 パナソニックIpマネジメント株式会社 音声検索装置、音声検索方法、および表示装置
US20150350146A1 (en) 2014-05-29 2015-12-03 Apple Inc. Coordination of message alert presentations across devices based on device modes
KR102201095B1 (ko) 2014-05-30 2021-01-08 애플 인크. 하나의 디바이스의 사용으로부터 다른 디바이스의 사용으로의 전환
US9967401B2 (en) 2014-05-30 2018-05-08 Apple Inc. User interface for phone call routing among devices
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
AU2015266863B2 (en) 2014-05-30 2018-03-15 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10339293B2 (en) 2014-08-15 2019-07-02 Apple Inc. Authenticated device used to unlock another device
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10567477B2 (en) * 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
DK179186B1 (en) 2016-05-19 2018-01-15 Apple Inc REMOTE AUTHORIZATION TO CONTINUE WITH AN ACTION
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK201670622A1 (en) 2016-06-12 2018-02-12 Apple Inc User interfaces for transactions
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
CN106649864A (zh) * 2016-12-31 2017-05-10 珠海市魅族科技有限公司 一种信息的展示方法及装置
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US11431836B2 (en) 2017-05-02 2022-08-30 Apple Inc. Methods and interfaces for initiating media playback
US10992795B2 (en) 2017-05-16 2021-04-27 Apple Inc. Methods and interfaces for home media control
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770411A1 (en) 2017-05-15 2018-12-20 Apple Inc. MULTI-MODAL INTERFACES
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US20220279063A1 (en) 2017-05-16 2022-09-01 Apple Inc. Methods and interfaces for home media control
CN111343060B (zh) 2017-05-16 2022-02-11 苹果公司 用于家庭媒体控制的方法和界面
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US11144584B2 (en) 2017-10-03 2021-10-12 Google Llc Coordination of parallel processing of audio queries across multiple devices
JP6904225B2 (ja) * 2017-11-15 2021-07-14 トヨタ自動車株式会社 情報処理装置
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
KR102214990B1 (ko) * 2018-11-26 2021-02-15 김준 북마크관리 및 정보검색 서비스 제공시스템 및 이를 이용한 북마크관리 및 정보검색 서비스 제공방법
JP6555838B1 (ja) * 2018-12-19 2019-08-07 Jeインターナショナル株式会社 音声問合せシステム、音声問合せ処理方法、スマートスピーカー運用サーバー装置、チャットボットポータルサーバー装置、およびプログラム。
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US10996917B2 (en) 2019-05-31 2021-05-04 Apple Inc. User interfaces for audio media control
KR20220027295A (ko) 2019-05-31 2022-03-07 애플 인크. 오디오 미디어 제어를 위한 사용자 인터페이스
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11227599B2 (en) 2019-06-01 2022-01-18 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11477609B2 (en) 2019-06-01 2022-10-18 Apple Inc. User interfaces for location-related communications
US11481094B2 (en) 2019-06-01 2022-10-25 Apple Inc. User interfaces for location-related communications
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
CN111343506B (zh) * 2020-02-12 2022-11-29 咪咕文化科技有限公司 一种视频搜索方法、装置、***、服务器和可读存储介质
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11043220B1 (en) 2020-05-11 2021-06-22 Apple Inc. Digital assistant hardware abstraction
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US11392291B2 (en) 2020-09-25 2022-07-19 Apple Inc. Methods and interfaces for media control with dynamic feedback
US11847378B2 (en) 2021-06-06 2023-12-19 Apple Inc. User interfaces for audio routing
US11962455B2 (en) 2021-11-29 2024-04-16 T-Mobile Usa, Inc. Prioritizing multiple issues associated with a wireless telecommunication network

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1731396A (zh) * 2005-08-23 2006-02-08 萧学文 实现移动终端搜索网络资源的***及方法
CN101505328A (zh) * 2008-02-04 2009-08-12 台达电子工业股份有限公司 应用语音识别的网络数据检索方法及其***

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1176432C (zh) 1999-07-28 2004-11-17 国际商业机器公司 提供本国语言查询服务的方法和***
JP4325075B2 (ja) * 2000-04-21 2009-09-02 ソニー株式会社 データオブジェクト管理装置
US7502774B2 (en) * 2004-12-09 2009-03-10 International Business Machines Corporation Ring method, apparatus, and computer program product for managing federated search results in a heterogeneous environment
US7921091B2 (en) * 2004-12-16 2011-04-05 At&T Intellectual Property Ii, L.P. System and method for providing a natural language interface to a database
US8065286B2 (en) * 2006-01-23 2011-11-22 Chacha Search, Inc. Scalable search system using human searchers
JP4762063B2 (ja) * 2006-06-29 2011-08-31 株式会社日立製作所 計算機システム、プログラム及び検索エンジン検索方法
US7930286B2 (en) * 2007-02-16 2011-04-19 Yahoo! Inc. Federated searches implemented across multiple search engines
US8364481B2 (en) * 2008-07-02 2013-01-29 Google Inc. Speech recognition with parallel recognition tasks
CN101820592A (zh) * 2009-02-27 2010-09-01 华为技术有限公司 移动搜索方法及装置
US9684741B2 (en) * 2009-06-05 2017-06-20 Microsoft Technology Licensing, Llc Presenting search results according to query domains

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1731396A (zh) * 2005-08-23 2006-02-08 萧学文 实现移动终端搜索网络资源的***及方法
CN101505328A (zh) * 2008-02-04 2009-08-12 台达电子工业股份有限公司 应用语音识别的网络数据检索方法及其***

Also Published As

Publication number Publication date
WO2012033820A3 (en) 2013-01-31
EP2612261B1 (en) 2018-11-07
JP2013537332A (ja) 2013-09-30
EP2612261A2 (en) 2013-07-10
WO2012033820A2 (en) 2012-03-15
JP5851507B2 (ja) 2016-02-03
CN103339623A (zh) 2013-10-02
KR20130108563A (ko) 2013-10-04

Similar Documents

Publication Publication Date Title
CN103339623B (zh) 涉及因特网搜索的方法和设备
TWI522819B (zh) 執行網際網路搜尋的方法及裝置
US8990182B2 (en) Methods and apparatus for searching the Internet
US8666963B2 (en) Method and apparatus for processing spoken search queries
TWI540448B (zh) 選擇搜尋引擎以對其提供搜尋查詢的方法及裝置
US9613149B2 (en) Automatic mapping of a location identifier pattern of an object to a semantic type using object metadata
US8341147B2 (en) Blending mobile search results
US8849812B1 (en) Generating content for topics based on user demand
US20120060113A1 (en) Methods and apparatus for displaying content
CN107256267A (zh) 查询方法和装置
CN101986306B (zh) 一种用于基于查询序列获取黄页信息的方法与设备
CN102063453A (zh) 一种用于基于用户的需求进行搜索的方法和设备
US9864768B2 (en) Surfacing actions from social data
EP2862105A1 (en) Ranking search results based on click through rates
US8838643B2 (en) Context-aware parameterized action links for search results
US9218422B2 (en) Personalized deeplinks for search results
CN102063454A (zh) 一种搜索与应用相结合的方法和设备
CN104933099B (zh) 一种为用户提供目标搜索结果的方法与装置
US20180365302A1 (en) System for interactively searching for and displaying information on a webpage
CN111723201A (zh) 一种用于文本数据聚类的方法和装置
KR20160107101A (ko) 전자 장치 및 전자 장치에서 컨텐츠 필터링 방법 및 시스템

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20231023

Address after: Washington State

Patentee after: MICROSOFT TECHNOLOGY LICENSING, LLC

Address before: Massachusetts

Patentee before: Nuance Communications, Inc.

TR01 Transfer of patent right