JP2018533790A - 音声クエリの検索結果のプリフェッチ処理 - Google Patents

音声クエリの検索結果のプリフェッチ処理 Download PDF

Info

Publication number
JP2018533790A
JP2018533790A JP2018520606A JP2018520606A JP2018533790A JP 2018533790 A JP2018533790 A JP 2018533790A JP 2018520606 A JP2018520606 A JP 2018520606A JP 2018520606 A JP2018520606 A JP 2018520606A JP 2018533790 A JP2018533790 A JP 2018533790A
Authority
JP
Japan
Prior art keywords
utterance
search query
previously received
transcription
determining
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
JP2018520606A
Other languages
English (en)
Other versions
JP6487120B2 (ja
Inventor
クリストファー・ボ・タンディオノ
マイケル・ブキャナン
ネイサン・デイヴィッド・ハワード
イシャイ・ラビノビッツ
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2018533790A publication Critical patent/JP2018533790A/ja
Application granted granted Critical
Publication of JP6487120B2 publication Critical patent/JP6487120B2/ja
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/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/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/243Natural language query formulation
    • 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/248Presentation of query results
    • 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/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

発話を符号化しているオーディオデータを受信し、発話の中間トランスクリプションを取得し、発話の最終的なトランスクリプションが取得される前に、i)発話の中間トランスクリプションが以前受信した検索クエリに関連していると決定し、ii)以前受信した検索クエリに応答したものとして識別された1つまたは複数の結果を取得し、iii)結果のうちの1つまたは複数を記憶し、発話の最終的なトランスクリプションを取得し、発話の最終的なトランスクリプションも以前受信した検索クエリに関連していると決定し、発話の最終的なトランスクリプションも以前受信した検索クエリに関連していると決定したことに応じて、出力のために記憶されている1つまたは複数の結果を提供するための方法、システム、および装置であり、コンピュータ記憶媒体に符号化されたコンピュータプログラムを含む。

Description

