(57)【要約】【課題】  【解決手段】  コンピュータと交信するための方法及びシステムを提供する。１つの実施形態において、前記コンピュータと通信装置との間の通信接続が確立される。所望の機能を決定するために、前記ユーザーからの音声信号を受信し、処理する。前記所望の機能が音声応答を要求するものかどうかを決定し、要求されていれば、前記遠隔通信装置を経由して前記ユーザーへの音声応答が提供され、前記所望の機能が果たされる。代替実施形態において、データファイルへのエントリが読み取られ、前記エントリに応答して前記コンピュータと遠隔通信装置との間で通信接続が開始される。前記エントリに従って音声通知が生成され、前記遠隔通信装置を経由して送信される。
2006501788.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータと交信するための方法であって、
前記コンピュータと遠隔通信装置との間の通信接続を確立する工程と、
ユーザーからのリクエストの形式で音声信号を受信する工程と、
前記音声信号を処理して所望の機能を決定する、前記音声信号を処理する工程と、
前記所望の機能が音声応答を要求しているかどうかを決定し、要求していれば、前記遠隔通信装置を経由して前記ユーザーへ音声応答を提供し、前記音声信号に応答する前記所望の機能を実行する工程と
を有する方法。
【請求項２】
請求項１の方法において、前記確立する工程は、前記コンピュータによって開始されるものである。
【請求項３】
請求項１の方法において、前記確立する工程は、前記遠隔通信装置を経由してユーザーによって開始されるものである。
【請求項４】
請求項１の方法において、前記確立する工程は、電話通信回線を確立する工程を有するものである。
【請求項５】
請求項４の方法において、前記電話通信回線は、携帯電話ネットワークを経由するものである。
【請求項６】
請求項１の方法において、前記確立する工程は、ボイス・オーバー・インターネット・プロトコル（ＶｏＩＰ）接続を確立する工程を有するものである。
【請求項７】
請求項６の方法において、前記ボイス・オーバー・インターネット・プロトコル接続を確立する工程はさらに、電話通信回線を確立する工程を有するものである。
【請求項８】
請求項７の方法において、前記確立する工程は、複数のテレコミュニケーション・ネットワークを経由するものである。
【請求項９】
請求項７の方法において、前記ボイス・オーバー・インターネット・プロトコル接続は、セッション・イニシエーション・プロトコル電話を経由するものである。
【請求項１０】
請求項１の方法において、前記確立する工程は、前記コンピュータとの直接ワイヤレス通信回路を確立する工程を有するものである。
【請求項１１】
請求項１０の方法において、前記直接ワイヤレス通信回路は、コードレス電話を経由するものである。
【請求項１２】
請求項１の方法において、この方法は、さらに、
前記遠隔通信装置を経由してユーザーに音声プロンプトを提供する工程を有するものである。
【請求項１３】
請求項１２の方法において、音声プロンプトを提供する工程は、出力文法を選択する工程と、前記出力文法を音声出力に変換する工程と、前記音声出力を前記遠隔通信装置を経由して前記ユーザーに送信する工程とを有するものである。
【請求項１４】
請求項１の方法において、前記音声信号は音声発話である。
【請求項１５】
請求項１４の方法において、前記処理する工程は、前記音声発話を複数の可能な音声発話の文法と比較する工程と、前記ユーザーによって話された文法がどれかを決定する工程と、所望の機能を決定する工程とを有し、前記所望の機能が前記文法に対応するものである。
【請求項１６】
請求項１５の方法において、複数の可能な音声発話の文法は、コンピュータ・ファイルに格納されるものである。
【請求項１７】
請求項１６の方法において、前記コンピュータ・ファイルはスプレッドシートである。
【請求項１８】
請求項１７の方法において、この方法は、さらに
前記可能な音声発話の文法を前記スプレッドシートの第１のセルから選択する工程と、前記所望の機能を前記スプレッドシートの第２のセルから決定する工程とを有するものである。
【請求項１９】
請求項１８の方法において、前記第１のセルは前記スプレッドシートの１行目にあり、前記第２のセルは前記スプレッドシートの２行目にあるものである。
【請求項２０】
請求項１８の方法において、前記第１のセルは前記スプレッドシートの１列目にあり、前記第２のセルは前記スプレッドシートの２列目にあるものである。
【請求項２１】
請求項１６の方法において、前記コンピュータ・ファイルはデータベースである。
【請求項２２】
請求項１６の方法において、前記コンピュータ・ファイルはスケジューリング・プログラムと関連するファイルである。
【請求項２３】
請求項１の方法において、前記音声信号に応答して前記所望の機能を実行する工程は前記音声信号に従ってデータを検索する工程を有し、前記音声応答を提供する工程は前記データを音声フォーマットに変換し、前記音声フォーマットを前記通信接続を経由して送信する工程とを有する。
【請求項２４】
請求項１の方法において、前記音声信号に応答して前記所望の機能を実行する工程は、前記音声信号に従って格納データを修正する工程を有するものである。
【請求項２５】
請求項２４の方法において、この方法は、さらに、
前記ユーザーから新規データを受信し、前記新規データをファイルに記録する工程を有するものである。
【請求項２６】
請求項２５の方法において、前記ファイルはデータベースである。
【請求項２７】
請求項２５の方法において、前記ファイルはスプレッドシートである。
【請求項２８】
請求項２５の方法において、前記ファイルはスケジューリング・ファイルである。
【請求項２９】
パーソナル・コンピュータをユーザーと交信できるようにするための方法であって、
データファイルにあるエントリを読み取る工程と、
前記エントリに応答して、前記コンピュータと遠隔通信装置との間の通信接続を開始する工程と、
前記エントリに従って音声通知を生成する工程と、
前記遠隔通信装置を経由して前記音声通知を送信する工程と
を有する方法。
【請求項３０】
請求項２９の方法において、前記開始する工程は、電話通信回線を確立する工程を有するものである。
【請求項３１】
請求項３０の方法において、前記電話通信回線は、携帯電話ネットワークを経由して行われるものである。
【請求項３２】
請求項２９の方法において、前記開始する工程は、ボイス・オーバー・インターネット・プロトコル接続を確立する工程を有するものである。
【請求項３３】
請求項２９の方法において、前記開始する工程は、前記コンピュータに直接ワイヤレス通信回路を確立する工程を有するものである。
【請求項３４】
請求項３３の方法において、前記開始する工程はさらに、ボイス・オーバー・インターネット・プロトコル接続を確立する工程を有するものである。
【請求項３５】
請求項２９の方法において、前記読み取る工程は、前記データファイルをメモリの中へロードし（読み込み）、前記データファイル内のエントリを認識する工程を有し、前記エントリは前記ユーザーにコンタクトを取る時刻を示すものである。
【請求項３６】
請求項３５の方法において、可能な音声発話の文法は、前記データファイルに格納されるものである。
【請求項３７】
請求項３６の方法において、前記データファイルはスプレッドシートである。
【請求項３８】
請求項３６の方法において、前記データファイルはデータベースである。
【請求項３９】
請求項３６の方法において、前記データファイルはアラームスクリプトである。
【請求項４０】
請求項３６の方法において、前記データファイルはスケジューリング・プログラムと関連するものである。
【請求項４１】
パーソナル・コンピュータへのアクセスを提供するためのシステムであって、
前記コンピュータと遠隔通信装置との間の通信チャネルを確立する通信コンポーネントと、
音声入力を受信し、この入力をデジタル形式に変換する音声認識コンポーネントと、
テキスト形式データを音声形式に変換するテキスト−音声変換コンポーネントと、
パーソナル・コンピュータに格納データを有するファイルと交信するためのファイル・インターフェース・コンポーネントと、
インターフェース・プログラムであって、このインターフェース・プログラムは、前記通信チャネルを経由して前記入力を受信し、前記音声認識コンポーネントに前記入力を変換させて所望の機能を決定し、コンポーネントに前記所望の機能を実行させるようになっている、前記インターフェース・プログラムと
を有するシステム。
【請求項４２】
請求項４１のシステムにおいて、前記インターフェース・プログラムはさらに、前記所望の機能に従って前記ファイル・インターフェースに前記ファイルと交信させ、前記テキスト−音声変換コンポーネントに前記所望の機能の結果を音声形式で前記遠隔通信装置へ提供させるようになっているものである。
【請求項４３】
請求項４１のシステムにおいて、前記インターフェース・プログラムはさらに、前記ファイル・インターフェースに前記ファイル内のデータを読み取らせ、前記通信コンポーネントに前記データに応じて前記遠隔通信装置と前記通信チャネルを確立させ、前記テキスト−音声変換コンポーネントに前記データに従ってメッセージを生成させ、さらに前記通信コンポーネントに前記メッセージを送信させるようになっているものである。
【請求項４４】
請求項４１のシステムにおいて、前記システムはさらに、音声を生成するための音声生成コンポーネントを有し、前記インターフェース・プログラムはさらに、前記ファイル・インターフェースに前記ファイル内のデータを読み取らせ、前記通信コンポーネントに前記データに応じて前記遠隔通信装置と通信チャネルを確立させ、音声生成コンポーネントに音声を生成させ、さらに前記通信コンポーネントに前記音声を送信させるようになっているものである。
【請求項４５】
請求項４１のシステムにおいて、前記通信チャネルは、前記コンピュータとケーブル相互接続を有する携帯電話、セル方式パーソナル・コンピューティング電話通信装置、コードレス電話、電話ゲートウェー装置、または前記コンピュータとケーブル相互接続を有するコード付電話のうちいずれか１つによって前記コンピュータで確立されるものである。
【請求項４６】
請求項４１のシステムにおいて、前記通信チャネルは、携帯電話、コードレス電話、コード付電話、スピーカフォン、電話ソフトウェアを有する第２のコンピュータ、ボイス・オーバー・インターネット・プロトコル接続を有する第２のコンピュータ、またはインスタント・メッセージング・ソフトウェアを有する第２のコンピュータのうちいずれか１つによって前記遠隔通信装置で確立されるものである。
【請求項４７】
請求項４１のシステムにおいて、前記通信チャネルは、ＰＳＴＮネットワーク、携帯電話ネットワーク、ボイス・オーバー・インターネット・プロトコル・ネットワーク、または無線ネットワークのうちいずれか１つを経由して確立されるものである。
【請求項４８】
請求項４７のシステムにおいて、前記通信チャネルは、複数のネットワークを経由して確立されるものである。
【請求項４９】
請求項４１のシステムにおいて、前記音声入力は、リクエストの形式による音声発話である。
【請求項５０】
請求項４１の方法において、前記音声入力はＤＴＭＦ信号である。
【請求項５１】
請求項４９のシステムにおいて、前記インターフェース・プログラムはさらに、前記所望の機能に従ってコンポーネントを選択し、前記選択されたコンポーネントに前記発話に従って前記所望の機能を実行させるようになっているものである。
【請求項５２】
請求項５１のシステムにおいて、前記所望の機能は、前記格納データを取り出すことができるものである。
【請求項５３】
請求項５１のシステムにおいて、前記所望の機能は、前記格納データを修正することができるものである。
【請求項５４】
請求項５１のシステムにおいて、前記所望の機能は、新規データを前記コンピュータに追加することができるものである。
【請求項５５】
請求項５１のシステムにおいて、前記所望の機能は、新規ファイルを作成することができるものである。
【請求項５６】
請求項５１のシステムにおいて、前記所望の機能は、タスクを実行するができるものである。
【請求項５７】
請求項５１のシステムにおいて、前記選択されたコンポーネントは、音声通信を記録するためのソフトウェア、音声通信を生成するためのソフトウェア、ハードウェア装置を制御するためのソフトウェア、またはソフトウェア活動を制御するためのソフトウェアのうちいずれか１つである。
【請求項５８】
請求項４９のシステムにおいて、前記音声認識コンポーネントは、音声認識モジュールである。
【請求項５９】
請求項４９のシステムにおいて、前記音声認識コンポーネントは、ＤＴＭＦデコーダである。
【請求項６０】
請求項４１のシステムにおいて、前記音声認識コンポーネント、テキスト−音声変換コンポーネント、及びファイル・インターフェース・コンポーネントは、アプリケーション・プログラム・インターフェースである。
【請求項６１】
請求項４１のシステムにおいて、前記音声認識コンポーネント、テキスト−音声変換コンポーネント、及びファイル・インターフェース・コンポーネントは、ソフトウェア・アプリケーションである。
【請求項６２】
請求項４１のシステムにおいて、前記ファイルは、スプレッドシート、電子メール・サーバー、電子メール・クライアント、データベース、モニタ、センサ、ワードプロセッシング・ファイル、またはエンタープライズ・アプリケーション・データのうちの１つである。
【請求項６３】
請求項６２のシステムにおいて、前記ファイルは複数のファイルを有するものである。
【請求項６４】
請求項４１のシステムにおいて、前記ファイル・インターフェース・コンポーネントは、インターネット・データとのリンクを有するスプレッドシートとインターフェース接続するものである。
【請求項６５】
請求項４１のシステムにおいて、前記ファイル・インターフェース・コンポーネントは、インターネット・データとのリンクを有するデータベースとインターフェース接続するものである。
【請求項６６】
請求項４１のシステムにおいて、前記ファイル・インターフェース・コンポーネントは、インターネット・データとのリンクを有するワードプロセッシング・ファイルとインターフェース接続するものである。
【請求項６７】
請求項４１のシステムにおいて、前記ファイル・インターフェース・コンポーネントは、インターネット・データとのリンクを有するスケジューリング・ファイルとインターフェース接続するものである。
【請求項６８】
請求項４１のシステムにおいて、前記インターフェース・プログラムはさらに、前記通信チャネルを確立し、前記テキスト−音声変換コンポーネントに音声警告を前記遠隔通信装置へ生成させるようになっているものである。
【請求項６９】
請求項６８のシステムにおいて、前記インターフェース・プログラムは、前記格納データに応答して通信チャネルを確立するものである。
【請求項７０】
請求項６９の方法において、前記格納データはアラームに対応するものである。
【請求項７１】
コンピュータと交信するための、コンピュータ実行可能な命令を有するコンピュータ可読媒体であって、
前記コンピュータと遠隔通信装置との間の通信接続を確立する工程と、
ユーザーからのリクエストの形式で音声信号を受信する工程と、
前記音声信号を処理して所望の機能を決定する、前記音声信号を処理する工程と、
前記所望の機能が音声応答を要求しているかどうかを決定し、要求していれば、前記遠隔通信装置を経由して前記ユーザーへ音声応答を提供し、前記音声信号に応答する前記所望の機能を実行する工程と
を有する方法。
【請求項７２】
請求項７１のコンピュータ可読媒体において、前記確立する工程は、前記コンピュータによって開始されるものである。
【請求項７３】
請求項７１のコンピュータ可読媒体において、前記確立する工程は、前記遠隔通信装置を経由して前記ユーザーによって開始されるものである。
【請求項７４】
請求項７１のコンピュータ可読媒体において、このコンピュータ可読媒体は、さらに、
前記遠隔通信装置を経由してユーザーに音声プロンプトを提供する工程を有するものである。
【請求項７５】
請求項７４のコンピュータ可読媒体において、前記音声プロンプトを提供する工程は、出力文法を選択する工程と、前記出力文法を音声出力に変換する工程と、前記音声出力を前記遠隔通信装置を経由して前記ユーザーに送信する工程とを有するものである。
【請求項７６】
請求項７１のコンピュータ可読媒体において、前記音声信号は音声発話である。
【請求項７７】
請求項７６のコンピュータ可読媒体において、前記処理する工程は、前記音声発話を複数の可能な音声発話の文法と比較する工程と、前記ユーザーによって話された文法がどれかを決定する工程と、所望の機能を決定する工程とを有し、前記所望の機能は前記文法に対応するものである。
【請求項７８】
請求項７７のコンピュータ可読媒体において、前記複数の可能な音声発話の文法は、コンピュータ・ファイルに格納されるものである。
【請求項７９】
請求項７８のコンピュータ可読媒体において、前記コンピュータ・ファイルはスプレッド・シートである。
【請求項８０】
請求項７９のコンピュータ可読媒体において、このコンピュータ可読媒体は、さらに、
前記可能な音声発話の文法を前記スプレッドシートの第１のセルから選択する工程と、前記所望の機能を前記スプレッドシートの第２のセルから決定する工程とを有するものである。
【請求項８１】
請求項８０のコンピュータ可読媒体において、前記第１のセルは前記スプレッドシートの１行目にあり、前記第２のセルは前記スプレッドシートの２行目にあるものである。
【請求項８２】
請求項８０のコンピュータ可読媒体において、前記第１のセルは前記スプレッドシートの１列目にあり、前記第２のセルは前記スプレッドシートの２列目にあるものである。
【請求項８３】
請求項７６のコンピュータ可読媒体において、前記音声発話に応答して前記所望の機能を実行する工程は前記音声発話に従ってデータを検索する工程を有し、前記音声応答を提供する工程は前記データを音声フォーマットに変換し、前記音声フォーマットを前記通信接続を経由して送信する工程を有するものである。
【請求項８４】
パーソナル・コンピュータがユーザーと通信できるようにするための、コンピュータ実行可能な命令を有するコンピュータ可読媒体であって、
データファイルにあるエントリを読み取る工程と、
前記エントリに応答して前記コンピュータと遠隔通信装置との間の通信接続を開始する工程と、
前記エントリに従って音声通知を生成する工程と、
前記遠隔通信装置を経由して前記音声通知を送信する工程と
を有するコンピュータ可読媒体。
【請求項８５】
請求項８４のコンピュータ可読媒体において、前記開始する工程は、電話通信回線を確立する工程を有するものである。
【請求項８６】
請求項８４のコンピュータ可読媒体において、前記読み取る工程は、前記データファイルをメモリの中へロードし（読み込み）、前記データファイル内のエントリを認識する工程を有し、前記エントリは前記ユーザーにコンタクトを取る時刻を示すものである。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本出願は、「コンピュータとのワイヤレス音声通信用システム及び方法（Ａ  Ｓｙｓｔｅｍ  ａｎｄ  Ｍｅｔｈｏｄ  ｆｏｒＷｉｒｅｌｅｓｓ  Ａｕｄｉｏ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  ｗｉｔｈ  ａ  ｃｏｍｐｕｔｅｒ）」と題する２００２年１０月１日に申請済みの米国特許出願番号第６０／４１５，３１１号、及び同じく「コンピュータとのワイヤレス音声通信用システム及び方法（Ａ  Ｓｙｓｔｅｍ  ａｎｄ  Ｍｅｔｈｏｄ  ｆｏｒＷｉｒｅｌｅｓｓ  Ａｕｄｉｏ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  ｗｉｔｈ  ａ  ｃｏｍｐｕｔｅｒ）」と題する２００３年３月２５日に申請済みの米国特許出願番号第６０／４５７，７３２号に対して優先権を主張するものであり、この開示によりそれらの全体が本明細書に組み込まれるものである。
【０００２】
本発明は、コンピュータ・インターフェースに関する。より具体的には、本発明は、音声通信を経由してコンピュータとインターフェース接続するためのシステム及び方法に関するものである。さらに具体的には、本発明は、音声入力を受信するための音声認識システム及び方法と、コンピュータ・アプリケーションと交信するためのモジュールと、音声出力を送信するための音声合成モジュールとに関するものである。
【背景技術】
【０００３】
一般の人々が、日常生活に影響を与える情報を保存したり利用したりするのにコンピュータを使うことがますます増えている。予約、タスク、連絡などの個人情報、及びスプレッドシート、データベース、ワープロ文書などに収められた企業データといったタイプの情報は、すべて容易に更新、整理、利用できるので、特にコンピュータでの保管に適している。また、コンピュータは、インターネットまたは別のネットワークを介し、リアルタイム若しくはほぼリアルタイムで、株価や天気予報など時間に依存する情報を離れた処から利用することができる。コンピュータに要求される全てのタスクを実行するために、コンピュータはかなり洗練され、強力な処理能力を備えるようになってきた。従って、ユーザーが自分のコンピュータを利用できる際には（つまりユーザーが自宅またはオフィスにいる際）、前記ユーザーはそのようなコンピュータの処理能力を容易に利用して所望のタスクを実行することができる。
【０００４】
しかしながら、多くの状況において、ユーザーは旅行中若しくは自分のコンピュータから離れた場所にいるときに、そのような情報を利用することが要求される。残念なことに、コンピュータの完全な処理能力を携帯することは大半において不可能である。例えば、デスクトップ・コンピュータは一定の場所に置かれるように設計されており、従って、携帯利用には適さない。ラップトップ・コンピュータはデスクトップ・コンピュータよりもはるかに優れた可動性と、ほぼ同等の処理能力とを備えているが、高価であり、未だにかなり扱いにくい。また、ワイヤレス・インターネット接続は高価であり、未だに利用可能な範囲が限られており、そのようなラップトップのための携帯電話接続は現在のインターネット標準では遅い。さらに、ユーザーは自宅やオフィスにあるインターネット接続に加えてリモートインターネット接続を持つことになり、それに伴って費用が重なる。
【０００５】
従来から、携帯情報端末（ＰＤＡ）を使ってユーザーの情報を利用することが可能である。そのようなＰＤＡは、クレードルまたはＩＲビームを介してコンピュータと断続的に接続することができ、それにより、前記コンピュータから情報をアップロードまたはダウンロードすることができる。一部のＰＤＡｓではワイヤレス接続により情報を利用することができる、または携帯電話としての役割も果たすことがある。しかし、ＰＤＡには多くの欠点がある。例えば、ＰＤＡｓは高価であり、ユーザーのコンピュータにすでに備わっている処理能力の一部を重複することが多く、場合によっては高価なサービスを購読しなくてはならないこともあり、ベース・ステーションまたはパーソナル・コンピュータとの同期化が必要なことも多い。また、ＰＤＡの使い方の学習や、ＰＤＡの小さな画面及び両手を使うことを要求する入力装置という点において使い勝手が悪く、ユーザーのコンピュータに比べて機能性が限られている。モバイル処理能力の増強につれ、ＰＤＡの費用と複雑性も増す。さらに、従来のＰＤＡは前記ユーザーの情報をそれに格納するため、ＰＤＡの盗難または損失によるデータ損失の危険が伴う。
【０００６】
携帯電話機のサイズ、費用、可動性の向上に伴い、極めて一般的に携帯電話機が使用されるようになった。従来の一部の携帯電話機には、例えば特定の人物に電話をする際に音声コマンドを使って簡単なタスクを実行する、音声起動機能を限してきた。同様に、一部の自動車及び高度な機能を備えた携帯電話機は、音声を認識して簡単なコマンドを受け取ることができる。そのような従来式システムにおいて使用されるソフトウェアは、例えばかけたい人物に電話をかけるといったような所望の機能を実行する既知のコマンド（すなわち音声）を単純に特定する。すなわち、従来式システムは、発話された言葉の意味の決定することなしに音声と所望の機能とを一致させる。同様に、従来から、携帯電話機を経由してユーザーに電子メールのメッセージを音声で伝えるソフトウェア・アプリケーションがある。そのようなアプリケーションにおいて、前記携帯電話機は前記ソフトウェアにコマンドを単に再生し、前記ソフトウェアが前記メッセージをプレイする。
【０００７】
発話を認識できる従来のソフトウェアは、サーバー・ベースであるか、または主にコンピュータと共にいるユーザーのためのものであるかのどちらかである。例えば、電話センターの音声認識システムはサイズが大型で複雑であるため、強力なサーバー上で実行される必要がある。そのようなシステムが大型且つ複雑であるのは、様々なアクセントや発話パターンを持つ話者の発話を認識する能力を必要とするためである。その複雑な性質にも関わらず、通常、そのようなシステムは未だにメニュー方式の応答に限られている。すなわち、典型的な音声認識ソフトウェア・パッケージへ電話をした通話者は、単に所望のリクエストを話して前記システムにリクエストを認識させるのではなく、メニューを成す１若しくはそれ以上の層を経由して所望の機能まで到達しなくてはならない。パーソナル・コンピュータで実行するために設計された従来の発話認識ソフトウェアは、主にディクテーション用であり、そのようなソフトウェアはさらに、ユーザーがコンピュータの前にいる必要や、前記ソフトウェアが定める単純なメニュー項目にユーザーが制約される。従って、従来の発話認識ソフトウェアは、キーボードまたはマウスのような典型的な入力装置の代替若しくは補助としての役割を果たすに過ぎない。
【０００８】
さらに、従来のＰＤＡｓ、携帯電話機、及びラップトップ・コンピュータには、いずれもそれ以外のものの機能を基本的に果たすことができないという欠点がある。高度なワイヤレス装置はＰＤＡと携帯電話機の機能性を兼ね備えているが、非常に高価である。従って、ユーザーはＰＤＡと携帯電話機だけでなく場合によってはラップトップの機能も果たす能力のある１つの高額な装置を購入するか、または携帯電話機とＰＤＡ、及び／またはラップトップを個別に購入するかのどちらかにせざるを得ず、後者になる見込みが高い。
【０００９】
従って、コンピュータと通信するためのポータブルな方法が必要である。より具体的には、コンピュータにより音声で通信して携帯電話機のような安価でポータブルな装置を経由して情報を入手するためのシステム及び方法が必要である。さらに具体的には、コンピュータで作動する複数の演算プログラムを、操作可能な方法で相互接続するシステムおよび方法が必要であり、それにより、リモートコンピュータへコマンドを送信し、そこから情報を受信するための統合システムを提供する。
【発明の開示】
【課題を解決するための手段】
【００１０】
前述の制約と欠点を鑑みて、コンピュータに格納されたデータと交信するための方法およびシステムを提供する。前記方法において、遠隔通信装置を経由してコンピュータとユーザーとの間の通信接続が確立される。ユーザーからの音声発話または音声信号は、前記遠隔通信装置を経由して受信される。前記発話または信号を処理することによって所望の機能が決定され、前記発話に従って、前記コンピュータ上の格納データに対する所望の機能が実行される。
【００１１】
前記システムにおいて、前記コンピュータと遠隔通信装置との間の通信は、通信チャネルによって可能になり、前記チャネルは前記コンピュータまたは前記遠隔通信装置のいずれかによって始動される。音声認識コンポーネントが音声入力を受信し、それをテキスト形式に変換する。テキスト−音声変換コンポーネントがテキスト形式のデータを音声形式に変換し、ファイル・インターフェース・コンポーネントが、前記データの格納されているファイルと交信する。インターフェース・プログラムは、前記通信チャネルを経由して音声入力を受信し、前記音声認識コンポーネントに前記発話を変換させて所望の機能を決定さえ、前記所望の機能に従って前記ファイル・インターフェースに前記ファイルと交信させ、さらに前記テキスト−音声変換コンポーネントに音声形式の結果または確認を前記遠隔通信装置へ提供させ、及び／または前記所望のアクションが実行されるようにする。
【発明を実施するための最良の形態】
【００１２】
音声コマンドを経由して遠隔通信装置をコンピュータに有効に接続するシステム及び方法について説明する。本発明の１つの実施形態において、例えば携帯電話機、ワイヤレス・トランシーバー、マイクロフォン、有線電話等の遠隔通信装置を用い、音声または音声コマンドをユーザーのコンピュータに送信する。別の実施形態において、前記ユーザーのコンピュータは、同じ遠隔通信装置を経由して、前記ユーザーに音声発話または同種のものを始動する。前記ユーザーのコンピュータ上で稼動中のインターフェース・プログラムは、例えば前記ユーザーの音声発話を認識する発話認識ソフトウェア、前記ユーザーと通信するためのテキスト−スピーチ変換ソフトウェア、予約及び／または電子メールソフトウェア、スプレッドシート、データベース、インターネット、またはその他のネットワーク及び／または同種のものと有効に相互接続する。前記インターフェース・プログラムはまた、コンピュータ入出力ポートとインターフェース接続して、例えばアクチュエータ、センサ、ファックス、電話装置、ステレオ、電化製品等の外部電子装置と通信することが可能である。当然のことながら、本発明の実施形態は、そのような方法により、ユーザーがポータブル通信装置を用いてどこからでも自分のコンピュータと通信できるようにする。
【００１３】
例えば、１つの実施形態において、ユーザーは携帯電話機を操作して自分のコンピュータに通話することができる。通信が確立されたあと、前記ユーザーは、前記ソフトウェア・コンポーネントがアクセスするように設定されたどのようなタイプの情報でも要求することができる。別の実施形態において、前記コンピュータはそのような携帯電話機を経由して前記ユーザーに連絡することにより、例えば前記ユーザーに予約等について通知することができる。また、当然のことながら、前記携帯電話機は、あらゆる音声認識を実行する必要がなく、前記ユーザーがアクセスしようとする前記ユーザー情報のいずれも含む必要もない。事実、本発明の１つの実施形態によれば、コンピュータ実行ソフトウェアと共に、従来の市販の携帯電話機等を用いることが可能である。その結果、本発明の実施形態は、ユーザーが様々な通信装置から好きなものを使い、自分のコンピュータの強力な演算能力をどこからでも使えるようにする。
【００１４】
１つの実施形態によるそのようなコンピュータの一例を、図１と共に以下に示す。同様に、コンピュータ及び１若しくはそれ以上の遠隔通信装置のデバイス・コンフィギュレーションの例を、図２Ａ〜Ｃと共に以下に示す。上述のように、本発明の実施形態を実施する目的のために、インターフェース・プログラムによって、ソフトウェア及び／またはハードウェアが操作可能な方法で相互接続されるが、そのようなプログラムとソフトウェアのコンフィギュレーション例については、図３と共に以下で説明する。ユーザー始動のトランザクションの方法例を、図４Ａ〜Ｃと共に以下に示す。コンピュータ始動のトランザクションの方法例を、図５と共に以下に示す。図６Ａ〜Ｆは、本発明の１つの実施形態による、ソフトウェア及び／またはハードウェア・コンポーネント及びプログラムのコンフィギュレーション例を示す。最後に、図７Ａ〜Ｂは、１つの実施形態によるスプレッドシートのコンフィギュレーション例を示す。以下の説明において、そのようなソフトウェア及び／またはハードウェア・コンポーネント及び通信装置の導入に関する詳細、及び相互操作性の技術的な特徴は、当業者には既知のものと理解されるため、本明細書においては除外する。
【００１５】
次に図１を参照すると、本発明の特徴を実施することが可能なコンピュータ実施例１００が示されている。コンピュータ１００は、本明細書に記述の方法を実行する能力のあるコンピュータであれば、汎用でも特殊演算装置でもよい。１つの実施形態において、コンピュータ１００はＣＰＵ筐体１０２と、キーボード１０４と、ディスプレー装置１０６と、マウス１０８とを有する。当然のことながら、本発明の実施形態との一貫性を維持したまま、コンピュータ１００のコンフィギュレーションを設定するいくつもの方法が可能である。例えば、コンピュータ１００は、ラップトップ・コンピュータの場合のように、統合されたディスプレー装置１０６とＣＰＵ筐体１０２とを有することができる。別の実施形態において、コンピュータ１００は、キーボード１０４及び／またはマウス１０８の代わりに、若しくはそれと共に、ユーザー入力を受け入れる代替手段を有することができる。１つの実施形態において、前記インターフェース・プログラムまたはソフトウェア・コンポーネントなどのようなプログラム１３０が、前記ディスプレー装置１０６に表示される。そのようなインターフェース・プログラム及びソフトウェア・コンポーネントについて、図３及び６と共に以下で説明する。
【００１６】
また、１つの実施形態においてコンピュータ１００は、例えばインターネットやイントラネットのようなネットワーク１２０と操作可能な方法で接続される。コンピュータ１００はさらに、データ処理のためのプロセッサ１１２、データ格納のためのメモリ１１０、前記ネットワーク１２０と通信するための入出力（Ｉ／Ｏ）１１４、及び／または電話線などのようなもう１つの通信媒体を有する。当然のことながら、コンピュータ１００のプロセッサ１１２は、単一のプロセッサでも相互接続された複数のプロセッサでもよい。メモリ１１０は、例えば、ＲＡＭ、ＲＯＭ、ハードドライブ、ＣＤ−ＲＯＭ、ＵＳＢ格納デバイスなどでも、あるいはそのようなメモリのタイプの組み合わせでもよい。加えて、メモリ１１０は、コンピュータ１００の内部または外部に取り付けることができる。入出力１１４は、ユーザーまたは外部装置がコンピュータ１００に通信するのを可能とするものであれば、どのようなハードウェア及び／またはソフトウェア・コンポーネントでもよい。入出力１１４は、内部及び／または外部に取り付けられる複数の装置でよい。
【００１７】
次に図２Ａ〜Ｃは、本発明の特徴を実施することが可能なコンピュータ・コンフィギュレーションの例を示す。図２Ａは、筐体１０２と、キーボード１０４と、ディスプレー装置１０６と、マウス１０８とを有する、図１と共に上述したようなコンピュータ１００を示す。加えて、マイクロフォン２０２及びスピーカ２０３が、操作可能な方法でコンピュータ１００に接続される。当然のことながら、音波を受信してコンピュータ１００による解釈が可能な電気的信号に変換するために、マイクロフォン２０２に適応可能である。スピーカ２０３は、コンピュータ１００からの電気的信号を音波に変換するという、逆の機能を果たす。当然のことながら、ユーザーはコンピュータ１００に対するコマンドまたはリクエストを発するためにマイクロフォン２０２に向かって話すことができ、コンピュータ１００はスピーカ２０３を通して応答することができる。逆にコンピュータ１００は、スピーカ２０３を通して発話するか音を出すことにより、あるいはディスプレー装置１０６などにメッセージを表示することにより、ユーザーとの「会話」を始めることができる。図２Ａが示すように、キーボード１０４、マウス１０８、マイクロフォン２０２、及び／またはスピーカ２０３のいずれかに加え、若しくはその代わりに、カリフォルニア州サニーヴェイル（Ｓｕｎｎｙｖａｌｅ）のＡｃｔｉｏｎｔｅｃ  Ｅｌｅｃｔｒｏｎｉｃｓ，Ｉｎｃ．製のＩｎｔｅｒｎｅｔＰｈｏｎｅＷｉｚａｒｄのような、任意のコード付またはコードレスの電話機またはスピーカフォンを、例えば前記コンピュータ１００に接続された電話ゲートウェーを経由してコンピュータ１００に接続することができる。認識されるように、１つの実施形態において、従来のコード付またはコードレスの電話機またはスピーカフォンのような電話機２１０が、マイクロフォン２０２及びスピーカ２０３のリモート版としての役割を果たし、それにより、コンピュータ１００とのリモート交信が可能である。コンピュータ１００に接続するために特に設計された電話機２１０の一例として、イリノイ州エルク・グローブ・ビレッジ（Ｅｌｋ  Ｇｌｏｖｅ  Ｖｉｌｌａｇｅ）のＣｌａｒｙｓｉｓ社製のＣｌａｒｉｓｙｓ  ｉ７５０  インターネット電話機が挙げられる。
【００１８】
図２Ｂは、筐体１０２と、キーボード１０４と、ディスプレー装置１０６と、マウス１０８とを有する、図１と共に上述したようなコンピュータ１００を示す。加えて、コンピュータ１００は、操作可能な方法でローカル電話機２０６に接続される。認識されるように、１つの実施形態において、コンピュータ１００は、外部電話の存在を必要とせずに直接に電話線に接続される。コンピュータ１００は、例えば入出力１１４を経由して電話線から信号を受信するように適応可能である（ローカル電話２０６の代わりとなるのであり、図２Ｂには示されていない）。前述の実施形態において入出力１１４は音声モデムまたは同等の装置である。任意のリモート電話機２０４及び／または携帯電話機２０８を、操作可能な方法でローカル電話機２０６または音声モデムに接続することもできる。また別の実施形態において、ローカル電話機２０６は携帯電話機であり、コンピュータ１００との通信は携帯電話ネットワークを介して行われる。
【００１９】
例えば、１つの実施形態において、ユーザーは、リモート電話機２０４または携帯電話機２０８を経由してローカル電話機２０６につながる電話番号をかけることができる。前述の実施形態において、コンピュータ１００は、設定済みの信号などを検出するためにすべての着信通話をモニタし、そのような信号を検出すると、前記通話からのそのような情報を前記インターフェース・プログラムまたはその他のソフトウェア・コンポーネントに転送する。前述の方法において、前記通話と接続するとコンピュータ１００は、前記ユーザーからの音声コマンドまたはリクエストを受信し、応答を発することができる。逆に、前記コンピュータ１００は、ユーザーのリモート電話機２０４または携帯電話機２０８へ通話することによって会話を始めることができる。当然のことながら、コンピュータ１００は電話ダイヤル機能を有することができるか、若しくはローカル電話機２０６があればそれを使って同じ機能を実行することが可能である。
【００２０】
当然のことながら、電話機２０４〜２０８は、距離を隔てて音を再生する器具であればよく、前記において、音は（アナログまたはデジタル形式のいずれかの）電気インパルスに変換され、有線方法または例えばセル方式ネットワークのような無線（ワイヤレス）方法のいずれかによって送信される。当然のことながら、１つの実施形態において、コンピュータ１００にリモート・アクセスする電話機を使用することにより、前記ユーザーにとって比較的低コスト且つ容易に利用可能な送受話器が確保される。加えて、あらゆるタイプまたは数の周辺機器を電話機と接続して採用することが可能であり、そのようなタイプの周辺機器はいずれも、本発明の実施形態に等しく一致する。加えて、電話機２０４〜２０８のような電話機若しくはコンピュータ１００で、どのようなタイプのフィルタリングまたは雑音消去を実行するハードウェアまたはソフトウェアを使うことも可能であるため、そのような電話機２０４〜２０８から受信する信号の強度及び／または明瞭度を増すことができる。
【００２１】
ローカル電話２０６として、例えば、家屋内の環境に置かれたまま前記コンピュータ１００から離れた場所で使用するコード付きまたはコードレス電話機が可能である。代替実施形態として、例えばオフィス環境において、複数の電話線及び／または長距離コードレス電話機を本発明と接続して使用することができる。当然のことながら、本明細書において、単独のユーザーが単独の電話機２０４〜２０８を操作する状況の中で本発明の実施形態を説明しているが、ユーザー及び電話機２０４〜２０８の数はいくつでもよく、そのような数がいくつであっても本発明の実施形態と一致する。上述したように、ローカル電話機２０６は携帯電話機でも、携帯電話ネットワークを介する通信機能を持つ他の装置でもよい。
【００２２】
電話機２０４〜２０８に加え、または前記代わりとして、ポケベルや押しボタン式無線機（ｐｕｓｈ−ｔｏ−ｔａｌｋ  ｒａｄｉｏｓ）のような装置をコンピュータ１００に接続することができる。当然のことながら、前記ユーザーの情報のすべて若しくは大半が、コンピュータ１００に格納される。従って、例えば電話機２０４〜２０８のような遠隔通信装置を紛失しても、前記ユーザーはデータを一切損失することなく、迅速且つ安価に前記装置を交換することができる。
【００２３】
図２Ｃも、筐体１０２と、キーボード１０４と、ディスプレー装置１０６と、マウス１０８とを有する、図１と共に上述したようなコンピュータ１００を示す。図２Ｂと共に先に例示した実施形態と異なり、コンピュータ１００は、ネットワーク１２０を経由して操作可能な方法でリモート電話機２０４及び／または携帯電話機２０８と接続されている。当然のことながら、コンピュータ１００は、例えばダイアルアップ・モデム、ＤＳＬ、ケーブル・モデム、衛星接続、Ｔ１接続などを経由してネットワーク１２０と操作可能な方法で接続することができる。例えば、ユーザーは、前記コンピュータ１００に提供された「ウェブ電話」番号か従来の電話番号のような電話番号のうちいずれかに通話して、ネットワーク１２０を経由してコンピュータ１００に接続することができる。同様に、コンピュータ１００は、ネットワーク１２０を経由してリモート電話機２０４及び／または携帯電話機２０８に接続することができる。当然のことながら、前述の実施形態において、コンピュータ１００はネットワーク１２０にアクセスするために電話ダイヤル機能を搭載しているか、若しくは操作可能な方法で電話ダイヤル機能と通信している。そのような機能を、ハードウェアまたはソフトウェア・コンポーネント若しくはそれらの組み合わせによって提供することができるが、それについては図４Ｂと共に以下により詳細に説明する。
【００２４】
そのような電話通信のコンフィギュレーション方法の例として、ボイス・オーバー・インターネット・プロトコル（ＶｏＩＰ）接続が挙げられる。前述の実施形態において、リモート電話は前記コンピュータ１００に直接にダイヤルすることができ、ネットワーク１２０の特徴を使って前記インターフェース・プログラムに接続することができる。そのようなインターフェース・プログラムについて、図３及び６Ａ〜Ｆと共に、以下により詳細に説明する。当然のことながら、代替実施形態において、コンピュータ１００と通信するために、セッション・イニシエーション・プロトコル（ＳＩＰ）電話機２０４〜２０８か、若しくはインスタント・メッセージング技術のようなものを使うことが可能である。
【００２５】
従って、本発明の特徴を実施することが可能なユーザー１００のコンフィギュレーションの例をいくつか示す。当然のことながら、ユーザーをコンピュータ１００に操作可能な方法で接続することにより、前記ユーザーが前記コンピュータ１００と音声で通信することができるようにするあらゆる方法は、本発明の実施形態と等しく一致する。
【００２６】
従って、コンピュータ１００とリモート通信するあらゆる手段は、本発明の実施形態と等しく一致する、と更に理解されたい。そのようなコンピュータ１００が効果的にそのような遠隔通信装置と通信するには、採用される通信媒体のタイプにより、追加的な設備が必要なことがある。例えば、一般に発話認識エンジンへの入力は、マイクロフォンのような標準的入力から受信される。同様に、テキスト−スピーチ変換エンジンからの出力は、スピーカのような標準的出力装置に送られる。同様に、携帯電話機のような通信装置は、（ヘッドセット）マイクロフォンからの入力を受信し、スピーカに出力送信する機能を持つことが可能である。従って、本発明の実施形態は、前記発話エンジンと、前記コンピュータに直接に接続された通信装置（例えば、図２Ｂが示す電話機２０６）との間の接続を提供することにより、一般にスピーカに送られる前記装置からの出力を、（一般にマイクロフォンから送られる）前記発話エンジンの入力に転送する。同様に、装置テキスト−スピーチ変換エンジン（これも通常はスピーカに送られる）からの出力を前記装置の入力へつなげ、それにより前記装置が、離れた場所にいる通話者へ前記音声出力を転送するようにする接続が必要である。
【００２７】
基本的実施形態において、そのような転送は、（図２Ｂのように）パッチ・コードを用いて前記コンピュータに外付けされた電話機２０６との間で行われる。ただし、一部の実施形態では、前記信号は転送だけでなく調整も必要とする。例えば、前記音声信号がアナログの場合、１つの実施形態は、可変抵抗器や音量調節などによるインピーダンス整合を必要とする。前記音声信号がデジタルの場合、前記フォーマット（例えばサンプルレート、サンプルビット（ブロックサイズ）、チャネル数）の調整が必要である。
【００２８】
そのような信号転送と調整の別の実施形態には、前記コンピュータ１００で前記インターフェースと共に作動する「ソフトフォン」ソフトウェアが関係する。そのようなソフトウェアは、セッション・イニシエーション・プロトコル（ＳＩＰ）標準または例えばＨ．３２３の様なその他のプロトコルを用いたコンピュータ１００でのＶｏＩＰ電話通信による通話の送受信を促進する。そのようなソフトウェアの一例として、カナダのブリティッシュコロンビア州バーナビー（Ｂｕｒｎａｂｙ）にあるＸｔｅｎ  Ｎｅｔｗｏｒｋｓ，Ｉｎｃ．製のＸ−ＰＲＯが挙げられる。通常、ソフトフォン・ソフトウェアは、ローカル・スピーカまたはヘッドセットを経由してユーザーに電話音声を送信し、ローカル・マイクロフォンを経由して電話音声を受信する。コンピュータ１００が利用可能な複数の音声装置を有することもあるため、そのようなソフトフォン・ソフトウェアが使う特別の音声装置を、ユーザー設定として選択可能であることが多い。上述のように、通常、テキスト−スピーチ変換ソフトウェアは、ローカル・スピーカまたはヘッドセットを経由してローカル・ユーザーに音声（出力）を送信し、発話認識ソフトウェアはローカル・マイクロフォンを経由して音声（入力）を受信する。従って、本発明の実施形態によって、前記ソフトフォン・ソフトウェアを前記テキスト−スピーチ変換ソフトウェア及び前記発話認識ソフトウェアに連結する必要がある。そのような連結は様々な方法で達成可能であり、ハードウェアかソフトウェア、若しくはそれらの組み合わせを用いることができる。１つの実施形態において、各アプリケーションにハードウェア音声装置が割当てられた後、適切な出力ポートと入力ポートがパッチ・ケーブルを用いて連結される。そのような配置により、前記ソフトフォンから前記発話認識ソフトウェアへの音声、及び前記テキスト−スピーチ変換ソフトウェアから前記ソフトフォン・ソフトウェアへの音声の流れが可能となる。そのような配置によって、スピーカ出力ポートをマイクロフォン入力ポートへ接続することになり、従って、１つの実施形態において、当然のことながら、パッチ・ケーブルにおけるインピーダンス整合を使って音のひずみが軽減される。
【００２９】
別の実施形態は、アプリケーション間の音声信号を連結する特殊なソフトウェアを使う。そのようなソフトウェアの例として、ソフトウェアで音声ケーブルをすべてエミュレートすることにより、音声信号の送受信をする異なるソフトウェア・プログラムの接続を容易にするＶｉｒｔｕａｌ  Ａｕｄｉｏ  Ｃａｂｌｅ（Ｅｕｇｅｎｅ  Ｖ．Ｍｕｚｙｃｈｅｎｋｏ作のソフトウェア）が挙げられる。前述の実施形態において、一対のＶｉｒｔｕａｌ  Ａｕｄｉｏ  Ｃａｂｌｅを、前記ソフトフォンから前記発話認識ソフトウェアへの音声、及び前記テキスト−スピーチ変換ソフトウェアから前記ソフトフォン・ソフトウェアへの音声の流れが可能となるようにコンフィギュレーションする。更に別の実施形態において、前記ソフトフォン・ソフトウェア、前記テキスト−スピーチ変換ソフトウェア、及び前記発話認識ソフトウェアに変更を加えるか、若しくはそれらを統合することにより、外部音声転送装置に求められるリクエストを完全に取り除く。
【００３０】
図３は本発明の実施形態に従ったソフトウェア及び／またはハードウェアのコンフィギュレーションの例をブロック図で示したものである。当然のことながら、本発明の１つの実施形態において、そのようなソフトウェアは前記コンピュータ１００によって実行される。そのような方法によれば、図２Ａ〜Ｃと共に上述したように例えば電話機２０４〜２１０のような遠隔通信装置でそのようなソフトウェアの実行を試みるのではなく、そのようなコンピュータ１００の演算能力が活用される（明確に示すために図３には示されていない）。
【００３１】
当然のことながら、図３が示す各ソフトウェア及び／またはハードウェア・コンポーネントを、少なくとも別の１つのソフトウェア及び／またはハードウェア・コンポーネントに操作可能な方法で接続する。加えて、当然のことながら、図３が示しているのは本発明の実施形態の１つに過ぎず、ソフトウェア及び／またはハードウェア・コンポーネントのその他のコンフィギュレーションも実施形態と一致する。当然のことながら、図３が示すソフトウェア・コンポーネントとして、スタンドアロン型のプログラムやアプリケーション・プログラム・インターフェース（ＡＰＩ）などが可能である。重要なのは、一部のソフトウェア・コンポーネントがすでにある場合には、それによって大幅な費用削減、複雑さの軽減、ハードディスク容量の節約、効率の向上が行われるという点である。
【００３２】
電話入力３０２は、例えば図２Ａ〜Ｃと共に上述した入力装置を介して、ユーザーが音声発話または音声コマンド（例えばＤＴＭＦ信号）により前記コンピュータ１００と通信することを可能にする何らかのタイプのコンポーネントである。同様に、ユーザーが音として聞くための電気信号を出力するのが電話出力３０４である。当然のことながら、電話入力３０２と電話出力３０４のどちらも、例えば電話またはネットワーク１２０への信号の送受信のようなその他の目的を果たすために適応可能であり、そのような電話またはネットワーク１２０を通した接続を確立するために必要な機能を有するという目的も含めて適応可能である。電話入力３０２及び出力３０４として、前記コンピュータ１００の内部または外部のハードウェア、若しくはソフトフォン・アプリケーション及び付属ネットワーク・インターフェース・カードのようなソフトウェアが可能である。
【００３３】
また、音声認識ソフトウェア３１０も提供され、前記ソフトウェアは、その名からもわかるように、電話入力３０２が受信する信号のような電子信号すなわちユーザーの音声発話を受け入れ、そのような発話を解読するように適応される。例えば音声認識ソフトウェア３１０は、特殊な音声認識ソフトウェアでも市販のものでもよい。そのような認識ソフトウェア３１０には、発話認識を最適化するためのユーザー・トレーニングが含まれている場合がある。加えて、ユーザーと通信するためのテキスト−スピーチ変換エンジン３１５を例証する。１つの実施形態におけるそのようなテキスト−スピーチ変換エンジン３１５は、電子データから音声メッセージを生成し、それを前記ユーザーに送信する。図３が示すように１つの実施形態において、自然言語処理モジュール３２５及び自然言語合成モジュール３３０を提供することにより、音声メッセージを解釈及び構成する。
【００３４】
ユーザー・データ３２０はコンピュータ１００に格納またはアクセス可能なあらゆる種類の情報を有し、前記情報は本発明の実施形態に従って利用可能である。例えば、個人情報データファイル３２２として、あらゆるタイプの情報を含むあらゆるタイプのコンピュータ・ファイルが可能である。例えば、個人情報データベースに格納されるタイプの情報として、電子メール、予約ファイル、個人情報などが挙げられる。加えて、例えばスプレッドシート、データベース、文書ファイル、電子メールデータなども、そのような個人情報データファイル３２２として可能である。さらに、そのようなデータファイル３２２（及び以下のデータファイル３２４）は、ユーザーの裁量により、例えばガレージドアの開放、文書の印刷、ファックスの送信、電子メールの送信、家電品のスイッチ入力及び／または調整、テレビまたはラジオ番組の録音または再生、通信装置及び／またはシステムとのインターフェースなどの仕事を実行することができる。そのような機能を前記データファイル３２２〜３２４に含めること、若しくは、例えば電話入力３０２及び出力３０４、入出力３５０、及び／またはそれに類似のものを経由してそのような機能にそのようなデータファイル３２２〜３２４がアクセスできるようにすることができる。当然のことながら、前記インターフェース・プログラム３００が、前記コンピュータ１００内部の上述のようなコンポーネントを用いてそのようなような仕事を実行することができること、あるいは前記プログラム３００が、電話入力３０２及び出力３０４、入出力３５０、及び／またはそれに類似のものを用いて、前記コンピュータ１００の外部の装置とインターフェース接続できる。
【００３５】
ユーザーに代わりコンピュータ１００がアクセスすることのできるもう１つのファイルは、ネットワークベース・データファイル３２４である。そのようなデータファイル３２４は、前記ユーザーのために最新情報を入手するための、マクロ、ＸＭＬタグ、またはネットワーク１２０にアクセスするその他の機能（例えばインターネット）を含む。そのような情報として、例えば株価、天気予報、ニュースなどが挙げられる。そのようなデータファイル３２４のもう１つの例について、以下、図７Ａ〜Ｂにおいて、インターネット接続可能なスプレッドシートを使って説明する。当然のことながら、本明細書に記載するユーザー・データ３２０という言葉は、前記データファイル３２２及び／または３２４を含むあらゆるタイプのデータファイルを指す。前記インターフェース・プログラム３００が前記ユーザー・データ３２０にアクセスするのを許可するために、データファイル・インターフェース３３５を提供する。当然のことながら、単独のデータファイル・インターフェース３３５、若しくは特定のファイルまたはファイルタイプとのみインターフェース接続可能な複数のインターフェース３３５が可能である。また、１つの実施形態において、前記インターフェース・プログラム３００による時刻及び日付情報の決定を可能にするために、システム・クロック３４０を提供する。加えて、１つの実施形態において、外部装置やコンポーネントとのインターフェース接続のための入出力３５０を提供する。例えば、入出力３５０は、プリンタ・ポート、シリアル・ポート、ＵＳＢポートなどを１若しくはそれ以上有することができる。
【００３６】
インターフェース・プログラム３００は、そのようなハードウェア及びソフトウェア・コンポーネントに、操作可能な方法で接続されている（図中点線で示されている）。以下、そのようなインターフェース・プログラム３００に付随されるユーザー・インターフェースの例について、詳細を図６Ａ〜Ｆと共に説明する。しかし、前記インターフェース・プログラム３００自体は、スタンドアロン型のプログラムか、本発明の実施形態に従ってタスクの実行を調整するソフトウェア・コンポーネントのいずれかである。例えば、前記インターフェース・プログラム３００は、その他のソフトウェア・コンポーネントを制御し、且つ、どのユーザー・データ３２０が開かれていて、どの「文法」（ユーザーが話すと見込まれるフレーズ）が聞き取られるかを制御する。
【００３７】
当然のことながら、前記インターフェース・プログラム３００自体は、前記ユーザーが関心を持つユーザー・データ３２０を含む必要がない。そのような方法において、前記インターフェース・プログラム３００は、そのようなユーザー・データ３２０またはその他のソフトウェア・コンポーネントから独立に変更及び更新が可能な比較的小さくて効率的なプログラムのまま維持される。加えて、そのようなモジュール式コンフィギュレーションは、あらゆるタイプのソフトウェア・コンポーネントを実行中の、あらゆるコンピュータ１００において、前記インターフェース・プログラム３００を使うことを可能にする。その結果、適合性の問題が軽減される。さらに、前記インターフェース・プログラム３００が、パーソナル・コンピュータのようなコンピュータ１００で作動するよう設計されたコンポーネント及びプログラムを使用することにより、高度な音声認識を非サーバー演算環境で実行することが可能になる。従って、前記インターフェース・プログラム３００は、サーバーではなくコンピュータ１００で実行するように設計された、コンピュータ１００のユーザーが使い慣れたプログラムとインターフェース接続する。例えば、そのようなプログラムとして、コンピュータ１００のオペレーティング・システムの一部であるか、若しくは前記にアクセス可能な既存のソフトウェア・アプリケーションが可能である。当然のことながら、そのようなプログラムとしても、スタンドアロン型のアプリケーションやハードウェア・インターフェースなどが可能である。
【００３８】
また、本発明の実施形態がモジュール式であることにより、実質的にあらゆる音声認識ソフトウェア３１０の使用が可能であることも、理解されたい。しかし、人間の発話パターンと訛りが実に様々であることにより、そのような認識ソフトウェア３１０の精度は制約される。従って、１つの実施形態において、そのようなソフトウェア３１０の精度を、前記ソフトウェア３１０が認識する音声素材のコンテクストを制約することによって改善する。例えば、ある特定の対象分野からの言葉を前記ソフトウェア３１０が認識するように制限すれば、前記ソフトウェア３１０が、数多くの無関係な言葉と類似した音声の発話を、前記特定された対象分野に関連する言葉として正しく認識する見込みは高まる。従って、１つの実施形態において、前記インターフェース・プログラム３００がアクセスする前記ユーザー・データ３２０を、そのようなコンテクスト制約を実行する方法によってコンフィギュレーション及び整理する。そのようなコンフィギュレーションは、図３で例示した前記インターフェース・プログラム３００若しくはその他のソフトウェア・コンポーネントに変更を加える必要なく、前記ユーザー・データ３２０自体において実行することができる。
【００３９】
例えば、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｅｘｃｅｌのようなスプレッドシート・アプリケーションは、前記インターフェース・プログラム３００と共に使うのに適した方法でデータの格納及びアクセスをするための手段を提供する。スクリプトファイル、アラームファイル、参照ファイル、コマンドファイル、ソルバーファイルなどはすべて、本発明の実施形態において使用することが可能なスプレッドシート・ファイルのタイプである。本発明の実施形態と共にスプレッドシートを使うことについて、以下、図７Ａと共に詳細に説明する。
【００４０】
スクリプトファイルは、ユーザーとコンピュータ１００の間で交わされる音声ダイアログのためのスプレッドシートである。例えば、１つの実施形態において、スプレッドシートの１若しくはそれ以上の列（または行）は、ユーザーによって発話され得る文法を表し、従って、前記インターフェース・プログラム３００によって認識され、前記スプレッドシートの１若しくはそれ以上の列（または行）は、前記コンピュータ１００の応答を表す。従って、ユーザーが例えば「ハロー」と言えば、前記コンピュータ１００は「ハーイ」あるいは「グッドモーニング」などと言うことができる。それにより、そのようなスクリプトファイルは、よりユーザー・フレンドリーなコンピュータ１００との交信を可能にする。
【００４１】
１つの実施形態において、アラームファイルは、所望の機能に対応するスプレッドシートの１若しくはそれ以上の列（または行）にエントリを有する。例えば、前記スプレッドシートの１つのエントリは、前記ユーザーが例えば薬を飲むとか会議に出席するといったことをする特定の日付及び／または時刻に合わせて設定された「お知らせ」機能に対応することができる。従って、前記インターフェース・プログラム３００は、電話出力３０４のようなコンポーネントとインターフェース接続することにより、前記ユーザーに連絡してそのお知らせを伝える。従って、当然のことながら、設定済みの条件に対するアクションを起こすためにアラームファイルが実行されている必要があるため、一部の実施形態においてアラームファイルが常にアクティブである。
【００４２】
１つの実施形態において、参照ファイルは情報を含むスプレッドシート、若しくは情報を相互参照するスプレッドシートである。１つの実施形態において、前記情報のすべてが前記参照ファイルに含まれており、別の実施形態においては、前記参照ファイルは前記参照ファイルの外にあるデータソースからの情報を参照する。例えば、スプレッドシートは、（例えば「スマートタグ」などを使うことにより）インターネット上で利用可能なデータを参照するセルを含むことができ、前もって設定済みの間隔でそれを「リフレッシュ」することにより、情報を常に確実に更新することができる。従って、ユーザーのために例えば株価、スポーツのスコア、天気などの情報を検索するために参照ファイルを使うことができる。当然のことながら、そのような情報をコンピュータ１００にローカルまたはリモートに格納可能である。
【００４３】
１つの実施形態においてコマンドファイルは、ユーザーに前記コンピュータ１００へのコマンドを入力させ、前記コマンドを実行するために適切なコンポーネントと前記インターフェース・プログラム３００とをインターネット接続させるスプレッドシートである。例えば、前記ユーザーが歌を聴きたいと思ったときに、前記インターフェース・プログラム３００はその歌を奏でるためにミュージック・プログラムとインターフェース接続することができる。１つの実施形態においてソルバーファイルは、コンピュータ１００に音声で尋ねることによって、ユーザーが数学及びその他の分析の問題を解くことを可能にする。
【００４４】
ファイルの各タイプにおいて、そこに含まれるデータは、一連の行及び／または列に整理され、前記データは、前記ユーザーが参照しているデータを決定するために前記音声認識ソフトウェア３１０が認識する必要のある「文法」または文法へのリンクを含む。上述のように、本発明の実施形態で用いたスプレッドシートの例について、以下、図７Ａ〜Ｂと共に説明する。
【００４５】
上述のように、スクリプトファイルとは、所望の情報をユーザーに提供する、または所望のタスクをユーザーが実行するのを前記インターフェース・プログラム３００によって支援することが可能な、スプレッドシート技術の単純なアプリケーションである。当然のことながら、実施形態において使用される具体的な音声認識ソフトウェア３１０によって、そのようなスクリプトの構文はユーザーの音声発話についてそのようなソフトウェアが何を聞き取るかに影響を与える。図７Ａと共に以下に説明するように、本発明の実施形態は臨機応変な文法と、そのような文法をプログラムするためのユーザーにとって使いやすい方法とを提供するので、所望のタスクをコンピュータ１００に行わせるために発話すべき言葉をユーザーが丸暗記する必要はない。
【００４６】
ユーザーが要求したときに、例えば参照ファイルだけを開くように、１つの実施形態のコンフィギュレーションを行った。そのような方法において、前記コンピュータ１００が解読する必要のある可能性がある文法の数を削減することにより、そのような音声認識の速さと信頼性が向上する。加えて、そのようなコンフィギュレーションは、他の活動のためにコンピュータ１００のリソースを解放することにもつながる。そのようなファイルを開こうとするユーザーは、例えば「株価を参照」といった音声コマンドを発話する。するとコンピュータ１００は、データファイル３２２〜３２４若しくはそれと同類のどのデータファイルが前記音声発話に応答するかを決定してそれを開く。次に前記コンピュータは、前記データがアクセス可能になったことを音声の合図によって前記ユーザーに伝える。
【００４７】
代替実施形態において、前記ユーザーは、前記標準スプレッドシート技術を用いた前記スプレッドシートまたはそれと同類のものへの記入を行わない。代わりに、例えば標準テンプレート・ファイルを記入するために、ウィザード、ＡＰＩ、またはそれと同類のものを使うことができる。別の実施形態において、そのようなテンプレートに記入するために、キーボード１０４またはそれと同類のものを使う代わりに、そのような発話認識技術を用いることができる。更に別の実施形態において、前記インターネットプログラム３００は、一連の音声質問によって前記ユーザーを促すことができ、それに対し前記ユーザーは答を発話することができる。そのような方法において、前記コンピュータ１００はより詳細な質問を問うこと、ユーザー・データ３２０を作成または変更することなどができる。さらに、また別の実施形態において、ウィザードは、既存のスプレッドシートまたはインターネットなどからダウンロードしたスプレッドシートを、前記インターフェース・プログラム３００にアクセス可能且つ理解可能なフォーマットに変換する。
【００４８】
従って、図３に示したそのようなコンフィギュレーション例において、本発明の実施形態に従った前記インターフェース・プログラム３００は、ユーザーとの間で情報の送受信をすることが可能である。そのような情報には、（例えばメモリ１１０の中など）コンピュータ１００の中、インターネットなどネットワーク１２０の中、及び／または前記と同類のものの中に含まれ得るユーザー・データ３２０が含まれ得る。従って、そのようなタスクを実行する方法について、図４及び５と共に、以下において説明する。
【００４９】
次に図４Ａ〜Ｃは、本発明の実施形態に従った、ユーザー始動のトランザクションの方法例を示す工程図である。上述の図３と共にアラームスクリプトについて説明したように、１つの実施形態において、前記インターフェース・プログラム３００は電話出力３０４を経由してトランザクションを開始することもできる。以下、そのような状況について、図５と共に以下に説明する。
【００５０】
ステップ４０５において、ユーザーは前記コンピュータ１００と通信を確立する。そのような確立は、例えば、図２Ｂ〜Ｃと共に上述した携帯電話機２０８を経由して前記ユーザーが前記コンピュータ１００に通話することによって可能となる。そのような確立は、例えば、前記ユーザー・データ３２０などへアクセスするためにセキュリティをクリアするといったような中間的な工程を持つこともできると、理解されたい。任意の工程４１０において、前記ユーザーに「音声」のプロンプトが提供される。そのようなプロンプトは、前記コンピュータ１００による音声発話聞き取り準備ができていることを前記ユーザーに示すという簡単なものでよく、若しくはそのようなプロンプトは、日付、時刻などのようなその他の情報を有することもできる。
【００５１】
工程４１５において、例えば前記電話入力３０２などを経由して、ユーザー・リクエストが受信される。工程４２０において、前記ユーザーのリクエストを決定するために、前記リクエストの構文分析及び／または分析が行われる。そのような構文分析及び／または分析は、例えば前記音声認識モジュール３１０及び／または前記自然言語処理モジュール３２５によって行われる。工程４２５において、前記ユーザーのリクエストに対応する所望の機能が決定される。当然のことながら、工程４１０〜４２５を、例えば音声認識ソフトウェア３１０が前記ユーザーのリクエストを認識するために、必要に応じ何度でも繰り返すことができる。そのような繰り返しは、例えば、前記ユーザーが前記コンピュータ１００と通信するために用いる通信チャネルの質が悪いため、あるいは前記ユーザーの話し方が明瞭ではないため、あるいはその他の何らかの理由によって必要となることがある。
【００５２】
工程４２５により、前記ユーザーが要求しているものが、既存の情報またはコンピュータ１００によるアクションであることが決定されたら、前記方法は図４Ｂの工程４３０へ進む。例えば、前記ユーザーは翌日の予約を前記コンピュータ１００に読み取ってもらいたいと思うかもしれない。あるいは、以下に図７Ａ〜Ｂと共に説明するように、前記ユーザーは現在の株価を知りたいかもしれない。前記場合と異なり、工程４２５により、前記ユーザーのリクエストに対応する所望の機能が、データの追加または作成をすることだと決定された場合は、前記方法は図４Ｃの工程４５０へ進む。例えば、前記ユーザーはメッセージの録音や、既存または新規連絡先の新しい電話番号の入力などを望んでいるかもしれない。
【００５３】
従って、図４Ｂを参照すると、工程４３０において、前記リクエストされたユーザー・データ３２０がインターフェース・プログラム３００によって選択され、取得される。図３と共に上述したように、前記インターフェース・プログラム３００によって適切なデータ・ファイル・インターフェース３３５が始動し、前記ユーザー・データ３２０と交信して前記リクエストされた情報へアクセスする。あるいは、例えば入出力３５０を用いて、リクエストされたアクションを実行するように前述のインターフェース３３５を適応することが可能である。工程４３２において、前記インターフェース・プログラム３００は、前記テキスト−スピーチ変換エンジン３１５及び／または前記自然言語合成コンポーネント３３０のいずれかによる、前記ユーザー・データ３２０から取得した情報に基づく音声による答の生成、及び／または所望のアクションを引き起こす。前記リクエストされたデータによって必要とされる場合は、任意の工程４３４において、音声プロンプトを再び前記ユーザーに提供することにより、追加ユーザー・データ３２０のリクエストまたは前記オリジナル・リクエストの明瞭化を更に進める。任意の工程４３６においてユーザーの応答が受信され、任意の工程４３８において前記応答が再び構文分析及び／または分析される。当然のことながら、そのような任意の工程４３４〜４３８は、図４Ａの工程４１０〜４２０と共に上述したように実行される。また、当然のことながら、前記所望する機能が、前記インターフェース・プログラム３００によるアクション（例えば、ガレージドアを開く、ファックスを送信する、文書を印刷するといった措置）であるならば、（例えば前記ユーザーに、前記アクションが滞りなく実行されたことを伝えるための）応答がいずれにせよ生成される場合もあるが、応答が必要ない場合もあるので、前述の工程４３４〜４３８は任意である。工程４４０において、更なるアクションが必要かどうかの決定が行われる。必要であれば、前記方法は工程４３０へ戻り、更なるユーザー・データ３２０を取得する。更なるアクションが不要であれば、工程４４２において前記会話は終了する（例えば前記ユーザーが電話を切る場合）か、待機モードに置かれ更なるユーザー入力を待つ。
【００５４】
当然のことながら、工程４２５の決定の結果、前記ユーザーが具体的なアクションの実行を要求していると決定されることもある。例えば、前記ユーザーが電話をかけようとする場合がある。前述の実施形態において、前記インターフェース・プログラム３００は、電話入力及び出力３０２及び３０４、入出力３５０、及び／または前記と同類の何か（明確に示すために図４Ｂでは示されていない）を経由して、前記ユーザーが支持した電話番号へ通話をするよう、セッション・イニシエーション・プロトコル（ＳＩＰ）に指示を送る。別の実施形態において、前記ユーザーは、例えばＭｉｃｒｏｓｏｆｔ(登録商標)Ｏｕｔｌｏｏｋ（登録商標）若しくはその他の連絡データベースに登録された電話番号への通話をリクエストすることができる。前述の実施形態において、前記ユーザーは前記プログラム３００に、前記連絡データベースに登録された具体的な名前または他のエントリへの通話をするようにリクエストし、前記プログラム３００は前記ＳＩＰソフトフォンに、前記連絡データベースに登録された前記名前または他のエントリに付随する電話番号へダイヤルさせる。本明細書における説明は単独の通話に関連づけているが、通話数または接続通話数は何本でも可能であり、従って会議電話なども可能である。
【００５５】
前述の実施形態において通話をする際、前記プログラム３００は、例えばＳＩＰ電話を利用して会議電話を始動し、それにより、前記ユーザー及び１人若しくはそれ以上の他のユーザーは、全員が同じ電話線で接続されると共に、音声でコマンドを発し、且つ前記プログラムからの情報をリクエストすることが可能である。特定の文法により、情報の提供及び／または具体的な活動を実行するよう前記プログラム３００へ特定のリクエストが提供されるまでは、前記ユーザーらの会話を前記プログラムが静かに「聞く」ようにすることができる。あるいは、別のユーザーへの通話または複数ユーザー間の会議電話を前記プログラムがいったん始動すると、前記プログラム３００は前記ユーザーから「遮断」する。
【００５６】
図４Ａと共に上述したように、前記ユーザーは、データの取得または特定のアクションを単純に要求する代わりに、データを追加または作成したいと思うかもしれない。従って、図４Ｃの工程４５０において、新規データベースまたはスプレッドシートなどの形式、あるいは既存ファイルへの新規エントリとして、ユーザー・データ３２０が、上述の図４Ａと共に受け取られるユーザーの指示に従って選択または作成される。工程４５２において、音声プロンプトが前記ユーザーに提供され、それにより前記ユーザーは前記新規データまたは指示を話すように指示を受ける。工程４５４においてユーザーの応答が受信され、工程４５６において前記応答が構文分析及び／または分析される。工程４５８において、工程４５０で作成または選択されたユーザー・データ３２０に、前記音声データまたはフィールドが追加される。任意のステップ４６０において必要であれば、追加の新規データを要求する音声プロンプトが再び前記ユーザーに提供される。任意の工程４６２においてそのようなデータが前記ユーザーの音声応答という形式で受信され、任意の工程４６４においてそのような応答が再び分析及び／または分析される。工程４６６において、更なるアクションが必要かどうかの決定が行われる。必要であれば、前記方法は工程４５８に戻り、前記音声データまたはフィールドを前記ユーザー・データ３２０に追加する。更なるアクションが不要であれば、工程４６８において前記会話は終了するか、待機モードに置かれて更なるユーザー入力を待つ。当然のことながら、そのようなプロンプト提供及びユーザー発話の受信は、図４Ａ〜Ｂと共に上述したように行われる。
【００５７】
図４Ａ〜Ｃと共に上述した方法と異なり、図５の方法は、本発明の実施形態に従った、コンピュータ１００始動のトランザクションの方法例を示す。それに従い図５を参照すると、工程５００においてユーザー・データ３２０がモニタされる。当然のことながら、例えばアラームファイル、予約データベース、電子メール／スケジューリング・プログラムファイルなどのようなユーザー・データ３２０の複数の例をインターフェース・プログラム３００によってモニタすることができる。工程５０５において、モニタされるユーザー・データ３２０がアクション項目を含んでいるかどうかの決定が行われる。１つの実施形態において、前記インターフェース・プログラム３００を適応し、例えばデータベースへのエントリのレビュー及び現行項目のうち、どれがアクションを必要とするかの決定を実行するためのシステム・クロック３４０を用いる。アクション項目が検知されなければ、前記インターフェース・プログラム３００は引き続き工程５００において前記ユーザー・データ３２０のモニタを実行する。前記ユーザー・データ３２０がアクション項目を含んでいれば、前記インターフェース・プログラム３００は、工程５１０において前記ユーザーとの会話を開始する。そのような開始の実行は、例えば前記インターフェース・プログラム３００がソフトウェア・コンポーネントによる前記ユーザーへの連絡を電話機２０４または携帯電話機２０８を経由して引き起こすことによって可能である。図２Ａ〜Ｃと共に説明した上述のハードウェア・コンフィギュレーションは、いずれもそのような機能を実行することができる。
【００５８】
工程５１５において、音声プロンプトが前記ユーザーに送られる。例えば、前記ユーザーが自分の携帯電話機２０８に応えると、前記インターフェース・プログラム３００が前記テキスト−スピーチ変換エンジン３１５に前記アクション項目に関するメッセージの生成を行わせる。当然のことながら、そのようなときに、例えばセキュリティ確認、設定済み挨拶などのようなその他の非アクション項目関連のメッセージも前記ユーザーへ音声で送られ得る。図４Ａ〜Ｂと共に前述したように、工程５２０においてユーザーの応答が受信され、工程５２５において前記応答が構文分析及び／または分析される。工程５３０において、前記音声発話に基づき、更なるアクションが必要かどうかの決定が行われる。必要であれば、前記方法は工程５１５へ戻る。更なるアクションが必要でなければ、任意の工程５３５において、例えば前記データベース・インターフェース３２０に変更または設定を保存させるとかアラームをセットするといったような前記ユーザーのリクエストを完了するために、ユーザー・データ３２０に対して実行する必要のあるあらゆる調整を前記インターフェース・プログラム３００が実行する。次に前記インターフェース・プログラム３００は工程５００に戻り、前記ユーザー・データ３２０のモニタを続ける。当然のことながら、前記ユーザーは前記コンピュータ１００を遮断することも、他のタスクを実行するために接続を維持することもできる。事実、前記ユーザーは次に、例えば図４と共に上述した前記方法に従って取り扱われる指示を発することができる。
【００５９】
従って、当然のことながら、インターフェース・プログラム３００はコンピュータ１００に格納またはアクセス可能なユーザー・データ３２０に関する連絡をユーザーと送受信する機能を持つ。さらに、当然のことながら、一部の実施形態においてインターフェース・プログラム３００は、前記ユーザーが離れたところからコンピュータ１００にアクセスすることにより、前記ユーザーに見られずに実行する。ただし、前記ユーザーは、インターフェース・プログラム３００が前記ユーザーの設定通りに作動するように、そのようなプログラム３００のコンフィギュレーションまたは変更を実行する必要があるかもしれない。それに従い、図６Ａ〜Ｆは、本発明の実施形態に従ったそのようなインターフェース・プログラム３００のユーザー・インターフェース６００の実施例を示すスクリーンショットである。上述のように、前記技術に精通した者であれば、コンピュータ１００のディスプレー装置に表示するユーザー・インターフェースのプログラミング及びコンフィギュレーションを知っているはずなので、明確にするためにそのようなコンフィギュレーションに関する詳細は本明細書から省いた。
【００６０】
図６Ａを参照すると、そのようなインターフェース・プログラム３００のユーザー・インターフェース６００が示されている。図６Ａからわかるように、ユーザー・インターフェース６００にはいくつかの選択可能なタブ６０２があり、各タブはそれぞれ機能ごとに分類された機能に対応する。当然のことながら、本発明の実施形態との一貫性を維持したまま、タブ６０２の代わりに、若しくはそれらに加えて、あらゆるタイプの選択機能を使うことができる。図６Ａから判るように、ユーザー・インターフェース６００は「メイン・メニュー」を提供する。ユーザー・インターフェース６００のメイン・メニューの中には、ユーザーが発話可能な任意のフレーズ６０４のリストと共に、各フレーズ６０４が何を実行するかの簡単な説明が示されている。そのようなフレーズは、前記音声認識３１０及び自然言語処理３２５コンポーネントにより解読可能な前述の文法の例である。
【００６１】
次に図６Ｂを見ると、前記ユーザー・インターフェース６００の別のビューが示されている。図６Ｂのビューには、利用可能な発話プロファイル６０６が表示されている。当然のことながら、図３と共に上述したように、１つの実施形態において前記音声認識ソフトウェア３１５（明確にするために図６Ｂでは省いた）を、可能な様々な発話プロファイルに対応するようにコンフィギュレーションすることができる。そのような異なるプロファイルは、図２と共に上述したように、例えば異なるハードウェアまたはソフトウェアのコンフィギュレーション、あるいは異なるユーザーに対応することができる。
【００６２】
次に図６Ｃを見ると、前記ユーザー・インターフェース６００のまた別のビューが示されている。図６Ｃには、コンフィギュレーション・オプション６０８のリストが示されている。当然のことながら、前述のオプション６０８は前記インターフェース・プログラム３００を前記ユーザーの設定に合わせてカスタマイズすることを可能にする。例えば、前記ユーザーの居住地のタイムゾーンなどを知るために、前記ユーザーの場所（例えば郵便番号などの条件による）を要求することができる。上述のように、前記インターフェース・プログラム３００を、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｏｕｔｌｏｏｋ（登録商標）やＥｕｄｏｒａなどのような電子メール及び／またはカレンダーまたは予約ソフトウェアと交信するようにコンフィギュレーションすることもできる。その他の可能なコンフィギュレーション・オプション６０８として、また１つの実施形態において、音声フォーマット設定６０８ａ、接続設定６０８ｂなどが挙げられる。当然のことながら、前記ユーザー・インターフェース６００を経由して、あらゆる数とタイプのコンフィギュレーション・オプション６０８をユーザーに提供することができ、そのようなコンフィギュレーション・オプション６０８は本発明の実施形態にいずれも等しく一致するものである。
【００６３】
次に図６Ｄを見ると、前記ユーザー・インターフェース６００の別のビューが示されている。そのようなビューには、前記インターフェース・プログラム３００に利用可能なユーザー・データ３２０のシート６１０が示されている。上述したように、前記インターフェース・プログラム３００は他のプログラム、データファイル、ウェブサイトなどとインターフェース接続する機能を持つ。図６Ｄが示すビューは、ユーザーが選択または口頭リクエスト可能な「シート」として利用可能なファイルとプログラムとを示している。
【００６４】
次に図６Ｅを見ると、前記ユーザー・インターフェース６００の別のビューが示されている。図６Ｅには、利用可能な検索レコード６１４と共に、利用可能な検索フレーズ６１２が記載されている。図３と共に上述したように、前記インターフェース・プログラム３００及び／または前記ユーザー・データ３２０は、前記コンピュータ１００が前記音声認識コンポーネント３１０を経由して認識を試みる設定済みフレーズまたは文法の一式を有することができる。従ってそのような方法において、前記音声認識コンポーネント３１０による解釈の信頼性を向上することができる。以下、そのような文法について、図７と共により詳細に説明する。
【００６５】
次に図６Ｆを見ると、前記ユーザー・インターフェース６００のまた別のビューが示されている。このビューには、前記音声認識ソフトウェア３１０によるユーザーの音声リクエストの分析を示すダイアログ６１８が示されている。当然のことながら、本発明の１つの実施形態において、ユーザーが前記コンピュータ１００から離れた場所にいれば、前記ユーザーが前述のダイアログ６１８を見ることはない。ただし、診断、娯楽、その他の目的のために、前述のダイアログ６１８を前述のユーザー・インターフェース６００によって示すことができる。
【００６６】
次に図７Ａを見ると、ユーザー・データ３２０のシート７００が示されている。当然のことながら、図７Ａが示すように、例示のシート７００はスプレッドシートであるが、コンピュータ１００に格納またはアクセス可能なタイプのデータであれば前記シート７００はどのようなタイプの情報データでもよい。前記シート７００には、文法７１２のリストと検索レコード７１４が示されており、図７Ａにおいて前記レコードは個別株レコードである。加えて、図７Ａから判るように、前記スプレッドシート７００はデータのシート７１６をいくつか有しており、前記シートのいずれも本発明の実施形態にアクセス可能である。シート７１６は、ユーザーがアクセス可能な複数レベルのデータが前記スプレッドシート７１６に含まれていることを示している。図３と共に上述したように、あらゆる方法であらゆるタイプのファイルに格納して整理されたあらゆるタイプのユーザー・データ３２０は、本発明の実施形態と等しく一致する。
【００６７】
ただし、１つの実施形態において、前記コンピュータ１００と入出力される音声は、シート７１６の各列の１行目と２行目に置かれる。前述の実施形態において、質問全体あるいはキーワードのみなどを検知するように前記コンピュータ１００をプログラムすることができる。従って前記コンピュータ１００は、第２行目が示すように設定済みの返答により応答する。１つの実施形態において、前記返答は前記質問を何らかの形で復唱することにより、前記ユーザーが混乱しないようにし、且つ前記コンピュータ１００が前記ユーザーの質問を正確に解釈したことを前記ユーザーに知らせる。
【００６８】
当然のことながら、ユーザーはカスタマイズされた情報で前述のスプレッドシート７００をプログラムすることができ、それにより前記ユーザーは、前記ユーザーが所望するあらゆる情報をあらゆるフォーマットで含むことができるスプレッドシート７００を有することになる。加えて、スプレッドシートを利用することにより前記ユーザーは、インターネットなどのようなネットワーク１２０から、前述のスプレッドシート７００を例えばダウンロードすることができる。当然のことながら、前述のスプレッドシート７００のプログラムの完全な機能（ウェブクエリー、スマートタグなどを含め）を使うことにより、使用される前記インターフェース・プログラム３００及び前記遠隔通信装置の両方から独立したデータを格納及び利用するための柔軟な手段を前記ユーザーに提供し得る。当然のことながら、図７に例示した株価スプレッドシート７００は、前記ネットワーク１２０などを経由して株価を自動更新する機能を用いることにより、時間に依存するデータを常に更新する。
【００６９】
当然のことながら、１つの実施形態において前述のフレーズ７１２は、同じ情報を要求するための複数の可能な文法を含む。そのような方法において、前記ユーザーは所望のクエリーの構文を丸暗記する必要がなく、これは前記ユーザーが前記コンピュータ１００から離れた場所にいる実施形態において顕著である。従って、発話構文に若干の変化を持つリクエストでも、前記コンピュータ１００によって認識される。
【００７０】
例えば、ある具体的な株の現在の価格を要求する文法が臨機応変でないと、「現在の［レコードの］価格を示してください（Ｗｈａｔ  ｉｓ  ｔｈｅ  ｃｕｒｒｅｎｔ  ｐｒｉｃｅ  ｏｆ  ［ｒｅｃｏｒｄ］？）」という構文と一言も違わない音声発話のみに応答が返されることになるかもしれない。これに対し臨機応変に対応できる文法は、例えば［レコード］の「最後の価格（ｌａｓｔ  ｐｒｉｃｅ）」「現在の価格（ｃｕｒｒｅｎｔ  ｐｒｉｃｅ）」「価格（ｃｕｒｒｅｎｔ  ｐｒｉｃｅ）」は「いくらですか（ｗｈａｔ  ｉｓ）」「いくら（ｗｈａｔ’ｓ）」「いくらでしたか（ｗｈａｔ  ｗａｓ）」など、前記コンピュータ１００に話しかけるユーザーが使う可能性のある、文法的に同等のフレーズを複数含むことができる。従って、ユーザーが「［レコード］の価格を示してください（ｗｈａｔ’ｓ  ｔｈｅ  ｐｒｉｃｅ  ｆｏｒ［ｒｅｃｏｒｄ］？）」と言っても、「［レコード］の最後の価格はいくらでしたか（ｗｈａｔ  ｗａｓ  ｔｈｅ  ｌａｓｔ  ｐｒｉｃｅ  ｏｆ  ［ｒｅｃｏｒｄ］？）」と言っても、同じ応答を得ることになる。当然のことながら、１つの実施形態において、ロジカル記号などを経由してそのような臨機応変な対応を提供するが、臨機応変な文法を提供するそのような方法はすべて、本発明の実施形態と等しく一致する。前記スプレッドシート７００の第２行目が示すように、上述の質問への返答は、「［レコード］の最後の価格は［いくら］でした。（ｔｈｅ  ｌａｓｔ  ｐｒｉｃｅ  ｆｏｒ［ｒｅｃｏｒｄ］ｗａｓ［ｐｒｉｃｅ］．）」というようなものになる。
【００７１】
１つの実施形態において、前記インターフェース・プログラム３００は、前記データファイル・インターフェース３３５を経由して、ロジカルでありながら人間味のある方法でユーザーが容易にデータにアクセスできる方法によって、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｅｘｃｅｌスプレッドシートのようなスプレッドシートとインターフェース接続する。データファイル・インターフェース３３５は、例えばシート２の第１行目にある入力文法、シート２の第２行目にある出力文法、及びシート２の第１列目にあるレコード・ラベルを検索する。ユーザーが前記インターフェース・プログラム３００にファイル検索を依頼すると、前記データファイル・インターフェース３３５は前記スプレッドシートを開き、シート２へ行く。前記インターフェース・プログラム３００は、可能な入力文法（すなわち臨機応変な文法に関係するあらゆる形式による１行目の全質問）をすべて生成し、すべてのレコードと組み合わせる。例えば、上記の例において臨機応変な文法は、［レコード］の（ｏｆ／ｆｏｒ）「最後の価格（ｌａｓｔ  ｐｒｉｃｅ）」［現在の価格（ｃｕｒｒｅｎｔ  ｐｒｉｃｅ）］「価格（ｐｒｉｃｅ）」は「いくらですか（ｗｈａｔ  ｉｓ）」「いくら（ｗｈａｔ’ｓ）」「いくらでしたか（ｗｈａｔ  ｗａｓ）」である。そのような文法は、「いくらですか（ｗｈａｔ  ｉｓ）」「いくら（ｗｈａｔ’ｓ）」「いくらでしたか（ｗｈａｔ  ｗａｓ）」という３つの文法を生成する。これを、「最後の価格（ｌａｓｔ  ｐｒｉｃｅ）」［現在の価格（ｃｕｒｒｅｎｔ  ｐｒｉｃｅ）］「価格（ｐｒｉｃｅ）」という３つの文法で掛け、更に「ｏｆ」または「ｆｏｒ」という２つの文法で掛け、次に前記シートにある株（レコード）の数で更に掛ける。
【００７２】
次に、前述の実施形態において、識別された入力文法に対応するテキスト−スピーチ変換出力文法を用いて応答するように、前記インターフェース・プログラムをプログラムする。通常、前記出力文法は、前記入力文法の一部であるレコード・ラベルを有する、２行目にある「出力文法」と、前記入力文法の行及び前記入力レコードと相関するセル内にあるデータ「エレメント」との組み合わせである。次に、前記インターフェース・プログラム３００は、前記テキスト−スピーチ変換出力を、前記選ばれた出力通信装置へ送信する。このフォーマットにより、前記ユーザーは、便利で個人に合った入力及び出力文法を容易にプログラムすることができる。
【００７３】
また、当然のことながら、一部の実施形態またはコンテクストにおいては、臨機応変な文法が適切ではないことがあり、その他の実施形態においては、前記コンピュータ１００の音声テキストも臨機応変な文法であることがある。そのような方法において、前記コンピュータ１００は、より現実的な方法でテキストを変化させるため、前記ユーザーに、より「自然な」感じを与える。そのような変化は、例えば、複数の同等な文法の１つを無作為に選択するか、若しくは特定のユーザーや時刻などに従うことによって達成され得る。
【００７４】
また、当然のことながら、スプレッドシート７００は特定のタスクを実行するためのマクロを含むことができる。例えば、スプレッドシートの１つのエントリを、同じまたは異なるスプレッドシートにある「Ｊｏｅ  Ｓｍｉｔｈ」だけでなく別のアプリケーションにある「Ｊｏｅ  Ｓｍｉｔｈ」というエントリにも付随する電話番号の検索によって、「Ｊｏｅ  Ｓｍｉｔｈ  に電話する（ｃａｌｌ  Ｊｏｅ  Ｓｍｉｔｈ）」というコマンドに応答するようにコンフィギュレーション設定することができる。次に、前記インターフェース・プログラム３００は、電話番号をダイヤルするためのコンポーネントにアクセスし、前記電話番号がダイヤルされ、前記ユーザーへの通話が接続する。そのような機能のいずれも、本発明の実施形態に従って用いることができる。例えば、図７Ａのスプレッドシート７００において、前記株価及びその他の情報を、各株価のアクティブなウェブリンクを経由してウェブサイトから取得する。また、当然のことながら、例えばタブ区切りテキストファイル、データベースファイル、ワープロファイルなどその他のタイプのファイルもすべて、前記ユーザーが多数の個人向けデータソースを作成することができるようなオープンなアーキテクチャを提供することができる。
【００７５】
次に図７Ｂを見ると、前記スプレッドシート７００の別のビューが示されている。このビューにも、一連の検索レコード７１４が示されている。図７Ｂが示す検索レコード７１４は、様々な株価指数であるが、上述したように、前述のレコード７１４は、あらゆるタイプの情報を有することができる。当然のことながら、この株価指数の例及び図７Ａの株価の例において、例えばインターネットのようなネットワーク１２０を経由して前述のレコード７１４に付随するデータを更新可能である。図７Ａが示すケースのように、シート７１６は、ユーザーによってアクセス可能な複数のレベルのデータが前記スプレッドシート７００に含まれることを示している。当然のことながら、図７Ｂの前記シート７１６は図７Ａの前記スプレッドシート７００の中に含まれるが、シート７１６及びスプレッドシートのあらゆる配置は、本発明の実施形態に等しく一致する。
【００７６】
このように、口頭コマンドを経由してコンピュータを操作可能な方法で遠隔通信装置に接続する方法及びシステムを提供する。本発明について、実施例の様々な図と共に説明してきたが、本発明から逸脱することなく本発明の同じ機能を実行するために、他の類似の実施形態を用いること、若しくは前述の実施形態に変更及び追加を加えることが可能であると理解すべきである。例えば、前記技術に精通した者であれば、本特許申請書に記述された本発明を、通信装置またはソフトウェア・アプリケーションのあらゆるコンフィギュレーションに適用することが可能だと認識するであろう。従って、本発明はいずれか単独の実施形態に限定されるべきではなく、むしろ添付の特許請求の範囲に従う範囲の中で解釈されるべきである。
【図面の簡単な説明】
【００７７】
前述の要約、及び好ましい実施形態の詳細な説明は、添付の図面と合わせて考慮することによってより良く理解ができる。本発明を説明する目的で、図中に本発明の実施例を示したが、本発明は開示されている前記具体的な方法及び手段に限定されるものではない。
【図１】図１は、本発明の観点が実施されているコンピュータの例を示す。
【図２Ａ】図２Ａ〜Ｃは、本発明の観点が実施されているコンピュータ・コンフィギュレーションの例を示す。
【図２Ｂ】図２Ａ〜Ｃは、本発明の観点が実施されているコンピュータ・コンフィギュレーションの例を示す。
【図２Ｃ】図２Ａ〜Ｃは、本発明の観点が実施されているコンピュータ・コンフィギュレーションの例を示す。
【図３】図３は本発明の実施形態に従ったソフトウェア・コンフィギュレーションの例を示すブロック図。
【図４Ａ】図４Ａ〜Ｃは、本発明の実施形態に従った、ユーザー始動トランザクションの方法例を示すフローチャート。
【図４Ｂ】図４Ａ〜Ｃは、本発明の実施形態に従った、ユーザー始動トランザクションの方法例を示すフローチャート。
【図４Ｃ】図４Ａ〜Ｃは、本発明の実施形態に従った、ユーザー始動トランザクションの方法例を示すフローチャート。
【図５】図５は、本発明の実施形態に従った、ユーザー始動トランザクションの方法例を示すフローチャート。
【図６Ａ】図６Ａ〜Ｆは、本発明の実施形態に従ったインターフェース・プログラムの実施例を示すスクリーンショット。
【図６Ｂ】図６Ａ〜Ｆは、本発明の実施形態に従ったインターフェース・プログラムの実施例を示すスクリーンショット。
【図６Ｃ】図６Ａ〜Ｆは、本発明の実施形態に従ったインターフェース・プログラムの実施例を示すスクリーンショット。
【図６Ｄ】図６Ａ〜Ｆは、本発明の実施形態に従ったインターフェース・プログラムの実施例を示すスクリーンショット。
【図６Ｅ】図６Ａ〜Ｆは、本発明の実施形態に従ったインターフェース・プログラムの実施例を示すスクリーンショット。
【図６Ｆ】図６Ａ〜Ｆは、本発明の実施形態に従ったインターフェース・プログラムの実施例を示すスクリーンショット。
【図７Ａ】図７Ａ〜Ｂは、本発明の実施形態に従ったスプレッドシートの実施例を示すスクリーンショット。
【図７Ｂ】図７Ａ〜Ｂは、本発明の実施形態に従ったスプレッドシートの実施例を示すスクリーンショット。
【図１】
2006501788.tif 000003
【図２Ａ】
2006501788.tif 000004
【図２Ｂ】
2006501788.tif 000005
【図２Ｃ】
2006501788.tif 000006
【図３】
2006501788.tif 000007
【図４Ａ】
2006501788.tif 000008
【図４Ｂ】
2006501788.tif 000009
【図４Ｃ】
2006501788.tif 000010
【図５】
2006501788.tif 000011
【図６Ａ】
2006501788.tif 000012
【図６Ｂ】
2006501788.tif 000013
【図６Ｃ】
2006501788.tif 000014
【図６Ｄ】
2006501788.tif 000015
【図６Ｅ】
2006501788.tif 000016
【図６Ｆ】
2006501788.tif 000017
【図７Ａ】
2006501788.tif 000018
【図７Ｂ】
2006501788.tif 000019
【国際調査報告】
2006501788.tif 000020