以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態)
図1は、本実施の形態における情報処理装置1のブロック図である。
情報処理装置1は、オブジェクト格納部101、音声受付部102、音声認識部103、処理部104、および出力部105を備える。
オブジェクト格納部101には、1または2以上のオブジェクト情報が格納される。オブジェクト情報とは、オブジェクトの情報である。オブジェクト情報とは、例えば、オブジェクトを出力(例えば、表示)するための情報である。出力については後述する。なお、オブジェクトは、オブジェクト情報と対応しているため、本実施の形態においては、説明の便宜上、オブジェクト情報のことを、オブジェクトと呼ぶ場合や、オブジェクトを、オブジェクト情報と呼ぶ場合がある。
オブジェクトとは、例えば、出力の対象となるデータである。オブジェクトは、例えば、出力される情報の単位となるデータである。例えば、一のオブジェクトは、一の出力対象として扱われるデータである。オブジェクトは、例えば、出力用のデータを構成する部品である。オブジェクトは、例えば、コンテンツのデータである。オブジェクトは、例えば、文字列や、映像、地図などを電子化したデータや、画像や文字列等を表示するソフトウェアや、これらを組み合わせたものである。オブジェクトは、例えば、電子書籍のページや、データベースのレコード等であっても良い。
オブジェクトは、例えば表示用のデータを有するデータである。表示用のデータとは、例えば、視覚化可能なデータである。オブジェクトは、例えば、テキストデータや、画像データである。テキストデータは、例えば、文字を示す一以上の文字コードを有するデータである。テキストデータの言語は、例えば、日本語であっても、英語等の英語以外の言語であっても良い。かかることは,以下のテキストデータにおいても同様である。画像データは、静止画像であっても動画像であっても良い。静止画像は、ビットマップデータであっても、ベクタデータであっても良い。また、オブジェクトは、二次元や三次元のモデリングデータ等であっても良い。例えば、テキストデータを有するオブジェクトを、ここでは、テキストオブジェクトと呼ぶ。また、例えば、画像データを有するオブジェクトを、ここでは、画像オブジェクトと呼ぶ。
オブジェクト情報は、例えば、1または2以上のオブジェクト関連情報と対応づけられていてもよい。オブジェクト関連情報は、オブジェクトに関連した情報である。オブジェクト関連情報は、例えば、オブジェクトの1以上の属性や特徴、オブジェクトに対応するコメント等を示す情報である。オブジェクトの属性とは、例えば、オブジェクトのデータタイプや、サイズ等の情報である。また、オブジェクトがテキストオブジェクトである場合、オブジェクトの属性は、テキストのフォントサイズや、フォント名や、文字数等の情報であっても良い。また、オブジェクトの属性は、オブジェクトが画像オブジェクトである場合、色深度や、カラー形式、画素数、ファイル形式、圧縮形式等の情報であっても良い。また、オブジェクトの特徴は、オブジェクトの内容が示すジャンルの識別子や、オブジェクトの作者や、オブジェクトの作成に用いられた機器名等の情報である。また、例えば、オブジェクト関連情報は、オブジェクトに関連したテキストデータであっても良い。オブジェクト関連情報は、例えば、オブジェクトに対応づけられた1以上のタグのデータであっても良い。タグのデータは、例えば、検索等に用いられる1または2以上の見出しの情報(インデックス情報)であってもよい。このタグデータやテキストデータは、上述したオブジェクトの属性や特徴、コメント等の少なくともい一部の情報を含むと考えても良く、含まないと考えてもよい。
例えば、オブジェクト情報は、1または2以上のオブジェクト関連情報と対応づけられて、オブジェクト格納部101に蓄積されていても良い。例えば、オブジェクト格納部101には、オブジェクト情報と、このオブジェクト情報に対応づけられた1以上のオブジェクト関連情報とを有する1または2以上の情報が格納されている。
オブジェクト関連情報は、例えば、1以上の音声データを有していても良い。例えば、オブジェクト関連情報は、1以上の音声データであっても良い。オブジェクト関連情報は、例えば、オブジェクトに関連する音声データである。例えば、オブジェクトの属性や特徴やオブジェクトに対するコメント等を示す音声データである。例えば、オブジェクト格納部101には、オブジェクト情報が1以上の音声データと対応づけて格納されていてもよい。音声データとは、音声のデータである。音声データとは、例えば、音声の波形を示すデータである。例えば、音声データは、音声の波形を示す電圧の変化を示すデータである。音声データは、例えば、音声を再生可能なデータである。音声データは、音声の波形を標本化したデータであってもよい。また、音声データは、非圧縮のデータであっても良く、圧縮したデータであっても良い。また、オブジェクト関連情報は、音声データの特徴量や、音声データを音素に分解した情報や、音素よりも更に細かい要素(以下、音素片と称す)に分解した情報や、これらを符号化した情報等を有していても良い。音声データの特徴量等については後述する。オブジェクト関連情報が音声データを有するようにすることで、例えば、ユーザが、オブジェクトに対して、関連する情報を音声データとして関連付けておくだけで、オブジェクトに対して行なう処理を音声によって指定することができる。例えば、ユーザが、静止画像等を有するオブジェクトを作成する際に発した音声を、音声データ化して、オブジェクト関連情報としてオブジェクト情報と対応付けて蓄積できるようにすることで、この音声データを用いてオブジェクトに関する操作等を行なうことが可能となる。
なお、オブジェクト情報がテキストデータである場合、このオブジェクト情報に対応づけられたオブジェクト関連情報を、このテキストデータ自身やその一部等と考えてもよい。
また、オブジェクト関連情報がオブジェクト情報ではない場合、オブジェクト関連情報は、例えば、非表示のデータであってもよい。非表示のデータとは、例えば、オブジェクト情報が示すオブジェクトを表示する際等に表示されないデータである。
また、オブジェクト情報は、例えば、対応するオブジェクト関連情報を一体化して有するデータであっても良い。例えば、オブジェクト情報は、対応するオブジェクト関連情報を一体化して有するファイルであっても良い。例えば、オブジェクト情報は、表示データとオブジェクト関連情報とを有するファイルであっても良い。このような構成とすることで、オブジェクト情報とオブジェクト関連情報との対応関係を、対応関係を管理するためのデータ等を別途設けることなく、容易に保つことができる。
例えば、オブジェクト情報は、対応するオブジェクト関連情報である音声データを一体化して有するデータであっても良い。音声データと一体化されたオブジェクト情報は、例えば、表示用のデータと音声データとを一体化して有するデータである。また、このように一体化したデータは、格納される音声データの特徴量や、音素や、音素片や、これらを符号化した情報等を有していても良い。
また、オブジェクト情報は、1または2以上の商品と対応づけられていても良い。商品とは、例えば、販売対象となるものである。オブジェクト情報が商品と対応づけられているということは、オブジェクト情報が、商品の識別子と対応づけられていることであってもよい。この場合のオブジェクト情報と商品の識別子との対応関係は、上述したオブジェクト情報と、オブジェクト関連情報と同様の対応関係であっても良い。また、この場合のオブジェクト情報と対応づけられた商品の識別子は、オブジェクト関連情報の少なくとも一部であっても良く、オブジェクト情報の少なくとも一部でなくても良い。商品の識別子は、例えば、商品名や、商品コード等である。商品と対応づけられたオブジェクト情報は、例えば、この商品に関した情報を示す画像データやテキストデータを有するオブジェクトの情報である。
オブジェクト格納部101は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、他の格納部についても同様である。
音声受付部102は、例えば、マイクロフォン(図示せず)等を介して入力された音声を受け付ける。音声受付部102が受け付ける音声は、例えば音声信号である。音声受付部102が受け付ける音声は、例えば、ユーザが発する音声である。音声受付部102は、例えば、受け付けた音声を示す音声データを取得する。例えば、音声受付部102は、受け付けた音声を標本化して音声データを取得する。また、音声受付部102が受け付ける音声は、音声データと考えてもよい。例えば、音声受付部102は、他の装置や、オーサリング処理装置内の他の構成等から送信あるいは出力される音声データを音声として受信してもよい。
音声受付部102は、音声を受け付けるためのマイクロフォン等の入力手段を備えていてもよく、備えていなくても良い。音声受付部102は、入力手段のデバイスドライバや、メニュー画面の制御ソフトウェア等で実現され得る。
音声認識部103は、音声受付部102が受け付けた音声について音声認識処理を行なう。音声認識部103は、例えば、音声認識処理を行なって、処理の対象(以下、処理対象と称す)を示す情報や、処理部104が実行する処理を示す情報等を有する情報を取得する。音声認識部103は、例えば、音声認識処理により、処理対象を示す情報や、実行する処理を示す情報のうちの少なくとも1以上を取得してもよく、これらの1以上を含むテキストデータ等のデータを取得してもよい。音声認識により取得するテキストデータは、日本語であっても良く、英語等の日本語以外の言語であっても良い。音声認識とは、例えば、音声をテキストに変換する処理や、音声から情報処理装置1や、情報処理装置1に処理を実行させるソフトウェア等を操作するために用いられる指示等の情報や、操作に用いられる情報等を取得するための処理等である。
処理対象とは、例えば、処理の対象として用いられるものである。処理対象は、例えば、検索処理に用いられるキーワードである。キーワードは、具体的には、検索のキーワードである。キーワードは、例えば、検索結果の絞り込みや、検索結果の除外を行なうために、追加されるキーワード等であっても良い。キーワードは、例えば、検索に用いられる索引となる文字列等である。ただし、検索が、テキストデータを仲介しない音声検索である場合、キーワードは、検索に用いられるキーワードを示す音声データの音素や、音声の特徴量等も含む概念である。キーワードは、例えば、日本語であっても良く、英語等の日本語以外の言語であってもよい。
また、処理対象は、検索処理において用いられるキーワード以外の条件を示す情報であっても良い。処理対象は、例えば、オブジェクト格納部101に格納されているオブジェクトや、後述する出力部105が表示するオブジェクトのうちの、処理の対象となるオブジェクト等であってもよい。また、処理対象は、金額の範囲等を示すための情報であっても良い。
また、処理対象は、オブジェクトに対応づけられた商品であっても良い。ここでの処理とは、検索処理等の予め指定された処理であってもよく、音声認識処理を行なって取得される実行する処理を示す情報により特定される処理であっても良い。
処理対象を示す情報は、処理対象と対応づけられた情報であっても良く、処理対象となる情報自身であっても良い。例えば、処理対象を示す情報は、検索に用いられるキーワードのテキストデータである。つまり、検索という処理の対象として用いられるキーワードのテキストデータである。また、処理対象を示す情報は、キーワードを示す音声データの音素や音素片や、音声の特徴量の情報であってもよい。この音素や音素片や音素の特徴量の情報は、音声受付部102が取得した音声から取得してもよく、キーワードを音声に変換することで取得しても良い。
また、処理対象を示す情報は、例えば、処理対象を結果的に特定可能な情報であればよい。処理対象を示す情報は、例えば、処理対象のオブジェクト(あるいは、処理対象と対応付けられたオブジェクト)の識別子や、処理対象のオブジェクト(あるいは、処理対象と対応付けられたオブジェクト)の属性を示す情報であってもよい。処理対象の識別子は、例えば、処理対象であるオブジェクト(あるいは、処理対象と対応付けられたオブジェクト)のファイル名や、処理対象のオブジェクトに設定された名称(例えば、オブジェクト名等)である。また、処理対象を示す情報は、処理対象となるオブジェクト(あるいは、処理対象と対応付けられたオブジェクト)が配置されているページやレイヤの識別子(例えば、ページ名やページ番号、レイヤ名等)である。また、処理対象を示す情報は、現在表示中のオブジェクトを指定する情報や、現在表示されていないオブジェクトを指定する情報等である。また、処理対象を示す情報は、処理対象を検索するために用いられるキーワードや、検索条件や、検索に用いられる処理対象の属性を示す情報(例えば属性値)等であっても良い。例えば、処理対象を示す情報は、処理対象がテキストオブジェクトである場合、このオブジェクトの少なくとも一部の文字列であっても良い。
処理対象の属性を示す情報は、例えば、処理対象となるオブジェクトの色や、サイズ、オブジェクトのデータタイプ(例えば、画像やテキスト)等を示す情報である。例えば、これらの属性の範囲を示す情報であっても良い。また、処理対象の属性を示す情報は、例えば、処理対象の表示画面内における位置や処理対象が配置される図示しないページ内の位置を示す情報(例えば、座標等)であっても良い。
また、処理対象のオブジェクトが、オブジェクト関連データと対応付けられている場合、処理対象を示す情報は、このオブジェクト関連データの少なくとも一部に対応するデータであっても良い。例えば、オブジェクト関連データがテキストデータを有する場合、処理対象を示す情報は、オブジェクト関連データが有するテキストデータの少なくとも一部の文字列であってもよい。また、オブジェクト関連情報が音声データを有する場合、この音声データの少なくとも一部や、この音声データの少なくとも一部に対応する特徴量や音素や音素片等を、処理対象を示す情報であってもよい。
処理部104が実行する処理とは、例えば、音声認識処理により取得された処理対象を示す情報を用いて、処理部104が実行する1または2以上の処理である。処理対象を示す情報を用いて処理を実行するということは、処理対象を示す情報自身を用いて処理を実行することであっても良く、処理対象を示す情報が示す情報に対して処理を実行することであっても良い。どのように、処理対象を示す情報を用いるかについては、例えば、実行する処理に応じて決定するようにしても良い。実行する処理は、例えば、2以上の処理を組み合わせて行なう処理であっても良い。
処理部104が実行する処理は、どのような処理であっても良い。例えば、実行する処理は、検索処理である。ここでの検索処理は、例えば、オブジェクト情報を検索する処理である。例えば、ここでの検索処理は、オブジェクト情報を、オブジェクト情報と対応づけられたオブジェクト関連情報を用いて検索する処理であってもよい。実行する処理は、例えば、音声認識処理で取得される処理対象を示す情報であるキーワードを用いて処理部104により行なわれる検索処理である。ここでの検索処理は、複数のキーワードの組み合わせにより、論理演算等を行なって行なわれる検索処理であっても良い。ここでの検索処理は、過去(例えば、直前)に行なわれた検索結果に対して、更に絞り込み検索を行なう処理や、過去に行なわれた検索結果を除外して検索を行なう処理や、過去に行なわれた検索の一部を修正(例えば、一部のキーワードを変更)して再度検索を行なう処理であっても良い。
また、実行する処理は、例えば、商品の発送処理である。この発送処理は、オブジェクト情報と対応づけられた商品を発送する処理である。例えば、音声認識処理により特定されるオブジェクトのオブジェクト情報と対応づけられた商品を発送する処理である。商品を発送する処理とは、例えば、商品について発送の指示を受けたことを示す情報や、商品の発送を行なうことを指示する情報を処理部104が取得して、取得した情報を、出力部105に、商品を発送する担当者の端末装置(図示せず)や、商品の発送を管理するサーバ装置等に送信させることである。また、図示しない商品を管理するデータベース等において、発送を指示を受けたことを示すフラグ等の情報を、発送の指示を受けた商品のレコードに、処理部104が、出力部105に付与させることであっても良い。なお、実行する処理は、商品の受注処理等であっても良い。かかる場合も、商品の発送処理と同様である。
また、実行する処理は、図示しないモニタ等に表示するオブジェクトを、現在表示されている1以上のオブジェクトから、それ以外の1以上のオブジェクトに変更する処理であってもよい。言い換えれば、この処理は、表示を切り替える処理であっても良い。例えば、検索処理による検索結果として取得された複数のオブジェクトの内の一部が、図示しないモニタ等に表示されている場合において、この検索結果により取得されたオブジェクトのうちの、モニタに表示されていない他の1以上のオブジェクトを、現在表示されているオブジェクトの代わりに表示させる処理である。
実行する処理を示す情報は、例えば、実行する処理を特定可能な情報であり、実行する処理を示す指示や、実行する処理の名称や、コマンド等である。例えば実行する処理を示す情報は、検索を実行させる指示や、商品を発送させる指示等である。また、実行する処理を示す情報は、実行する処理を示す指示やコマンドを自然言語で表した文字列等であっても良い。例えば、「検索」や、「探す」や「商品を発送」等の文字列であってもよい。実行する処理を示す情報は、検索の際のキーワードの組合わせかたを指定する情報を更に有していても良い。例えば、キーワードによる、除外、絞り込み、論理和、論理差、論理積、排他的論理和等の組合わせかたを指定する情報を有していても良い。例えば、実行する処理を示す情報は、これらのキーワードの組合わせかたを指定する情報を自然言語で表した文字列等を有していてもよい。なお、実行する処理を示す情報は、例えば、実行する処理を示す指示や、処理の名称等に相当する一以上の関数や、メソッド名や、「if」、「then」等で示される制御構文等で構成されていてもよい。また、「処理対象」は、これらの自然言語に対応する判断処理等を行うためのアルゴリズムであっても良い。なお、本実施の形態の自然言語は、日本語であってもよく、その他の英語等の言語であっても良い。
音声認識部103が、音声受付部102が受け付けた音声についてどのような音声認識処理を行なうかは問わない。例えば、音声認識部103は、音声受付部102が受け付けた音声に対して音声認識を行なって、音声に対応したテキストデータを音声認識結果として取得する。このテキストデータは、例えば、音声受付部102が受け付けた音声に対応する音声データを、テキストデータ化したものである。この音声認識により取得されるテキストデータは、例えば、処理に利用される情報や、処理対象を示す情報や、実行する処理を示す情報の少なくとも1以上を含むテキストデータである。後述する具体例においては、このように、音声認識結果が、音声に対応したテキストデータである場合を例に挙げて説明する。なお、音声から、音声認識により音声に対応するテキストデータを取得する処理は、公知技術であるため、ここでは詳細な説明は省略する。
また、音声認識部103は、例えば、上記のように音声認識処理により取得したテキストデータについて形態素解析等を行ない、解析結果が示す各形態素の品詞や、形態素の配列パターン等から、処理対象を示す情報(例えば、キーワード)や、実行する処理を示す情報等を取得してもよい。例えば、音声認識部103は、形態素解析の結果、名詞と、助詞と、動詞との並びが検出された場合に、この名詞を、処理対象を示す情報として取得し、動詞を、実行する処理を示す情報として取得してもよい。このような形態素解析から、処理対象を示す情報や実行する処理を示す情報を取得する際に用いられる1以上の配列パターン等の情報は、図示しない格納部等に予め格納されているようにしても良い。なお、本実施の形態において用いられる形態素解析としては、通常、解析対象の言語に対応した形態素解析を用いる。また、手がかり句等についても同様である。
また、音声認識部103は、更に、上記のように音声認識処理により取得したテキストデータの中に、処理対象を示す文字列や実行する処理等を示す文字列等である認識用文字列と一致する1以上の文字列が含まれているか否かを判断し、認識用文字列と一致する1以上の文字列が含まれる場合に、この1以上の認識用文字列にそれぞれ対応する処理対象を示す情報や、実行する処理を示す情報を取得するようにしてもよい。この場合、予め指定された閾値以上の数あるいは比率が一致する文字列が含まれている場合、テキストデータ内の一の文字列と、一の認識用文字列とが一致していると判断するようにしてもよい。ここでの認識用文字列を用いた処理は、例えば、上記のように音声認識処理により取得したテキストデータから形態素解析等を用いて取り出した1または2文字以上の文字列の中に、予め容易された1または2文字以上の認識用文字列と一致する文字列が含まれているか否かを判断することであっても良く、予め容易された1または2文字以上の認識用文字列と一致する文字列が、音声認識処理により取得したテキストデータに含まれているか否かを判断することであっても良い。
認識用文字列は、例えば、処理対象を表す認識用文字列と、実行する処理を表す認識用文字列とを有する。処理対象を表す認識用文字列は、例えば、処理対象を表す文字列であり、例えば、処理対象を自然言語等で表した文字列である。また、実行する処理を表す認識用文字列は、実行する処理を表した文字列であり、例えば実行する処理を自然言語等で表した文字列である。処理対象を表した認識用文字列は、例えば、処理対象を示す情報と対応づけられている。また、実行する処理を表した認識用文字列は、例えば、実行する処理を示す情報と対応づけられている。実行する処理を示す情報は、例えば、この処理を実行させるための指示や指示名である。ここでの指示は、コマンドも含むと考えてもよい。また、実行する処理を示す情報は、実行ファイルの識別子等であっても良い。認識用文字列は、例えば、図示しない格納部等に予め格納しておくようにしてよい。
例えば、処理対象を示す情報が、処理対象を表した認識用文字列と同じである場合、音声認識部103は、一の処理対象を表した認識用文字列と一致する文字列が、音声認識処理により取得したテキストデータの中に検出された場合、この一致すると判断された処理対象を表した認識用文字列に対応する処理対象を示す情報として、この処理対象を表した認識用文字列自身を取得すればよい。また、例えば、処理対象を示す情報が、処理対象を表した認識用文字列と同じでない場合、音声認識部103は、一の処理対象を表した認識用文字列と一致する文字列が、音声認識処理により取得したテキストデータの中に検出された場合、この一致すると判断された処理対象を表した認識用文字列と対応づけて図示しない格納部等に格納されている処理対象を示す情報を、上記の処理対象を示す情報として取得すればよい
同様に、例えば、実行する処理を示す情報が、実行する処理を表した認識用文字列と同じである場合、音声認識部103は、一の実行する処理を表した認識用文字列と一致する文字列が、音声認識処理により取得したテキストデータの中に検出された場合、この一致すると判断された実行する処理を表した認識用文字列に対応する処理を示す情報として、この実行する処理を表した認識用文字列自身を取得すればよい。また、例えば、実行する処理を示す情報が、実行する処理を表した認識用文字列と同じでない場合、音声認識部103は、一の実行する処理を表した認識用文字列と一致する文字列が、音声認識処理により取得したテキストデータの中に検出された場合、この一致すると判断された実行する処理を表した認識用文字列と対応づけて図示しない格納部等に格納されている実行する処理を示す情報を、上記の実行する処理を示す情報として取得すればよい。
また、音声認識部103は、音声受付部102が音声受付部102が受け付けた音声からテキストデータを上記のように取得せずに、音声受付部102が受け付けた音声の特徴量を取得し、この特徴量と、処理対象を示す音声や実行する処理を示す音声等である認識用音声の特徴量とを照合し、1以上の認識用音声の特徴量との適合度が閾値以上である特徴量が、音声受付部102が受け付けた音声の特徴量の中に検出された場合に、この1以上の認識用音声にそれぞれ対応する処理対象を示す情報や、実行する処理を示す情報を取得するようにしてもよい。なお、ここでの認識用音声を用いた処理は、実質的には、音声受付部102が受け付けた音声を、音声の特徴量等に応じて、1または2以上の文字列に相当する単位の音声に区切るようにして、この区切られた各単位に対応する音声の特徴量が、予め用意された1または2以上の認識用音声の特徴量と適合するか否かを判断することであっても良く、音声受付部102が受け付けた音声に対応する特徴量の中に、予め用意された1または2以上の認識用音声の特徴量と適合する部分が含まれているか否かを判断することであっても良い。
認識用音声は、例えば、処理対象を表す認識用音声と、実行する処理を表す認識用音声とを有する。処理対象を表す認識用音声は、例えば、処理対象を表す音声であり、例えば、処理対象を自然言語等で表した音声である。また、実行する処理を表す認識用音声は、実行する処理を表した音声であり、例えば実行する処理を自然言語等で表した音声である。処理対象を表した認識用音声は、例えば、処理対象と対応づけられている。また、実行する処理を表した認識用音声は、例えば、実行する処理と対応づけられている。
例えば、処理対象を示す認識用音声は、処理対象の識別子等を自然言語で読み上げた場合に得られる音声である。例えば、認識用音声は、処理対象となるオブジェクトに割り当てられた名称を、自然言語で読み上げて得られる音声である。このような場合、処理対象を表した認識用音声を取得するために読み上げられた処理対象の識別子等が示す処理対象を、認識用音声に対応する処理対象とし、この処理対象の識別子等を、上記で取得される処理対象を示す情報としてもよい。
また、実行する処理を示す認識用音声は、実行する処理を自然言語で表したテキストを読み上げた音声である。例えば、認識用音声は、「検索」というテキストを読み上げた音声や、「発送」というテキストを読み上げた音声であり、「検索」を読み上げた認識用音声は、検索を実行する処理と対応づけられており、「発送」を読み上げた認識用音声は、発送処理を実行する処理と対応づけられていてもよい。また、「次」というテキストを読み上げた認識用音声が、「現在表示されているオブジェクト以外のオブジェクトを表示する」という処理と対応づけられていても良い。実行する処理を示す認識用音声が、この実行する処理と対応づけられているこということは、実行する処理を示す認識用音声が、この実行する処理を示す識別子、具体的には、処理を実行させるための指示や指示名と対応づけられていることと考えてもよい。このような場合、実行される処理を表す認識用音声を取得するために読み上げられた実行する処理の識別子等が示す処理を、認識用音声に対応する実行する処理とし、この処理の識別子等を、上記で取得される実行する処理を示す情報としてもよい。また、実行する処理を示す認識用音声は、処理を実行するための実行ファイルの識別子等と対応付けられていても良い。認識用音声や、認識用音声に対応する特徴量等は、図示しない格納部等に予め格納しておくようにすればよい。
音声に関して取得される特徴量は、例えば、短時間ごとに切り出された音声信号から抽出される特徴ベクトルを時系列に配列したものである。ここで取得する特徴量は、例えば、三角型フィルタを用いたチャネル数24のフィルタバンク出力を離散コサイン変換したMFCCであり、その静的パラメータ、デルタパラメータ及びデルタデルタパラメータをそれぞれ12次元有し、さらに正規化されたパワーとデルタパワー及びデルタデルタパワーを有してもよい(合計39次元)。あるいは、特徴量は、MFCCの12次元、ΔMFCCの12次元、Δ対数パワーの1次元を含む25次元のものであってもよい。このように、種々の特徴量を用いることが可能である。特徴量は、特徴パラメータ、特徴ベクトルとも呼ばれる。
音声や音声データについて特徴量を取得する処理は公知技術であるため、ここでは詳細な説明は省略する。また、音声や音声データについて取得した特徴量を照合して、適合度を示す値等を取得する処理は公知技術であるため、ここでは詳細な説明は省略する。
なお、音声認識部103は、上記の音声の特徴量の代わりに、音声や音声データを音素や音素片に分解した情報等を用いて照合を行なって、処理対象を示す情報や、実行する処理を示す情報を取得しても良い。音素や音素片を取得する処理や、音素や音素片を符号化したデータを用いて検索を行なう処理については、公知技術であるため、ここでは詳細な説明は省略する。認識用音声や、認識用音声に対応する音素や音素片等は、図示しない格納部等に予め格納しておくようにすればよい。
なお、音声認識部103が音声認識の結果として、音声受付部102が受け付けた音声に対応するテキストデータを取得する場合、上述したようなテキストデータから、形態素解析や、認識用文字列等を用いて、処理対象を示す情報や、実行する処理を示す情報を取得する処理は、音声認識部103が行なう代わりに、処理部104が行なうようにしてもよい。
なお、音声認識部103は、処理対象を示す情報と、実行する処理を示す情報とのうちの、いずれか一方のみを有する情報を、音声認識結果として取得しても良いことはいうまでもない。
また、音声認識部103は、音声受付部102が受け付けた音声データのうちの共通する部分を、処理対象を示す情報と、実行する処理を示す情報とをそれぞれ示す情報として取得しても良い。あるいは、この共通する部分を有するテキストデータ等を、処理対象を示す情報と、実行する処理を示す情報とを有する情報として取得しても良い。
処理部104は、オブジェクト情報に関して、音声認識部103の音声認識処理の結果に応じた処理を行なう。処理部104は、例えば、オブジェクト格納部101に格納されているオブジェクト情報に関して処理を行なう。音声認識処理の結果に応じた処理を行なうということは、例えば、音声認識処理の結果(以下、音声認識結果と称す)から得られる処理対象を示す情報が示す処理対象について処理を実行することである。また、音声認識処理の結果に応じた処理を行なうということは、例えば、音声認識処理の結果から得られた実行する処理を示す情報が示す処理を実行することである。あるいは、音声認識結果の処理対象を示す情報が示す処理対象について、音声認識結果の実行する処理を示す情報が示す処理を実行することであっても良い。ただし、処理部104は、音声認識結果に含まれる情報のうちの、処理対象を示す情報や、実行する処理を示す情報以外の情報に応じた処理を実行するようにしても良い。また、音声認識結果に含まれる一の情報が、処理対象を示す情報と、実行する処理を示す情報との組合わせを示す情報であっても良く、この場合、処理部104は、この一の情報が示す処理対象に対し、この一の情報が示す処理を実行するようにしてもよい。
処理部104は、例えば、音声認識処理により音声認識部103が、処理対象を示す情報を取得しておらず、実行する処理を示す情報を取得した場合、予め指定された処理対象に対して、この処理を示す情報が示す処理を行なう。予め指定された処理対象は、特定の処理対象であっても良く、状況等に応じて適宜変更される処理対象であっても良い。例えば、オブジェクトの識別子等で指定される処理対象であってもよく、現在表示されているオブジェクトや、現在表示されていないオブジェクトのように、現在の状況で決定される処理対象であっても良い。また、例えば、処理部104は、音声認識処理により音声認識部103が、処理対象を示す情報を取得し、実行する処理を示す情報を取得しなかった場合、予め指定されている処理を実行してもよい。予め指定されている処理は、予め決められた処理と考えてもよい。予め指定された処理は、取得した処理対象を示す情報に応じて決定される処理であっても良く、取得した処理対象を示す情報に関係なく指定されている処理であってもよい。
オブジェクト格納部101に格納されているオブジェクト情報に関して、処理部104が行なう処理は、オブジェクト情報が示すオブジェクトについての処理であっても良く、オブジェクト情報に対応づけられた情報やものに対する処理(例えば、オブジェクト情報に対応づけられた商品に対する処理)であってもよい。また、オブジェクト格納部101から検索により読出されたオブジェクト等に関して処理を行なう場合も、ここでは、オブジェクト格納部101に格納されているオブジェクト情報に関して行なう処理と考えてもよい。
処理部104は、例えば、音声認識部103の音声認識処理の結果に応じて、出力部105が表示しているオブジェクトの中から、オブジェクト関連情報を用いて一部のオブジェクトを検出してもよい。オブジェクト関連情報を用いて、ということは、例えば、オブジェクト関連情報を検索の対象として用いることである。この検索は、テキストデータを用いた検索であっても良く、音声データや、音声データの特徴量や音素や音素片等の音声データの特徴を示す情報を用いた検索であっても良い。かかることは、以下においても同様である。例えば、処理部104は、音声認識結果である処理対象を示す情報が、検索に用いられるキーワードであり、オブジェクト関連情報がテキストデータであり、音声認識結果である実行する処理を示す情報が、表示されているオブジェクトに対する検索処理を示す情報である場合、処理部104は、キーワードに一致する文字列を有するオブジェクト関連情報と対応づけられたオブジェクト情報を、表示しているオブジェクトのオブジェクト情報の中から検索する。
また、処理部104は、出力部105が表示していないオブジェクト情報に関して、音声認識処理の結果に応じた処理を行なうようにしてもよい。例えば、処理部104は、音声認識部103の音声認識処理の結果に応じて、出力部105が表示していないオブジェクトの中から、オブジェクト関連情報を用いて一部のオブジェクトを検出してもよい。例えば、処理部104は、音声認識結果である処理対象を示す情報が、検索に用いられるキーワードであり、オブジェクト関連情報がテキストデータであり、音声認識結果である実行する処理を示す情報が、表示されているオブジェクトに対する検索処理を示す情報である場合、処理部104は、キーワードに一致する文字列を有するオブジェクト関連情報と対応づけられたオブジェクト情報を、表示されているオブジェクトのオブジェクト情報の中から検索してもよい。
また、処理部104は、例えば、音声認識部103の音声認識処理の結果に応じて、現在、出力部105により表示されているオブジェクト以外のオブジェクトを検出してもよい。この場合、上記の場合とは異なり、オブジェクト関連情報を用いずに、現在出力部により表示されているオブジェクト以外のオブジェクトを検出してもよい。
例えば、処理部104は、音声認識結果が、表示されていないオブジェクト情報を表示する処理を示す情報である場合、表示されていない1以上のオブジェクト情報が示すオブジェクトを、例えば、予め指定された順番や、ルール等に応じて読出して、現在表示されている1以上のオブジェクトの代わりに出力部105に表示させてもよい。この場合、一旦表示されたオブジェクトは再度表示しないようにしてもよい。また、ここでの、ルールは、例えば、ランダムに読出すルール等であっても良い。
また、処理部104は、例えば、音声認識処理の結果に応じて、出力部105が表示しているオブジェクトに関連した予め指定された処理、または出力部105が表示していないオブジェクトに関連した予め指定された処理を行なうようにしてもよい。例えば、オブジェクト情報が商品と対応づけられている場合において、処理部104は、音声認識処理の結果に応じて、出力部105が表示しているオブジェクトに対応した商品を発送する処理、または出力部105が表示していないオブジェクトに対応した商品を発送する処理を行なうようにしてもよい。例えば、処理部104は、処理対象を示す情報が、表示しているオブジェクトを処理対象に示すか否かにより、表示しているオブジェクトのオブジェクト情報に関して処理を行なうか、表示していないオブジェクトのオブジェクト情報に関して処理を行うかを決定しても良い。
以下、処理部104が行なう処理について具体例を挙げて説明する。
(1)検索処理
音声認識結果から取得された処理対象を示す情報が、1または2以上のキーワードであり、実行する処理を示す情報が、オブジェクトの検索処理を示す情報であったとすると、処理部104は、例えば、オブジェクト格納部101に格納されているオブジェクトを検索する。ここでの検索は、テキスト検索である。例えば、オブジェクト格納部101に格納されているオブジェクトに対応づけられたオブジェクト関連情報がテキストデータであるとすると、処理部104は、上記で取得した1または2以上のキーワードと一致する文字列を有するオブジェクト関連情報と対応づけられたオブジェクト情報を検索する。そして、検索結果として、オブジェクト情報を取得する。例えば、オブジェクト情報を図示しないメモリ等に読出す。ここでの一致は、通常完全一致であるが、部分一致であっても良い。音声認識結果から得られたキーワードが2以上ある場合、このキーワードをどのように組合わせるかは、デフォルト等で予め指定されていても良く、音声認識結果等から判断しても良い。例えば、音声認識結果が示すテキストデータに含まれる2つのキーワードが「または」という手がかり句を挟んで配置されている場合は、このキーワードの論理和を用いていわゆるOR検索を行ない、その他の場合は、キーワードの論理積を用いたAND検索を行なっても良い。なお、どのような手がかり句を挟んでいる場合にどのような検索を行なうかということや、デフォルトの検索は、適宜変更可能である。また、オブジェクト情報がテキストデータである場合、上記においてオブジェクト関連情報に対して検索を行なう代わりに、オブジェクト情報自身に対して検索を行なうようにしても良い。
なお、処理部104は、実行する処理を示す情報を、検索置換等を用いて、適宜、実行する処理を指示する情報やコマンド等に変換して、この変換した情報が示す処理を実行してもよい。例えば、実行する処理を示す情報が「探す」という自然言語の文字列である場合、この情報を、図示しない格納部等に予め用意された変換表や、変換ルール等を用いて、検索処理の指示やコマンド等に変換して、この指示やコマンドに応じて検索処理を実行してもよい。かかることは、以下においても同様である。
また、処理部104は、処理対象を示す情報を、適宜、処理対象を特定可能な情報に変換して、この変換した情報を用いて、処理対象を特定してもよい。かかる場合も処理対象を示す情報を用いて、処理対象を特定することと考えてもよい。例えば、処理対象を示す情報が「画像」という自然言語の文字列である場合、この情報を、図示しない格納部等に予め用意された変換表や、変換ルール等を用いて、「データタイプ」が「イメージ」であるデータを処理対象に特定する情報等に変換してもよい。かかる変換は、公知であるため、ここでは詳細な説明は省略する。
なお、処理部104が、検索の対象とするオブジェクトは、上記のように、オブジェクト格納部101に格納されているオブジェクトであってもよく、オブジェクト格納部101に格納されている一部のオブジェクト(例えば、一のフォルダ等に格納されたオブジェクト)であっても良く、既に、図示しないモニタ等に表示されているオブジェクトであってもよく、モニタ等に表示されているオブジェクトを除くオブジェクトであっても良く、過去の検索処理により検出されたオブジェクトであっても良い。
(2)検索結果を絞り込む処理
処理部104は、検索処理等の結果等として、現在出力部105により表示されているオブジェクトに共通する1以上の情報と、新たに音声認識処理により取得したキーワード等とを用いて、再度検索を行なうようにして、検索条件を見直した検索や、検索結果に対する絞り込み検索を行なうようにしても良い。例えば、新たに音声認識処理により取得したキーワード等により、直前の検索条件に含まれるキーワード等を置き換えて検索した場合、検索条件を見直した検索が可能となる。また、例えば、新たに音声認識処理により取得したキーワード等により、直前の検索条件に含まれるキーワード等を、絞り込みのための条件として追加して検索した場合、検索条件を見直した検索が可能となる。オブジェクトに共通する1以上の情報は、例えば、オブジェクトに共通する属性値や、キーワード等であっても良く、オブジェクトに共通するタグ等であっても良い。オブジェクトに共通する情報は、オブジェクト自身が有する情報であっても良く、オブジェクトと対応付けられたオブジェクト関連情報が有する情報であっても良い。また、上記の検索は、オブジェクト関連情報に対して行なわれる検索であっても良く、オブジェクトがテキストオブジェクトである場合においては、オブジェクト自身に対して行なわれる検索であっても良い。
例えば、過去の検索結果(例えば直前に行なわれた検索結果)や、図示しない受付部が受け付けた取得の指示等に応じて、処理部104等が、2以上のオブジェクト情報を取得している場合において、音声認識結果が有する処理対象を示す情報が、取得しているオブジェクト情報のうちの一部を絞り込んで指定するための条件を示す情報である場合、処理部104は、処理対象を示す情報から、絞り込むための条件を取得して、この条件を用いて、既に取得されている2以上のオブジェクト情報について、検索を行なって、検索結果であるオブジェクト情報を取得してもよい。例えば、現在取得されているオブジェクト情報に対応するオブジェクト関連情報が料金という属性を有しており、音声認識部103が取得した音声認識結果が有する処理対象を示す情報が「高い」という文字列であったとすると、処理部104は、現在取得されているオブジェクトの中から、対応づけられているオブジェクト関連情報が有する料金の属性値が、現在取得されているオブジェクトの中央値よりも低いオブジェクトを検索する指示を取得する。そして、現在取得されている2以上のオブジェクト情報に対応づけられたオブジェクト関連情報がそれぞれ有する料金の属性値から、料金の中央値を取得し、料金の属性値が、この取得した値よりも下であるオブジェクト関連情報と対応づけられたオブジェクト情報を、現在取得されているオブジェクト情報の中から検索により取得する。
また、上記の場合において、音声認識結果が有する処理対象を示す情報が、検索結果を絞り込むためのキーワードである場合、処理部104は、処理対象を示す情報から、キーワードを取得して、このキーワードを用いて、既に取得されている2以上のオブジェクト情報について、検索を行なって、検索結果であるオブジェクトを取得する。例えば、音声認識部103が取得した音声認識結果が有する処理対象を示す情報が「ABC」という文字列であったとすると、処理部104は、現在取得されているオブジェクトの中から、更に文字列「ABC」と一致する文字列を有するオブジェクト関連情報と対応づけられたオブジェクトを検索して取得する。
また、処理部104は、現在表示されているオブジェクトに共通して対応する情報(例えばタグ)と、音声認識結果が示すキーワードとに対応するオブジェクト情報を検索するようにしても良い。例えば、現在、「映画館」と、「東京」というタグを、共通するタグとして有するオブジェクト関連情報と対応付けられたオブジェクトが出力部105により表示されている場合において、「邦画」というキーワードを音声認識結果として取得した場合、処理部104は、上記の共通するタグである「映画館」と、「東京」と、音声認識結果として取得した「邦画」というタグとを有するオブジェクト関連情報と対応付けられたオブジェクト情報を検索して取得するようにしても良い。
なお、処理部104は、上記の処理の代わりに、検索結果を表示するために行なわれた直前の検索に用いられた検索条件の一部を、新たに音声認識結果により得られたキーワードで置き換えて再検索を行なうようにして、検索条件を見直した再建策を行なうようにしてもよく、直前の検索に用いられた検索条件に、新たに音声認識結果により得られたキーワードを加えて、再検索を行なうようにして、検索結果の絞り込みを行なうようにしてもよい。
(3)除外する処理
2以上のオブジェクト情報が示すオブジェクトのうちの一部(ただし、全体を除く)を、後述する出力部105が表示している場合において、音声認識結果が有する処理対象を示す情報が、現在表示しているオブジェクトに対応するオブジェクト情報以外のオブジェクトを処理対象に指定する情報である場合、処理部104は、現在表示しているオブジェクトに対応するオブジェクト情報以外のオブジェクト情報を、上記の2以上のオブジェクト情報から取得してもよい。そして、処理部104は、例えば、取得したオブジェクト情報を出力部105に表示させる。ここでの2以上のオブジェクト情報は、例えば、オブジェクト格納部101に格納されている2以上のオブジェクトや、過去の検索結果(例えば直前に行なわれた検索結果)や図示しない受付部が受け付けた取得の指示等に応じて処理部104等が取得した2以上のオブジェクト情報である。例えば、音声認識結果が有する処理対象を示す情報が「次」という文字列や、「その他」等の文字列であったとすると、処理部104は、この処理対象を示す情報に対応づけられた情報として、現在表示しているオブジェクトに対応するオブジェクト情報以外のオブジェクト情報を処理対象にする指示を取得する。そして、処理部104は、この指示に応じて、例えば、直前に検索処理等により取得した2以上のオブジェクト情報の中から、現在表示されているオブジェクト情報以外の1以上のオブジェクト情報を取得して、直前に表示していたオブジェクトの代わりに、取得したオブジェクト情報が示すオブジェクトを表示する指示を、出力部105に対して行なう。なお、オブジェクト情報が、出力順(例えば、表示順)を示す情報と対応付けられている場合、この出力順で、現在表示しているオブジェクトに対応するオブジェクト情報以外のオブジェクト情報を取得して、例えば表示するようにしても良い。
(4)オブジェクト情報に対応づけられた情報に関して処理
処理部104が実行する処理を示す情報に応じて行なう処理は、処理対象となるオブジェクトに対応づけられた情報に関して行なう処理であっても良い。例えば、オブジェクト情報が商品と対応づけられている場合であって、出力部105が、現在1以上のオブジェクトを表示していた場合において、音声認識部103が、実行する処理を示す文字列として「発送」という文字列を取得した場合、処理部104は、この実行する処理を示す文字列に対応した処理として、現在表示されているオブジェクトのオブジェクト情報に対応づけられた商品を発送する処理を実行するようにしてもよい。また、例えば、音声認識部103が、実行する処理を示す文字列として「その他発送」という文字列を取得した場合、処理部104は、この実行する処理を示す文字列に対応した処理として、現在表示されていないオブジェクトのオブジェクト情報に対応づけられた商品を発送する処理を実行するようにしてもよい。現在表示されていないオブジェクトは、例えば、オブジェクト格納部101に格納されている少なくとも一部のオブジェクトのうちの、現在表示されていないオブジェクトであっても良く、過去の検索処理により、処理部104が取得したオブジェクトのうちの、現在表示されていないオブジェクトであっても良い。発送する処理は、例えば、発送を指示する情報や、発送に必要な情報を、処理部104が取得して、これらの情報を処理部104が出力部105に出力させる処理である。
なお、処理部104が実行する処理が、検索、あるいは検索に相当する処理である場合であって、オブジェクトに対応づけられたオブジェクト関連情報が音声データである場合においては、音声認識部103が、処理対象を示す情報として、音声受付部102が取得した音声データから、検索等に用いられるキーワードに相当する音声データを取得し、音声認識部103または処理部104が、この音声データから、音素や、音素片や、特徴量の情報を取得するようにし、処理部104は、検索等の対象となる各オブジェクトのオブジェクト関連情報である音声データから、音素や、音素片や、特徴量の情報を取得して、キーワードに相当する音声データから取得した音素や、音素片や、特徴量に適合するオブジェクト関連情報を検出し、検出したオブジェクト関連情報と対応づけられたオブジェクト情報を取得するようにしても良い。なお、オブジェクト関連情報が、音声データから取得した音素や、音素片や、特徴量の情報を有する場合、音声データからこれらの情報を取得する処理は省略して良い。かかることは、キーワードに相当する音声データに関しても同様である。オブジェクト関連情報に対応する音声データは、オブジェクト関連情報がテキストデータである場合、このテキストデータを文字列を音声に変換する処理等により読み上げて得られる音声データであってもよい。なお、オブジェクト関連情報が音声データである場合、キーワードに相当する音声データを用いて、上記以外の音声検索処理により、適合する音声データを含むオブジェクト関連情報を検索するようにしても良い。
なお、上述したように、音声認識部103が音声認識を行なって音声に対応したテキストデータを取得する場合、このテキストデータから、処理対象を示す情報や、実行する処理を示す情報を取得する処理は、音声認識部103が行なう代わりに、処理部104が行なうようにし、取得した処理対象を示す情報や、実行する処理を示す情報を用いて、処理部104が処理対象や、実行する処理を特定するようにしても良い。
処理部104は、例えば、音声認識部103が音声認識結果として取得した音声受付部102が受け付けた音声が示すテキストデータの先頭側から、処理対象を示す文字列を取得し、後尾側から実行する処理を示す文字列を取得する。また、例えば、処理部104は、音声認識結果として取得したテキストデータの先頭側から、処理対象を示す文字列を取得し、その直後、あるいは、予め指定された1以上の手がかり句を挟んで配置される位置から、実行する処理を示す文字列を取得してもよい。また、処理部104は、例えば、形態素解析と、手がかり句との組み合わせや、文字列の位置関係等により、処理対象を示す文字列や、実行する処理を示す文字列を取得してもよい。
例えば、処理部104は、「大阪の宿を探す」というテキストデータの先頭側から、「画像」という名詞句と、「宿」という名詞句との組を処理対象を示す文字列として取得し、その後に「を」という手がかり句を介して位置する「探す」という動詞句を、実行する処理を示す文字列として取得する。
後述する具体例においては、このように、音声認識部103が音声認識を行なって取得したテキストデータから、処理対象を示す情報や、実行する処理を示す情報を、処理部104が取得する場合を例に挙げて説明する。
出力部105は、処理部104の処理結果を出力する。例えば、出力部105は、処理部104が処理結果として取得した1以上のオブジェクト情報が示すオブジェクトを出力する。また、出力部105は、1以上のオブジェクト情報が示すオブジェクトの代わりに、1以上のオブジェクト情報を出力してもよい。オブジェクト情報が示すオブジェクトを出力するということは、例えば、オブジェクト情報が有するテキストデータや画像データを出力(例えば表示)することである。例えば、出力部105は、処理部104が処理結果として取得したオブジェクト情報が示すオブジェクトを出力する。出力部105は、例えば、音声認識結果に応じて処理部104が、出力部105が出力していたオブジェクトの中から検出した一部のオブジェクトを出力してもよい。また、出力部105は、例えば、音声認識結果に応じて処理部104が、出力部105が出力していないオブジェクトの中から検出した一部のオブジェクトを出力してもよい。
出力部105は、オブジェクト格納部101に格納された1以上のオブジェクト情報が示すオブジェクトを表示してもよい。この場合に出力されるオブジェクトは、処理部104がオブジェクト格納部101から処理結果等として取得したオブジェクト情報が示すオブジェクトであっても良く、処理部104が取得したオブジェクト情報以外のオブジェクト情報が示すオブジェクトであってもよい。
また、出力部105は、処理部104が商品の発送処理を行なう際に、処理部104等が出力する指示に応じて、発送を指示する情報や、発送に必要な商品等の情報を出力部105が出力するようにしてもよい。ここでの出力は、例えば、商品の発送を行なう図示しないサーバ装置や、商品の発送を管理する図示しないサーバ装置への送信である。
ここでの出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。なお、ここでの表示は、図示しない外部の表示装置等への表示用のデータの出力や送信等も含む概念である。
出力部105は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部105は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
次に、情報処理装置1の動作の一例について図2のフローチャートを用いて説明する。
(ステップS101)音声受付部102は、図示しないマイクロフォン等を介して音声を受け付けたか否かを判断する。受け付けた場合、ステップS102に進み、受け付けていない場合、ステップS102に進む。
(ステップS102)音声認識部103は、ステップS101で受け付けた音声について音声認識処理を行って音声認識結果を取得する。ここでは、一例として、音声データから音声認識結果としてテキストデータを取得する。
(ステップS103)処理部104は、ステップS102で取得した音声認識結果に、処理対象を示す情報があるか否かを判断する。例えば、処理部104は、ステップS102で音声認識結果として取得したテキストデータを形態素解析して、取得した1以上の形態素の品詞や配列パターン等から、処理対象を示す情報があるか否かを判断する。例えば、特定の手がかり句(例えば、品詞の「を」)の直前に、名詞句があれば、これを、処理対象を示す情報であると判断する。また、処理対象を検出するための予め用意された1以上の認識用文字列と一致する文字列が、ステップS102で取得したテキストデータに含まれているか否かを判断し、含まれていれば、処理対象を示す情報があると判断する。例えば、一致していると判断される認識用文字列があれば、この認識用文字列を処理対象を示す情報であると判断する。また、これらの処理を順次行なっても良い。処理対象を示す情報がある場合、ステップS104に進み、処理対象を示す情報がない場合、ステップS105に進む。
(ステップS104)処理部104は、ステップS103で検出した処理対象を示す情報を取得する。例えば、処理部104は、処理対象を示す情報を取得して、図示しないメモリ等に一時記憶する。
(ステップS105)処理部104は、ステップS102で取得した音声認識結果に、実行する処理を示す情報があるか否かを判断する。例えば、処理部104は、ステップS102で音声認識結果として取得したテキストデータを形態素解析して、取得した1以上の形態素の品詞や配列パターン等から、実行する処理を示す情報があるか否かを判断する。例えば、特定の形態素(例えば、品詞の「を」)の直後に、名詞句または動詞句があれば、これを、処理対象を示す情報であると判断する。また、実行する処理を検出するための予め用意された1以上の認識用文字列と一致する文字列が、ステップS102で取得したテキストデータに含まれているか否かを判断し、含まれていれば、処理対象を示す情報があると判断する。例えば、一致していると判断される認識用文字列があれば、この認識用文字列を実行する処理を示す情報であると判断する。また、これらの処理を順次行なっても良い。処理対象を示す情報がある場合、ステップS106に進み、処理対象を示す情報がない場合、ステップS107に進む。
(ステップS106)処理部104は、ステップS105で検出した実行する処理を示す情報を取得する。例えば、処理部104は、実行する処理を示す情報を取得して、図示しないメモリ等に一時記憶する。
(ステップS107)処理部104は、音声認識結果に応じて、オブジェクト情報に関して処理を行なう。例えば、ステップS104において処理対象を示す情報を取得しており、ステップS106において実行する処理を示す情報を取得している場合、この処理対象を示す情報が示すオブジェクトに関して、この実行する処理を示す情報が示す処理を実行する。また、例えば、ステップS104において処理対象を示す情報を取得しており、実行する処理を示す情報を取得していない場合、この処理対象を示す情報が示すオブジェクトに関して、デフォルト等で指定された処理、あるいは、処理対象を示す情報に対応づけられた処理や、現在の状況等に応じた処理をこの実行する処理を示す情報が示す処理を実行する。現在の状況等に応じた処理は、例えば、出力部105が、1以上のオブジェクトを表示しているか否かに応じた処理や、処理部104が、直前にオブジェクト情報の検索を行ない、検索の結果を取得しているか否か等に応じた処理である。また、例えば、処理部104が処理対象を示す情報を取得しておらず、ステップS106において実行する処理を示す情報を取得している場合、この実行する処理を示す情報が示す処理を、デフォルト等で指定されたオブジェクト情報や、実行する処理を示す情報に対応づけられたオブジェクト情報や、現在の状況に応じたオブジェクト情報に関して実行する。現在の状況に応じたオブジェクト情報とは、例えば、現在表示されているオブジェクトのオブジェクト情報や、現在表示されていないオブジェクトのオブジェクト情報や、直前に処理部104が行なった検索処理により処理部104が取得したオブジェクト情報や、この検索処理により取得したオブジェクト情報のうちの、現在表示されているオブジェクトのオブジェクト情報や現在表示されていないオブジェクトのオブジェクト情報である。
なお、ステップS105において、形態素解析を行なっている場合、ステップS107で再度、形態素解析を行なわず、ステップS105の形態素解析の結果を、ステップS107で用いるようにしてもよい。
処理部104が、処理対象を特定できない場合や、実行する処理を特定できない場合においては、ステップS101に戻るようにすればよい。
(ステップS108)出力部105は、処理部104の処理結果を出力する。例えば、出力部105は、処理部104が検索処理等により取得したオブジェクト情報が示すオブジェクトを、図示しないモニタ等に表示する。そして、ステップS101に戻る。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態における情報処理装置1の具体的な動作について説明する。
(具体例1)
図3は、本実施の形態の具体例における情報処理装置1の一例を示す図であり、情報処理装置1は、タブレット型端末であるとする。情報処理装置1は、マイクロフォン102aと、モニタ105aとを備えているものとする。また、モニタ105aの表面には、図示しないタッチパネルが設けられているものとする。なお、情報処理装置1は、どのような装置で実現されても良く、例えば、携帯電話や、いわゆるスマートフォンと呼ばれる多機能携帯電話、携帯情報端末、コンピュータ等で実現されても良い。
図4は、本実施の形態の具体例1におけるオブジェクト格納部101にオブジェクト関連情報と対応づけて格納されたオブジェクト情報を管理するオブジェクト管理表である。ここでは、一例として、宿泊施設に関連したオブジェクト情報が管理されたオブジェクト管理表を示している。図4のオブジェクト管理表は、「ID」と、「オブジェクト情報」と、「関連情報」という属性を有している。「ID」は、オブジェクト情報を管理するためのオブジェクト情報の識別子であり、ここでは、オブジェクトのファイル名であるとする。「オブジェクト情報」はオブジェクト情報であり、ここでは、テキストデータで構成されるオブジェクト情報である。例えば、ここでは、宿泊施設の種類と、料金と、その料金に対応する泊数、および場所を示す文字列が、スペースを介して配列されている。「関連情報」はオブジェクト関連情報であり、ここでは、「、(読点)」で区切られたテキストデータで構成されている。なお、「:(コロン)」でつながれた文字列は、タグであり、「:」の前の文字列は、タグの属性を示し、「:」の後の文字列は、タグの属性値を示す。例えば、「金額:20,000円」は、タグの属性が「金額」で、タグの属性値が「20,000円」であるタグを示している。
図5は、処理部104が音声認識部103が音声認識結果として取得したテキストデータから実行する処理を認識するために用いられる認識用文字列と、認識の結果として取得される実行する処理を示す情報との対応関係を管理する認識処理管理表である。認識処理管理表は、例えば、図示しない格納部等に予め格納されている。認識処理管理表は、「処理文字列」と、「処理」という属性を有している。「処理文字列」は、実行する処理を認識するための認識用文字列である。「処理」は、実行する処理を示す情報である。
なお、ここでは、「処理」の属性値は、説明の便宜上、自然言語で表しているが、「処理」は、例えば、これらの自然言語に相当する一以上の関数や、処理を実行させる指示や、処理を実行させるコマンドや、メソッド名や、「if」、「then」等で示される制御構文等で構成されていてもよい。また、「処理対象」は、これらの自然言語に対応する判断処理等を行うためのアルゴリズムであっても良い。
ユーザが、関西の宿泊施設を検索するため、情報処理装置1に対して、「関西の宿を探す」という音声を発したとする。
音声受付部102は、マイクロフォン102aを介して、ユーザが発した音声を音声信号として受け付け、標本化を行なって音声データに変換する。
そして、音声認識部103が、音声受付部102が取得した音声データに対して音声認識を行なった結果、「関西の宿を探す」というテキストデータを取得したとする。
処理部104は、音声認識部103が取得したテキストデータに対して形態素解析を行なう。形態素解析については公知技術であるため、ここでの説明は省略する。
例えば、ここでは、形態素解析の結果、予め用意された手がかり句である「を」という助詞の前に、「関西」という地名を示す名詞句と、「宿」という名詞句とを検出することができるため、処理部104は、この「関西」という地名を示す名詞句と、「宿」という名詞句とを、処理対象を示す情報(ここでは文字列)として取得し、図示しない格納部等に一時記憶する。
また、形態素解析の結果において、手がかり句である「を」という助詞の直後に「探す」という動詞句をが検出されるため、処理部104は、この「探す」という動詞句を取得する。処理部104は取得した動詞句「探す」と一致する文字列を、図5に示した認識処理管理表の各レコード(行)の「処理文字列」の属性値の中から検索し、一致する属性値を有するレコードの「処理」の値を、実行する処理を示す情報として取得する。ここでは、「検索処理」を、実行する処理を示す情報として取得し、取得した情報を、図示しない格納部等に一時記憶する。なお、一致する属性値が検出されなかった場合、処理部104は、例えば、デフォルト等で指定された実行する処理を示す情報を取得する。
そして、処理部104は、取得した処理対象を示す情報を用いて、取得した実行する処理を示す情報が示す処理を実行する。具体的には、上記で取得した「関西」という文字列と、「宿」という文字列とを検索用のキーワードとして、この2つのキーワードの両方と一致する文字列を有するオブジェクト関連情報と対応づけられたオブジェクト情報を、図4に示したオブジェクト管理表で検索する。なお、ここでの検索処理は、いわゆるAND検索であるとする。
処理部104は、この検索により、「関連情報」に、「宿」および「関西」と一致する文字列を有するレコードを検出し、検出した全てのレコードの「オブジェクト情報」の属性値を、オブジェクト格納部101から図示しないメモリ等に読出す。ここでは、例えば、「ID」が、「A001」から「A016」までのオブジェクト情報が読出されたとする。
そして、処理部104は、読出したオブジェクト情報のうちの、「ID」の属性値が小さいものから順番に4つのオブジェクト情報を読出し、出力部105に読出したオブジェクト情報を表示する指示を与える。ここでは、「ID」が「A001」から「A004」までのオブジェクト情報を読出し、このオブジェクト情報を出力する指示を出力部105に与える。
図6(a)および図6(b)は、出力部105によるオブジェクトの表示を説明するための、検索結果を表示している状態の表示例を示す図(図6(a))、および検索結果を絞り込んだ状態の表示例を示す図(図6(b))である。図において、オブジェクトA001は、「ID」が「A001」であるオブジェクト情報に対応するオブジェクトであるとする。かかることは、他の「ID」のオブジェクト情報に対応するオブジェクトについても同様であるとする。
出力部105は、処理部104からの指示に応じて、「ID」が「A001」から「A004」までのオブジェクト情報が示すオブジェクトをモニタ105aに表示する。具体的には、テキストデータである各オブジェクト情報を、予め用意された図示しないテンプレート情報等に配置することで、各オブジェクト情報に対応したオブジェクトが配置された表示用の画面を作成し、モニタ105aに表示する。これにより、モニタ105aには、図6(a)に示すように、オブジェクトA001〜オブジェクトA004が表示される。
図7は、処理部104が音声認識部103が音声認識結果として取得したテキストデータから処理対象を認識するために用いられる認識用文字列と、認識の結果として指定される処理対象との対応関係を管理する認識処理対象管理表である。認識処理対象管理表は、「対象文字列」と、「処理対象」という属性を有している。「対象文字列」は、処理対象を認識するための認識用文字列である。「処理対象」は、処理対象を示す情報である
図6(a)に示すような画面を見たユーザが、「場所は気に入ったが、でも少し高いかな」という音声を発したとする。
音声受付部102は、マイクロフォン102aを介して、ユーザが発した音声を音声信号として受け付け、標本化を行なって音声データに変換する。
そして、音声認識部103が、音声受付部102が取得した音声データに対して音声認識を行なった結果、「場所は気に入ったが、でも少し高いかな」というテキストデータを取得したとする。
処理部104は、音声認識部103が取得したテキストデータに対して形態素解析を行なう。そして、形態素解析の結果から、上記と同様に、手がかり句である「を」という助詞を検出して,その前後の名詞句等を取得する処理を行なうが、ここでは、「を」という助詞が検出できなかったとする。
このため、処理部104は、図7に示す認識処理対象管理表の各レコード(行)から、順次「対象文字列」の属性値である文字列を取得し、取得した文字列と一致する文字列が、上記で取得したテキストデータに含まれるか否かを判断していく。そして、一致する文字列が検出された場合、この「対象文字列」の属性値を有するレコードの「処理対象」の属性値を取得する。ここでは、図7に示した認識処理対象管理表の上から1番目の「対象文字列」である「場所は気に入った」と一致する文字列と、上から5番目の「対象文字列」である「高い」が、上記のテキストデータにおいて検出されたとすると、処理部104は、これらレコードの「処理対象」の属性値である「表示されているオブジェクトに対応した場所タグ」と、「現在表示されているオブジェクトよりも金額が安い金額タグ」を、処理対象を示す情報として取得する。そして、図示しない格納部等に一時記憶する。「表示されているオブジェクトに対応した場所タグ」という処理対象を示す情報は、例えば、現在表示されているオブジェクトのオブジェクト情報と対応づけられたオブジェクト関連情報に含まれている属性が「場所」であるタグのいずれか一つと属性値が同じタグを、処理対象に指定する情報であるとする。また、「現在表示されているオブジェクトよりも金額が安い金額タグ」という処理対象を示す情報は、例えば、属性が「金額」であって、その属性値が、現在表示されているオブジェクトのオブジェクト情報と対応づけられた属性が「金額」であるタグの属性値よりも小さいタグを、処理対象に指定する情報であるとする。
また、同様に、処理部104は、図5に示す認識処理管理表の各レコード(行)から、順次「処理文字列」の属性値である文字列を取得し、取得した文字列と一致する文字列が、上記で取得したテキストデータに含まれるか否かを判断していく。そして、一致する文字列が検出された場合、この「処理文字列」の属性値を有するレコードの「処理」の属性値を、実行する処理を示す情報として取得する。ここでは、図5に示した認識処理管理表の上から三行目の文字列「高い」と一致する文字列だけが、上記のテキストデータにおいて検出されたとすると、処理部104は、このレコードの「処理」の属性値である「検索処理」という情報を、実行する処理を示す情報として取得する。
処理部104は、上記で取得した処理対象を示す情報と、実行する処理を示す情報とを用いて、オブジェクトに対する処理を行なう。具体的には、処理部104は、直前に検索処理を行なっているため、直前の検索結果により取得したオブジェクト情報について、上記で取得した処理対象を示す情報を用いて、実行する処理を示す情報に対応する処理を行なう。
具体的には、処理部104は、上記で取得した「表示されているオブジェクトに対応した場所タグ」という処理対象を示す情報に従って、現在表示されているオブジェクトA001〜A004に対応するオブジェクト情報に対応づけられたオブジェクト関連情報に応じて、属性が「場所」であるタグを取得する。なお、重複したタグは、1つを除いて削除する。ここでは、「場所:兵庫」というタグが取得される。また、上記で取得した「現在表示されているオブジェクトよりも金額が安い金額タグ」という処理対象を示す情報に応じて、現在表示されているオブジェクトのオブジェクト情報に対応づけられたオブジェクト関連情報から属性が「金額」であるタグの中から、属性値が最も小さいタグを取得する。ここでは、「金額:17,000円」を取得する。そして、処理部104は、直前の検索により取得した「ID」が「A001」から「A016」までのオブジェクト情報に対応づけられたオブジェクト関連情報の中から、属性値が兵庫である場所タグと、属性値が17,000円未満である金額のタグとを有するオブジェクト関連情報を検索し、検出したオブジェクト関連情報に対応するオブジェクト情報を取得する。具体的には、「場所:」の直後の文字列が、「兵庫」であり、「金額:」の直後の値が、「17,000円」未満であるオブジェクト関連情報と対応づけられたオブジェクト情報を取得する。
ここでは、この検索処理により、処理部104は、対応する「ID」が「A008」、「A011」〜「A013」であるオブジェクト情報を検出し、検出したオブジェクト情報を取得する。そして、取得したオブジェクト情報を出力部105に表示させる。
出力部105は、処理部104が取得したオブジェクト情報を、図6(b)に示すように、モニタ105aに表示する。なお、検索により取得されたオブジェクト情報が5つ以上ある場合、例えば、そのうちの「ID」の値が小さいものを4つ表示するようにすればよい。
ここで、図6(a)に示した状態において、ユーザが、表示されているオブジェクトが示す宿泊施設とは異なる他の場所の宿泊施設のオブジェクトを表示したいと考えて、「大阪」という音声を発したとすると、上記と同様に、音声受付部102は、この音声を受け付け、音声認識部103は、受け付けた音声に対応するテキストデータ「大阪」を取得する。
処理部104は、音声認識部103が取得したテキストデータについて、上記と同様に、形態素解析を行ない、形態素解析の結果から、上記と同様に、「を」という助詞を検出して,その前後の名詞句等を取得する処理を行なうが、ここでは、「を」という助詞が検出できなかったとする。
このため、処理部104は、上記と同様に、音声認識部103が取得したテキストデータについて、図7に示した認識処理対象管理表の「対象文字列」の属性値と一致する文字列を検索する処理と、図5に示した認識処理管理表の「処理文字列」の属性値と一致する文字列を検索する処理とを行なうがいずれも一致する文字列が検出できなかったとする。このため、処理部104は、音声認識部103が取得したテキストデータ「大阪」を、処理対象を示す情報、具体的には、検索のキーワードとして取得し、実行する処理を示す情報として、デフォルトで指定されている「検索処理」という情報を取得する。
そして、ここでは、処理部104が直前に検索処理を行なってオブジェクト情報を取得しているため、このオブジェクト情報について、「大阪」というキーワードを用いた検索処理を行なう。具体的には、「大阪」と一致する文字列を有するオブジェクト関連情報と対応づけられたオブジェクト情報を、直前の検索により取得した「ID」が「A001」から「A016」までのオブジェクト情報の中から検索して取得する。
ここでは、この検索処理により、処理部104は、対応する「ID」が「A005」〜「A007」、「A009」〜「A010」、「A014」〜「A016」であるオブジェクト情報を検出し、検出したオブジェクト情報を取得する。そして、取得したオブジェクト情報を出力部105に表示させる。
図8は、出力部105によるオブジェクト情報の表示を説明するための、検索結果を絞り込んだ状態を示す図(図8(a))、および更に検索結果を絞り込んだ状態を示す図(図8(b))である。
出力部105は、処理部104が取得したオブジェクト情報を、図8(a)に示すように、モニタ105aに表示する。ここでは検索により取得されたオブジェクト情報が5つ以上あるため、そのうちの「ID」の値が小さいものを4つ、具体的には、「ID」が、「A005」〜「A007」、および「A009」であるオブジェクト情報が示すオブジェクトを、モニタ105aに表示する。
ここで、図8(a)に示した状態において、ユーザが、検索された宿泊施設の場所を、さらに、絞り込みたいと考え、「南部」という音声を発したとすると、上記と同様に、音声受付部102は、この音声を受け付け、音声認識部103は、受け付けた音声に対応するテキストデータ「南部」を取得する。
処理部104は、音声認識部103が取得したテキストデータについて、上記と同様に、形態素解析を行ない、形態素解析の結果から、上記と同様に、手がかり句である「を」という助詞を検出して,その前後の名詞句等を取得する処理を行なうが、ここでは、「を」という助詞が検出できなかったとする。
このため、処理部104は、上記と同様に、音声認識部103が取得したテキストデータについて、図7に示した認識処理対象管理表の「対象文字列」の属性値と一致する文字列を検索する処理と、図5に示した認識処理管理表の「処理文字列」の属性値と一致する文字列を検索する処理とを行なうがいずれも一致する文字列が検出できなかったとする。このため、処理部104は、音声認識部103が取得したテキストデータ「南部」を、処理対象を示す情報、具体的には、検索のキーワードとして取得し、実行する処理を示す情報として、デフォルトで指定されている「検索処理」という情報を取得する。
そして、ここでは、処理部104が直前に検索処理を行なってオブジェクト情報を取得しているため、このオブジェクト情報について、「南部」というキーワードを用いた検索処理を行なう。具体的には、「大阪」と一致する文字列を有するオブジェクト関連情報と対応づけられたオブジェクト情報を、直前の検索により取得した「ID」が「A005」〜「A007」、「A009」〜「A010」、「A014」〜「A016」であるオブジェクト情報の中から検索して取得する。
ここでは、この検索処理により、処理部104は、対応する「ID」が「A009」〜「A010」、「A014」〜「A016」であるオブジェクト情報を検出し、検出したオブジェクト情報を取得する。そして、取得したオブジェクト情報を出力部105に表示させる。
出力部105は、処理部104が取得したオブジェクト情報を、図8(b)に示すように、モニタ105aに表示する。
これにより、モニタ105aには、大阪の南部の宿泊施設についてのオブジェクトが表示されることとなる。
(具体例2)
図9は、本実施の形態1の具体例2におけるオブジェクト格納部101にオブジェクト関連情報と対応づけて格納されたオブジェクト情報を管理するオブジェクト管理表である。ここでは、一例として、商品に関連したオブジェクト情報が管理されたオブジェクト管理表を示している。図9のオブジェクト管理表は、「ID」と、「オブジェクト情報」と、「関連情報」と、「商品ID」という属性を有している。「ID」は、オブジェクト情報を管理するためのオブジェクト情報の識別子であり、ここでは、オブジェクトのファイル名であるとする。「オブジェクト情報」はオブジェクト情報であり、ここでは、商品やその説明を示した画像データで構成されるオブジェクト情報である。「関連情報」はオブジェクト関連情報であり、ここでは、「、(読点)」で区切られたテキストデータで構成されている。なお、「:(コロン)」でつながれた文字列は、図4と同様のタグである。「商品ID」は、商品の識別子であり、ここでは、商品に割り当てられた商品コードであるとする。
図10は、出力部105によるオブジェクトの表示を説明するための、オブジェクト格納部101に格納されている一部のオブジェクトを表示した状態を示す図(図10(a))、および、その他のオブジェクトを表示した状態を示す図(図10(b))である。
まず、ここでは仮に、ユーザが発した音声等に応じて、具体例1と同様に検索処理等が処理部104により行なわれて、図9に示したオブジェクト情報のうちの一部のオブジェクトであるオブジェクトB001およびオブジェクトB002だけが、図10(a)に示すように、出力部105によりモニタ105aに表示されていたとする。なお、上述したように、オブジェクトB001およびオブジェクトB002は、対応する「ID」が「B001」および「B002」であるオブジェクト情報が示すオブジェクトである。
ここで、ユーザが、現在表示されている商品以外を表示させたいと考え、「次」という音声を発したとすると、上記と同様に、音声受付部102は、この音声を受け付け、音声認識部103は、受け付けた音声に対応するテキストデータ「次」を取得する。
処理部104は、音声認識部103が取得したテキストデータについて、上記と同様に、形態素解析を行ない、形態素解析の結果から、上記と同様に、「を」という助詞を検出して,その前後の名詞句等を取得する処理を行なうが、ここでは、「を」という助詞が検出できなかったとする。
このため、処理部104は、上述した具体例1と同様に、音声認識部103が取得したテキストデータについて、図7に示した認識処理対象管理表の「対象文字列」の属性値と一致する文字列を検索する処理を行なったとする。ここでは、図5に示した認識処理管理表の上から三番目のレコード(行)の「処理文字列」である「次」が一致すると判断される。このため、処理部104は、このレコードの「処理対象」の属性値である「表示されているオブジェクト以外の次のオブジェクト」という情報を、処理対象を示す情報として取得し、図示しない格納部等に一時記憶する。
また、処理部104は、上述した具体例一と同様に、音声認識部103が取得したテキストデータについて、図5に示した認識処理管理表の「処理文字列」の属性値と一致する文字列を検索する処理とを行なう。ここでは、図5に示した認識処理管理表の上から五番目のレコード(行)の「処理文字列」である「次」が一致すると判断される。このため、処理部104は、このレコードの「処理」の属性値である「表示する」を、実行する処理を示す情報として取得し、図示しない格納部等に一時記憶する。
そして、処理部104は、上記で取得した処理対象を示す情報が示す処理対象に対して、上記で取得した実行する処理を示す情報が示す処理を実行する。具体的には、図9に示したオブジェクト管理表から、現在表示されているオブジェクトに対応するオブジェクト情報以外のオブジェクト情報を、「ID」の値が小さいものから順番に予め決められた数(ここでは、4つ)まで検出して、取得したオブジェクト情報を、出力部105に出力させる。ここでは、表示されていないオブジェクト情報が3つ残っているため、これらを全て表示させる。具体的には、対応する「ID」が「B003」〜「B005」であるオブジェクト情報が示すオブジェクトを表示させる。
出力部105は、処理部104が検出したオブジェクト情報を、図10(b)に示すように、モニタ105aに表示する。これにより、直前に表示されていたオブジェクトを除外したいオブジェクトを表示させることができる。
ここで、図10(b)に示した状態において、ユーザが、「発送」という音声を発したとすると、上記と同様に、音声受付部102は、この音声を受け付け、音声認識部103は、受け付けた音声に対応するテキストデータ「発送」を取得する。
処理部104は、音声認識部103が取得したテキストデータについて、上記と同様に、形態素解析を行ない、形態素解析の結果から、上記と同様に、手がかり句である「を」という助詞を検出して,その前後の名詞句等を取得する処理を行なうが、ここでは、「を」という助詞が検出できなかったとする。
このため、処理部104は、上述した具体例1と同様に、音声認識部103が取得したテキストデータについて、図7に示した認識処理対象管理表の「対象文字列」の属性値と一致する文字列を検索する処理を行なったとする。しかしながら、ここでは、一致する文字列が検出できなかったとする。
また、処理部104は、上述した具体例1と同様に、音声認識部103が取得したテキストデータについて、図5に示した認識処理管理表の「処理文字列」の属性値と一致する文字列を検索する処理とを行なう。ここでは、図5に示した認識処理管理表の上から五番目のレコード(行)の「処理文字列」である「発送」が一致すると判断される。このため、処理部104は、このレコードの「処理」の属性値である「表示されているオブジェクトに対応する商品を発送」を、実行する処理を示す情報として取得し、図示しない格納部等に一時記憶する。
そして、処理部104は、上記で取得した「表示されているオブジェクトに対応する商品を発送」という実行する処理を示す情報に応じた処理を行なう。即ち、現在表示されているオブジェクトに対応する商品を発送する処理を行なう。具体的には、処理部104は、出力部105が現在表示しているオブジェクトに対応する「ID」、即ち、「B003」〜「B005」を取得し、取得した「ID」に対応する「商品ID」を、図9に示したオブジェクト管理表から取得する。ここでは、商品識別子である「LND8900A」、「RFRG200−503」、および「ACC7990078」を取得する。そして、取得した商品識別子と、図示しない格納部等からユーザ識別子等とを有する商品の発送を指示する情報を作成し、作成した情報を出力部105に、商品の発送処理を行なうサーバ装置(図示せず)等に対して送信させる。これにより、処理部104による現在表示されているオブジェクトに対応する商品の発送処理が終了する。
また、仮に、図10(b)に示した状態において、ユーザが「その他発送」という音声を発したとする。この場合、処理部104は、図5に示した認識処理管理表から、上記の処理を行なって、「その他発送」という「処理文字列」に対応した「表示されていないオブジェクトに対応する商品を発送」という実行する処理を示す情報を取得することとなる。
そして、処理部104は、取得した「表示されていないオブジェクトに対応する商品を発送」という実行する処理を示す情報に応じた処理を行なう。即ち、現在表示されているオブジェクト以外のオブジェクトに対応する商品を発送する処理を行なう。具体的には、処理部104は、出力部105が現在表示しているオブジェクトに対応する「ID」、即ち、「B003」〜「B005」を取得し、取得した「ID」以外の「ID」を有するレコードを、図9に示したオブジェクト管理表から検出し、検出したレコードの「商品ID」を取得する。ここでは、商品識別子である「TVZ−500B」、および「RCF0089」、を取得する。そして、取得した商品識別子と、図示しない格納部等からユーザ識別子等とを有する商品の発送を指示する情報を作成し、作成した情報を出力部105に、商品の発送処理を行なうサーバ装置(図示せず)等に対して送信させる。これにより、処理部104による現在表示されていないオブジェクトに対応する商品の発送処理が終了する。
なお、上記の具体例2においては、図9に示したオブジェクト管理表が、オブジェクト格納部101に格納されたオブジェクト情報を管理する管理表である場合について説明したが、図9に示したオブジェクト管理表は、処理部104が1以上の検索処理等の処理を行なった結果取得したオブジェクト情報を管理する管理表であっても良く、オブジェクト格納部101に設けられた一のフォルダやディレクトリ等により管理されているオブジェクト情報を管理する管理表であってもよい。
以上、本実施の形態によれば、音声を用いてオブジェクトに関して処理を行なうことができる。例えば、音声を用いて、オブジェクトを検索し、検出されたオブジェクトを出力することができる。
なお、上記実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記実施の形態では、情報処理装置がスタンドアロンである場合について説明したが、情報処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、オブジェクトの情報である1以上のオブジェクト情報が格納されるオブジェクト格納部にアクセス可能なコンピュータを、音声を受け付ける音声受付部と、音声受付部が受け付けた音声について音声認識処理を行なう音声認識部と、オブジェクト情報に関して、音声認識部の音声認識処理の結果に応じた処理を行なう処理部と処理部の処理結果を出力する出力部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図11は、上記プログラムを実行して、上記実施の形態による情報処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図11において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図12は、コンピュータシステム900の内部構成を示す図である。図12において、コンピュータ901は、CD−ROMドライブ905に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態による情報処理装置等の機能を実行させるプログラムは、CD−ROM921に記憶されて、CD−ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態による情報処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。