本明細書は、音声認識に関する。
一般に、検索クエリは、ユーザが検索を実行するようにサーチエンジンに要求する際にユーザがサーチエンジンに送信する1つまたは複数のクエリ用語を含む。他のアプローチにおいては、ユーザは、音声クエリのコンテキストを介して、すなわち、モバイルデバイスのマイクロフォンにクエリ用語を話すことによって、検索クエリのクエリ用語を入力し得る。音声クエリは、音声認識技術を使用して処理され得る。
本明細書中で説明した発明特定事項のいくつかの革新的な態様によれば、ユーザによって提供された発話を検出するのと同時に、予備的な検索結果を発話の中間トランスクリプションに基づいて識別する。発話全体を検出すると、予備的な検索結果のうちの1つまたは複数が、発話全体の最終的なトランスクリプションに基づいてユーザにされ得る。
ある例示的な実施形態においては、ユーザが歴史的建造物に関する質問をする場合がある。ユーザが「How tall is the Empire State Building?」という質問をする場合がある。ユーザがすべての質問を話し終える前に、ユーザのモバイルデバイスは、質問の冒頭の一部を検出し、コンピューティングシステムにそれと同一のものを提供し得る。コンピューティングシステムは、例えば、「How tall is」といった、質問の本冒頭の一部の中間トランスクリプションをコンピュータ処理し、質問全体の最終的なトランスクリプションをコンピュータ処理する前に、質問の冒頭の一部に関連し得る他の過去のクエリを識別し得る。例えば、コンピューティングシステムは、現在のクエリの冒頭の一部に関連しているものとして「How tall is the Empire State Building」および「How tall is the Washington Monument」という前回のクエリを識別し得る。検索結果は、以前のクエリについて取得または再取得され、キャッシュに記憶される。「How tall is the Empire State Building」という質問全体を受信すると、コンピューティングシステムは、現在のクエリに関連しているものとして「How tall is the Empire State Building」という前回のクエリを識別する。その後、コンピューティングシステムは、検索結果を生成する前に文字起こしされることになる質問全体を待つことなく、「How tall is the Empire State Building」という前回のクエリに関連付けられた記憶されている検索結果を、「How tall is the Empire State Building」という現在のクエリに提供し得る。このことが、ユーザに検索結果を返信するのにかかる時間を低減する。
本明細書で説明した発明特定事項の革新的な態様は、発話を符号化しているデータを受信するステップと、発話の中間トランスクリプションを取得するステップと、発話の最終的なトランスクリプションが取得される前に、i)発話の中間トランスクリプションが以前受信した検索クエリに関連していると決定するステップと、ii)以前受信した検索クエリに応答したものとして識別された1つまたは複数の結果を取得するステップと、iii)結果のうちの1つまたは複数を記憶するステップと、発話の最終的なトランスクリプションを取得するステップと、発話の最終的なトランスクリプションも以前受信した検索クエリに関連していると決定するステップと、発話の最終的なトランスクリプションも以前受信した検索クエリに関連していると決定するステップに応じて、出力のために記憶されている1つまたは複数の結果を提供するステップというアクションを含むコンピュータ実施方法で具現化され得る。発話の中間トランスクリプションは、発話の冒頭の一部のトランスクリプションであり得る。
これらの態様の他の実施形態は、対応するシステム、装置、コンピュータプログラムを含み、コンピュータプログラムは、コンピュータストレージデバイス上に符号化された方法のアクションを行うように構成される。例えば、これらの態様の別の実施形態は、その実行時に、1つまたは複数のコンピュータに、発話を符号化しているオーディオデータを受信するステップと、発話の中間トランスクリプションを取得するステップと、発話の最終的なトランスクリプションが取得される前に、発話の中間トランスクリプションが以前受信した検索クエリに関連していると決定するステップと、以前受信した検索クエリに応答したものとして識別された1つまたは複数の結果を取得するステップと、その結果のうちの1つまたは複数を記憶するステップと、発話の最終的なトランスクリプションを取得するステップと、発話の最終的なトランスクリプションも以前受信した検索クエリに関連していると決定するステップと、発話の最終的なトランスクリプションも以前受信した検索クエリに関連していると決定するステップに応じて、出力のために記憶されている1つまたは複数の結果を提供するステップを含む動作を行わせる、1つまたは複数のコンピュータによって実行可能な命令を含むソフトウェアを記憶する、非一時的コンピュータ可読媒体であり得る、コンピュータ可読媒体を含む。
これらの実施形態および他の実施形態は各々、必要に応じて以下の特徴のうちの1つまたは複数を含み得る。例として、発話の中間トランスクリプションが閾値サイズ有していると決定するステップであって、発話の中間トランスクリプションは、中間トランスクリプションが閾値サイズ有していると決定した後にのみ、以前受信した検索クエリに関連していると決定される、ステップをさらに含む。発話の中間トランスクリプションは、連続音声認識器によって生成され、1つまたは複数の結果は、サーチエンジンから取得される。発話の中間トランスクリプションが以前受信した検索クエリに関連していると決定するステップの後に、サーチエンジンによる再実行のために以前受信した検索クエリを送信するステップをさらに含む。発話に関連したロケーションが以前受信した検索クエリに関連付けられたロケーションに関連していると決定するステップをさらに含む。
前記特徴は、例えば、発話の中間トランスクリプションが発話と関連している同一のユーザによって送信された以前受信した検索クエリに関連していると決定するステップをさらに含む。発話の中間トランスクリプションが発話と関連しているユーザとは異なるユーザによって送信された以前受信した検索クエリに関連していると決定するステップをさらに含む。発話は、音声クエリ以外の音声コマンドである。発話の中間トランスクリプションが以前受信した検索クエリの一部と同一であると決定するステップをさらに含む。発話の中間トランスクリプションが以前受信した検索クエリの一部に対する閾値類似度内にあると決定するステップをさらに含む。
本明細書で説明した発明特定事項の1つまたは複数の実施形態の詳細を、以下の添付の図面および説明に記載している。発明特定事項の他の潜在的な特徴、態様、および利点は、説明、図面、および特許請求の範囲から自明となるであろう。態様と実施形態とを組み合わせ得ること、および1つの態様または実施形態に関連して説明した特徴を他の態様または実施形態に関連して実施し得ることは諒解されるであろう。
発話の中間トランスクリプションに基づいて検索結果を取得するためのシステムを示す図である。 発話の最終的なトランスクリプションについての検索結果を提供するためのシステムを示す図である。 発話の中間トランスクリプションに基づいて検索結果を取得するための例示的なプロセスのフローチャートである。 発話の最終的なトランスクリプションについての検索結果を提供するための例示的なプロセスのフローチャートである。 本明細書で説明した技法を実施するために使用され得るコンピュータデバイスおよびモバイルコンピュータデバイスを示す図である。
図1aは、発話の中間トランスクリプションに基づいて検索結果を取得するためのシステム100を図示している。簡潔には、システム100は、発話の中間トランスクリプションを取得し得るし、発話の最終的なトランスクリプションが取得される前に、中間トランスクリプションが以前受信した検索クエリに関連していると決定し、以前受信した検索クエリに応答する結果を取得し得る。システム100は、モバイルコンピュータデバイス102、フロントエンドエンジン104、連続音声認識器106、完了エンジン(completion engine)108、クエリログ110、サーチエンジン112、およびキャッシュ114を含む。いくつかの例においては、連続音声認識器106、完了エンジン108、およびサーチエンジン112のうちの1つまたは複数は、フロントエンドエンジン104によって含まれ得る。モバイルコンピュータデバイス102は、1つまたは複数のネットワークを通じてフロントエンドエンジン104と通信する。モバイルコンピュータデバイス102は、マイクロフォン、カメラ、またはユーザ116からの発話を検出するための他の検出手段を含み得る。
いくつかの例においては、ユーザ116が、彼のお気に入りのチームがプレイしている試合のスコアを知りたいと望む。したがって、ユーザ116は、そのようなスコアについて、質問、例えば、音声による自然言語クエリを行い得る。しかしながら、質問を提供する前に、すなわち、質問が完了する前に、または、質問全体を提供する前に、モバイルコンピュータデバイス102は、質問の冒頭の一部の発話を検出する。図示した例においては、ユーザ116による質問が完了する前に、モバイルコンピュータデバイス102は、ユーザ116が質問全体を提供するのに先立って、発話として時間t0において、例えば、「What's the score」といった、質問の冒頭の一部を検出する。
いくつかの例においては、発話は、音声クエリ以外の音声コマンドを含み得る。例えば、音声コマンドは、システム100の注意を呼び起こすために話される所定の用語である、例えば「アテンションワード」または「音声アクション開始コマンド」といった「ホットワード」を含み得る。
フロントエンドエンジン104は、例えば、1つまたは複数のネットワークを介して、モバイルコンピュータデバイス102から、発話を符号化しているオーディオデータを受信する。モバイルデバイスが発話の冒頭の一部を検出し終えた部分について、冒頭の一部を符号化しているオーディオデータが、ユーザが質問全体をまだ提供し終えていない場合にでさえも冒頭の一部を検出し終えると、フロントエンドエンジンにモバイルデバイスによって送信され得る。いくつかの例においては、オーディオデータは、モバイルコンピュータデバイス102のロケーションデータを含む環境データをさらに含み得る。フロントエンドエンジン104は、発話をオーディオデータから抽出することを含む、オーディオデータの処理を適切にし、発話を連続音声認識器106に提供し得る。
連続音声認識器106は、発話の冒頭の一部のトランスクリプションであり得る、発話の中間トランスクリプションを生成する。発話の中間トランスクリプションを生成することは、連続音声認識器106がテキストデータまたはテキスト関連データに発話を文字起こしすることを含み得る。いくつかの例においては、連続音声認識器106は、発話が書き起こされた形で言語の表現を提供し得る。例えば、連続音声認識器106は、発話を文字起こしして、「What's the score」というトランスクリプションを生成する。連続音声認識器106は、中間トランスクリプションをフロントエンドエンジン104に提供する。
フロントエンドエンジン104が、時間t1において、連続音声認識器106から発話の中間トランスクリプションを取得する。フロントエンドエンジン104は、中間トランスクリプションを適切に処理し、中間トランスクリプションを完了エンジン108に提供し得る。そのために、図示した例においては、完了エンジン108は、中間トランスクリプション「What's the score」を受信し、例えば、フロントエンドエンジン104および/または連続音声認識器106によって、発話の最終的なトランスクリプションを取得することに先立って、以下で説明しているように、発話の中間トランスクリプションを適切に処理する。
特に、完了エンジン108は、発話の中間トランスクリプションが以前受信した検索クエリに関連していると決定する。図示した例においては、完了エンジン108は、クエリQ1, Q2, …, QNと示した以前受信した検索クエリを含むクエリログ110にアクセスする。完了エンジン108は、発話の中間トランスクリプション「What's the score」が以前受信した検索クエリQ1「What's the score of the Sharks game」に関連しているとともに以前受信した検索クエリQ2「What's the score of the Flounders game」にも関連していると決定する。
いくつかの例においては、完了エンジン108は、発話の中間トランスクリプションが以前受信した検索クエリの一部と同一であると決定する。特に、完了エンジン108は、発話の中間トランスクリプションが以前受信した検索クエリの冒頭の一部またはプレフィックスと同一である、例えば、一致するまたは同じである、と決定する。図示した例においては、完了エンジン108は、発話の中間トランスクリプション「What's the score」が以前受信した検索クエリQ1「What's the score of the Sharks game」の冒頭の一部と同一であるとともに、以前受信した検索クエリQ2「What's the score of the Flounders game」の冒頭の一部と同一であると決定する。
いくつかの例においては、完了エンジン108は、発話の中間トランスクリプションが閾値類似度内にあるまたは以前受信した検索クエリの一部の所定の編集距離内にあると決定する。特に、完了エンジン108は、発話の中間トランスクリプションが以前受信した検索クエリの冒頭の一部またはプレフィックスに対する閾値類似度内にあると決定する。例えば、完了エンジン108は、発話の中間トランスクリプション「What's the score」が以前受信した検索クエリ「What is the score of the Sharks game」に対する閾値類似度内にあると決定し得る。完了エンジン108は、発話の中間トランスクリプション「What's the score」が以前受信した検索クエリの冒頭の一部「What is the score」に対する閾値類似度内にあると決定する。いくつかの例においては、閾値類似度は、発話の中間トランスクリプションと、例えば以前受信した検索クエリの冒頭の一部といった一部との間の編集距離に基づく。
いくつかの例においては、完了エンジン108は、発話の中間トランスクリプションが閾値サイズまたは閾値長有していると決定した後にのみ、発話の中間トランスクリプションが以前受信した検索クエリに関連していると決定する。完了エンジン108は、発話の中間トランスクリプションを閾値サイズと比較し、発話の中間トランスクリプションが少なくとも閾値サイズであることに応じて、発話の中間トランスクリプションが以前受信した検索クエリに関連していると決定する。例えば、完了エンジン108は、発話の中間トランスクリプション「What's the score」を閾値サイズと比較し、それに応じて、発話の中間トランスクリプション「What's the score」が以前受信した検索クエリQ1「What's the score of the Sharks game」に関連しているとともに以前受信した検索クエリQ2「What's the score of the Flounders game」にも関連していると決定し得る。いくつかの例においては、閾値サイズは、音素、音節、または単語の閾値数に基づく。
いくつかの例においては、完了エンジン108は、発話に関連したロケーションが以前受信した検索クエリに関連付けられたロケーションに関連していると決定する。特に、完了エンジン108にモバイルコンピュータデバイス102からオーディオデータで提供されるように、フロントエンドエンジン104は、発話に関連したロケーションを提供し得る。完了エンジン108は、発話に関連したロケーションが以前受信した検索クエリに関連付けられたロケーションに関連していると決定したことに基づいて、発話の中間トランスクリプションが以前受信した検索クエリに関連しているとさらに決定し得る。いくつかの例においては、完了エンジン108は、発話の中間トランスクリプションが以前受信した検索クエリに関連していると決定し得るし、発話に関連したロケーションが以前受信した検索クエリに関連付けられたロケーションに関連しているとさらに決定し得る。例えば、図示した例においては、時間t0においてユーザ116によって提供された発話は、ユーザ116のホームロケーションに関連し得る。完了エンジン108は、以前受信した検索クエリQ1およびQ2のうちの1つまたは両方ともホームロケーションに関連していると決定し得る。
いくつかの例においては、完了エンジン108は、発話の中間トランスクリプションがユーザ116によって送信された以前受信した検索クエリに関連していると決定する。特に、以前受信した検索クエリは、例えば、発話と関連しているユーザ116といった、同一のユーザによって送信されたものである。そのため、完了エンジン108は、発話および以前受信した検索クエリが例えばユーザ116といった同一のユーザに関連していると決定したことに基づいて、発話の中間トランスクリプションが以前受信した検索クエリに関連しているとさらに決定し得る。例えば、図示した例においては、発話ならびに以前受信した検索クエリQ1およびQ2の両方が、ユーザ116に関連している。
いくつかの例においては、完了エンジン108は、発話の中間トランスクリプションがユーザ116とは異なるユーザによって送信された以前受信した検索クエリに関連していると決定する。特に、以前受信した検索クエリは、発話と関連しているユーザ116とは異なるユーザによって送信されていたものである。そのため、完了エンジン108は、発話および以前受信した検索クエリが異なるユーザに関連していると決定したことに基づいて、発話の中間トランスクリプションが以前受信した検索クエリに関連しているとさらに決定し得る。
完了エンジン108は、時間t2において、フロントエンドエンジン104に以前受信した検索クエリQ1およびQ2を提供する。フロントエンドエンジン104は、以前受信した検索クエリQ1およびQ2に応答したものとして識別された結果を取得する。特に、フロントエンドエンジン104は、時間t3において、サーチエンジン112による再実行のためにサーチエンジン112に以前受信した検索クエリQ1およびQ2を提供する。サーチエンジン112は、クエリQ1およびQ2の各々に関する電子文書の検索を実施して、クエリQ1およびQ2にそれぞれ応答する結果R1およびR2を識別する。サーチエンジン112は、時間t4において、フロントエンドエンジン104に結果R1およびR2を提供する。フロントエンドエンジン104は、時間t5において、キャッシュ114に結果R1およびR2を記憶する。特に、図示した例においては、フロントエンドエンジン104は、キャッシュ114に、クエリQ1、結果R1、およびクエリQ1と結果R1との間の関連付けを記憶するとともに、キャッシュ114に、クエリQ2、結果R2、およびクエリQ2と結果R2との間の関連付けをさらに記憶する。
図1bは、発話の最終的なトランスクリプションについての検索結果を提供するためのシステム100を図示している。簡潔には、システム100は、発話の最終的なトランスクリプションをさらに取得し、発話の最終的なトランスクリプションもまた以前受信した検索クエリに関連していると決定し、出力のために記憶されている結果を提供し得る。
いくつかの例においては、ユーザ116は、時間t0において、質問を完了する、すなわち、はじめに提供していた質問全体を提供する。図示した例においては、モバイルコンピュータデバイス102は、時間t6において、例えば、「of the Sharks game」といった、質問の最終部分の発話を検出する。いくつかの例においては、時間t6は、時間t2とt5との間に生じ得る。システム100は、発話の冒頭の一部「What's the score」の処理を開始し得る、すなわち、例えば、「of the Sharks game」といった、質問の最終部分の発話を検出することに先立っておよび/または同時に、発話の中間トランスクリプションを取得し、中間トランスクリプションが以前受信した検索クエリに関連していると決定し、および/または以前受信した検索クエリに応答した結果を取得し得る。
フロントエンドエンジン104は、例えば、1つまたは複数のネットワークを介して、モバイルコンピュータデバイス102から、発話を符号化しているオーディオデータを受信する。フロントエンドエンジン104は、発話をオーディオデータから抽出することを含む、オーディオデータの処理を適切にし、発話を連続音声認識器106に提供し得る。いくつかの例においては、フロントエンドエンジン104は、「What's the score of the Sharks game」という発話全体を連続音声認識器106に提供する。いくつかの例においては、フロントエンドエンジン104は、「of the Sharks game」という発話の残りの部分を連続音声認識器106に提供する。
連続音声認識器106は、発話の最終的なトランスクリプションを生成する。発話の最終的なトランスクリプションを生成することは、連続音声認識器106がテキストデータまたはテキスト関連データに発話を文字起こしすることを含み得る。いくつかの例においては、連続音声認識器106は、発話が書き起こされた形で言語の表現を提供し得る。例えば、連続音声認識器106は、発話全体を文字起こしして、「What's the score of the Sharks game」の最終的なトランスクリプションを生成する。連続音声認識器106は、最終的なトランスクリプションをフロントエンドエンジン104に提供する。
フロントエンドエンジン104は、時間t7において、連続音声認識器106から最終的なトランスクリプションを取得する。フロントエンドエンジン104は、最終的なトランスクリプションを適切に処理し、最終的なトランスクリプションを完了エンジン108に提供し得る。そのために、図示した例においては、完了エンジン108は、最終的なトランスクリプション「What's the score of the Sharks game」を受信し、以下で説明しているように、発話の最終的なトランスクリプションを適切に処理する。
いくつかの実施形態においては、完了エンジン108は、時間t8において、発話の最終的なトランスクリプションも以前受信した検索クエリに関連していると決定する。特に、完了エンジン108は、発話の中間トランスクリプションに関連しているものとして識別された以前受信した検索クエリQ1およびQ2にアクセスする。いくつかの例においては、完了エンジン108は、発話の最終的なトランスクリプションを以前受信した検索クエリQ1およびQ2の各々と比較する。完了エンジン108は、最終的なトランスクリプション「What's the score of the Sharks game」が以前受信した検索クエリQ1「What's the score of the Sharks game」に関連していると決定する。さらに、いくつかの例においては、完了エンジン108は、最終的なトランスクリプション「What's the score of the Sharks game」が以前受信した検索クエリQ2「What's the score of the Sharks game」に関連していないと決定する。
いくつかの例においては、完了エンジン108は、発話の最終的なトランスクリプションが以前受信した検索クエリと同一であると決定する。完了エンジン108は、発話の最終的なトランスクリプションが以前受信した検索クエリと類似しているまたは同一である、例えば、一致するまたは同じであるまたは同様であると決定する。図示した例においては、完了エンジン108は、発話の最終的なトランスクリプション「What's the score of the Sharks game」が以前受信した検索クエリQ1「What's the score of the Sharks game」と同一であると決定する。
いくつかの例においては、完了エンジン108は、発話の最終的なトランスクリプションが以前受信した検索クエリに対する閾値類似度内にあると決定する。完了エンジン108は、発話の最終的なトランスクリプションが以前受信した検索クエリに対する閾値類似度内にあると決定する。例えば、完了エンジン108は、発話の最終的なトランスクリプション「What's the score of the Sharks game」が以前受信した検索クエリ「What is the score of the Sharks game」に対する閾値類似度内にあると決定し得る。完了エンジン108は、発話の最終的なトランスクリプション「What's the score of the Sharks game」が以前受信した検索クエリ「What is the score of the Sharks game」に対する閾値類似度内にあると決定する。いくつかの例においては、閾値類似度は、発話の最終的なトランスクリプションと以前受信した検索クエリとの間の編集距離に基づく。
完了エンジン108は、以前受信した検索クエリQ1をフロントエンドエンジン104に提供する、または以前受信した検索クエリQ1のインディケーションをフロントエンドエンジン104に提供する。フロントエンドエンジン104は、以前受信した検索クエリQ1と関連しているそれぞれの結果を識別するためにキャッシュ114にアクセスする。特に、フロントエンドエンジン104は、キャッシュ114によって記憶されているような、以前受信した検索クエリQ1と結果R1との間の関連付けを識別し、時間t9において、結果R1を受信する。いくつかの例においては、以前受信した検索クエリQ1と結果R1との間の関連付けを識別したことに応じて、フロントエンドエンジン104は、キャッシュ114から、クエリQ2、結果R2、およびクエリQ2と結果R2との間の関連付けを除去する。
完了エンジン108は、時間t10において、出力のために記憶されている結果R1をモバイルコンピュータデバイス102に提供する。発話の最終的なトランスクリプション「What's the score of the Sharks game」も以前受信した検索クエリQ1に関連していると完了エンジン108が決定したことに応じて、フロントエンドエンジン104は、出力のために記憶されている結果R1をモバイルコンピュータデバイス102に提供する。
図2は、発話の中間トランスクリプションに基づいて検索結果を取得するための例示的なプロセス200のフローチャートを図示している。例示的なプロセス200は、1つまたは複数のコンピュータデバイスによって実行され得る。例えば、モバイルコンピュータデバイス102、フロントエンドエンジン104、連続音声認識器106、完了エンジン108、および/またはサーチエンジン112は、例示的なプロセス200を実行するために使用され得る。
発話を符号化しているオーディオデータを受信する(202)。特に、フロントエンドエンジン104は、オーディオデータをモバイルコンピュータデバイス102から受信する。例えば、オーディオデータは、例えば、「Book a flight to」といった、発話の冒頭の一部を含む。
発話の中間トランスクリプションを取得する(204)。特に、連続音声認識器106は、発話の中間トランスクリプションを生成する。例えば、連続音声認識器106は、発話を文字起こしして、「Book a flight to」というトランスクリプションを生成する。フロントエンドエンジン104は、連続音声認識器106から発話の中間トランスクリプションを取得する。
発話の中間トランスクリプションが以前受信した検索クエリに関連していると決定される(206)。特に、発話の最終的なトランスクリプションを取得する前に、完了エンジン108は、発話の中間トランスクリプションが以前受信した検索クエリに関連していると決定する。例えば、完了エンジン108は、発話の中間トランスクリプション「Book a flight to」が以前受信した検索クエリQA「Book a flight to Austin」に関連しているとともに以前受信した検索クエリQB「Book a flight to Mexico」にも関連していると決定する。
以前受信した検索クエリに応答した結果を取得する(208)。特に、発話の最終的なトランスクリプションを取得する前に、サーチエンジン112は、以前受信した検索クエリを実行して、以前受信した検索クエリに応答した結果を識別する。例えば、サーチエンジン112は、クエリQAおよびQBの各々に関する電子文書の検索を実施して、クエリQAおよびQBにそれぞれ応答する結果RAおよびRBを識別する。フロントエンドエンジン104は、サーチエンジンから結果RAおよびRBを取得する。
結果を記憶する(210)。特に、発話の最終的なトランスクリプションを取得する前に、フロントエンドエンジンは、キャッシュ内の結果を記憶する。例えば、フロントエンドエンジン104は、キャッシュ114に、クエリQA、結果RA、およびクエリQAと結果RAとの間の関連付けを記憶するとともに、キャッシュ114に、クエリQB、結果RB、およびクエリQBと結果RBとの間の関連付けをさらに記憶する。
図3は、発話の最終的なトランスクリプションについての検索結果を提供するための例示的なプロセスのフローチャート300を図示している。例示的なプロセス300は、1つまたは複数のコンピュータデバイスによって実行され得る。例えば、モバイルコンピュータデバイス102、フロントエンドエンジン104、連続音声認識器106、完了エンジン108、および/またはサーチエンジン112は、例示的なプロセス300を実行するために使用され得る。
発話の最終的なトランスクリプションを取得する(302)。特に、連続音声認識器106は、発話の最終的なトランスクリプションを生成する。例えば、連続音声認識器106は、発話全体を文字起こしして、最終的なトランスクリプション「Book a flight to Austin」を生成する。フロントエンドエンジン104は、連続音声認識器106から発話の最終的なトランスクリプションを取得する。
発話の最終的なトランスクリプションが以前受信した検索クエリにも関連していると決定される(304)。特に、完了エンジン108は、発話の最終的なトランスクリプションも以前受信した検索クエリに関連していると決定する。例えば、完了エンジン108は、最終的なトランスクリプション「Book a flight to Austin」が以前受信した検索クエリQA「Book a flight to Austin」に関連していると決定する。
発話の最終的なトランスクリプションも以前受信した検索クエリに関連していると決定するステップに応じて、記憶されている結果が出力のために提供される。特に、フロントエンドエンジン104は、以前受信した検索クエリと関連しているそれぞれの結果を識別するためにキャッシュ114にアクセスする。完了エンジン108が発話の最終的なトランスクリプション「Book a flight to Austin」も以前受信した検索クエリQAに関連していると決定したことに応答して、フロントエンドエンジン104は、出力のために記憶されている結果RAをモバイルコンピュータデバイス102に提供する。
図4は、本明細書で説明した技法を用いて使用され得る一般的なコンピュータデバイス400および一般的なモバイルコンピュータデバイス440の例を示している。コンピュータデバイス400は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなどといった、様々な形式のデジタルコンピュータを表すことを意図している。コンピュータデバイス440は、携帯情報端末、セルラ電話、スマートフォン、および他の同様のコンピュータデバイスなどといった、様々な形式のモバイルデバイスを表すことを意図している。本明細書において示したコンポーネント、それらの接続および関係、およびそれらの機能は、例示的なものを意味しているに過ぎず、本明細書において説明および/または主張した発明の実施形態を限定することは意味していない。
コンピュータデバイス400は、プロセッサ402、メモリ404、ストレージデバイス406、メモリ404および高速拡張ポート410に接続されている高速インターフェース408、ならびに低速バス414およびストレージデバイス406に接続されている低速インターフェース412を含む。コンポーネント402、404、406、408、410、および412の各々は、様々なバスを使用して相互接続されており、必要に応じて共通のマザーボード上にまたは他の方式で組み込まれ得る。プロセッサ402は、メモリ404にまたはストレージデバイス406上に記憶されている命令を含むコンピュータデバイス400内での実行のための命令を処理して、高速インターフェース408に接続されているディスプレイ416などの外部入力/出力デバイスに対するGUIのためのグラフィカル情報を表示し得る。他の実施形態においては、複数のプロセッサおよび/または複数のバスが、必要に応じて、複数のメモリおよびタイプのメモリとともに使用され得る。または、複数のコンピュータデバイス400は、(例えば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必須の動作の一部を提供する各デバイスに接続され得る。
メモリ404は、コンピュータデバイス400内に情報を記憶する。ある実施形態においては、メモリ404は、揮発性メモリユニットまたはユニットである。別の実施形態においては、メモリ404は、不揮発性メモリユニットまたはユニットである。メモリ404はまた、磁気または光ディスクなどの他の形式のコンピュータ可読媒体であり得る。
ストレージデバイス406は、コンピュータデバイス400のためのマスストレージを提供することができる。ある実施形態においては、ストレージデバイス406は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワーク内のデバイスまたは他の構成を含むデバイスのアレイなどといった、コンピュータ可読媒体であり得るまたはコンピュータ可読媒体を含み得る。コンピュータプログラム製品は、情報キャリアに有形的に具現化され得る。コンピュータプログラム製品はまた、実行されると、上述したようなものなどの1つまたは複数の方法を行う命令を含み得る。情報キャリアは、メモリ404、ストレージデバイス406、またはプロセッサ402上のメモリなどといった、コンピュータ可読媒体または機械可読媒体である。
高速コントローラ408はコンピュータデバイス400のための帯域集約動作を管理する一方で、低速コントローラ412はより低い帯域集約動作を管理する。ファンクションのそのような割り振りは、例示的なものに過ぎない。ある実施形態においては、高速コントローラ408は、メモリ404、ディスプレイ416(例えば、グラフィックプロセッサまたはアクセラレータを介して)、および高速拡張ポート410に接続されており、様々な拡張カード(図示せず)に対応し得る。その実施形態においては、低速コントローラ412は、ストレージデバイス406および低速拡張ポート414に接続されている。様々な通信ポート(例えば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、無線イーサネット(登録商標))を含み得る低速拡張ポートは、例えば、ネットワークアダプタを介して、キーボード、ポインティングデバイス、スキャナ、またはスイッチまたはルータなどのネットワークデバイスなどといった、1つまたは複数の入力/出力デバイスに接続され得る。いくつかの例においては、ストレージデバイス406は、高速バスに接続されている。
コンピュータデバイス400は、図中に示したように、多数の異なる形式で実装され得る。例えば、標準的なサーバ420として実装され得る、または、そのようなサーバのグループ内に複数回実装され得る。ラックサーバシステム424の一部としても実装され得る。加えて、ラップトップコンピュータ422などのパーソナルコンピュータに実装され得る。あるいは、コンピュータデバイス400のコンポーネントは、デバイス440などのモバイルデバイス内にある他のコンポーネント(図示せず)に接続され得る。そのようなデバイスの各々は、コンピュータデバイス400、440のうちの1つまたは複数を含み得るし、システム全体は、互いに通信する複数のコンピュータデバイス400、440で構成され得る。
コンピュータデバイス440は、プロセッサ452、メモリ464、ディスプレイ454などの入力/出力デバイス、通信インターフェース476、およびトランシーバ468、ならびに他のコンポーネントを含む。デバイス440はまた、マイクロドライブまたは他のデバイスなどといった、追加のストレージを提供するストレージデバイスを備え得る。コンポーネント440、452、464、454、476、および468の各々は、様々なバスを使用して相互接続されており、いくつかのコンポーネントは、必要に応じて共通のマザーボード上にまたは他の方式で組み込まれ得る。
プロセッサ452は、メモリ464に記憶されている命令を含む、コンピュータデバイス640内の命令を実行し得る。プロセッサは、別個のおよび複数のアナログおよびデジタルプロセッサを含むチップのチップセットとして実装され得る。プロセッサは、例えば、ユーザインターフェースの制御、デバイス440によって実行されるアプリケーション、およびデバイス440による無線通信などといった、デバイス440の他のコンポーネントについての調整を提供し得る。
プロセッサ452は、ディスプレイ454に接続されている制御インターフェース458およびディスプレイインターフェース456を介してユーザと通信し得る。ディスプレイ454は、例えば、TFT LCD(Thin-Film-Transistor Liquid Crystal Display)もしくはOLED(Organic Light Emitting Diode)ディスプレイ、または他の適切なディスプレイ技術であり得る。ディスプレイインターフェース456は、ユーザにグラフィカルな情報および他の情報を提示するためにディスプレイ454を駆動するのに適した回路を含み得る。制御インターフェース448は、ユーザからコマンドを受信し、それらをプロセッサ452への送信のために変換し得る。加えて、外部インターフェース462は、他のデバイスとのデバイス440の近距離エリア通信を可能にするために、プロセッサ452との通信において提供され得る。外部インターフェース462は、例えば、いくつかの実施形態においては有線通信をまたは他の実施形態においては無線通信を提供し得るし、複数のインターフェースも使用され得る。
メモリ464は、コンピュータデバイス440内の情報を記憶する。メモリ464は、コンピュータ可読媒体、揮発性メモリユニットもしくはユニット、または不揮発性メモリユニットもしくはユニットのうちの1つまたは複数として実装され得る。拡張メモリ444はまた、例えば、SIMM(Single In Line Memory Module)カードインターフェースを含み得る、拡張インターフェース442を介して、デバイス440に提供および接続され得る。そのような拡張メモリ444は、デバイス440に追加ストレージ領域を提供し得るし、または、デバイス440のためのアプリケーションまたは他の情報も記憶し得る。特に、拡張メモリ444は、上述したプロセスを実行または補完する命令を含み得るし、セキュアな情報も含み得る。そのため、例えば、拡張メモリ444は、デバイス440のためのセキュリティモジュールとして提供され得るし、デバイス440のセキュアな使用を可能にする命令でプログラムされ得る。加えて、セキュアなアプリケーションは、ハッキング不可な方式でSIMMカードに対する配置識別情報などの追加の情報とともに、SIMMカードを介して提供され得る。
メモリは、以下で説明しているように、例えば、フラッシュメモリおよび/またはNVRAMメモリを含み得る。ある実施形態においては、コンピュータプログラム製品は、情報キャリア内に有形的に具現化される。コンピュータプログラム製品は、実行されると、上述したようなものなどの1つまたは複数の方法を行う命令を含み得る。情報キャリアは、メモリ464、拡張メモリ444、プロセッサ452上のメモリ、または例えばトランシーバ468または外部インターフェース462を介して受信され得る伝搬信号などといった、コンピュータ可読媒体または機械可読媒体である。
デバイス440は、通信インターフェース476を介して無線で通信し得るし、そこで必要とされるデジタル信号処理回路を含み得る。通信インターフェース476は、GSM(登録商標)音声通話、SMS、EMS、もしくはMMSメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSなどといった、様々なモードまたはプロトコルに準拠した通信を提供し得る。そのような通信は、例えば、無線周波数トランシーバ468を介して生じ得る。加えて、短距離通信は、Bluetooth(登録商標)、WiFi、または他のそのようなトランシーバ(図示せず)などを使用して生じ得る。加えて、GPS(Global Positioning System)受信機モジュール440は、追加のナビゲーション関連およびロケーション関連の無線データをデバイス440に提供し得るし、必要に応じてデバイス440上で動作するアプリケーションによって使用され得る。
デバイス440はまた、オーディオコーデック460を使用して音声で通信し得るし、ユーザから音声による情報を受信してそれを利用可能なデジタル情報に変換し得る。同様に、オーディオコーデック460は、例えばデバイス440のハンドセット内のスピーカなどを介して、ユーザのための可聴サウンドを生成する。そのようなサウンドは、音声電話通話からのサウンドを含み得るし、録音されたサウンド(例えば、音声メッセージ、音楽ファイルなど)を含み得るし、デバイス440上で動作するアプリケーションによって生成されたサウンドも含み得る。
コンピュータデバイス440は、図中に示したように、多数の異なる形式で実装され得る。例えば、セルラ電話480として実装され得る。スマートフォン482、携帯情報端末、または他の同様のモバイルデバイスの一部としても実装され得る。
本明細書で説明したシステムおよび技法の様々な実施形態は、デジタル電子回路、集積回路、専用ASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはその組合せで実現され得る。これらの様々な実施形態は、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信するとともにそれらにデータおよび命令を送信するために接続されている、特殊または汎用であり得る、少なくとも1つのプログラマブルプロセッサを含む、プログラマブルシステム上で実行可能および/またはインタープリタ可能である1つまたは複数のコンピュータプログラムにおける実施形態を含み得る。
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)は、プログラマブルプロセッサのための機械命令を含み、高級手続き型および/もしくはオブジェクト指向のプログラミング言語でならびに/またはアセンブリ/機械語で実装され得る。本明細書で使用しているように、「機械可読媒体」、「コンピュータ可読媒体」という用語は、機械可読信号として機械命令を受信する機械可読媒体を含む、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される任意のコンピュータプログラム製品、装置、および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、Programmable Logic Device(PLD))を指す。「機械可読信号」という用語は、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される任意の信号を指す。
ユーザとのインタラクションを提供するために、本明細書で説明したシステムおよび技法は、ユーザに情報を表示するための表示デバイス(例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ)と、ユーザがそれらによってコンピュータに入力を提供し得るキーボードおよびポインティングデバイス(例えば、マウスまたはトラックボール)とを有するコンピュータ上に実装され得る。他の種類のデバイスを、同様にユーザとのインタラクションを提供するために使用してもよく、例えば、ユーザに提供されるフィードバックは、任意の形式の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であり得るし、ユーザからの入力は、音響、音声、または触覚入力を含む、任意の形式で受信され得る。
本明細書で説明したシステムおよび技法は、(例えば、データサーバとして)バックエンドコンポーネントを含む、またはミドルウェアコンポーネント(例えば、アプリケーションサーバ)を含む、またはフロントエンドコンポーネント(例えば、グラフィックユーザインターフェースを有するクライアントコンピュータもしくはユーザがそれを介して本明細書で説明したシステムおよび技法の実施形態とのインタラクションを行い得るウェブブラウザ)を含む、またはそのようなバックエンド、ミドルウェア、もしくはフロントエンドコンポーネントの任意の組合せを含む、コンピューティングシステムにおいて実装され得る。システムのコンポーネントは、任意の形式または媒体のデジタルデータ通信(例えば、通信ネットワーク)によって相互接続され得る。通信ネットワークの例としては、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、およびインターネットを含む。
コンピューティングシステムは、クライアントとサーバとを含み得る。クライアントとサーバとは、一般的に互いにリモートにあり、通常は通信ネットワークを介してインタラクションを行う。クライアントとサーバとの関係は、それぞれのコンピュータ上で動作するとともに互いにクライアントサーバ関係を有するコンピュータプログラムによって生じる。
本開示はいくつかの具体例を含んでいるが、これらを、開示の例示的な実施形態の特徴の説明としてではなく、開示の範囲または主張され得ることに対する限定として解釈すべきではない。また、別個の実施形態に関連する本開示において説明したある特徴が、単一の実施形態における組合せで提供されてもよい。また、反対に、単一の実施形態に関連して説明した様々な特徴が、複数の実施形態で別々にまたは任意の適切なサブコンビネーションで提供されてもよい。さらに、特徴をある組合せにおける動作として上記で説明している場合、さらには当初はそのように主張している場合さえあったとしても、主張した組合せのうちの1つまたは複数の特徴を、いくつかのケースでは組合せから削除してもよいし、主張した組合せが、サブコンビネーションまたはサブコンビネーションの変形を対象としていてもよい。
同様に、動作を特定の順序で図面に記載しているが、そのような動作を図示した特定の順序でまたはシーケンシャルな順序で行う必要があるとして、または、望ましい結果を達成するために図示した動作のすべてを行う必要があるとして、理解すべきではない。ある環境においては、マルチタスク処理およびパラレル処理が都合がよい場合がある。さらに、上述した実施形態における様々なシステムコンポーネントの分離をすべての実施形態においてそのような分離が必要であるとして理解すべきではないし、説明したプログラムコンポーネントおよびシステムは一般的に単一のソフトウェア製品に一緒に統合され得るまたは複数のソフトウェア製品にパッケージされ得ることを理解すべきである。
上に述べたように、本開示の特定の実施形態を説明してきた。他の実施形態も以下の特許請求の範囲の範囲内にある。例えば、特許請求の範囲に記載のアクションは、異なる順序で行われ、望ましい結果をさらに達成し得る。多数の実施形態を説明してきた。しかしながら、開示の精神および範囲から逸脱しない限り様々な修正をしてもよいことは理解されよう。例えば、上記で示した様々な形式のフローは、再順序付けした、追加した、または削除したステップで使用され得る。それゆえ、他の実施形態も以下の特許請求の範囲の範囲内にある。
例えば、上述した実施形態においては、発話の冒頭の一部は、モバイルデバイス102において検出される。しかしながら、発明は、このことに限定されないし、代わりに、他の場所で、例えば、フロントエンドエンジン104または連続音声認識器106によって、発話の冒頭の一部を検出してもよい。
100 システム
102 モバイルコンピュータデバイス
104 フロントエンドエンジン
106 連続音声認識器
108 完了エンジン
110 クエリログ
112 サーチエンジン
114 キャッシュ
116 ユーザ
200 プロセス
400 コンピュータデバイス
402 プロセッサ
404 メモリ
406 ストレージデバイス
408 高速インターフェース
410 高速拡張ポート
412 低速インターフェース
414 低速拡張ポート
416 ディスプレイ
420 サーバ
422 ラップトップコンピュータ
424 ラックサーバシステム
440 デバイス
442 拡張インターフェース
444 拡張メモリ
446 ディスプレイインターフェース
448 制御インターフェース
452 プロセッサ
454 ディスプレイ
456 ディスプレイインターフェース
458 制御インターフェース
460 オーディオコーデック
462 外部インターフェース
464 メモリ
468 トランシーバ
476 通信インターフェース
480 セルラ電話
482 スマートフォン

