JP6488588B2 - 音声認識方法および音声認識システム - Google Patents
音声認識方法および音声認識システム Download PDFInfo
- Publication number
- JP6488588B2 JP6488588B2 JP2014164642A JP2014164642A JP6488588B2 JP 6488588 B2 JP6488588 B2 JP 6488588B2 JP 2014164642 A JP2014164642 A JP 2014164642A JP 2014164642 A JP2014164642 A JP 2014164642A JP 6488588 B2 JP6488588 B2 JP 6488588B2
- Authority
- JP
- Japan
- Prior art keywords
- user
- vocabulary
- location
- content
- data
- 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
Links
- 238000000034 method Methods 0.000 title claims description 92
- 238000001914 filtration Methods 0.000 claims description 92
- 230000004044 response Effects 0.000 claims description 28
- 238000010276 construction Methods 0.000 claims description 16
- 238000001514 detection method Methods 0.000 claims description 9
- 238000004587 chromatography analysis Methods 0.000 claims 2
- 238000003860 storage Methods 0.000 description 45
- 238000002360 preparation method Methods 0.000 description 42
- 230000015654 memory Effects 0.000 description 37
- 238000004891 communication Methods 0.000 description 33
- 230000008569 process Effects 0.000 description 23
- 230000003993 interaction Effects 0.000 description 21
- 238000012545 processing Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 10
- 238000012552 review Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000007417 hierarchical cluster analysis Methods 0.000 description 3
- 230000000670 limiting effect Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 235000015220 hamburgers Nutrition 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000208199 Buxus sempervirens Species 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004378 air conditioning Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 235000021152 breakfast Nutrition 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010428 oil painting Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
- 230000001932 seasonal effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/193—Formal grammars, e.g. finite state automata, context free grammars or word networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/226—Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
- G10L2015/228—Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Navigation (AREA)
- Telephonic Communication Services (AREA)
Description
本出願は、"CONFIGURING DYNAMIC CUSTOM VOCABULARY FOR PERSONALIZED SPEECH RECOGNITION"と題され、2013年10月15日に出願された、米国特許出願第14/054
,763号の優先権を主張する。該出願は、その全体が本明細書中に参照として組み込まれる。
自動音声認識システムに対して音声クエリを入力し、当該音声認識システムから結果を受信する技術が普及している。しかしながら、時として、音声クエリに含まれる用語をシステムが正しく認識できないケースがある。
例えば、音声認識システムは、固有な場所を表す語を解釈できない場合がある。また、ユーザに関連する個人的な意味を持つ用語を認識できない場合もある。
このような場合、システムは、入力した音声クエリと関係のない結果を返す場合があり、あるいは、音声クエリを全く解釈することができない場合がある。
加えて、既存の音声ベースのナビゲーションシステムにおいては、ローカルに保存されたデータを使用することはあっても、ユーザに関連する適切なデータまたは最新のデータを用いることをしていない。
例えば、いくつかのシステムでは、ローカルの連絡先データベースを参照することはできても、ソーシャルネットワーク上の、または、インスタントメッセージングプログラムを経由して、ユーザが交わした会話を取得することはない。
また、これらのシステムは、多くの場合、ユーザの現在位置を考慮しておらず、ユーザの知り合いや、ユーザが関心を持っている地点が、当該現在位置の近傍にある(いる)ことなども考慮していない。
音声認識システムが利用する、場所に関する辞書である場所ボキャブラリを生成するた
めに、コンピュータが実行する方法であって、トリガイベントを検出する検出ステップと、前記トリガイベントに対応して、ユーザの移動に関する情報である移動情報を取得する移動情報取得ステップと、前記移動情報に基づいて、前記ユーザに対応する関心場所を取得する関心場所取得ステップと、前記取得した一つ以上の関心場所を用いて、前記ユーザに対応する場所ボキャブラリを構築する構築ステップと、一つ以上の場所フィルタリングパラメータに基づいて、前記場所ボキャブラリをフィルタリングするフィルタリングステップと、前記フィルタリング後の場所ボキャブラリを、前記ユーザに対応するボキャブラリとして登録する登録ステップと、を含むことを特徴とする。
音声認識システムが利用する、連絡先に関する辞書である連絡先ボキャブラリを生成するために、コンピュータが実行する方法であって、トリガイベントを検出する検出ステップと、前記トリガイベントに対応して、ユーザの移動に関する情報である移動情報を取得する移動情報取得ステップと、前記ユーザに関連付いた一つ以上の連絡先を表す連絡先データを取得する連絡先データ取得ステップと、前記連絡先データおよび前記移動情報に基づいて、前記ユーザに対応する連絡先ボキャブラリを構築する構築ステップと、一つ以上の連絡先フィルタリングパラメータに基づいて、前記連絡先ボキャブラリをフィルタリングするフィルタリングステップと、前記フィルタリング後の連絡先ボキャブラリを、前記ユーザに対応するボキャブラリとして登録する登録ステップと、を含むことを特徴とする。
音声認識システムが利用する、コンテンツに関する辞書であるコンテンツボキャブラリを生成するために、コンピュータが実行する方法であって、トリガイベントを検出する検出ステップと、前記トリガイベントに対応して、前記ユーザの移動に関する情報である移動情報を取得する移動情報取得ステップと、ユーザがアクセス可能な情報源であるコンテンツに関連する情報であるコンテンツデータを取得するコンテンツデータ取得ステップと、前記コンテンツデータおよび前記移動情報に基づいて、前記ユーザに対応するコンテンツボキャブラリを構築する構築ステップと、一つ以上のコンテンツフィルタリングパラメータに基づいて、前記コンテンツボキャブラリをフィルタリングするフィルタリングステップと、前記フィルタリング後のコンテンツボキャブラリを、前記ユーザに対応するボキャブラリとして登録する登録ステップと、を含むことを特徴とする。
また、これらの形態の一つ以上の他の実装として、方法、システム、装置、コンピュータプログラム、コンピュータ記憶装置上に符号化された方法の実行などが含まれる。
また、これらの実装例は、以下の特徴のうち一つ以上を任意に含んでいてもよい。
例えば、前記場所ボキャブラリに含まれる単語は、特定の対象を指し示す単語である非カスタム単語と、指し示す対象がユーザごとに異なる単語であるカスタム単語のいずれかであり、前記場所フィルタリングパラメータは、ユーザに関連付いた第一の場所を含み、前記フィルタリングステップは、前記第一の場所に基づいて、カバー半径を決定するステップと、前記カバー半径および第一の位置に基づいて、カバー範囲を決定するステップと、前記カバー範囲に含まれる一つ以上の第二の場所に対応する、一つ以上のカスタム場所単語を含むように、フィルタリング後の場所ボキャブラリを生成するステップと、を含むことを特徴としてもよい。
また、ユーザから音声コマンドを取得する取得ステップと、前記登録後の場所ボキャブラリに基づいて、前記音声コマンドに含まれるカスタム単語を認識するステップと、前記カスタム単語を含む前記音声コマンドを送信するステップと、前記音声コマンドに合致する結果を受信するステップと、をさらに含んでいてもよい。
また、前記ユーザに関連付いたナビゲーションデータを取得するステップと、前記ナビ
ゲーションデータに基づいて、経路情報を取得するステップと、前記経路情報に関連付いた、一つ以上の道路名称またはランドマークを取得するステップと、をさらに含み、前記構築ステップでは、前記一つ以上の道路名称またはランドマークをさらに用いて、前記ユーザに対応する場所ボキャブラリを構築することを特徴としてもよい。
また、前記経路情報に基づいて、一つ以上の立ち寄り地点を取得するステップをさらに含み、前記構築ステップでは、前記立ち寄り地点をさらに用いて、前記ユーザに対応する場所ボキャブラリを構築することを特徴としてもよい。
また、前記ユーザに関連付いたソーシャルネットワークデータを取得するステップをさらに含み、前記関心場所取得ステップでは、前記ソーシャルネットワークデータに含まれる位置データにさらに基づいて、前記ユーザに対応する関心場所を取得することを特徴としてもよい。
また、前記ユーザに関連付いた検索データを取得するステップをさらに含み、前記関心場所取得ステップでは、前記検索データにさらに基づいて、前記ユーザに対応する関心場所を取得することを特徴としてもよい。
また、前記ユーザに関連付いた連絡先データを取得するステップをさらに含み、前記関心場所取得ステップでは、前記連絡先データに含まれる位置データにさらに基づいて、前記ユーザに対応する関心場所を取得することを特徴としてもよい。
また、前記移動状態は、未来の移動における移動開始時刻を含み、前記構築ステップは、前記移動開始時刻の到来までに実行されることを特徴としてもよい。
本技術では、ボキャブラリのサイズを小さくするために、多くの独自な要素を利用して、必要なカスタムボキャブラリのセットのみを適切に決定することができる。また、本技術は、ユーザに対応するカスタムボキャブラリを生成し、音声エンジンに登録することができる。
カスタムボキャブラリを実装することで、音声認識の精度を向上させ、また、パーソナライズされた価値ある経験をユーザに提供することができる。
例えば、本技術によると、現在位置、関心地点、交差点など、一つ以上の既知の場所の近くにある位置についてのデータを含む音声クエリを識別し、解釈することができる。
別の例では、クライアント装置に個人情報を手動で入力せずとも、ユーザは、パーソナライズされた音声コマンドを発話することができ、当該コマンドに適合した結果を取得することができる。
本技術はまた、カスタムボキャブラリのサイズを制限するため、一つ以上のフィルタリングパラメータに基づいてカスタムボキャブラリをフィルタリングすることができる。これにより、システムの音声認識速度の低下を抑制し、高速な音声認識、音声認識精度の向上、ユーザ設定のよりよい学習、パーソナライズされた経験のユーザに対する提供、などを達成することができる。
なお、上記の利点はあくまで例であり、システムは、他の多数の利点および利益を有し得ることを理解されるべきである。
本明細書中における、ボキャブラリとは、音声認識システムが利用する辞書であり、カスタムボキャブラリとは、ユーザ個人に対応するボキャブラリである。
本明細書では、ボキャブラリとして、場所に関連したもの、連絡先に関連したもの、ユーザが接触するコンテンツに関連したものの三つを例示する。それぞれを、場所ボキャブラリ、連絡先ボキャブラリ、コンテンツボキャブラリと称する。
また、カスタム単語とは、「自宅」「お父さん」「ニュースアプリ」など、指し示す対象がユーザごとに異なる単語である。本明細書では、カスタム単語として、場所に関連したもの、連絡先に関連したもの、ユーザが接触するコンテンツに関連したものの三つを例示する。それぞれを、カスタム場所単語、カスタム連絡先単語、カスタムコンテンツ単語と称する。
図1は、ある実施形態における、パーソナライズされた音声認識のためのカスタムボキャブラリを構築するシステム100のブロック図を例示したものである。
システム100は、サーバ101、クライアント装置115、モバイルコンピュータ135、検索サーバ124、ソーシャルネットワークサーバ120、地図サーバ170、音声サーバ160を含む。システム100の構成要素は、ネットワーク105によって互いに接続されている。
ネットワーク105は、既知の有線ネットワークであっても無線ネットワークであってよい。また、その構成は、スター型、トークンリング型やその他の構成を取ることができる。さらにまた、ネットワーク105は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)(例えばインターネット)、公衆ネットワーク、プライベートネットワーク、仮想ネットワーク、または、複数の装置が通信に用いる相互接続されたその他の任意のデータパスであってもよい。さらに別の形態では、ネットワーク10
5はピアツーピアネットワークであってもよい。ネットワーク105は、複数の異なる通信プロトコルでデータ送信するための通信ネットワークと接続されたり、このような通信ネットワークを含んだりしても良い。
ある実施形態では、ネットワーク105は、Bluetooth(登録商標)通信ネットワークや携帯電話通信ネットワークを含み、SMS(ショートメッセージサービス)、MMS(マルチメディアメッセージサービス)、HTTP(ハイパーテキスト転送プロトコル)、直接データ接続、WAP、電子メールなどのデータを送受信する。
なお、図1では1つのネットワーク105のみが、サーバ101、クライアント装置115、モバイルコンピュータ135、検索サーバ124、ソーシャルネットワークサーバ120、地図サーバ170、音声サーバ160に接続されているが、複数のネットワーク105がこれらの構成要素に接続されていてもよい。
サーバ101は、プロセッサおよびメモリを備え、ネットワークによる通信を行うことができる、ハードウェアサーバや仮想サーバ等である。一実施形態において、サーバ101は、検索サーバ124、ソーシャルネットワークサーバ120、音声サーバ160、クライアント装置115、地図サーバ170、または、モバイルコンピュータ135のうちの一つ以上に対してデータを送受信することができる。
なお、図1では、1台のサーバ101を例示するが、システム100は、複数のサーバ101を含んでいてもよい。
一実施形態において、クライアント装置115は、サーバ101、検索サーバ124、ソーシャルネットワークサーバ120、音声サーバ160、地図サーバ170、または、モバイルコンピュータ135に対してデータを送受信することができる。
クライアント装置115は、メモリとプロセッサを含む、情報処理とネットワーク105へのアクセスが可能なコンピュータであり、例えば、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、携帯電話、個人情報端末(PDA)、モバイル電子メール装置、および、その他の電子機器などである。
ユーザ125は、クライアント装置115を利用する利用者である。
なお、図1では、1台のクライアント装置115を例示するが、システム100は、複数のクライアント装置115を含んでいてもよい。
例えば、サーバ101は、ユーザに対応するカスタムボキャブラリを記憶し、ユーザに当該カスタムボキャブラリを提示するユーザインタフェースを提供するためのグラフィックデータを生成することができる。
認識アプリケーション109bは、クライアント装置115に接続された表示装置(不図示)上でユーザインタフェースを提供するために、クライアント装置115にインストールされたブラウザ(不図示)に命令を送信することができる。一実施形態において、クライアント装置115は、第一のナビゲーションアプリケーション117を有していてもよい。第一のナビゲーションアプリケーション117は、ユーザにナビゲーション命令を提供するためのコードまたはルーチンを含む。例えば、第一のナビゲーションアプリケー
ション117は、GPSアプリケーションであってもよい。
一実施形態において、モバイルコンピュータ135は、サーバ101、検索サーバ124、ソーシャルネットワークサーバ120、音声サーバ160、地図サーバ170、または、クライアント装置115のうちの一つ以上に対してデータを送受信することができる。
モバイルコンピュータ135は、メモリとプロセッサを有するコンピュータを含んでもよい。一実施形態において、車両、自動車、バス、生体に埋め込まれた装置、非一時的(non-transitory)なコンピュータ機器(例えば、プロセッサ、メモリ、あるいは非一時的なコンピュータ機器の組み合わせ)を有する他のモバイルシステムなどであってもよい。
一実施形態において、モバイルコンピュータ135は、ラップトップコンピュータ、タブレットコンピュータ、携帯電話、または、ネットワーク105に接続されたその他のモバイルデバイス等である。
ユーザ125は、信号線154を介してモバイルコンピュータ135と対話する。
例えば、ユーザ125は、車両を運転するドライバーや、助手席に乗車している同乗者であってもよい。
なお、図1では、1台のモバイルコンピュータ135を例示するが、システム100は、複数のモバイルコンピュータ135を含んでいてもよい。
一実施形態において、モバイルコンピュータ135は、第二のナビゲーションアプリケーション107を有している。第二のナビゲーションアプリケーション107は、ユーザにナビゲーション命令を提供するためのコードまたはルーチンを含む。例えば、第二のナビゲーションアプリケーション107は、GPSアプリケーションであってもよい。
ソーシャルネットワークサーバ120は、プロセッサおよびメモリを備え、ネットワークによる通信を行うことができる、ハードウェアサーバや仮想サーバ等である。一実施形態において、ソーシャルネットワークサーバ120は、ネットワーク105を介して、クライアント装置115、サーバ101、モバイルコンピュータ135、検索サーバ124、地図サーバ170、または、音声サーバ160のうちの一つ以上に対してデータを送受信することができる。
ソーシャルネットワークサーバ120は、ソーシャルネットワークアプリケーション122を含む。
ソーシャルネットワークとは、ユーザが共通の特徴によって結ばれた任意のタイプの社交組織である。共通の特徴とは、友達、家族、同僚、同好などの関係やつながりを含む。一例において、共通の特徴は、明確に定義された関係と、他のオンラインユーザーとの社会的なつながりによって暗黙的に定義された関係を含む。一例において、ソーシャルネットワークにおけるユーザのつながりは、ソーシャルグラフによって表される。ソーシャルグラフとは、ソーシャルネットワークにおけるユーザをマッピングしたものであり、ソーシャルネットワークにおいて、各ユーザがどのように関連しているかを示すものである。
とができる。
例えば、認識アプリケーション109は、ユーザにとって最も関連がある、または重要な連絡先を決定し、あまり重要ではない連絡先(例えば、古い連絡先、未使用の連絡先、制限された連絡先、めったに連絡や交流しない知人)をフィルタリングするために、これらのAPIを使用してグルーピングを取得してもよい。
また、ソーシャルネットワークは、当該APIを通して、ユーザのコンテンツストリームへのアクセスを提供してもよい。認識アプリケーション109は、ユーザに関連するコンテンツストリームに表示される頻度やタイミングに基づいて、連絡先、コンテンツ、場所などが、当該ユーザに関連するかを単独で決定することができる。
また、特定のユーザに対応するコンテンツストリームに含まれる連絡先、コンテンツ、場所などの関連性を判断するため、他の要素を用いてもよい。例えば、当該ユーザがこれらの対象をどの程度好んでいるか、当該対象に関連するコンテキスト情報はあるか、当該対象についての情報を得るために明示的な購読やフォローをしたか、当該対象に関する場所に訪問したか、などといったものが挙げられる。
音声サーバ160は、プロセッサおよびメモリを備え、ネットワークによる通信を行うことができる、ハードウェアサーバや仮想サーバ等である。一実施形態において、音声サーバ160は、検索サーバ124、ソーシャルネットワークサーバ120、サーバ101、クライアント装置115、地図サーバ170、または、モバイルコンピュータ135のうちの一つ以上に対してデータを送受信することができる。
なお、図1では、1台の音声サーバ160を例示するが、システム100は、複数の音声サーバ160を含んでいてもよい。
いくつかの実施形態において、認識アプリケーション109は、FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)などのハードウェア、または、ハードウェアとソフトウェアの組み合わせを用いて実装される。
ある実施形態では、認識アプリケーション109は、装置とサーバの両方に分散して格納されてもよいし、装置とサーバのいずれかのみに格納されてもよい。
認識アプリケーション109については、図2〜図6Bを参照しながら後ほど詳しく説明する。
音声エンジン162は、検索処理を制御し、一つ以上のカスタム単語を含む音声コマン
ドにマッチする結果を取得することができる。なお、音声エンジン162は、認識アプリケーション109に結果を送信してもよい。音声エンジン162については、図7を参照しながらのちほど説明する。
場所ボキャブラリは、一つ以上の、場所を表すカスタム単語(関心地点、ランドマーク、道路名称など)を含むボキャブラリである。
連絡先ボキャブラリは、一つ以上の、連絡先を表すカスタム単語(一つ以上の連絡先など)を含むボキャブラリである。
コンテンツボキャブラリは、一つ以上の、コンテンツを表すカスタム単語(コンテンツソース、コンテンツカテゴリなど)を含むボキャブラリである。
場所ボキャブラリ、連絡先ボキャブラリ、コンテンツボキャブラリについては、図2および図9Aを参照しながら後ほど詳しく説明する。
例えば、登録アプリケーション164は、場所ボキャブラリに含まれる関心場所を音声エンジン162に登録し、当該関心場所(例えば、関心場所の名称や住所など)を音声ライブラリ166に格納する。他の例では、登録アプリケーション164は、連絡先ボキャブラリに含まれる連絡先を音声エンジン162に登録し、当該連絡先(例えば、連絡先の名称、電話番号、メールアドレス、住所など)を音声ライブラリ166に格納する。
声サーバ160、クライアント装置115、または、モバイルコンピュータ135のうちの一つ以上から受信する。
検索サーバ124は、検索クエリを用いて検索を実行し、当該検索クエリにマッチする結果を生成する。また、検索サーバ124は、生成した結果を、サーバ101、ソーシャルネットワークサーバ120、音声サーバ160、クライアント装置115、または、モバイルコンピュータ135のうちの一つ以上に対して送信する。
一実施形態において、検索サーバ124は、信号線123を介してネットワーク105に接続される。なお、図1では、1台の検索サーバ124を例示するが、システム100は、複数の検索サーバ124を含んでいてもよい。
例えば、地図サーバ170は、地図データを、認識アプリケーション109、第一のナビゲーションアプリケーション117、第二のナビゲーションアプリケーション107のうちの一つ以上に送信することができる。
地図サーバ170は、信号線171を介してネットワーク105に接続される。
なお、一実施形態において、地図サーバ170は、関心地点(Point of Interest、以
下POI)データベース172や、地図データベース174を含んでいてもよい。
また、地図データベース174は、一つ以上の地域における地図データを記憶する手段である。一実施形態において、地図データベース174は、データを記憶し、データへのアクセスを提供するために、DBMSを用いてもよい。
図2を参照して、認識アプリケーション109の詳細について説明する。図2は、一実施形態における、認識アプリケーション109、プロセッサ235、メモリ237、通信部241、入出力部243、記憶装置245を含むコンピュータ200のブロック図である。コンピュータ200が有する構成要素は、バス220によって互いに接続されている。
入出力部243は、信号線230によってバス220に接続される。様々な実施形態において、コンピュータ200は、サーバ101、クライアント装置115、モバイルコンピュータ135、ソーシャルネットワークサーバ120、音声サーバ160のうちのいずれかである。
プロセッサ235は、データ信号を処理し、そのアーキテクチャは、CISC(Complex Instruction Set Computer)、RISC(Reduced Instruction Set Computer)、これら両方の命令セットの組合せとして実装されたアーキテクチャなど様々なアーキテクチャでありうる。なお、図2には一つのプロセッサ235だけが示されているが、複数のプロ
セッサ235が含まれていてもよい。上記以外のプロセッサ、オペレーティングシステム、センサ、表示装置、あるいは物理的構成も採用可能である。
メモリ237は、DRAM、SRAM、組み込み型メモリ、フラッシュメモリやその他の既存のメモリ装置である。ある実施形態においては、メモリ237は、ハードディスクドライブ、フロッピー(登録商標)ディスクドライブ、CD−ROM装置、DVD−ROM装置、DVD−RAM装置、DVD−RW装置、フラッシュメモリ装置や情報記憶の分野において既知のその他の大容量記憶装置などの、非一時的(non-volatile)メモリや永久記憶装置を含んでも良い。
いくつかの実施形態において、通信部241は、ネットワーク105や他の通信チャネルへの直接的な物理的接続のためのポートやネットワークインタフェースを含む。例えば、通信部241は、USB、SD、CAT−5など、クライアント装置115と有線通信するためのポートを含む。
ある実施形態では、通信部241は、IEEE 802.11、IEEE 802.16、BlueTooth(登録商標)、DSRC(Dedicated Short-Range Communication)または他の適当な無線通信方式を含む一つまたは複数の無線通信方式を用いて、クラ
イアント装置115や他の通信チャネルとデータを交換するための無線送受信部を含む。
記憶装置245は、DRAM、SRAM、組み込み型メモリ、フラッシュメモリやその他の既存のメモリ装置である。ある実施形態においては、記憶装置245は、ハードディスクドライブ、フロッピー(登録商標)ディスクドライブ、CD−ROM装置、DVD−ROM装置、DVD−RAM装置、DVD−RW装置、フラッシュメモリ装置や情報記憶の分野において既知のその他の大容量記憶装置などの、非一時的(non-volatile)メモリや永久記憶装置を含んでも良い。
る。また、一実施形態において、記憶装置245には、ユーザに関連付いた、ソーシャルネットワークデータ、検索データ、ナビゲーションデータ、関心場所、ランドマーク、道路名称、一つ以上のフィルタリングパラメータ(場所、コンテンツ、連絡先をフィルタリングするためのパラメータ)、場所ボキャブラリ、連絡先ボキャブラリ、コンテンツボキャブラリのうちの一つ以上が格納される。
記憶装置245に格納されるデータについては、のちほど詳しく説明する。一実施形態において、記憶装置245は、本明細書に記載される構造、処理、または機能を提供するためのデータを格納する。
一実施形態において、制御モジュール202は、認識アプリケーション109と、コンピュータ200の他のコンポーネントとの通信を制御するために、以下に示す構造、処理、または機能を提供するための、プロセッサ235で実行可能な命令の集合を含む。
一実施形態において、制御モジュール202は、コンピュータ200のメモリ237に格納され、プロセッサ235によってアクセスされ、実行されてもよい。
また、制御モジュール202は、プロセッサ235およびコンピュータ200の他の構成要素と協働して通信するように最適化されてもよい。
例えば、制御モジュール202は、通信部241を介して、ソーシャルネットワークサーバ120からソーシャルネットワークデータを受信し、当該ソーシャルネットワークデータを場所モジュール204やコンテンツモジュール207に送信することができる。他の例では、制御モジュール202は、UIモジュール214から、ユーザにユーザインタフェースを提供するためのグラフィックデータを受信し、当該グラフィックデータをクライアント装置115やモバイルコンピュータ135に送信し、ユーザインタフェースをユーザに提供させることができる。
一実施形態において、移動状態モジュール203は、コンピュータ200のメモリ237に格納され、プロセッサ235によってアクセスされ、実行されてもよい。
また、移動状態モジュール203は、プロセッサ235およびコンピュータ200の他の構成要素と協働して通信するように最適化されてもよい。
例えば、もし車両データが、平日の午前8時にユーザが自宅から勤務先に向けて移動していることを示す履歴を含んでいる場合、移動状態モジュール203は、当該履歴に基づいて、未来の移動における出発時刻を、平日の午前8時と予測する。また、他の例では、もしユーザプロファイルデータが、「翌日の朝8時半に会議がある」というカレンダデータを含んでおり、車両データが、自宅から勤務先までの所要時間は30分以下という経路データを含んでいた場合、移動状態モジュール203は、未来の移動における出発時刻を、午前8時前(例えば午前7時半)と予測する。
一実施形態において、場所モジュール204は、コンピュータ200のメモリ237に格納され、プロセッサ235によってアクセスされ、実行されてもよい。
また、場所モジュール204は、プロセッサ235およびコンピュータ200の他の構成要素と協働して通信するように最適化されてもよい。
場所ボキャブラリの例を図9Aに示す。一例において、関心場所またはランドマークは、関心地点とも呼ばれる。場所ボキャブラリは、関心地点の他の例を含んでいてもよい。
チェックインした一つ以上の場所を表す。他の例では、ソーシャルネットワークデータは、ユーザによって行われた投稿、シェア、コメント、推薦などを表す。別の例では、ソーシャルネットワークデータは、ユーザに関連付いた“繋がり”(例えば、友達、家族、知人などのリスト)を表すソーシャルグラフデータを含む。なお、ソーシャルネットワークデータは、ユーザに関連付いた他のデータを含んでいてもよい。
場所モジュール204は、ユーザのソーシャルネットワークデータに基づいて、ユーザに関連付いた一つ以上の関心場所を決定する。例えば、場所モジュール204は、ユーザのソーシャルネットワークデータを解析して、次のような一つ以上の関心場所を決定する。
(1)ユーザによってチェックインされた場所
(2)ユーザやユーザの知人によって投稿された一つ以上の内容や画像にタグ付けされた場所
(3)ユーザやユーザの知人によって推薦またはシェアされた場所
(4)ユーザの投稿やコメント中で言及された場所
一実施形態において、場所モジュール204は、タグ付け、推薦、シェアなどによってユーザが関心場所を明示していなくても、一つ以上の関心場所を、ユーザのソーシャルネットワークデータから黙示的に推定する。例えば、ユーザのソーシャルネットワークデータが、当該ユーザが油絵に関心を持っていることを示している場合、場所モジュール204は、街にある一つ以上の美術館やギャラリーを当該ユーザの一つ以上の関心場所として推定する。
例えば、検索データが、ユーザがソーシャルネットワークにおいて最も有名なレストランを検索したことを示している場合、場所モジュール204は、当該ユーザが検索したレストランを、一つ以上の関心場所として決定する。
一実施形態において、場所モジュール204は、ユーザの連絡先の検索履歴を表すデータを取得し、当該検索データに基づいて、一つ以上の関心場所を決定する。例えば、場所モジュール204は、ユーザが1時間以内に検索した一つ以上の連絡先の住所に基づいて、一つ以上の関心場所を決定する。
一実施形態において、場所モジュール204は、ナビゲーションデータに基づいて、一つ以上の関心場所を決定する。例えば、場所モジュール204は、ナビゲーションデータから得た目的地のリストを、一つ以上の関心場所として決定する。他の例において、ナビゲーションデータは、ユーザがたびたび訪れている様々な場所(例えばレストラン等)を示す、ユーザのモバイル端末に関連付いたジオロケーションデータを含んでもよい。ユーザが、ソーシャルネットワークで明示的にチェックインしていない場合であっても、位置情報のこのような利用についてのユーザの同意があれば、場所モジュール204は、これらの場所を関心場所として決定することができる。
場所モジュール204は、センサデータやナビゲーションデータに基づいて、移動経路における立ち寄り地点を取得する。例えば、場所モジュール204は、速度が0であることを示す一つ以上の速度データ、現在位置と現在日時を示すGPSデータ、車両のエンジンの稼働状態を示すエンジンデータ、一つ以上のセンサから取得したサイドブレーキ状態を示すデータ等を取得し、現在位置を立ち寄り地点であると判定する。
一実施形態において、場所モジュール204は、移動経路または一つ以上の立ち寄り地点に基づいて、一つ以上の関心場所を決定する。例えば、場所モジュール204は、図8Aや図8Bに示したようなクラスタリング処理によって、一つ以上の関心場所を決定する。
データ、ナビゲーションデータのうち一つ以上から生成された関心場所を集約する。また、場所モジュール204は、集約した関心場所、一つ以上のランドマーク、一つ以上の道路名称を記憶装置245に格納する。一実施形態において、場所モジュール204は、集約された関心場所、ランドマーク、道路名称を用いて、ユーザに関連付いた場所ボキャブラリを生成する。例えば、場所モジュール204は、関心場所、ランドマーク、道路名称を用いて、ユーザに関連付いた場所ボキャブラリを構築する。場所ボキャブラリは、例えば、道路、交差点、他の場所など、ユーザが知っている所定の場所や、近傍にあるアイテムなどを含む。
一実施形態において、場所モジュール204は、関連付いたナビゲーションデータに基づいて、場所ボキャブラリに含まれる各カスタム場所を訪問する頻度や、訪問履歴などを取得する。例えば、場所モジュール204は、各関心場所、ランドマーク、道路を訪問した回数や、ユーザが最後に訪問した際の日時を取得する。
一実施形態において、連絡先モジュール206は、コンピュータ200のメモリ237に格納され、プロセッサ235によってアクセスされ、実行されてもよい。
また、連絡先モジュール206は、プロセッサ235およびコンピュータ200の他の構成要素と協働して通信するように最適化されてもよい。
一実施形態において、連絡先モジュール206は、連絡先ボキャブラリに含まれるカスタム連絡先によって表される各連絡先にインタラクションを行った頻度や履歴を取得する。例えば、連絡先モジュール206は、連絡先ボキャブラリに含まれる各連絡先にインタラクションを行った回数や、ユーザが最後にインタラクションを行った際の日時を取得する。
一実施形態において、コンテンツモジュール207は、コンピュータ200のメモリ2
37に格納され、プロセッサ235によってアクセスされ、実行されてもよい。
また、コンテンツモジュール207は、プロセッサ235およびコンピュータ200の他の構成要素と協働して通信するように最適化されてもよい。
(1)コンテンツボキャブラリに含まれるカスタムコンテンツアイテムに対してインタラクションを行った頻度
(2)アイテムに対して最後にインタラクションを行った日時
例えば、コンテンツモジュール207は、コンテンツアイテム(曲やビデオ等)が再生されたトータル回数、最後にコンテンツアイテムが再生された日時、所定の期間内にコンテンツアイテムが再生された回数、Pandora(登録商標)やSpotify(登録商標)のようなインターネットメディアサービスを用いて、コンテンツアイテムの再生中に当該アイテムに対して付けられた評価、アプリケーション(例えばラジオ)が開かれた回数、最後にアプリケーションが開かれた日時などを取得する。
ンターで開かれる会議に参加するための移動であることを示している場合、コンテンツモジュール207は、当該会議に関連するニュースアイテムや出版データ等をコンテンツボキャブラリに追加する。
一実施形態において、登録モジュール208は、コンピュータ200のメモリ237に格納され、プロセッサ235によってアクセスされ、実行されてもよい。
また、登録モジュール208は、プロセッサ235およびコンピュータ200の他の構成要素と協働して通信するように最適化されてもよい。
この場合、更新された場所ボキャブラリ、更新された連絡先ボキャブラリ、更新されたコンテンツボキャブラリが、ユーザの移動開始前に準備される。さらなる例において、このような準備は、連続して行われてもよいし、様々な間隔で(例えば、自動的に、または、他のイベントに応答して)トリガされてもよい。例えば、準備トリガイベントが、移動中において連続して、または、様々な間隔で発生し、これに対応してボキャブラリが更新されてもよい。
いた一つ以上のセンサからセンサデータを受信し、当該センサデータに基づいて、準備トリガイベントを検出する。例えば、登録モジュール208は、車両と無線キーとの間のハンドシェイクプロセスを示すセンサデータを受信し、キーフォブハンドシェイクイベントという準備トリガイベントを検出する。他の例では、登録モジュール208は、GPSアプリケーションから、ユーザが経路を変更したことを示すナビゲーションデータを受信し、移動経路の変更という準備トリガイベントを検出する。
登録モジュール208は、フィルタ後の場所ボキャブラリ、連絡先ボキャブラリ、コンテンツボキャブラリを音声エンジン162に登録するために、登録アプリケーション164と協働する。例えば、登録モジュール208は、場所ボキャブラリ、連絡先ボキャブラリ、コンテンツボキャブラリを登録アプリケーション164に送信し、登録アプリケーション164を通して当該場所ボキャブラリ、連絡先ボキャブラリ、コンテンツボキャブラリを音声エンジン162に登録させる。
一実施形態において、登録モジュール208は、準備トリガイベントに応答して、場所ボキャブラリ、連絡先ボキャブラリ、コンテンツボキャブラリを音声エンジン162に登録させる。
一実施形態において、音声モジュール210は、コンピュータ200のメモリ237に格納され、プロセッサ235によってアクセスされ、実行されてもよい。
また、音声モジュール210は、プロセッサ235およびコンピュータ200の他の構成要素と協働して通信するように最適化されてもよい。
例えば、音声モジュール210は、(1)音声コマンドに含まれる一つ以上の関心場所、ランドマーク、道路名称を場所ボキャブラリに基づいて認識し、(2)音声コマンドに含まれる一つ以上の連絡先を連絡先ボキャブラリに基づいて認識し、(3)音声コマンドに含まれる一つ以上のコンテンツソース、コンテンツカテゴリ、コンテンツアイテムをコンテンツボキャブラリに基づいて認識する。
音声エンジン162は、検索サーバ124から、「家」というカスタム単語を含んだ音声コマンドにマッチした検索結果を取得し、当該検索結果を音声モジュール210に送信
する。検索結果は、自宅の近くにあるコーヒーショップの住所と、当該住所までのナビゲーション指示を含んだものとなる。
音声モジュール210は、音声コマンドと、当該音声コマンドによって示された「既知の場所からの所定の距離以内」にマッチした場所を、一つ以上のターゲット場所として決定する。
例えば、音声コマンドが、第一の道路「XYZ」と、第二の道路「ABC」が交差する交差点の近くのレストランを検索する要求であったとする。音声モジュール210は、音声コマンドに含まれる、カスタム単語「近く」と、第一の道路「XYZ」と第二の道路「ABC」が交差する交差点を認識する。そして、音声モジュール210は、当該交差点から所定の距離以内にあるレストランを検索する指示を、音声エンジン162に対して行う。
うカスタム場所単語に対応する住所を取得する。音声モジュール210は、ユーザの現在位置の住所を含む音声コマンドを、音声エンジン162に送信し、音声エンジン162は、当該ユーザの現在位置の近く(例えば、所定の距離以内)、または1マイル以内にあるコーヒーショップを検索する。
音声モジュール210は、「お父さん」というカスタム連絡先単語に関連付いた場所に基づいて、ターゲット場所のリストをフィルタリングする。例えば、音声モジュール210は、ターゲット場所のリストから、「お父さん」というカスタム連絡先単語に関連付いた場所から所定の距離以内にある、一つ以上のターゲット場所(レストラン)を取得し、一つ以上のターゲット場所と、当該一つ以上のターゲット場所に関連したナビゲーション情報を含む結果を生成する。
一実施形態において、提供モジュール212は、コンピュータ200のメモリ237に格納され、プロセッサ235によってアクセスされ、実行されてもよい。
また、提供モジュール212は、プロセッサ235およびコンピュータ200の他の構成要素と協働して通信するように最適化されてもよい。
一実施形態において、UIモジュール214は、コンピュータ200のメモリ237に格納され、プロセッサ235によってアクセスされ、実行されてもよい。
また、UIモジュール214は、プロセッサ235およびコンピュータ200の他の構成要素と協働して通信するように最適化されてもよい。
一実施形態において、UIモジュール214は、ユーザに関連付いた一つ以上のカスタムボキャブラリを設定させるために、ユーザインタフェースをユーザに提供するためのグラフィックデータを生成する。当該ユーザインタフェースは、例えば、ユーザに、一つ以上のカスタムボキャブラリに含まれるカスタム単語を追加、削除、編集するためものである。また、UIモジュール214は、他のユーザインタフェースをユーザに提供するためのグラフィックデータを生成する。
一実施形態において、フィルタモジュール216は、コンピュータ200のメモリ237に格納され、プロセッサ235によってアクセスされ、実行されてもよい。
また、フィルタモジュール216は、プロセッサ235およびコンピュータ200の他の構成要素と協働して通信するように最適化されてもよい。
一実施形態において、場所フィルタリングパラメータ、連絡先フィルタリングパラメー
タ、コンテンツフィルタリングパラメータは、ハードコーディングされ、記憶装置245に事前に記憶される。
場所フィルタリングパラメータは、場所ボキャブラリをフィルタリングするためのデータである。場所フィルタリングパラメータは、例えば、ユーザの現在位置、現在日時、カスタム場所単語に対応する場所の訪問頻度(例えば、最もよく訪問しているガソリンスタンド、一週間に一度訪問しているスーパーマーケット等)、カスタム場所単語に対応する場所の最近の訪問(例えば、最近訪れたレストラン)、カスタム場所単語が分類された場所カテゴリ(例えば、和食レストラン、イタリアンレストラン、メキシカンレストラン等)などであるが、これらに限られない。
フィルタモジュール216は、ユーザの現在位置や時刻に基づいて、場所ボキャブラリをフィルタリングする。例えば、もし現在時刻が午前8時20分である場合、フィルタモジュール216は、場所ボキャブラリから、朝食営業を行っていないレストランに対応するカスタム場所単語を削除する。他の例では、フィルタモジュール216は、ユーザの現在位置に基づいてカバー範囲を設定し、(1)場所ボキャブラリに含まれるカスタム場所単語のうち、カバー範囲内に位置するもの(例えば、カバー範囲内にある関心場所、ランドマーク、道路)のみを保持し、(2)カバー範囲外に位置するものを場所ボキャブラリから削除する。
また、一例において、形状で定義されたカバー範囲は、繋がっていなくてもよく、不連続なものであってもよい。例えば、カバー範囲は、人口密集地域のみを含み、それ以外の地域を除外したものであってもよい。
一実施形態において、フィルタモジュール216は、ヒューリスティック手法によって計算されたカバー半径を用いてカバーエリアを決定してもよい。
一実施形態において、フィルタモジュール216は、カバーエリアや半径を、場所ボキャブラリのサイズに基づいて決定する。例えば、フィルタモジュール216は、場所ボキャブラリのサイズが大きくなるにつれ、より大きいカバー半径やカバーエリアを設定する。場所ボキャブラリのサイズは、例えば、当該場所ボキャブラリに格納できるカスタム場
所単語の数を表すためである。さらなる実施形態において、カバー半径やカバーエリアは、コンピュータ200の管理者によって設定されてもよい。
連絡先フィルタリングパラメータは、連絡先ボキャブラリをフィルタリングするためのデータである。連絡先フィルタリングパラメータは、例えば、ソーシャルネットワークの連絡先カテゴリ(例えば、友人、同僚、知人、ブロックリスト等)、連絡帳カテゴリ(例えば、よく使う連絡先、家族、友人等)、連絡先に対するインタラクション頻度(例えば、最もよく電話をかける連絡先、週に一度しか電話をかけない連絡先等)、または、連絡先に対する最近のインタラクション(例えば、最近電話をかけた相手、一か月前に電話をかけた相手等)、コンテンツ、ソーシャルネットワークにおいて登録された場所、適用可能なソーシャルネットワークコンテンツストリームに含まれるもの、類似するコンテンツ、イベント、ソーシャル等を有する連絡先、ソーシャルネットワークデータから決定された設定、設定データ等であるが、これらに限られない。
を表すデータをソーシャルネットワークサーバ120から取得する。
また、フィルタモジュール216は、ユーザの連絡帳から取得した連絡先に関連付いた、一つ以上の連絡帳カテゴリを受信する。例えば、フィルタモジュール216は、ユーザのお気に入りの連絡先グループや、ユーザの連絡帳から最もよく電話がかけられるグループを表すデータを取得する。
フィルタモジュール216は、ソーシャルネットワーク連絡先カテゴリや、連絡帳カテゴリに基づいて、連絡先ボキャブラリをフィルタリングする。
また、フィルタモジュール216は、位置情報に基づいて、ユーザが最もよく訪問する、または、インタラクションを行っている連絡先を表すデータを取得する。例えば、フィルタモジュール216は、(1)連絡先ボキャブラリから、一つ以上のお気に入りの連絡先、友人、家族、同僚等を残し、(2)他の知人、古くなった連絡先、ブロック済みの連絡先などを削除する。
様々な連絡先、場所、コンテンツに関するユーザの設定は変化し続けるため、場所ボキャブラリやコンテンツボキャブラリと同様に、フィルタリングは、設定の変更やユーザの現在のふるまいを反映させるように、フィルタモジュール216によって動的に(例えば単発的に、あるいは周期的に(毎秒、毎分、毎時、毎日等))実行される。
他の例では、フィルタモジュール216は、連絡先ボキャブラリをフィルタリングし、フィルタ後の連絡先ボキャブラリを生成する。当該フィルタ後の連絡先ボキャブラリは、最もよく利用する(例えば、頻繁にインタラクションする、あるいは直前にインタラクションした等)連絡先に対応するカスタム連絡先単語を含む連絡先ボキャブラリである。例えば、フィルタ後の連絡先ボキャブラリは、最もよく(あるいは直前に)電話をかけ、メッセージ(SMS、電子メール、ソーシャル等)を送り、または訪問された連絡先を含む。
コンテンツフィルタリングパラメータは、コンテンツボキャブラリをフィルタリングす
るためのデータである。コンテンツフィルタリングパラメータは、例えば、ユーザが交わしたアクション(例えば、おすすめ、コメント、シェア、お気に入り、フォロー、購読など)を含む当該ユーザのソーシャルネットワークデータ、ユーザのメッセージデータ(例えば、電子メール、テキスト、チャットなど)、ユーザの好み(ユーザがつけた評価など)、ユーザがインタラクションしたコンテンツのタイプ(音楽のタイプ、ニュース、歌手、構成要素など)、カスタムコンテンツ単語に対応するアイテムに対してインタラクションをした頻度(例えば、コンテンツアイテムの再生頻度、ラジオ局の聴取頻度、トピックを検索した頻度、フィードのアクセス頻度等)、カスタムコンテンツ単語に対応するアイテムに対して最後にインタラクションをした日時(例えば、コンテンツアイテムの最近の再生、アプリケーションの最近の利用)、所定の期間内に所定のコンテンツに対してどの程度インタラクションを行ったか等であるが、これらに限られない。
他の例では、フィルタモジュール216は、コンテンツボキャブラリをフィルタリングし、フィルタ後のコンテンツボキャブラリを生成する。当該フィルタ後のコンテンツボキャブラリは、最もよく利用する、または、最近利用した(ユーザや、ユーザに関連した連絡先によって)コンテンツに対応するカスタムコンテンツ単語を含むコンテンツボキャブラリとなる。例えば、フィルタ後のコンテンツボキャブラリは、最もよく再生される音楽、最もよく利用されるアプリケーション、最も良くアクセスされるソーシャルストリーム、最もよく視聴されるビデオを含む。
ンテンツを反映した閾値に一致する評価、または、超える評価)を持ったコンテンツソースやコンテンツカテゴリに対応するコンテンツアイテムを含む。
例えば、フィルタモジュール216は、ユーザの好みの音楽ジャンル、ユーザの好みのポッドキャストソース、ユーザの好みの音楽ジャンルに合うコンテンツアイテム、ユーザの好みのポッドキャストソースから取得したコンテンツアイテム等を含んだ、フィルタ後のコンテンツボキャブラリを生成する。
コンテンツボキャブラリのサイズは、例えば、当該コンテンツボキャブラリに格納できるカスタムコンテンツ単語の数を表す。
カスタムボキャブラリのフィルタリングは、様々な点において有益である。例えば、カスタムボキャブラリのサイズが有限の固定値である場合、カスタムボキャブラリをフィルタリングすることで、ユーザにとって最も重要なカスタム単語を保持し、ユーザにとって重要でないカスタム単語を削除することができる。
他の例では、カスタムボキャブラリのサイズが可変である場合、カスタムボキャブラリから、ユーザにとって重要でないカスタム単語を削除することで、当該カスタムボキャブラリのサイズを縮小することができる。
別の例では、カスタムボキャブラリをフィルタリングすることで、音声認識におけるシステム100の速度低下を避け、かつ、システム100に対して、(1)より高速な音声認識を可能にし、(2)音声認識の精度を向上させ、(3)ユーザ嗜好のよりよい学習を実現し、(4)ユーザに提供する経験をよりパーソナライズさせることができる。
なお、これらの利点は、限定的なものではなく、他の利益または利点も実現されうることを理解されたい。
図3Aおよび図3Bは、パーソナライズされた音声認識のためのカスタムボキャブラリを生成する方法300を表すフローチャート例である。図3Aを参照して説明する。
まず、制御モジュール202が、ソーシャルネットワークサーバ120から、ユーザに関連付いたソーシャルネットワークデータを取得する(ステップ302)。
次に、制御モジュール202が、検索サーバ124から、ユーザに関連付いた検索データを取得する(ステップ304)。
次に、制御モジュール202が、モバイルコンピュータ135またはクライアント装置115から、ユーザに関連付いたナビゲーションデータを取得する(ステップ306)。
次に、場所モジュール304が、ソーシャルネットワークデータ、検索データ、ナビゲーションデータに基づいて、ユーザに対応する場所ボキャブラリを構築する(ステップ308)。
次に、制御モジュール202が、クライアント装置115やモバイルコンピュータ135といった装置に格納されたユーザの連絡帳から、連絡先データを取得する(ステップ310)。
次に、連絡先モジュール206が、連絡先データ、ソーシャルネットワークデータに基づいて連絡先ボキャブラリを構築する(ステップ312)。
次に、制御モジュール202が、クライアント装置115やモバイルコンピュータ135といった装置から、ユーザに関連付いたコンテンツデータを取得する(ステップ314)。
次に、コンテンツモジュール207が、コンテンツデータ、ソーシャルネットワークデータ、検索データに基づいて、ユーザに対応するコンテンツボキャブラリを構築する(ステップ316)。
次に、制御モジュール202が、一つ以上のフィルタリングパラメータを受信する(ステップ318)。例えば、制御モジュール202は、一つ以上のコンテンツフィルタリングパラメータ、一つ以上の場所フィルタリングパラメータ、一つ以上の連絡先フィルタリングパラメータを表すデータを受信する。
次に、フィルタモジュール216が、一つ以上のフィルタリングパラメータに基づいて、場所ボキャブラリ、連絡先ボキャブラリ、コンテンツボキャブラリをフィルタリングする(ステップ320)。
次に、登録モジュール208が、フィルタ後の場所ボキャブラリ、フィルタ後の連絡先ボキャブラリ、フィルタ後のコンテンツボキャブラリを音声エンジン162に登録する(ステップ322)。
まず、登録モジュール208が、準備トリガイベントを検出する(ステップ401)。
次に、制御モジュール202が、準備トリガイベントに応答して、ユーザに関連付いたユーザプロファイルデータを受信する(ステップ402)。
次に、制御モジュール202が、準備トリガイベントに応答して、ユーザのモバイルコンピュータ135に関連付いたモバイルコンピュータデータを受信する(ステップ403)。
次に、制御モジュール202が、ソーシャルネットワークサーバ120から、ユーザに関連付いたソーシャルネットワークデータを取得する(ステップ404)。
次に、移動状態モジュール203が、ソーシャルネットワークデータ、ユーザプロフィルデータ、モバイルコンピュータデータ、準備トリガイベントに基づいて、移動状態を決定する(ステップ405)。
次に、制御モジュール202が、ユーザに関連付いた検索データを、検索サーバ124から取得する(ステップ406)。
次に、制御モジュール202が、システム100の他の構成要素、たとえばモバイルコンピュータ135に記録された第二のナビゲーションアプリケーション107、または、クライアント装置115に記録された第一のナビゲーションアプリケーション117等から、ユーザに関連付いたナビゲーションデータを取得する(ステップ407)。
次に、場所モジュール204が、当該ナビゲーションデータを処理し、移動経路または一つ以上の立ち寄り地点を抽出する(ステップ408)。
次に、場所モジュール204が、ソーシャルネットワークデータ、検索データ、移動経路、一つ以上の立ち寄り地点、移動状態のうちの少なくとも一つ以上に基づいて、一つ以上の関心場所を決定する(ステップ410)。
次に、場所モジュール204が、移動経路、一つ以上の立ち寄り地点、移動状態に関連付いた一つ以上のランドマークを決定する(ステップ412)。
次に、場所モジュール204が、移動経路、一つ以上の立ち寄り地点、移動状態に関連付いた一つ以上の道路名称を決定する(ステップ414)。
次に、場所モジュール204が、一つ以上の関心場所、一つ以上のランドマーク、一つ
以上の道路名称を用いて、ユーザに関連付いた場所ボキャブラリを構築する。当該処理は、準備トリガイベントに応答して、直接的、または非直接的に実行される(ステップ416)。
次に、制御モジュール202が、一つ以上の場所フィルタリングパラメータを受信する(ステップ418)。
次に、フィルタモジュール216が、一つ以上の場所フィルタリングパラメータに基づいて、場所ボキャブラリをフィルタリングする(ステップ420)。
次に、登録モジュール208が、フィルタ後の場所ボキャブラリを音声エンジン162に登録する(ステップ422)。
次に、制御モジュール202が、ユーザから音声コマンドを取得する(ステップ424)。
次に、音声モジュール210が、場所ボキャブラリに基づいて、音声コマンドに含まれる一つ以上のカスタム単語を認識する(ステップ426)。
次に、制御モジュール202が、一つ以上のカスタム単語を含む音声コマンドを表すデータを、音声エンジン162に送信する(ステップ428)。
次に、制御モジュール202が、一つ以上のカスタム単語を含む音声コマンドにマッチする結果を取得する(ステップ430)。
次に、提供モジュール212が、結果をユーザに提供する(ステップ432)。
まず、登録モジュール208が、準備トリガイベントを検出する(ステップ501)。
次に、制御モジュール202が、準備トリガイベントに応答して、ユーザに関連付いたユーザプロファイルデータを受信する(ステップ502)。
次に、制御モジュール202が、準備トリガイベントに応答して、ユーザのモバイルコンピュータ135に関連付いたモバイルコンピュータデータを受信する(ステップ503)。
次に、制御モジュール202が、ソーシャルネットワークサーバ120から、ユーザに関連付いたソーシャルネットワークデータを取得する(ステップ504)。
次に、移動状態モジュール203が、ソーシャルネットワークデータ、ユーザプロフィルデータ、モバイルコンピュータデータ、準備トリガイベントに基づいて、移動状態を決定する(ステップ505)。
次に、制御モジュール202が、モバイルコンピュータ135、クライアント装置115などのユーザに関連付いた一つ以上の装置に記憶されたユーザの連絡帳から、連絡先データを取得する(ステップ506)。
次に、制御モジュール202が、ユーザに関連付いたソーシャルグラフを、ソーシャルネットワークサーバ120から取得する(ステップ507)。
次に、連絡先モジュール206が、連絡先データ、ソーシャルグラフデータ、移動状態を用いて、ユーザに関連付いた連絡先ボキャブラリを構築する。当該処理は、準備トリガイベントに応答して、直接的、または非直接的に実行される(ステップ508)。
次に、制御モジュール202が、一つ以上の連絡先フィルタリングパラメータを受信する(ステップ509)。
次に、フィルタモジュール216が、一つ以上の連絡先フィルタリングパラメータに基づいて、連絡先ボキャブラリをフィルタリングする(ステップ510)。
次に、登録モジュール208が、フィルタ後の連絡先ボキャブラリを音声エンジン162に登録する(ステップ512)。
次に、制御モジュール202が、ユーザから音声コマンドを取得する(ステップ514)。
次に、音声モジュール210が、連絡先ボキャブラリに基づいて、音声コマンドに含まれる一つ以上のカスタム単語を認識する(ステップ516)。
次に、制御モジュール202が、一つ以上のカスタム単語を含む音声コマンドを表すデータを、音声エンジン162に送信する(ステップ518)。
次に、制御モジュール202が、一つ以上のカスタム単語を含む音声コマンドにマッチする結果を取得する(ステップ520)。
次に、提供モジュール212が、結果をユーザに提供する(ステップ522)。
まず、登録モジュール208が、準備トリガイベントを検出する(ステップ601)。
次に、制御モジュール202が、準備トリガイベントに応答して、ユーザに関連付いたユーザプロファイルデータを受信する(ステップ602)。
次に、制御モジュール202が、準備トリガイベントに応答して、ユーザのモバイルコンピュータ135に関連付いたモバイルコンピュータデータを受信する(ステップ603)。
次に、制御モジュール202が、ソーシャルネットワークサーバ120から、ユーザに関連付いたソーシャルネットワークデータを取得する(ステップ604)。
次に、移動状態モジュール203が、ソーシャルネットワークデータ、ユーザプロフィルデータ、モバイルコンピュータデータ、準備トリガイベントに基づいて、移動状態を決定する(ステップ606)。
次に、制御モジュール202が、クライアント装置115、モバイルコンピュータ135などのユーザに関連付いた一つ以上の装置から、一つ以上のコンテンツアイテムを表すコンテンツデータを取得する(ステップ607)。
次に、制御モジュール202が、クライアント装置115、モバイルコンピュータ135などのユーザに関連付いた一つ以上の装置から、一つ以上のコンテンツソースを表すデータを取得する(ステップ608)。
次に、制御モジュール202が、クライアント装置115、モバイルコンピュータ135などのユーザに関連付いた一つ以上の装置から、一つ以上のコンテンツカテゴリを表すデータを取得する(ステップ609)。
次に、コンテンツモジュール207が、コンテンツデータ、一つ以上のコンテンツソース、一つ以上のコンテンツカテゴリ、移動状態を用いて、ユーザに関連付いたコンテンツボキャブラリを構築する。当該処理は、準備トリガイベントに応答して、直接的、または非直接的に実行される(ステップ610)。
次に、制御モジュール202が、一つ以上のコンテンツフィルタリングパラメータを受信する(ステップ611)。
次に、フィルタモジュール216が、一つ以上のコンテンツフィルタリングパラメータに基づいて、コンテンツボキャブラリをフィルタリングする(ステップ612)。
次に、登録モジュール208が、フィルタ後のコンテンツボキャブラリを音声エンジン162に登録する(ステップ614)。
次に、制御モジュール202が、ユーザから音声コマンドを取得する(ステップ616)。
次に、音声モジュール210が、コンテンツボキャブラリに基づいて、音声コマンドに含まれる一つ以上のカスタム単語を認識する(ステップ618)。
次に、制御モジュール202が、一つ以上のカスタム単語を含む音声コマンドを表すデータを、音声エンジン162に送信する(ステップ620)。
次に、制御モジュール202が、一つ以上のカスタム単語を含む音声コマンドにマッチする結果を取得する(ステップ622)。
次に、提供モジュール212が、結果をユーザに提供する(ステップ624)。
次に、登録アプリケーション164が、一つ以上のカスタムボキャブラリを音声エンジン162に登録する(ステップ704)。
次に、音声エンジン162が、ユーザから音声コマンドを取得する(ステップ706)。一実施形態において、音声エンジン162は、認識アプリケーション109から音声コマンドを受信する。
次に、音声エンジン162が、音声コマンドに含まれる一つ以上のカスタム単語を認識する(ステップ708)。
次に、音声エンジン162が、検索を実行させ、一つ以上のカスタム単語を含む音声コマンドにマッチする結果を取得する(ステップ710)。
次に、音声エンジン162が、結果をユーザに提供するために、当該結果を認識アプリケーション109に送信する(ステップ712)。
図8Aおよび図8Bは、関心場所を決定するためのクラスタリング処理の例を示した図である。一実施形態において、場所モジュール204は、ユーザが訪問した一つ以上の場所を、ユーザに関連付いたナビゲーションデータに基づいて決定する。例えば、場所モジュール204は、ユーザに関連付いたGPSログを用いて、一つ以上の立ち寄り地点や目的地を決定する。
また、場所モジュール204は、一つ以上の訪問済み場所に関連付いた地理的な特徴に基づいて、クラスタに対応するクラスタ半径を設定する。例えば、繁華街におけるクラスタ半径は、郊外におけるクラスタ半径よりも小さい。また、一実施形態において、場所モジュール204は、ヒューリスティック技術を用いてクラスタ半径を決定する。他の実施形態において、クラスタ半径は、コンピュータ200の管理者によって設定される。
一例において、クラスタは、クラスタ内においてユーザが訪問した一つ以上の場所や地点である関心場所に関連付けられる。一実施形態において、クラスタの中心点は、クラスタに関連付いた関心場所として設定され、当該クラスタは、当該中心点および半径で定義された円形エリアとなる。他の例では、クラスタは矩形、正方形、三角形、または、他の形状をとる。
クラスタに関連付いた関心場所として設定する。例えば、当該クラスタに関連付いた関心場所は、当該クラスタの中心と同じ緯度、経度、高度となる。
場所モジュール204は、一つ以上のクラスタにおける一つ以上の中心点を、一つ以上の関心場所として生成する。当該一つ以上のクラスタは、それぞれ同一の半径を持ってもよいし、異なる半径を持ってもよい。
樹形図の上位に位置するノードは、ユーザが訪問した場所A,B,C,Dを表す。樹形図における他のノードは、異なるレベルによってマージされたクラスタを表す。
ボックス860は、クラスタ半径804を持つクラスタ806と、クラスタ半径854を持つ更新後のクラスタ808を表す。一実施形態において、クラスタ半径804は、クラスタ半径854と同一の値である。他の実施形態において、クラスタ半径804は、クラスタ半径854と異なる値である。クラスタ806は、場所A,B,Cを含む。
場所モジュール204は、場所DおよびEを含むようにクラスタ808を更新し、更新
後のクラスタ808の中心となるように関心場所830を更新する。
ボックス860に対応する樹形図を、ボックス862に示す。本例においては、樹形図は、ライン814、クラスタ806(場所A,B,Cを含む)、クラスタ808(場所D,Eを含む)で表されたようにレベルごとに分割される。分割のレベルは、少なくともクラスタの半径に部分的に基づいて決定される。
図9Bを参照して説明する。
フィルタモジュール216は、特定の場所で表されたユーザの現在位置(例えばサンフランシスコ)、場所ボキャブラリ952に含まれるカスタム場所単語に対応する場所への訪問頻度(例えば、ランドマーク、道路、プリセットされた関心場所への総訪問回数)、カスタム場所単語に対応する場所への最終訪問日時に基づいて、場所ボキャブラリ952をフィルタリングする。また、フィルタリングモジュール216は、フィルタ後の場所ボキャブラリ954を生成する。例えば、ユーザの現在位置がサンフランシスコである場合、フィルタモジュール216は、「自由の女神」「ヨセミテ」「I−15」といった関心場所を場所ボキャブラリ952から削除し、ユーザの現在位置にマッチした、フィルタ後の場所ボキャブラリ954を生成する。また、ユーザが最近病院に訪問していない場合、フィルタモジュール216は、プリセットされた関心場所「病院」を場所ボキャブラリ952から削除する。登録モジュール208は、フィルタ後の場所ボキャブラリ954を音声エンジン162に登録する。
フィルタモジュール216は、カバー範囲976に対応するカバー半径974を決定する。また、フィルタモジュール216は、ユーザの現在位置972を、カバー範囲976の中心点として設定する。
ここで、場所ボキャブラリ980は、グラフィック970に示したように、関心場所(「病院」「勤務先」)、ランドマーク(ランドマーク1〜3)、道路(道路1〜4)を含んでいるものとする。フィルタモジュール216は、現在位置972およびカバー範囲976を用いて、場所ボキャブラリ980をフィルタリングする。カバー範囲976は「勤務先」という関心場所、ランドマーク1および3というランドマーク、道路1および3という道路を含んでいるため、フィルタモジュール216は、「勤務先」という関心場所、ランドマーク1および3というランドマーク、道路1および3という道路を含む、フィルタ後の場所ボキャブラリ982を生成する。
本例におけるナビゲーションデータは、クライアント装置115に記憶された第一のナビゲーションアプリケーション117、モバイルコンピュータ135に記憶された第二のナビゲーションアプリケーション107のようなナビゲーションアプリケーションから受信したGPSトレースを含む。GPSトレースは、特定の日に行ったユーザの移動を表す。
認識アプリケーション109は、ナビゲーションデータに基づいて、関心場所(例えば、ジム1002、スーパーマーケット1006、勤務先1004、自宅1008)を決定
する。認識アプリケーション109はまた、GPSトレースの一部を構成する道路や、GPSトレース同士が交差する道路に対応する道路名称を決定する。また、認識アプリケーション109は、当該関心場所や道路名称を、ユーザに関連付いた場所ボキャブラリに追加する。
図10Bは、「家の近くのコーヒーショップを検索」という音声コマンドにマッチする結果である。当該音声コマンドは、ユーザにカスタマイズされた「家」という特定の関心場所を含んでいる。
図10Cは、「スーパーマーケットの近くのコーヒーショップを検索」という音声コマンドにマッチする結果である。当該音声コマンドは、ユーザにカスタマイズされた「スーパーマーケット」という特定の関心場所を含んでいる。
図10Dは、「ジムの近くのコーヒーショップを検索」という音声コマンドにマッチする結果である。当該音声コマンドは、ユーザにカスタマイズされた「ジム」という特定の関心場所を含んでいる。
図10Eは、「ジャクソン通り5丁目の近くのコーヒーショップを検索」という音声コマンドにマッチする結果である。当該音声コマンドは、ユーザにカスタマイズされた「ジャクソン通り」「5丁目」という道路名称を含んでいる。
図10Fは、「ローレンス通り交差点の近くのコンビニを検索」という音声コマンドにマッチする結果である。当該音声コマンドは、ユーザにカスタマイズされた「ローレンス通り」という道路名称を含んでいる。
システム100は、カスタムボキャブラリと、上述したようなフィルタリングによって、個人に最適化された結果を迅速に提供することができる。
ある。以下の説明から明らかなように、特に断らない限りは、本明細書において「処理」「計算」「コンピュータ計算(処理)」「判断」「表示」等の用語を用いた説明は、コンピュータシステムや類似の電子的計算装置の動作および処理であって、コンピュータシステムのレジスタやメモリ内の物理的(電子的)量を、他のメモリやレジスタまたは同様の情報ストレージや通信装置、表示装置内の物理量として表される他のデータへ操作および変形する動作および処理を意味する。
プログラミング言語と関連づけられるものではない。本明細書で説明される本発明の内容を実装するために種々のプログラミング言語を利用できることは明らかであろう。
109 認識アプリケーション
115 クライアント装置
120 ソーシャルネットワークサーバ
124 検索サーバ
135 モバイルコンピュータ
160 音声サーバ
170 地図サーバ
Claims (19)
- 音声認識システムが利用する、場所に関する辞書である場所ボキャブラリを生成するために、コンピュータが実行する方法であって、
トリガイベントを検出する検出ステップと、
前記トリガイベントに対応して、ユーザの移動に関する情報である移動情報を取得する移動情報取得ステップと、
前記移動情報に基づいて、前記ユーザに対応する関心場所を取得する関心場所取得ステップと、
前記取得した一つ以上の関心場所を用いて、前記ユーザに対応する場所ボキャブラリを構築する構築ステップと、
一つ以上の場所フィルタリングパラメータに基づいて、前記場所ボキャブラリをフィルタリングするフィルタリングステップと、
前記フィルタリング後の場所ボキャブラリを、前記ユーザに対応するボキャブラリとして登録する登録ステップと、を含み、
前記場所ボキャブラリに含まれる単語は、特定の対象を指し示す単語である非カスタム単語と、指し示す対象がユーザごとに異なる単語であるカスタム単語のいずれかであり、
前記場所フィルタリングパラメータは、ユーザに関連付いた第一の場所を含み、
前記フィルタリングステップは、
前記第一の場所に基づいて、カバー半径を決定するステップと、
前記カバー半径および第一の位置に基づいて、カバー範囲を決定するステップと、
前記カバー範囲に含まれる一つ以上の第二の場所に対応する、一つ以上のカスタム場所単語を含むように、フィルタリング後の場所ボキャブラリを生成するステップと、を含む、
方法。 - ユーザから音声コマンドを取得する取得ステップと、
前記登録後の場所ボキャブラリに基づいて、前記音声コマンドに含まれるカスタム単語を認識するステップと、
前記カスタム単語を含む前記音声コマンドを送信するステップと、
前記音声コマンドに合致する結果を受信するステップと、をさらに含む、
請求項1に記載の方法。 - 前記ユーザに関連付いたナビゲーションデータを取得するステップと、
前記ナビゲーションデータに基づいて、経路情報を取得するステップと、
前記経路情報に関連付いた、一つ以上の道路名称またはランドマークを取得するステップと、
をさらに含み、
前記構築ステップでは、前記一つ以上の道路名称またはランドマークをさらに用いて、前記ユーザに対応する場所ボキャブラリを構築する、
請求項1または2に記載の方法。 - 前記経路情報に基づいて、一つ以上の立ち寄り地点を取得するステップをさらに含み、
前記構築ステップでは、前記立ち寄り地点をさらに用いて、前記ユーザに対応する場所ボキャブラリを構築する、
請求項3に記載の方法。 - 前記ユーザに関連付いたソーシャルネットワークデータを取得するステップをさらに含み、
前記関心場所取得ステップでは、前記ソーシャルネットワークデータに含まれる位置データにさらに基づいて、前記ユーザに対応する関心場所を取得する、
請求項1から4のいずれかに記載の方法。 - 前記ユーザに関連付いた検索データを取得するステップをさらに含み、
前記関心場所取得ステップでは、前記検索データにさらに基づいて、前記ユーザに対応する関心場所を取得する、
請求項1から5のいずれかに記載の方法。 - 前記ユーザに関連付いた連絡先データを取得するステップをさらに含み、
前記関心場所取得ステップでは、前記連絡先データに含まれる位置データにさらに基づいて、前記ユーザに対応する関心場所を取得する、
請求項1から6のいずれかに記載の方法。 - 前記移動情報は、未来の移動における移動開始時刻を含み、
前記構築ステップは、前記移動開始時刻の到来までに実行される、
請求項1から7のいずれかに記載の方法。 - 音声認識システムが利用する、連絡先に関する辞書である連絡先ボキャブラリを生成するために、コンピュータが実行する方法であって、
トリガイベントを検出する検出ステップと、
前記トリガイベントに対応して、ユーザの移動に関する情報である移動情報を取得する移動情報取得ステップと、
前記ユーザに関連付いた一つ以上の連絡先を表す連絡先データを取得する連絡先データ取得ステップと、
前記連絡先データおよび前記移動情報に基づいて、前記ユーザに対応する連絡先ボキャブラリを構築する構築ステップと、
一つ以上の連絡先フィルタリングパラメータに基づいて、前記連絡先ボキャブラリをフィルタリングするフィルタリングステップと、
前記フィルタリング後の連絡先ボキャブラリを、前記ユーザに対応するボキャブラリとして登録する登録ステップと、
を含む方法。 - 前記ユーザに関連付いたソーシャルグラフデータを取得するステップをさらに含み、
前記構築ステップでは、前記ソーシャルグラフデータにさらに基づいて、前記ユーザに対応する連絡先ボキャブラリを構築する、
請求項9に記載の方法。 - 前記ユーザに関連付いた位置データを取得する位置情報取得ステップをさらに含み、
前記構築ステップでは、前記位置データにさらに基づいて、前記ユーザに対応する連絡先ボキャブラリを構築する、
請求項9または10に記載の方法。 - 前記連絡先フィルタリングパラメータは、前記ユーザに関連付いた連絡先に、前記ユーザがアクセスした頻度または履歴である、
請求項9から11のいずれかに記載の方法。 - 音声認識システムが利用する、コンテンツに関する辞書であるコンテンツボキャブラリを生成するために、コンピュータが実行する方法であって、
トリガイベントを検出する検出ステップと、
前記トリガイベントに対応して、ユーザの移動に関する情報である移動情報を取得する移動情報取得ステップと、
前記ユーザがアクセス可能な情報源であるコンテンツに関連する情報であるコンテンツデータを取得するコンテンツデータ取得ステップと、
前記コンテンツデータおよび前記移動情報に基づいて、前記ユーザに対応するコンテンツボキャブラリを構築する構築ステップと、
一つ以上のコンテンツフィルタリングパラメータに基づいて、前記コンテンツボキャブラリをフィルタリングするフィルタリングステップと、
前記フィルタリング後のコンテンツボキャブラリを、前記ユーザに対応するボキャブラリとして登録する登録ステップと、
を含む方法。 - 前記コンテンツデータは、コンテンツを識別する情報、または、コンテンツを入手するためのソースであるコンテンツソースを識別する情報である、
請求項13に記載の方法。 - 前記コンテンツフィルタリングパラメータは、前記コンテンツまたはコンテンツソースに、前記ユーザがアクセスした頻度または履歴である、
請求項13または14に記載の方法。 - 請求項1から15のいずれかに記載の方法を、コンピュータに実行させるためのプログラム。
- 音声認識システムが利用する、場所に関する辞書である場所ボキャブラリを生成するシステムであって、
トリガイベントを検出する検出手段と、
前記トリガイベントに対応して、ユーザの移動に関する情報である移動情報を取得する移動情報取得手段と、
前記移動情報に基づいて、前記ユーザに対応する関心場所を取得する関心場所取得手段と、
前記取得した一つ以上の関心場所を用いて、前記ユーザに対応する場所ボキャブラリを構築する構築手段と、
一つ以上の場所フィルタリングパラメータに基づいて、前記場所ボキャブラリをフィル
タリングするフィルタリング手段と、
前記フィルタリング後の場所ボキャブラリを、前記ユーザに対応するボキャブラリとして登録する登録手段と、を有し、
前記場所ボキャブラリに含まれる単語は、特定の対象を指し示す単語である非カスタム単語と、指し示す対象がユーザごとに異なる単語であるカスタム単語のいずれかであり、
前記場所フィルタリングパラメータは、ユーザに関連付いた第一の場所を含み、
前記フィルタリング手段は、
前記第一の場所に基づいて、カバー半径を決定し、
前記カバー半径および第一の位置に基づいて、カバー範囲を決定し、
前記カバー範囲に含まれる一つ以上の第二の場所に対応する、一つ以上のカスタム場所単語を含むように、フィルタリング後の場所ボキャブラリを生成する、
システム。 - 音声認識システムが利用する、連絡先に関する辞書である連絡先ボキャブラリを生成するシステムであって、
トリガイベントを検出する検出手段と、
前記トリガイベントに対応して、ユーザの移動に関する情報である移動情報を取得する移動情報取得手段と、
前記ユーザに関連付いた一つ以上の連絡先を表す連絡先データを取得する連絡先データ取得手段と、
前記連絡先データおよび前記移動情報に基づいて、前記ユーザに対応する連絡先ボキャブラリを構築する構築手段と、
一つ以上の連絡先フィルタリングパラメータに基づいて、前記連絡先ボキャブラリをフィルタリングするフィルタリング手段と、
前記フィルタリング後の連絡先ボキャブラリを、前記ユーザに対応するボキャブラリとして登録する登録手段と、
を有するシステム。 - 音声認識システムが利用する、コンテンツに関する辞書であるコンテンツボキャブラリを生成するシステムであって、
トリガイベントを検出する検出手段と、
前記トリガイベントに対応して、ユーザの移動に関する情報である移動情報を取得する移動情報取得手段と、
前記ユーザがアクセス可能な情報源であるコンテンツに関連する情報であるコンテンツデータを取得するコンテンツデータ取得手段と、
前記コンテンツデータおよび前記移動情報に基づいて、前記ユーザに対応するコンテンツボキャブラリを構築する構築手段と、
一つ以上のコンテンツフィルタリングパラメータに基づいて、前記コンテンツボキャブラリをフィルタリングするフィルタリング手段と、
前記フィルタリング後のコンテンツボキャブラリを、前記ユーザに対応するボキャブラリとして登録する登録手段と、
を有するシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/054,763 | 2013-10-15 | ||
US14/054,763 US9484025B2 (en) | 2013-10-15 | 2013-10-15 | Configuring dynamic custom vocabulary for personalized speech recognition |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015079237A JP2015079237A (ja) | 2015-04-23 |
JP6488588B2 true JP6488588B2 (ja) | 2019-03-27 |
Family
ID=52810398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014164642A Active JP6488588B2 (ja) | 2013-10-15 | 2014-08-13 | 音声認識方法および音声認識システム |
Country Status (2)
Country | Link |
---|---|
US (1) | US9484025B2 (ja) |
JP (1) | JP6488588B2 (ja) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10885918B2 (en) * | 2013-09-19 | 2021-01-05 | Microsoft Technology Licensing, Llc | Speech recognition using phoneme matching |
US9601108B2 (en) | 2014-01-17 | 2017-03-21 | Microsoft Technology Licensing, Llc | Incorporating an exogenous large-vocabulary model into rule-based speech recognition |
US10749989B2 (en) | 2014-04-01 | 2020-08-18 | Microsoft Technology Licensing Llc | Hybrid client/server architecture for parallel processing |
US10770075B2 (en) * | 2014-04-21 | 2020-09-08 | Qualcomm Incorporated | Method and apparatus for activating application by speech input |
US10989838B2 (en) | 2015-04-14 | 2021-04-27 | Utopus Insights, Inc. | Weather-driven multi-category infrastructure impact forecasting |
US10083685B2 (en) * | 2015-10-13 | 2018-09-25 | GM Global Technology Operations LLC | Dynamically adding or removing functionality to speech recognition systems |
US9976863B2 (en) * | 2016-03-29 | 2018-05-22 | Lyft, Inc. | Casual driver ride sharing |
EP3455719A1 (en) | 2016-05-10 | 2019-03-20 | Google LLC | Implementations for voice assistant on devices |
KR102114003B1 (ko) | 2016-05-13 | 2020-05-25 | 구글 엘엘씨 | 음성 사용자 인터페이스들의 시각적 어포던스를 위한 led 설계 언어 |
US10026398B2 (en) * | 2016-07-08 | 2018-07-17 | Google Llc | Follow-up voice query prediction |
JP6186057B1 (ja) * | 2016-08-19 | 2017-08-23 | ヤフー株式会社 | 抽出装置、抽出方法、及び抽出プログラム |
JP6597527B2 (ja) * | 2016-09-06 | 2019-10-30 | トヨタ自動車株式会社 | 音声認識装置および音声認識方法 |
JP6477648B2 (ja) * | 2016-09-29 | 2019-03-06 | トヨタ自動車株式会社 | キーワード生成装置およびキーワード生成方法 |
US10535342B2 (en) * | 2017-04-10 | 2020-01-14 | Microsoft Technology Licensing, Llc | Automatic learning of language models |
KR101949497B1 (ko) * | 2017-05-02 | 2019-02-18 | 네이버 주식회사 | 사용자 발화의 표현법을 파악하여 기기의 동작이나 컨텐츠 제공 범위를 조정하여 제공하는 사용자 명령 처리 방법 및 시스템 |
DE102017211692A1 (de) * | 2017-07-07 | 2019-01-10 | Bayerische Motoren Werke Aktiengesellschaft | System und Verfahren zum dynamischen, fahrzeugspezifischen Betrieb eines Navigationssystems |
US10847148B2 (en) * | 2017-07-14 | 2020-11-24 | International Business Machines Corporation | Dynamic personalized multi-turn interaction of cognitive models |
KR102506866B1 (ko) | 2017-12-13 | 2023-03-08 | 현대자동차주식회사 | 차량 환경에서 선발화 안내 장치, 방법 및 시스템 |
WO2019155526A1 (ja) * | 2018-02-06 | 2019-08-15 | 日産自動車株式会社 | 情報処理方法及び情報処理装置 |
US10573298B2 (en) * | 2018-04-16 | 2020-02-25 | Google Llc | Automated assistants that accommodate multiple age groups and/or vocabulary levels |
US10380997B1 (en) * | 2018-07-27 | 2019-08-13 | Deepgram, Inc. | Deep learning internal state index-based search and classification |
JP7074031B2 (ja) * | 2018-11-15 | 2022-05-24 | トヨタ自動車株式会社 | 情報提供装置、情報提供方法及びプログラム |
US11265300B1 (en) * | 2018-12-29 | 2022-03-01 | Whatsapp Llc | Methods and systems for transmitting anonymized information |
US11289095B2 (en) | 2019-12-30 | 2022-03-29 | Yandex Europe Ag | Method of and system for translating speech to text |
US11842731B2 (en) * | 2020-01-06 | 2023-12-12 | Salesforce, Inc. | Method and system for executing an action for a user based on audio input |
US11947573B2 (en) * | 2022-04-29 | 2024-04-02 | Content Square SAS | Determining zone identification reliability |
US11978436B2 (en) * | 2022-06-03 | 2024-05-07 | Apple Inc. | Application vocabulary integration with a digital assistant |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19709518C5 (de) | 1997-03-10 | 2006-05-04 | Harman Becker Automotive Systems Gmbh | Verfahren und Vorrichtung zur Spracheingabe einer Zieladresse in ein Zielführungssystem im Echtzeitbetrieb |
CA2440463C (en) | 2001-04-19 | 2010-02-02 | Simon Nicholas Downey | Speech recognition |
US20030125869A1 (en) * | 2002-01-02 | 2003-07-03 | International Business Machines Corporation | Method and apparatus for creating a geographically limited vocabulary for a speech recognition system |
US7424363B2 (en) | 2004-08-20 | 2008-09-09 | Robert Bosch Corporation | Method and system for adaptive navigation using a driver's route knowledge |
US20060173618A1 (en) | 2005-02-01 | 2006-08-03 | Mark Eyer | Intelligent travel assistant |
JP4802522B2 (ja) * | 2005-03-10 | 2011-10-26 | 日産自動車株式会社 | 音声入力装置および音声入力方法 |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US8140335B2 (en) * | 2007-12-11 | 2012-03-20 | Voicebox Technologies, Inc. | System and method for providing a natural language voice user interface in an integrated voice navigation services environment |
JP2011210041A (ja) | 2010-03-30 | 2011-10-20 | Aisin Aw Co Ltd | 検索装置、及び、プログラム |
US8498991B2 (en) | 2010-10-06 | 2013-07-30 | GM Global Technology Operations LLC | Neighborhood guide for semantic search system and method to support local POI discovery |
US20130103300A1 (en) * | 2011-10-25 | 2013-04-25 | Nokia Corporation | Method and apparatus for predicting a travel time and destination before traveling |
US20140041055A1 (en) * | 2012-08-06 | 2014-02-06 | Avaya Inc. | System and method for online access control based on users social network context |
US8983836B2 (en) * | 2012-09-26 | 2015-03-17 | International Business Machines Corporation | Captioning using socially derived acoustic profiles |
US9672818B2 (en) * | 2013-04-18 | 2017-06-06 | Nuance Communications, Inc. | Updating population language models based on changes made by user clusters |
US20150100240A1 (en) * | 2013-10-08 | 2015-04-09 | Toyota Jidosha Kabushiki Kaisha | Generating Dynamic Vocabulary for Personalized Speech Recognition |
-
2013
- 2013-10-15 US US14/054,763 patent/US9484025B2/en active Active
-
2014
- 2014-08-13 JP JP2014164642A patent/JP6488588B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
US9484025B2 (en) | 2016-11-01 |
JP2015079237A (ja) | 2015-04-23 |
US20150106096A1 (en) | 2015-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6488588B2 (ja) | 音声認識方法および音声認識システム | |
US10044818B2 (en) | Notification related to predicted future geographic location of mobile device | |
US20190158609A1 (en) | System and method for improved mapping and routing | |
US9488485B2 (en) | Method and apparatus for route selection based on recorded and calculated routes | |
US10209079B2 (en) | Optimization of map views based on real-time data | |
WO2016177022A1 (zh) | 一种信息处理方法、终端及服务器、计算机存储介质 | |
US9769107B2 (en) | Lifestyle-based social groups | |
TWI428564B (zh) | 個人化距離之判定及顯示系統與方法 | |
EP2541484A1 (en) | Geo-spatial recommendation and discovery system | |
US20130345958A1 (en) | Computing Recommendations for Stopping During a Trip | |
CN105723397B (zh) | 基于效能模型的内容推荐 | |
EP2541485A1 (en) | Method for constructing geo-fences for a spatial recommendation and discovery system | |
WO2012172160A1 (en) | Method and apparatus for resolving geo-identity | |
JP2014135058A (ja) | インタラクティブ車内広告の管理 | |
WO2021169741A1 (zh) | 信息推荐方法、装置、终端及存储介质 | |
JP2013122456A (ja) | 場所嗜好性推定システムおよび方法 | |
EP3014906B1 (en) | Human-like global positioning system (gps) directions | |
JP2015081919A (ja) | 人気度に基づく旅行目的地の推定 | |
US20140280053A1 (en) | Contextual socially aware local search | |
WO2015052857A1 (en) | Generating dynamic vocabulary for personalized speech recognition | |
US20150370903A1 (en) | Delivering Personalized Information | |
US8521190B2 (en) | Methods and apparatus for leaving and/or discovering locally relevant pieces of information | |
US20190090197A1 (en) | Saving battery life with inferred location | |
WO2012164333A1 (en) | System and method to search, collect and present various geolocated information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170524 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180529 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180703 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180831 |
|
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: 20190129 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190211 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6488588 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |