(57)【特許請求の範囲】
【請求項１】
コンピュータにより実施される方法であって、
コンピューティングデバイスが、発言に相当する音声データを受信するステップと、
前記発言がホットワードを含む可能性を判定するステップと、
前記音声データのラウドネススコアを判定するステップと、
前記ラウドネススコアに基づいて遅延時間の量を判定するステップであって、前記遅延時間の量が、前記音声データのラウドネススコアに反比例する、ステップと、
別のコンピューティングデバイスから前記音声データの発話認識処理を開始することを示す信号を受信することなく前記遅延時間の量が経過した後で、前記音声データの発話認識処理を前記コンピューティングデバイスが開始することを示す信号を送信するステップと、
前記遅延時間の量が経過する前に、別のコンピューティングデバイスから前記音声データの発話認識処理を当該別のコンピューティングデバイスが開始することを示す信号を受信した場合、前記音声データの発話認識処理を中止するステップ
を備える方法。
【請求項２】
コンピュータにより実施される方法であって、
コンピューティングデバイスが、発言に相当する音声データを受信するステップと、
前記発言がホットワードを含む可能性を判定するステップと、
前記音声データのラウドネススコアを判定するステップと、
前記ラウドネススコアに基づいて遅延時間の量を判定するステップと、
前記遅延時間の量が経過した後で、前記音声データの発話認識処理を前記コンピューティングデバイスが開始することを示す信号を送信するステップと、を備え、
前記方法が、さらに、
前記コンピューティングデバイスが、さらなる発言に相当するさらなる音声データを受信するステップと、
前記さらなる発言が前記ホットワードを含む第2の可能性を判定するステップと、
前記さらなる音声データの第2のラウドネススコアを判定するステップと、
前記第2のラウドネススコアに基づいて第2の遅延時間の量を判定するステップと、
前記遅延時間の量が経過する前に、(i)第2のコンピューティングデバイスが、前記さらなる音声データの発話認識処理を開始すること、および(ii)前記コンピューティングデバイスが、前記さらなる音声データの発話認識処理を開始するべきでないことを示す第2の信号を受信するステップと、を備える、方法。
【請求項３】
前記第2の信号を受信するステップに基づいて、前記コンピューティングデバイスの作動状態が活動停止状態であることを判定するステップを備える、請求項2に記載の方法。
【請求項４】
前記信号を送信する場合、前記コンピューティングデバイスにより、前記音声データの発話認識処理を開始するステップを備える、請求項1に記載の方法。
【請求項５】
前記信号が、超音波信号または短距離無線信号を備える、請求項1に記載の方法。
【請求項６】
前記信号が、別のコンピューティングデバイスによって受信され、前記別のコンピューティングデバイスに、前記音声データの発話認識処理を開始しないように示す、請求項1に記載の方法。
【請求項７】
前記発言がホットワードを含む可能性を判定するステップに基づいて、前記音声データの発話認識処理を別のコンピューティングデバイスが開始することを示す信号を受信する準備をするステップを備える、請求項1に記載の方法。
【請求項８】
前記ラウドネススコアが、前記遅延時間の量に比例する、請求項2に記載の方法。
【請求項９】
前記ラウドネススコアが閾値を満たすとき、前記遅延時間はゼロである、請求項1に記載の方法。
【請求項１０】
前記音声データのラウドネススコアを判定するステップが、
前記発言が前記ホットワードを含む可能性が、可能性閾値を満たすことを判定するステップを備える、請求項1に記載の方法。
【請求項１１】
1つまたは複数のコンピュータと、前記1つまたは複数のコンピュータによって実行されるとき、前記1つまたは複数のコンピュータに動作を行わせるように動作可能な命令を記憶する1つまたは複数の記憶デバイスと、を備えるシステムであって、前記動作が、
コンピューティングデバイスが、発言に相当する音声データを受信することと、
前記発言がホットワードを含む可能性を判定することと、
前記音声データのラウドネススコアを判定することと、
前記ラウドネススコアに基づいて遅延時間の量を判定することであって、前記遅延時間の量が、前記音声データのラウドネススコアに反比例する、ことと、
別のコンピューティングデバイスから前記音声データの発話認識処理を開始することを示す信号を受信することなく前記遅延時間の量が経過した後で、前記音声データの発話認識処理を前記コンピューティングデバイスが開始することを示す信号を送信することと、
前記遅延時間の量が経過する前に、別のコンピューティングデバイスから前記音声データの発話認識処理を当該別のコンピューティングデバイスが開始することを示す信号を受信した場合、前記音声データの発話認識処理を中止することを備えるシステム。
【請求項１２】
1つまたは複数のコンピュータと、前記1つまたは複数のコンピュータによって実行されるとき、前記1つまたは複数のコンピュータに動作を行わせるように動作可能な命令を記憶する1つまたは複数の記憶デバイスと、を備えるシステムであって、前記動作が、
コンピューティングデバイスが、発言に相当する音声データを受信することと、
前記発言がホットワードを含む可能性を判定することと、
前記音声データのラウドネススコアを判定することと、
前記ラウドネススコアに基づいて遅延時間の量を判定することと、
前記遅延時間の量が経過した後で、前記音声データの発話認識処理を前記コンピューティングデバイスが開始することを示す信号を送信することと、を備え、
前記動作が、さらに、
前記コンピューティングデバイスが、さらなる発言に相当するさらなる音声データを受信することと、
前記さらなる発言が前記ホットワードを含む第2の可能性を判定することと、
前記さらなる音声データの第2のラウドネススコアを判定することと、
前記第2のラウドネススコアに基づいて第2の遅延時間の量を判定することと、
前記遅延時間の量が経過する前に、(i)第2のコンピューティングデバイスは、前記さらなる音声データの発話認識処理を開始すること、および(ii)前記コンピューティングデバイスは、前記さらなる音声データの発話認識処理を開始するべきでないことを示す第2の信号を受信することと、を備える、システム。
【請求項１３】
前記動作が、
前記信号を送信する場合、前記コンピューティングデバイスにより、前記音声データの発話認識処理を開始することをさらに備える、請求項11に記載のシステム。
【請求項１４】
前記信号が、超音波信号または短距離無線信号を備える、請求項11に記載のシステム。
【請求項１５】
前記信号が、別のコンピューティングデバイスによって受信され、前記別のコンピューティングデバイスに、前記音声データの発話認識処理を開始しないように示す、請求項11に記載のシステム。
【請求項１６】
前記動作が、
前記発言がホットワードを含む可能性を判定することに基づいて、前記音声データの発話認識処理を別のコンピューティングデバイスが開始することを示す信号を受信する準備をすることをさらに備える、請求項11に記載のシステム。
【請求項１７】
前記ラウドネススコアが、前記遅延時間の量に比例する、請求項12に記載のシステム。
【請求項１８】
前記ラウドネススコアが閾値を満たすとき、前記遅延時間はゼロである、請求項11に記載のシステム。
【請求項１９】
前記音声データのラウドネススコアを判定することが、
前記発言が前記ホットワードを含む前記可能性が、可能性閾値を満たすことを判定することを備える、請求項11に記載のシステム。
【請求項２０】
1つまたは複数のコンピュータによって実行可能であり、実行されると前記1つまたは複数のコンピュータに動作を行わせる命令を備えるソフトウェアを記憶する非一時的なコンピュータ可読媒体であって、前記動作が、
コンピューティングデバイスが、発言に相当する音声データを受信することと、
前記発言がホットワードを含む可能性を判定することと、
前記音声データのラウドネススコアを判定することと、
前記ラウドネススコアに基づいて遅延時間の量を判定することであって、前記遅延時間の量が、前記音声データのラウドネススコアに反比例する、ことと、
別のコンピューティングデバイスから前記音声データの発話認識処理を開始することを示す信号を受信することなく前記遅延時間の量が経過した後で、前記音声データの発話認識処理を前記コンピューティングデバイスが開始することを示す信号を送信することと、
前記遅延時間の量が経過する前に、別のコンピューティングデバイスから前記音声データの発話認識処理を当該別のコンピューティングデバイスが開始することを示す信号を受信した場合、前記音声データの発話認識処理を中止することを備える非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、一般に、人が話す言葉を認識する、発話認識とも称されるシステムおよび技術に関する。
【背景技術】
【０００２】
発話が可能な家または他の環境、すなわちユーザがクエリまたはコマンドを平常音で話すだけで、コンピュータベースのシステムがクエリに対応し回答する、かつ/またはコマンドを実行するということが現実になってきた。発話が可能な環境(たとえば、家、仕事場、学校など)は、その環境における様々な部屋またはエリアのいたるところに分布した接続されたマイクデバイスのネットワークを用いて実施することができる。そのようなマイクのネットワークを通じて、ユーザは、コンピュータまたは他のデバイスをユーザの正面または近傍にさえ有する必要なしに、システムに、原則的には環境のどこからでも口頭で質問する能力を有する。たとえば、ユーザは、台所で料理しながら、システムに、「3カップは何ミリリットル?」と聞いてもよく、それに応じて、システムから、たとえば合成した声の出力という形で、回答を受けてもよい。あるいは、ユーザは、システムに、「ここから一番近いガソリンスタンドは、いつ閉まりますか?」などの質問を聞いてもよく、また、家を出る準備が整うと、「今日はコートを着ていくべきですか?」などの質問を聞いてもよい。
【０００３】
さらに、ユーザは、システムに質問をしてもよく、かつ/または、ユーザの個人情報に関するコマンドを発行してもよい。たとえば、ユーザは、システムに、「ジョンとの打ち合わせはいつですか?」と聞いてもよく、または、システムに、「家に着いたら、ジョンに電話するよう思い出させて」と命令してもよい。
【発明の概要】
【課題を解決するための手段】
【０００４】
発話が可能なシステムのために、システムとやり取りするユーザのやり方を、これに限定されないが、主として、声を入力することによるものとして設計する。その結果、システムに向けられていない発言を含む周囲の環境でなされたすべての発言を潜在的に拾い上げるシステムでは、たとえば、環境の中にいる個人に向けられた任意の所与の発言が行われたときに対して、システムに向けられた任意の所与の発言が行われたときを識別する何らかのやり方を備えなければならない。この識別を達成する1つのやり方として、システムの注意をひくために話される所定の語として、その環境にいるユーザ間の合意によって予約されたホットワード(hotword)を使用することがある。環境の一例で、システムの注意をひくのに使用されるホットワードは、「オーケー、コンピュータ」という語である。その結果、「オーケー、コンピュータ」という語が話されるたびに、それはマイクによって拾われる。そして、それは、ホットワードが話されたかどうかを判断する発話認識技術を行い、もし話されたのなら、確保されるコマンドまたはクエリを待機するシステムに伝えられる。したがって、システムに向けられた発言は、[ホットワード][クエリ]という一般的な形をとる。この例での「ホットワード」は、「オーケー、コンピュータ」であり、「クエリ」は、任意の質問、コマンド、宣言、または単独でもしくはネットワークを介してサーバと連動して、システムによって発話を認識し、解析し、実行することができる他の要求であり得る。
【０００５】
本明細書に記載される主題の1つの革新的な態様によると、コンピューティングデバイスは、ユーザが話した発言を受信する。コンピューティングデバイスは、発言がホットワードを含む可能性を判定し、発言のラウドネススコアを演算する。近傍にある他のコンピューティングデバイスも、発言を受信し、発言がホットワードを含む可能性を判定し、発言のラウドネススコアを演算する。各コンピューティングデバイスはまた、遅延の長さがラウドネススコアに反比例するような、ラウドネススコアに基づいた遅延も計算する。発言源に最も近いコンピューティングデバイスは、通常、最も高いラウドネススコアを有するので、最も近いデバイスは、最も短い遅延を有する。所与のコンピューティングデバイスに関連付けられた遅延が経過した後で、それぞれのコンピューティングデバイスは、遅延期間中に通知信号を受信しない限り、他のコンピューティングデバイスに、通知信号を送信する。したがって、最も小さい遅延を有する(したがって、ユーザに最も近そうである)コンピューティングデバイスは、他のコンピューティングデバイスに信号を送信して、このコンピューティングデバイスがホットワードに続くさらなる音声を処理することを示す。この例では、送信を行うコンピューティングデバイスは、ホットワードに続くさらなる音声を処理する。もし、遅延中に、コンピューティングデバイスが、ホットワードに続くさらなる音声を別のデバイスが処理することを示す信号を他のデバイスの1つから受信すると、このコンピューティングデバイスは、音声の処理を中止する。
【０００６】
一般に、本明細書に記載される主題の別の革新的な面は、コンピューティングデバイスが発言に相当する音声データを受信するアクション、発言がホットワードを含む可能性を判定するアクション、音声データのラウドネススコアを判定するアクション、ラウドネススコアに基づいて遅延時間の量を判定するアクション、遅延時間の量が経過した後で、音声データの発話認識処理をコンピューティングデバイスが開始することを示す信号を送信するアクションを含む方法で具体化し得る。
【０００７】
これらの実施形態および他の実施形態は、各々、1つまたは複数の以下の特徴を、場合によっては含むことができる。アクションは、さらに、コンピューティングデバイスがさらなる発言に相当するさらなる音声データを受信するアクション、さらなる発言がホットワードを含む第2の可能性を判定するアクション、さらなる音声データの第2のラウドネススコアを判定するアクション、第2のラウドネススコアに基づいて第2の遅延時間の量を判定するアクション、ならびに遅延時間の量が経過する前に、(i)第2のコンピューティングデバイスが、さらなる音声データの発話認識処理を開始すること、および(ii)コンピューティングデバイスが、さらなる音声データの発話認識処理を開始すべきではないことを示す第2の信号を受信するアクションを含む。アクションは、第2の信号の受信に基づいて、コンピューティングデバイスの作動状態が活動停止状態であることを判定するアクションをさらに含む。
【０００８】
アクションは、信号の送信に基づいて、コンピューティングデバイスの作動状態が活動中状態であることを判定するアクションをさらに含む。信号は、超音波信号または短距離無線信号を含む。信号は、別のコンピューティングデバイスによって受信され、この別のコンピューティングデバイスに、音声データの発話認識処理を開始しないように示す。アクションは、発言がホットワードを含む可能性の判定に基づいて、音声データの発話認識処理を別のコンピューティングデバイスが開始することを示す信号を受信する準備をするアクションをさらに含む。ラウドネススコアは、遅延時間の量に比例する。ラウドネススコアが閾値を満たすとき、遅延時間はゼロである。音声データのラウドネススコアを判定するアクションは、発言がホットワードを含む可能性が、可能性閾値を満たすことを判定するアクションをさらに含む。
【０００９】
この態様の他の実施形態は、この方法の動作を行うように各々が構成された、対応するシステム、装置、およびコンピュータ記憶デバイスに記録されたコンピュータプログラムを含む。
【００１０】
本明細書に記載される主題の特定の実施形態は、1つまたは複数の以下の利点を実現するように実施することができる。複数のデバイスが、ホットワードを検出することができ、1つのデバイスのみがホットワードに応答する。
【００１１】
本明細書に記載される主題の1つまたは複数の実施形態の詳細は、添付の図面および以下の記載に記述する。主題の他の特徴、態様、および利点は、記載、図面、および特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【００１２】
【図１】ホットワードを検出するシステムの例を示す図である。
【図２】ホットワードを検出するプロセスの例を示す図である。
【図３】コンピューティングデバイスおよび携帯型コンピューティングデバイスの例である。
【発明を実施するための形態】
【００１３】
様々な図面の同じ参照番号および記号は、同じ要素を示す。
【００１４】
本明細書は、ホットワードを聞くいくつものコンピューティングデバイスが、どのデバイスが応答すべきかを判定できるようにする、ラウドネスに基づいたプロトコルを記載する。有利には、プロトコルは、たとえば音声信号または短距離無線信号を用いて、ローカルなやり取りに基づいて実施することができ、いかなるサーバ側の通信も必要としないですむ。このことは、ローカルなやり取りはサーバと通信する待ち時間を発生させることなく応答の交渉を可能にすることができるので、有益である。
【００１５】
図1は、ホットワードを検出するシステム100の例を示す図である。一般に、システム100は、コンピューティングデバイス106、コンピューティングデバイス108、およびコンピューティングデバイス110のマイクによって検出される発言104を話すユーザ102を示す。コンピューティングデバイス106、コンピューティングデバイス108、およびコンピューティングデバイス110は、発言104を処理して、発言のラウドネススコアを判定するのに加え、発言104がホットワードを含む可能性を判定する。コンピューティングデバイス106、コンピューティングデバイス108、およびコンピューティングデバイス110は、ラウドネススコアに比例する遅延時間を計算する。コンピューティングデバイスの遅延時間の1つが経過すると、そのコンピューティングデバイスは、他のコンピューティングデバイスに信号を送信する。信号は、送信を行っているコンピューティングデバイスが、発言に相当する音声データの発話認識を行うことを、他のコンピューティングデバイスに示す。
【００１６】
より詳細には、ユーザ102は、「オーケー、コンピュータ」という発言104を話し、コンピューティングデバイス106、コンピューティングデバイス108、およびコンピューティングデバイス110は、マイクなどのそれぞれの音声入力デバイスを通じて、発言104を受信する。コンピューティングデバイス106は、ユーザ102がユーザの手に持っている電話機である。コンピューティングデバイス108は、テーブル上に配置したタブレットである。コンピューティングデバイス110は、壁に配置したサーモスタットである。コンピューティングデバイス106は、ユーザに最も近く、コンピューティングデバイス108が次に近く、最後に、コンピューティングデバイス110がユーザから最も遠い。コンピューティングデバイス106、コンピューティングデバイス108、およびコンピューティングデバイス110はそれぞれ、マイク114、マイク116、およびマイク118を含む。それぞれのマイクは、それぞれの音声サブシステムに音声データを提供する。音声サブシステムは、マイクから受信した音声データを、バッファリングし、フィルタリングし、デジタル化する。いくつかの実装形態で、各コンピューティングデバイスは、音声データのエンドポインティングおよび話者識別も行い得る。いくつかの実装形態で、コンピューティングデバイス106、コンピューティングデバイス108、およびコンピューティングデバイス110は、図3に関して以下で記載するデバイスなどの、音声データを受信し処理することができる任意のデバイスであり得る。
【００１７】
各音声サブシステムは、ホットワーダ(hotworder)120、ホットワーダ122、またはホットワーダ124などのホットワーダに、処理済みの音声データを提供する。それぞれのホットワーダは、既知のホットワードの発言を用いて知らされ得るまたは訓練され得る処理済みの音声データの分類処理を行う。それぞれのホットワーダは、発言104がホットワードを含む可能性を演算する。それぞれのホットワーダは、処理済みの音声データから、フィルタバンクエネルギーまたはメル周波数ケプストラム係数などの音声の特徴を抽出し得る。それぞれのホットワーダは、サポートベクターマシーンまたはニューラルネットワークを用いるなどしてこれらの音声の特徴を処理する分類ウィンドウを使用し得る。音声の特徴の処理に基づいて、それぞれのホットワーダは、発言104がホットワードを含む可能性を演算する。いくつかの実装形態で、可能性は、信頼性スコアに反映され得る。信頼性スコアは、1から100段階の評価に正規化され得る。信頼性スコアは、数値が大きいほど、発言104がホットワードを含む信頼性が高いことを示す。
【００１８】
いくつかの実装形態で、それぞれのホットワーダは、信頼性スコアを閾値と比較する。信頼性スコアが閾値を満たすと、コンピューティングデバイスは、音声データの処理を続行する。信頼性スコアが閾値を満たさないと、コンピューティングデバイスは、音声データの処理を中止する。たとえば、信頼性スコアが0.8で、閾値が0.7なら、コンピューティングデバイスは、音声データの処理を続行する。音声データが「オーケー、コンピュータ」に相当するとき、信頼性スコアは0.8であり得る。信頼性スコアが0.5で、閾値が0.7なら、コンピューティングデバイスは、音声データの処理を中止する。音声データが「夕食の時間」に相当するとき、信頼性スコアは0.5であり得る。
【００１９】
ホットワーダは、音声データをラウドネススコアラに提供する。ラウドネススコアラは、音声データのラウドネススコアを演算する。通常、ラウドネススコアは、各コンピューティングデバイスからのユーザの距離の反映である。たとえば、ラウドネススコアラ126が演算するコンピューティングデバイス106のラウドネススコアは、0.9であり得る。ラウドネススコアラ128が演算するコンピューティングデバイス108のラウドネススコアは、0.6であり得る。ラウドネススコアラ130が演算するコンピューティングデバイス110のラウドネススコアは、0.5であり得る。いくつかの実装形態で、音声サブシステムは、ラウドネススコアラに音声データを提供する。この例では、ホットワーダは、ラウドネススコアラがラウドネススコアを演算するのと並行して、発言104がホットワードを含む可能性を演算し得る。
【００２０】
ラウドネススコアラは、たとえば以下の技術の1つまたは組合せである、ラウドネスに比例する値を生成する任意の適切な技術を用いて、音声データのラウドネスを演算し得る。1つの技術は、ユーザが発言をしたときのマイクが受信する最大音圧もしくは平均音圧、または最大音圧レベルもしくは平均音圧レベルを計算する技術であり得る。音圧または音圧レベルが高いほど、ラウドネスは大きい。第2の技術は、音声データの二乗平均平方根を計算する技術である。音声データの二乗平均平方根が大きいほど、ラウドネスは大きい。第3の技術は、音声データの音の強度を計算する技術である。音声データの音の強度が強いほど、ラウドネスは大きい。第4の技術は、音声データの音力を計算する技術である。音力が強いほど、ラウドネスは大きい。
【００２１】
ラウドネススコアラは、遅延計算モジュールに、ラウドネススコアを提供する。ラウドネススコアに基づいて、モジュールは、音声データをさらに処理し他のコンピューティングデバイスにコンピューティングデバイスが音声データを処理することを通知する前にコンピューティングデバイスが待機するべき遅延時間を計算する。たとえば、ラウドネススコアラ126は、遅延計算モジュール132に、ラウドネススコア0.9を提供し、モジュール132は、遅延時間50ミリ秒を演算する。ラウドネススコアラ128は、遅延計算モジュール134に、ラウドネススコア0.6を提供し、遅延計算モジュール134は、遅延時間200ミリ秒を演算する。ラウドネススコアラ130は、遅延計算モジュール136に、ラウドネススコア0.5を提供し、遅延計算モジュール136は、遅延時間250ミリ秒を演算する。
【００２２】
次いで、タイマーは、遅延時間をカウントダウンし、遅延時間が経過すると、タイマーによって、コンピューティングデバイスは、コンピューティングデバイスのスピーカに、スピーカが通知信号を発するように信号を送信する。タイマーは、遅延計算モジュールに含まれてもよく、またはタイマーは、遅延計算モジュールから分離してもよい。通知信号は、たとえば、超音波、可聴音声信号、またはブルートゥース(登録商標)などの短距離無線信号であり得る。通知信号は、他のコンピューティングデバイスによって受信され、通知信号を発したコンピューティングデバイスが音声データの処理を扱うことを、他のコンピューティングデバイスに示す。たとえば、遅延計算モジュール132は、スピーカ138に通知信号を発するよう命令する前に、50ミリ秒待機する。コンピューティングデバイス108およびコンピューティングデバイス110は、それぞれのタイマーがそれぞれの遅延時間をカウントダウンし終える前に、通知信号を受信するので、コンピューティングデバイス108およびコンピューティングデバイス110は、音声データの処理を中止し、スピーカ140およびスピーカ142は、通知信号を発さない。いくつかの実装形態で、通知信号は、特定の周波数および/またはパターンを含み得る。たとえば、通知信号は、20キロヘルツであって、コンピューティングデバイスが音声データの発話認識を行うことを示し得る。
【００２３】
いくつかの実装形態で、通知信号を発すると、コンピューティングデバイス106は、そのデバイス状況138も設定し得る。コンピューティングデバイス106は、音声データを処理するデバイスであるので、デバイス状況138は、活動中または「アウェイク」に設定される。コンピューティングデバイス108およびコンピューティングデバイス110のデバイス状況140およびデバイス状況142は、どちらのデバイスも音声データのさらなる処理を行っていないので、活動停止または「スリープ」に設定される。
【００２４】
いくつかの実装形態で、コンピューティングデバイスのデバイス状況は、影響を受けないこともある。最も大きい音声データを測定し、そして、通知信号を最も早く発するコンピューティングデバイスは、他のコンピューティングデバイスがアウェイクのままでいるまたはアウェイク状態を入力する一方で、音声データのさらなる処理を開始し得る。たとえば、ユーザ102は、コンピューティングデバイス108で映画を視聴しながら、ユーザの手にコンピューティングデバイス106を持ち得る。ユーザ102が、「オーケー、コンピュータ」と話すと、コンピューティングデバイス106は、音声データを検出し、50ミリ秒後に、通知信号を発して、コンピューティングデバイス106が音声データをさらに処理することを示す。コンピューティングデバイス108は、通知信号を受信し、映画の上映を続行する。
【００２５】
いくつかの実装形態で、コンピューティングデバイスは、通知信号を発する前または受信する前に、音声データの発話認識を開始し得る。通知信号を発する前または受信する前に認識を行うことによって、コンピューティングデバイスは、発言の発話認識を迅速に完了することができる。たとえば、発言が、「オーケー、コンピュータ、アリスを呼んで」であれば、コンピューティングデバイスは、コンピューティングデバイスが活動中状態のままであるならばより早く応答できるように、ユーザが「アリスを呼んで」と話したことの認識を開始することができる。コンピューティングデバイスのデバイス状況が活動停止なら、コンピューティングデバイスは、「アリスを呼んで」の発話認識を行ったという表示をしなくてもよい。図1で、この技術を用いると、コンピューティングデバイス106、コンピューティングデバイス108、およびコンピューティングデバイス110は、音声データおよび音声データに続く任意の音声データの発話認識を行う。スピーカ138が通知信号を送信するとき、コンピューティングデバイス106は、発話認識を続行し、結果を表示する。マイク116およびマイク118が通知信号を受信すると、コンピューティングデバイス108およびコンピューティングデバイス110は、発話認識を中止し、結果を表示しない。コンピューティングデバイス108およびコンピューティングデバイス110は活動停止状態のままであるようにユーザ102には見える。
【００２６】
図2は、ホットワードを検出するプロセス200の例を示す図である。プロセス200は、図1のコンピューティングデバイス108などのコンピューティングデバイスによって行われ得る。プロセス200は、(i)発言がホットワードを含む可能性、および(ii)発言に相当する音声データのラウドネススコアを演算する。プロセス200は、コンピューティングデバイスが音声データを処理することを他のコンピューティングデバイスに通知する前に、コンピューティングデバイスが待機する遅延時間を演算する。
【００２７】
コンピューティングデバイスは、発言に相当する音声データを受信する(210)。ユーザは、発言を行い、コンピューティングデバイスのマイクは、発言の音声データを受信する。コンピューティングデバイスは、音声データをバッファリング、フィルタリング、エンドポインティング、およびデジタル化することによって、音声データを処理する。例として、ユーザは、「オーケー、コンピュータ」と発言してもよく、コンピューティングデバイスのマイクは、「オーケー、コンピュータ」に相当する音声データを受信する。コンピューティングデバイスの音声サブシステムは、コンピューティングデバイスによるさらなる処理を行うため、音声データをサンプリング、バッファリング、フィルタリング、およびエンドポインティングする。
【００２８】
コンピューティングデバイスは、発言がホットワードを含む可能性を判定する(220)。コンピューティングデバイスは、発言の音声データをホットワードを含む一群の音声サンプルと比較することにより、および/または、発言の音声データの音声の特徴を分析することにより、発言がホットワードを含む可能性を判定する。いくつかの実装形態で、発言がホットワードを含む可能性は、信頼性スコアによって表され得る。信頼性スコアは、1から100段階の評価に正規化され得る。100は、発言がホットワードを含む可能性が最も高いことを示す。コンピューティングデバイスは、信頼性スコアと閾値を比較し得る。信頼性スコアが閾値を満たすなら、コンピューティングデバイスは、音声データの処理を続行する。信頼性スコアが閾値を満たさないなら、コンピューティングデバイスは、音声データの処理を中止する。いくつかの実装形態で、コンピューティングデバイスが処理を続行するには、信頼性スコアは閾値より高くあるべきである。たとえば、信頼性スコアが0.9であり、閾値が0.7であれば、コンピューティングデバイスは、音声データの処理を続行する。
【００２９】
いくつかの実装形態で、コンピューティングデバイスは、音声データの発話認識処理を別のコンピューティングデバイスが開始することを示す信号を受信する準備をする。信号を受信するのに、コンピューティングデバイスは、コンピューティングデバイスのマイクが活動中のままであること、短距離無線受信機が活動中であること、または、ローカルエリアワイヤレス無線などの別の無線が活動中であることを確保し得る。コンピューティングデバイスは、別のコンピューティングデバイスが結果を表示するとき、コンピューティングデバイスが音声データの発話認識から結果を表示しないように、信号を受信する準備をすることが必要であり得る。
【００３０】
コンピューティングデバイスは、音声データのラウドネススコアを判定する(230)。コンピューティングデバイスは、以下の技術の1つまたは組合せを用いて、音声データのラウドネススコアを計算し得る。1つの技術は、ユーザが発言をしているときにマイクから受信する音圧または音圧レベルを計算することであり得る。音圧または音圧レベルが高いほど、ラウドネスは大きい。第2の技術は、音声データの二乗平均平方根を計算することである。音声データの二乗平均平方根の値が大きいほど、ラウドネスは大きい。第3の技術は、音声データの音の強度を計算することである。音声データの音の強度が強いほど、ラウドネスは大きい。第4の技術は、音声データの音力を計算することである。音力が強いほど、ラウドネスは大きい。コンピューティングデバイスが受信する音声データのラウドネスは、コンピューティングデバイスと音声源の距離を反映し得る。直接経路での信号伝搬の場合、ラウドネスは、源と受信機の間の距離の2乗にほぼ反比例する。いくつかの実装形態で、コンピューティングデバイスは、発言がホットワードを含む可能性が閾値を満たす場合のみ、ラウドネススコアを演算する。発言がホットワードを含みそうにないなら、コンピューティングデバイスは、ラウドネススコアを演算しない。
【００３１】
コンピューティングデバイスは、ラウドネススコアに基づいて、遅延時間の量を判定する(240)。いくつかの実装形態で、遅延時間は、ラウドネススコアに反比例する。たとえば、ラウドネススコア0.9は、遅延時間50ミリ秒に相当し、ラウドネススコア0.6は、遅延時間200ミリ秒に相当し得る。いくつかの実装形態で、ラウドネススコアが閾値を満たさないなら、遅延時間はない。すなわち、コンピューティングデバイスは、音声信号の処理を中止し、いかなる時も通知を送信しない。いくつかの実装形態で、ラウドネスが閾値を超えるなら、遅延時間はゼロとなり、これはつまり、対応するコンピューティングデバイスは、音声信号の処理を続行し、他のデバイスに通知信号を直ちに送出することを意味する。これらの閾値は、たとえば実験によって経験的に、任意の適切な方法を用いて決定し得る。
【００３２】
コンピューティングデバイスは、遅延時間の量が経過した後で、音声データの発話認識処理をコンピューティングデバイスが開始することを示す通知信号を送信する(250)。コンピューティングデバイスがいったん遅延時間を演算すると、コンピューティングデバイスのタイマーは、遅延時間をカウントダウンする。遅延時間が経過すると、コンピューティングデバイスは、近くにある他のコンピューティングデバイスに、超音波、短距離無線信号、またはローカルエリアワイヤレス信号などの信号を送信して、コンピューティングデバイスが音声データの発話認識処理を開始していることを示す。たとえば、コンピューティングデバイスは、音声データを受信した後、活動中状態または「アウェイク」状態であり、他のコンピューティングデバイスは、信号を受信した後、活動停止状態または「スリープ」状態である。
【００３３】
いくつかの実装形態で、コンピューティングデバイスは、別のコンピューティングデバイスから、音声データの発話認識処理を別のコンピューティングデバイスが開始することを示す信号を受信する。この例では、コンピューティングデバイスは、タイマーが遅延時間をカウントダウンしている間に、信号を受信する。コンピューティングデバイスが信号を受信すると、コンピューティングデバイスは、音声データの発話認識を行わない、または、続行しない。たとえば、コンピューティングデバイスが遅延時間200ミリ秒を演算し、コンピューティングデバイスのタイマーが200ミリ秒のカウントダウンをしている間に、コンピューティングデバイスが、別のコンピューティングデバイスから通知信号を受信したなら、コンピューティングデバイスは、音声データの発話認識を行わない。コンピューティングデバイスは、信号を受信した後、活動停止状態または「スリープ」状態になり得る。
【００３４】
いくつかの実装形態で、コンピューティングデバイスは、近くにあり、ホットワードに応答できる他のコンピューティングデバイスを検出する。コンピューティングデバイスは、応答を要求する超音波または無線信号を周期的に送信し得る。たとえば、コンピューティングデバイスは、ホットワードを認識する近くのコンピューティングデバイスを検索するとき、20.5キロヘルツの超音波を送信し得る。それに応じて、20.5キロヘルツの超音波を受信するコンピューティングデバイスは、21キロヘルツの超音波で応答し得る。コンピューティングデバイスが、ホットワードを認識する近くのコンピューティングデバイスを検出しないとき、コンピューティングデバイスは、音声データの発話認識をする前に、ラウドネススコアおよび遅延時間の演算をしなくてもよい。
【００３５】
いくつかの実装形態で、コンピューティングデバイスは、同一のユーザに属する他のコンピューティングデバイスを識別し得る。新しいコンピューティングデバイスを設定するとき、設定手順の一部に、同一のユーザに属する他のコンピューティングデバイスを識別することがあり得る。これは、ユーザがログインしている他のデバイスを検出することによって達成し得る。コンピューティングデバイスが、別のコンピューティングデバイスを識別すると、コンピューティングデバイス同士は、ホットワードを識別するときコンピューティングデバイス同士が交換できる超音波周波数パターンまたはビットストリームを示すデータを交換し得る。超音波周波数パターンは、スピーカを通じて送信され、ビットストリームは、無線を通じて送信され得る。たとえば、ユーザは、サーモスタットを設定してもよく、設定プロセスの一部は、近くにありホットワードに応答する他のコンピューティングデバイスを検索することである。サーモスタットは、ユーザがログインしている電話機およびタブレットを識別し得る。例として、サーモスタット、電話機、およびタブレットは、20.5キロヘルツで1ミリ秒、21キロヘルツで1ミリ秒、および21.5キロヘルツで1ミリ秒の傾斜周波数パターンを用いてデータを交換し得る。パターンを用いることにより、音声データの発話認識処理を開始するコンピューティングデバイスは、ユーザに属する他のコンピューティングデバイスに通知ができるようになり、別のユーザに属し得る他のデバイスでの発話認識をやめさせずにすむ。
【００３６】
図3は、本明細書に記載される技術を実施するのに用いることができるコンピューティングデバイス300および携帯型コンピューティングデバイス350の例を示す。コンピューティングデバイス300は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すことを意図している。携帯型コンピューティングデバイス350は、携帯情報端末、携帯電話機、スマートフォン、および他の同様のコンピューティングデバイスなどの様々な形態の携帯型デバイスを表すことを意図している。本明細書で示す構成要素、それらの接続および関係、ならびにそれらの機能は、例としてのみ示されており、これらに限定されない。
【００３７】
コンピューティングデバイス300は、プロセッサ302、メモリ304、記憶デバイス306、メモリ304および複数の高速拡張ポート310に接続する高速インタフェース308、ならびに低速拡張ポート314および記憶デバイス306に接続する低速インタフェース312を含む。プロセッサ302、メモリ304、記憶デバイス306、高速インタフェース308、高速拡張ポート310、および低速インタフェース312はそれぞれ、様々なバスを用いて相互接続され、共通のマザーボード上にまたは適宜他のやり方で搭載され得る。プロセッサ302は、コンピューティングデバイス300内で実行する命令を処理することができる。命令は、メモリ304または記憶デバイス306に記憶されて、高速インタフェース308に結合するディスプレイ316などの外部入出力デバイスにGUIのグラフィカルな情報を表示する命令を含む。他の実装形態で、複数のプロセッサおよび/または複数のバスは、複数のメモリおよび複数の種類のメモリとともに、適宜使用され得る。また、複数のコンピューティングデバイスは、各デバイスが必要な動作部分を提供している状態で(たとえば、サーババンク、一群のブレードサーバ、またはマルチプロセッサシステムとして)、接続し得る。
【００３８】
メモリ304は、コンピューティングデバイス300内に情報を記憶する。いくつかの実装形態で、メモリ304は、1つまたは複数の揮発性メモリ装置である。いくつかの実装形態で、メモリ304は、1つまたは複数の不揮発性メモリ装置である。メモリ304は、磁気ディスクまたは光学ディスクなどの別の形式のコンピュータ可読媒体でもあり得る。
【００３９】
記憶デバイス306は、コンピューティングデバイス300に大容量記憶をもたらすことができる。いくつかの実装形態で、記憶デバイス306は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光学ディスクデバイス、またはテープデバイス、フラッシュメモリまたは他の同様の半導体メモリデバイス、または、ストレージエリアネットワーク内または他の構成内のデバイスを含むデバイスの配列などのコンピュータ可読媒体であってもよく、またはそのようなコンピュータ可読媒体を含んでもよい。命令は、情報担体に記憶することができる。命令は、1つまたは複数の処理デバイス(たとえば、プロセッサ302)によって実行されると、上記の方法などの1つまたは複数の方法を行う。命令は、コンピュータ可読媒体または機械可読媒体(たとえば、メモリ304、記憶デバイス306、またはプロセッサ302のメモリ)などの1つまたは複数の記憶デバイスによっても記憶することができる。
【００４０】
高速インタフェース308は、コンピューティングデバイス300の帯域幅集中動作を管理し、低速インタフェース312は、低帯域幅集中動作を管理する。そのような機能の割当ては、ただの例にすぎない。いくつかの実装形態で、高速インタフェース308は、メモリ304、ディスプレイ316に(たとえば、グラフィックプロセッサまたはグラフィックアクセラレータを通じて)結合され、様々な拡張カード(図示せず)を受け入れ得る高速拡張ポート310に結合される。実装形態で、低速インタフェース312は、記憶デバイス306および低速拡張ポート314に結合される。様々な通信ポート(たとえば、USB、ブルートゥース(登録商標)、イーサネット(登録商標)、ワイヤレスイーサネット(登録商標))を含み得る低速拡張ポート314は、キーボード、ポインティングデバイス、スキャナなどの1つまたは複数の入出力デバイスに、または、たとえばネットワークアダプタを通じて、スイッチまたはルータなどのネットワークデバイスに結合され得る。
【００４１】
コンピューティングデバイス300は、図に示すように、いくつもの異なる形式で実施し得る。たとえば、コンピューティングデバイス300は、スタンダードサーバ320として、またはそのようなサーバのグループで複数倍で実施し得る。さらに、コンピューティングデバイス300は、ラップトップコンピュータ322などのパーソナルコンピュータで実施し得る。コンピューティングデバイス300は、ラックサーバシステム324の一部としても実施し得る。あるいは、コンピューティングデバイス300の構成要素は、携帯型コンピューティングデバイス350などの携帯型デバイス(図示せず)の他の構成要素と組み合わされ得る。そのようなデバイスは各々、1つまたは複数のコンピューティングデバイス300および携帯型コンピューティングデバイス350を含んでもよく、システム全体は、互いに通信する複数のコンピューティングデバイスから構成されてもよい。
【００４２】
携帯型コンピューティングデバイス350は、他の構成要素の中で、プロセッサ352、メモリ364、ディスプレイ354などの入出力デバイス、通信インタフェース366、およびトランシーバ368を含む。携帯型コンピューティングデバイス350は、さらなるストレージを提供するマイクロドライブデバイスまたは他のデバイスなどの記憶デバイスも備え得る。プロセッサ352、メモリ364、ディスプレイ354、通信インタフェース366、およびトランシーバ368の各々は、様々なバスを用いて相互接続され、いくつかの構成要素は、共通のマザーボード上にまたは適宜他のやり方で搭載され得る。
【００４３】
プロセッサ352は、メモリ364に記憶された命令を含む、携帯型コンピューティングデバイス350内の命令を実行することができる。プロセッサ352は、別個の複数のアナログプロセッサおよびデジタルプロセッサを含むチップのチップセットとして実施され得る。プロセッサ352は、たとえば、ユーザインタフェースの制御、携帯型コンピューティングデバイス350によって実行されるアプリケーションの制御、および携帯型コンピューティングデバイス350によるワイヤレス通信の制御などの、携帯型コンピューティングデバイス350の他の構成要素の協働を提供し得る。
【００４４】
プロセッサ352は、ディスプレイ354に結合された制御インタフェース358およびディスプレイインタフェース356を通じて、ユーザと通信し得る。ディスプレイ354は、たとえば、TFT(薄膜トランジスタ液晶ディスプレイ)ディスプレイまたはOLED(有機発光ダイオード)ディスプレイ、または他の適切なディスプレイ技術であり得る。ディスプレイインタフェース356は、ディスプレイ354を駆動する適切な回路を備え、ユーザにグラフィカルな情報および他の情報を提示し得る。制御インタフェース358は、ユーザからコマンドを受け、そのコマンドを、プロセッサ352に送信するために変換し得る。さらに、外部インタフェース362は、携帯型コンピューティングデバイス350が他のデバイスと近接エリア通信を行えるように、プロセッサ352との通信を提供し得る。外部インタフェース362は、たとえば、いくつかの実装形態で、有線通信を提供してもよく、他の実装形態で、ワイヤレス通信を提供してもよく、複数のインタフェースを使用してもよい。
【００４５】
メモリ364は、携帯型コンピューティングデバイス350内に情報を記憶する。メモリ364は、1つもしくは複数のコンピュータ可読媒体、1つもしくは複数の揮発性メモリ装置、または1つもしくは複数の不揮発性メモリ装置の内の1つまたは複数として実施することができる。拡張メモリ374も提供されて、たとえば、SIMM(シングルインラインメモリモジュール)カードインタフェースを含み得る拡張インタフェース372を通じて、携帯型コンピューティングデバイス350に接続し得る。拡張メモリ374は、携帯型コンピューティングデバイス350に余分のストレージ空間を提供してもよく、または、携帯型コンピューティングデバイス350のアプリケーションまたは他の情報も記憶してもよい。具体的には、拡張メモリ374は、上記の処理を実行または補完する命令を含んでもよく、またセキュア情報を含んでもよい。したがって、たとえば、拡張メモリ374は、携帯型コンピューティングデバイス350のセキュリティモジュールとして提供されてもよく、携帯型コンピューティングデバイス350の安全な使用を可能にする命令がプログラムされ得る。さらに、セキュアアプリケーションは、ハッキング不能なやり方でSIMMカードに識別情報を配置するなど、さらなる情報とともにSIMMカードを介して提供され得る。
【００４６】
メモリは、以下に述べるように、たとえばフラッシュメモリおよび/またはNVRAMメモリ(不揮発性ランダムアクセスメモリ)を含み得る。いくつかの実装形態で、命令は、情報担体に記憶される。命令は、1つまたは複数の処理デバイス(たとえば、プロセッサ352)によって実行されると、上記の方法などの1つまたは複数の方法を行う。命令は、1つまたは複数のコンピュータ可読媒体または機械可読媒体(たとえば、メモリ364、拡張メモリ374、またはプロセッサ352のメモリ)などの1つまたは複数の記憶デバイスによっても記憶することができる。いくつかの実装形態で、命令は、たとえばトランシーバ368または外部インタフェース362を介して、伝播された信号で受信することができる。
【００４７】
携帯型コンピューティングデバイス350は、デジタル信号処理回路を必要に応じて含み得る通信インタフェース366を通じてワイヤレスに通信し得る。通信インタフェース366は、他のモードまたはプロトコルの中で、GSM(登録商標)ボイスコール(グローバルシステムフォーモバイルコミュニケーションズ)、SMS(ショートメッセージサービス)、EMS(拡張メッセージングサービス)、またはMMSメッセージング(マルチメディアメッセージングサービス)、CDMA(符号分割多元接続)、TDMA(時分割多元接続)、PDC(パーソナルデジタルセルラー)、WCDMA(登録商標)(広帯域符号分割多元接続)、CDMA2000、またはGPRS(汎用パケット無線サービス)などの様々なモードまたはプロトコル下の通信を提供し得る。そのような通信は、たとえば、トランシーバ368を通じて、無線周波数を用いて行い得る。さらに、短距離通信は、ブルートゥース(登録商標)、WiFi、または他のそのようなトランシーバ(図示せず)を用いるなどして行い得る。さらに、GPS(全地球測位システム)受信機モジュール370は、携帯型コンピューティングデバイス350に、携帯型コンピューティングデバイス350で実行されるアプリケーションによって適宜使用され得るさらなるナビゲーション関連およびロケーション関連のワイヤレスデータを提供し得る。
【００４８】
携帯型コンピューティングデバイス350は、話された情報をユーザから受信し使用可能なデジタル情報に変換し得るオーディオコーデック360を用いて、可聴通信もし得る。オーディオコーデック360は、同様に、たとえば携帯型コンピューティングデバイス350のハンドセットにおけるスピーカを通じるなどして、ユーザに対して可聴音を生成し得る。そのような音は、音声電話コールからの音を含んでもよく、記録された音(たとえば、ボイスメッセージ、音楽ファイルなど)を含んでもよく、また携帯型コンピューティングデバイス350で作動するアプリケーションによって生成された音を含んでもよい。
【００４９】
携帯型コンピューティングデバイス350は、図に示すように、いくつもの異なる形式で実施され得る。たとえば、携帯電話380として実施され得る。また、スマートフォン382、携帯情報端末、または他の同様の携帯デバイスの一部としても実施され得る。
【００５０】
本明細書で記載するシステムおよび技術の様々な実装形態は、デジタル電子回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組合せで実現することができる。これらの様々な実装形態は、記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスとの間でデータおよび命令を送受信するように結合される、専用または汎用であり得る、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な1つまたは複数のコンピュータプログラムにおける実装形態を含むことができる。
【００５１】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)は、プログラマブルプロセッサのための機械命令を含み、高水準手続き型および/またはオブジェクト指向プログラミング言語で、ならびに/またはアセンブリ/機械言語で実施することができる。本明細書内で用いられるように、機械可読媒体およびコンピュータ可読媒体という用語は、機械命令を機械可読信号として受信する機械可読媒体を含む、プログラマブルプロセッサへ機械命令および/またはデータを提供するのに用いられる任意のコンピュータプログラム製品、装置、および/またはデバイス(たとえば、磁気ディスク、光学ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。機械可読信号という用語は、プログラマブルプロセッサに、機械命令および/またはデータを提供するのに用いられる任意の信号を指す。
【００５２】
ユーザとやり取りするために、本明細書で記載されるシステムおよび技術は、ユーザに情報を表示するディスプレイデバイス(たとえば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ)およびユーザがコンピュータに入力することができるキーボードおよびポインティングデバイス(たとえば、マウスまたはトラックボール)を有するコンピュータ上で実施することができる。他の種類のデバイスも同様に、ユーザとやり取りするのに用いることができ、たとえば、ユーザに提供されるフィードバックは、任意の形式の感覚フィードバック(たとえば、視覚的フィードバック、聴覚的フィードバック、または触覚的フィードバック)であることができ、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む任意の形式で受信することができる。
【００５３】
本明細書で記載されるシステムおよび技術は、バックエンドコンポーネント(たとえばデータサーバとして)を含むコンピューティングシステム、または、ミドルウェアコンポーネント(たとえば、アプリケーションサーバ)を含むコンピューティングシステム、または、フロントエンドコンポーネント(たとえば、ユーザが本明細書で記載するシステムおよび技術の実装とやり取りすることができるグラフィカルユーザインタフェースまたはウェブブラウザを有するクライアントコンピュータ)を含むコンピューティングシステム、またはそのようなバックエンドコンポーネント、ミドルウェアコンポーネント、またはフロントエンドコンポーネントの任意の組合せを含むコンピューティングシステムで実施することができる。システムの構成要素は、任意の形式のまたは媒体のデジタルデータ通信(たとえば、通信ネットワーク)によって、相互接続することができる。通信ネットワークの例として、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、およびインターネットを含む。
【００５４】
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは、一般に、互いから遠く離れており、通常、通信ネットワークを通じて、やり取りを行う。クライアントとサーバの関係は、それぞれのコンピュータ上で作動し互いにクライアントサーバ関係を有するコンピュータプログラムによって生じる。
【００５５】
以上、いくつかの実装形態を、詳細に記載したが、他の修正も可能である。たとえば、クライアントアプリケーションは、デリゲート(delegate)にアクセスするものとして記載されるが、他の実装形態で、デリゲートは、1つまたは複数のサーバ上で実行するアプリケーションなどの、1つまたは複数のプロセッサによって実施される他のアプリケーションによって採用され得る。さらに、図で示された論理のフローは、所望の結果を得るのに、特定の示された順番、または順序を必要としない。さらに、他のアクションが提供されてもよく、または、アクションが、記述されたフローから削除されてもよく、他の構成要素が、記述されたシステムに追加されてもよく、または取り除かれてもよい。したがって、他の実装形態は、以下の特許請求の範囲の範囲内にある。
【符号の説明】
【００５６】
100  システム
102  ユーザ
104  発言
106  コンピューティングデバイス
108  コンピューティングデバイス
110  コンピューティングデバイス
114  マイク
116  マイク
118  マイク
120  ホットワーダ
122  ホットワーダ
124  ホットワーダ
126  ラウドネススコアラ
128  ラウドネススコアラ
130  ラウドネススコアラ
132  遅延計算モジュール
134  遅延計算モジュール
136  遅延計算モジュール
138  スピーカ
138  デバイス状況
140  スピーカ
140  デバイス状況
142  スピーカ
142  デバイス状況
200  プロセス
【図１】
0006261751.tif 000002
【図２】
0006261751.tif 000003
【図３】
0006261751.tif 000004