Claims (17)

  1. 発話を符号化しているオーディオデータを受信するステップと、
    前記発話の中間トランスクリプションを取得するステップと、
    前記発話の最終的なトランスクリプションが取得される前に、
    i)前記発話の前記中間トランスクリプションが以前受信した検索クエリに関連していると決定するステップと、
    ii)前記以前受信した検索クエリに応答したものとして識別された1つまたは複数の結果を取得するステップと、
    iii)前記結果のうちの1つまたは複数を記憶するステップと、
    前記発話の前記最終的なトランスクリプションを取得するステップと、
    前記発話の前記最終的なトランスクリプションも前記以前受信した検索クエリに関連していると決定するステップと、
    前記発話の前記最終的なトランスクリプションも前記以前受信した検索クエリに関連していると決定するステップに応じて、出力のために前記記憶されている1つまたは複数の結果を提供するステップと
    を含む、方法。
  2. 前記発話の前記中間トランスクリプションが閾値サイズ有していると決定するステップであって、前記発話の前記中間トランスクリプションは、前記中間トランスクリプションが前記閾値サイズ有していると決定した後にのみ、前記以前受信した検索クエリに関連していると決定される、ステップをさらに含む、請求項1に記載の方法。
  3. 前記発話の前記中間トランスクリプションは、連続音声認識器によって生成され、前記1つまたは複数の結果は、サーチエンジンから取得される、請求項1または2に記載の方法。
  4. 前記発話の前記中間トランスクリプションが前記以前受信した検索クエリに関連していると決定するステップの後に、サーチエンジンによる再実行のために前記以前受信した検索クエリを送信するステップをさらに含む、請求項1、2、または3に記載の方法。
  5. 前記発話の前記中間トランスクリプションが前記以前受信した検索クエリに関連していると決定するステップは、前記発話に関連したロケーションが前記以前受信した検索クエリに関連付けられたロケーションに関連していると決定するステップを含む、請求項1から4のいずれか一項に記載の方法。
  6. 前記発話の前記中間トランスクリプションが前記以前受信した検索クエリに関連していると決定するステップは、前記発話の前記中間トランスクリプションが前記発話と関連している同一のユーザによって送信された以前受信した検索クエリに関連していると決定するステップを含む、請求項1から5のいずれか一項に記載の方法。
  7. 前記発話の前記中間トランスクリプションが前記以前受信した検索クエリに関連していると決定するステップは、前記発話の前記中間トランスクリプションが前記発話と関連しているユーザとは異なるユーザによって送信された以前受信した検索クエリに関連していると決定するステップを含む、請求項1から5のいずれか一項に記載の方法。
  8. 前記発話は、音声クエリ以外の音声コマンドである、請求項1から7のいずれか一項に記載の方法。
  9. 前記発話の前記中間トランスクリプションが以前受信した検索クエリに関連していると決定するステップは、前記発話の前記中間トランスクリプションが前記以前受信した検索クエリの一部と同一であると決定するステップをさらに含む、請求項1から8のいずれか一項に記載の方法。
  10. 前記発話の前記中間トランスクリプションが以前受信した検索クエリに関連していると決定するステップは、前記発話の前記中間トランスクリプションが前記以前受信した検索クエリの一部に対する閾値類似度内にあると決定するステップをさらに含む、請求項1から8のいずれか一項に記載の方法。
  11. システムであって、
    1つまたは複数のコンピュータと、命令を記憶する1つまたは複数のストレージデバイスとを含み、前記命令は、前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに、
    発話を符号化しているオーディオデータを受信するステップと、
    前記発話の中間トランスクリプションを取得するステップと、
    前記発話の最終的なトランスクリプションが取得される前に、
    i)前記発話の前記中間トランスクリプションが以前受信した検索クエリに関連していると決定するステップと、
    ii)前記以前受信した検索クエリに応答したものとして識別された1つまたは複数の結果を取得するステップと、
    iii)前記結果のうちの1つまたは複数を記憶するステップと、
    前記発話の前記最終的なトランスクリプションを取得するステップと、
    前記発話の前記最終的なトランスクリプションも前記以前受信した検索クエリに関連していると決定するステップと、
    前記発話の前記最終的なトランスクリプションも前記以前受信した検索クエリに関連していると決定するステップに応じて、出力のために前記記憶されている1つまたは複数の結果を提供するステップと
    を含む動作を行わせるように動作可能である、システム。
  12. 前記動作は、前記発話の前記中間トランスクリプションが閾値サイズ有していると決定するステップであって、前記発話の前記中間トランスクリプションは、前記中間トランスクリプションが前記閾値サイズ有していると決定した後にのみ、前記以前受信した検索クエリに関連していると決定される、ステップをさらに含む、請求項11に記載のシステム。
  13. 前記発話の前記中間トランスクリプションは、連続音声認識器によって生成され、前記1つまたは複数の結果は、サーチエンジンから取得される、請求項11または12に記載のシステム。
  14. 前記動作は、前記発話の前記中間トランスクリプションが前記以前受信した検索クエリに関連していると決定するステップの後に、サーチエンジンによる再実行のために前記以前受信した検索クエリを送信するステップをさらに含む、請求項11、12、または13に記載のシステム。
  15. 前記発話の前記中間トランスクリプションが前記以前受信した検索クエリに関連していると決定するステップは、前記発話に関連したロケーションが前記以前受信した検索クエリに関連付けられたロケーションに関連していると決定するステップを含む、請求項11、12、13、または14に記載のシステム。
  16. 前記発話の前記中間トランスクリプションが前記以前受信した検索クエリに関連していると決定するステップは、前記発話の前記中間トランスクリプションが前記発話と関連している同一のユーザによって送信された以前受信した検索クエリに関連していると決定するステップを含む、請求項11、12、13、14、または15に記載のシステム。
  17. その実行時に、前記1つまたは複数のコンピュータに、請求項1から10のいずれか一項に記載の方法を含む動作を行わせる、1つまたは複数のコンピュータによって実行可能な命令を含むソフトウェアを記憶する、コンピュータ可読媒体。
JP2018520606A 2016-01-06 2016-11-18 音声クエリの検索結果のプリフェッチ処理 Active JP6487120B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/988,990 US10133821B2 (en) 2016-01-06 2016-01-06 Search result prefetching of voice queries
US14/988,990 2016-01-06
PCT/US2016/062819 WO2017119956A1 (en) 2016-01-06 2016-11-18 Search result prefetching of voice queries

Publications (2)

Publication Number Publication Date
JP2018533790A true JP2018533790A (ja) 2018-11-15
JP6487120B2 JP6487120B2 (ja) 2019-03-20

Family

ID=57472107

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018520606A Active JP6487120B2 (ja) 2016-01-06 2016-11-18 音声クエリの検索結果のプリフェッチ処理

Country Status (8)

Country Link
US (1) US10133821B2 (ja)
EP (1) EP3350725B1 (ja)
JP (1) JP6487120B2 (ja)
KR (1) KR102021556B1 (ja)
CN (1) CN107066494B (ja)
DE (2) DE202016008204U1 (ja)
RU (1) RU2701082C1 (ja)
WO (1) WO2017119956A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6481643B2 (ja) * 2016-03-08 2019-03-13 トヨタ自動車株式会社 音声処理システムおよび音声処理方法
CN107644095A (zh) * 2017-09-28 2018-01-30 百度在线网络技术(北京)有限公司 用于搜索信息的方法和装置
CN109976696B (zh) * 2017-12-28 2022-05-10 深圳市优必选科技有限公司 获取音频数据的方法及装置、设备、计算机可读存储介质
KR20190113130A (ko) * 2018-03-27 2019-10-08 삼성전자주식회사 사용자 음성 입력을 처리하는 장치
US11710480B2 (en) * 2019-08-07 2023-07-25 International Business Machines Corporation Phonetic comparison for virtual assistants
KR20210042520A (ko) 2019-10-10 2021-04-20 삼성전자주식회사 전자 장치 및 이의 제어 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090006343A1 (en) * 2007-06-28 2009-01-01 Microsoft Corporation Machine assisted query formulation
US8521526B1 (en) * 2010-07-28 2013-08-27 Google Inc. Disambiguation of a spoken query term

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4592086A (en) 1981-12-09 1986-05-27 Nippon Electric Co., Ltd. Continuous speech recognition system
US5615296A (en) 1993-11-12 1997-03-25 International Business Machines Corporation Continuous speech recognition and voice response system and method to enable conversational dialogues with microprocessors
US5995928A (en) * 1996-10-02 1999-11-30 Speechworks International, Inc. Method and apparatus for continuous spelling speech recognition with early identification
US7725307B2 (en) * 1999-11-12 2010-05-25 Phoenix Solutions, Inc. Query engine for processing voice based queries including semantic decoding
US7027987B1 (en) * 2001-02-07 2006-04-11 Google Inc. Voice interface for a search engine
US7836044B2 (en) * 2004-06-22 2010-11-16 Google Inc. Anticipated query generation and processing in a search engine
US20060161541A1 (en) 2005-01-19 2006-07-20 Microsoft Corporation System and method for prefetching and caching query results
US7461059B2 (en) * 2005-02-23 2008-12-02 Microsoft Corporation Dynamically updated search results based upon continuously-evolving search query that is based at least in part upon phrase suggestion, search engine uses previous result sets performing additional search tasks
US8751240B2 (en) * 2005-05-13 2014-06-10 At&T Intellectual Property Ii, L.P. Apparatus and method for forming search engine queries based on spoken utterances
US7516124B2 (en) 2005-12-20 2009-04-07 Yahoo! Inc. Interactive search engine
US8719265B1 (en) 2005-11-07 2014-05-06 Google Inc. Pre-fetching information in anticipation of a user request
US7565157B1 (en) * 2005-11-18 2009-07-21 A9.Com, Inc. System and method for providing search results based on location
US8874591B2 (en) * 2006-01-31 2014-10-28 Microsoft Corporation Using user feedback to improve search results
US8352261B2 (en) * 2008-03-07 2013-01-08 Canyon IP Holdings, LLC Use of intermediate speech transcription results in editing final speech transcription results
US8260809B2 (en) * 2007-06-28 2012-09-04 Microsoft Corporation Voice-based search processing
US20100049678A1 (en) 2008-08-25 2010-02-25 Alcatel-Lucent System and method of prefetching and caching web services requests
US8903793B2 (en) 2009-12-15 2014-12-02 At&T Intellectual Property I, L.P. System and method for speech-based incremental search
US8468012B2 (en) * 2010-05-26 2013-06-18 Google Inc. Acoustic model adaptation using geographic information
US8612418B2 (en) 2011-07-14 2013-12-17 Google Inc. Mobile web browser for pre-loading web pages
US8650031B1 (en) * 2011-07-31 2014-02-11 Nuance Communications, Inc. Accuracy improvement of spoken queries transcription using co-occurrence information
US10354650B2 (en) * 2012-06-26 2019-07-16 Google Llc Recognizing speech with mixed speech recognition models to generate transcriptions
WO2014039106A1 (en) * 2012-09-10 2014-03-13 Google Inc. Answering questions using environmental context
US8484017B1 (en) * 2012-09-10 2013-07-09 Google Inc. Identifying media content
EP2706470A1 (en) * 2012-09-10 2014-03-12 Google Inc. Answering questions using environmental context
US8589164B1 (en) * 2012-10-18 2013-11-19 Google Inc. Methods and systems for speech recognition processing using search query information
US8494853B1 (en) * 2013-01-04 2013-07-23 Google Inc. Methods and systems for providing speech recognition systems based on speech recordings logs
US9368106B2 (en) 2013-07-30 2016-06-14 Verint Systems Ltd. System and method of automated evaluation of transcription quality
US9607613B2 (en) 2014-04-23 2017-03-28 Google Inc. Speech endpointing based on word comparisons

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090006343A1 (en) * 2007-06-28 2009-01-01 Microsoft Corporation Machine assisted query formulation
US8521526B1 (en) * 2010-07-28 2013-08-27 Google Inc. Disambiguation of a spoken query term

Also Published As

Publication number Publication date
KR102021556B1 (ko) 2019-11-04
CN107066494B (zh) 2021-01-12
EP3350725B1 (en) 2019-07-10
US20170193111A1 (en) 2017-07-06
DE202016008204U1 (de) 2017-05-10
CN107066494A (zh) 2017-08-18
DE102016125141B4 (de) 2024-05-23
JP6487120B2 (ja) 2019-03-20
RU2701082C1 (ru) 2019-09-24
EP3350725A1 (en) 2018-07-25
US10133821B2 (en) 2018-11-20
KR20180056723A (ko) 2018-05-29
DE102016125141A1 (de) 2017-07-06
WO2017119956A1 (en) 2017-07-13

Similar Documents

Publication Publication Date Title
US11682396B2 (en) Providing pre-computed hotword models
JP6630765B2 (ja) 個別化されたホットワード検出モデル
JP6487120B2 (ja) 音声クエリの検索結果のプリフェッチ処理
US9293136B2 (en) Multiple recognizer speech recognition
KR102115541B1 (ko) 외부 데이터 소스들을 사용한 스피치 재-인식
US9401146B2 (en) Identification of communication-related voice commands
US9576578B1 (en) Contextual improvement of voice query recognition

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180613

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180514

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180613

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180911

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181029

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190108

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190220

R150 Certificate of patent or registration of utility model

Ref document number: 6487120

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250