(57)【要約】【課題】ユーザーが発した音声に対応した文字データに正確に変換できることが期待できる技術を提供すること。【解決手段】本発明は、ユーザーが発した音声を文字データに変換する装置である。この文字データ変換装置は、音声を入力する手段と、入力された音声を文字データに変換する手段と、前記の変換手段で変換された文字データをユーザーが訂正できる訂正手段と、前記の変換手段で変換された文字データと、その文字データから訂正された文字データとを対応づけて記憶する手段と、前記の変換手段で変換された文字データをキーとして前記の記憶手段を検索して「訂正された文字データ」を特定する手段とを備える。【選択図】  なし【特許請求の範囲】
【請求項１】
ユーザーが発した音声を文字データに変換する装置であり、
音声を入力する手段と、
入力された音声を文字データに変換する手段と、
前記変換手段で変換された文字データをユーザーが訂正できる訂正手段と、
前記変換手段で変換された文字データと、その文字データから訂正された文字データとを対応づけて記憶する手段と、
前記変換手段で変換された文字データをキーとして前記記憶手段を検索して「訂正された文字データ」を特定する手段とを備える文字データ変換装置。
【請求項２】
ユーザーを特定するユーザー特定手段を備える請求項１の文字データ変換装置であり、
前記記憶手段は、ユーザー特定手段で特定されたユーザーと、前記変換手段で変換された文字データと、その文字データから訂正された文字データとを対応づけて記憶し、
前記特定手段は、ユーザー特定手段で特定されたユーザーと前記変換手段で変換された文字データをキーとして前記記憶手段を検索して「訂正された文字データ」を特定することを特徴とする文字データ変換装置。
【請求項３】
前記記憶手段は、前記変換手段で変換された文字データに対応づけて複数の「訂正された文字データ」をそれぞれ重み付けして記憶可能であり、
前記特定手段は、キーとした「前記変換手段で変換された文字データ」に対応づけて複数の「訂正された文字データ」が記憶されている場合に、前記重みが最大の「訂正された文字データ」を特定することを特徴とする請求項１又は２の文字データ変換装置。
【請求項４】
ユーザーが発した音声に対応する返答を音声出力することによってユーザーと対話する装置であり、
音声を入力する手段と、
入力された音声を文字データに変換する手段と、
前記変換手段で変換された文字データをユーザーが訂正できる訂正手段と、
前記変換手段で変換された文字データと、その文字データから訂正された文字データとを対応づけて記憶する第１記憶手段と、
複数の文字データを記憶しているとともに、文字データ毎に返答を記憶している第２記憶手段と、
前記変換手段で変換された文字データが第２記憶手段に記憶されていない場合に、その「前記変換手段で変換された文字データ」をキーとして前記第１記憶手段を検索して「訂正された文字データ」を特定する手段と、
前記変換手段で変換された文字データ又は前記特定手段で特定された「訂正された文字データ」が第２記憶手段に記憶されている場合に、前記変換手段で変換された文字データ又は前記特定手段で特定された「訂正された文字データ」に対応した返答を音声出力する手段とを備える対話装置。
【請求項５】
ユーザーが発した音声をコンピュータが文字データに変換する方法であり、
音声を入力する工程と、
入力された音声を文字データに変換する工程と、
前記変換工程で変換された文字データをユーザーが訂正した場合に、その「前記変換工程で変換された文字データ」と、その文字データから訂正された文字データとを対応づけて記憶する工程と、
前記変換工程で変換された文字データをキーとして前記記憶工程で記憶された記憶内容を検索して「訂正された文字データ」を特定する工程とを備える文字データ変換方法。
【請求項６】
ユーザーが発した音声をコンピュータが文字データに変換するためのプログラムであり、
コンピュータに、以下の処理、即ち、
音声を入力する処理と、
入力された音声を文字データに変換する処理と、
前記変換処理で変換された文字データをユーザーが訂正した場合に、その「前記変換処理で変換された文字データ」と、その文字データから訂正された文字データとを対応づけて記憶する処理と、
前記変換処理で変換された文字データをキーとして前記記憶処理で記憶された記憶内容を検索して「訂正された文字データ」を特定する処理と
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】本発明は、ヒトが発した音声を文字データに変換する技術に関する。
【０００２】
【従来の技術】近年、ヒト（ユーザー）と対話できる装置やヒトが発した音声に応じて動作する装置（音声対応型ロボット）等が開発されている。これらの装置は、ヒトが発した音声を入力し、入力された音声を文字データに変換し、変換された文字データに応じて所定の処理を実行する。例えば対話装置であれば、変換された文字データに対応した返答を出力する処理を実行するものがある。また、音声対応型ロボットであれば、変換された文字データに対応した動作を実行するものがある。
上記した対話装置や音声対応型ロボット等は、ユーザーが発した音声を正確に文字データに変換する必要がある。特許文献１には、ユーザーが発した音声を文字データに変換するための一つの技術が開示されている。特許文献１の技術によると、ユーザーが音を区切りながらゆっくりと発声した言葉を文字データに変換することができる。
【０００３】
【特許文献１】
特開２０００−２４２２９５号公報
【０００４】
【発明が解決しようとする課題】特許文献１の技術では、ユーザーが発声した各音を正確に文字データに変換できることを前提としている。しかしながら、実際は、ユーザーが発した音声に対応した文字データに変換されないことがある。例えば、ユーザーがＸという言葉を発声したにもかかわらず、Ｙという文字データに変換されてしまうことがある。これは、声質や発音等には個人差があるために、入力された音声を文字データに変換する手法を全てのユーザーに対応できるように一般化するのは困難であることが一つの原因であると考えられる。
【０００５】
本発明は、上記した実情に鑑みてなされたものであり、ユーザーが発した音声に対応した文字データに正確に変換できることが期待できる技術を提供することを目的とする。
【０００６】
【課題を解決するための手段と作用と効果】上記課題を解決するために創作された請求項１の発明は、ユーザーが発した音声を文字データに変換する装置である。この文字データ変換装置は、音声を入力する手段と、入力された音声を文字データに変換する手段と、前記の変換手段で変換された文字データをユーザーが訂正できる訂正手段と、前記の変換手段で変換された文字データと、その文字データから訂正された文字データとを対応づけて記憶する手段と、前記の変換手段で変換された文字データをキーとして前記の記憶手段を検索して「訂正された文字データ」を特定する手段とを備える。
請求項１の文字データ変換装置によると、ユーザーが発した音声が変換手段で誤った文字データに変換された場合に、その誤って変換された文字データを訂正手段を用いて訂正できる。この訂正方法としてはいかなる方法を採用してもよく、例えば、キーボードを用いてユーザーが文字データを入力することによって訂正してもよいし、ユーザーが再発声することによって訂正するようにしてもよい。例えば、ユーザーがＸと発声したのに変換手段が誤ってＹという文字データに変換した場合は、変換された文字データＹをＸにユーザーが訂正できる。このとき、ＸとＹを対応づけた情報が記憶手段で記憶される。この情報が記憶されることにより、ユーザーが発声したＸが変換手段で再びＹと誤って変換されてしまった場合に、そのＹをキーとして記憶手段を検索することによってＸが特定できるようになる。本発明を用いると、ユーザーが発した音声と異なる文字データに変換手段が変換した場合でも、その誤りをカバーしてユーザーが発した音声に対応した文字データを特定できるようになる。
【０００７】
ユーザーによって声質や発音等が異なるために、次のような事象が起こる可能性がある。例えば、ユーザーＡがＹと発声したのを変換手段がＸという文字データに変換する一方で、ユーザーＢがＺと発声したのを変換手段がＸという文字データに変換することがある。双方が訂正されると、記憶手段には、Ｘ（変換された文字データ）とＹ（訂正された文字データ）とが対応づけて記憶されるとともに、Ｘ（変換された文字データ）とＺ（訂正された文字データ）とが対応づけて記憶される。この場合、ユーザーＡがＹと発声したのを変換手段がＸという文字データに再度変換した場合に、Ｚが特定される可能性が生じてしまう。このような問題に対処するために、上記した文字データ変換装置を以下の構成にしてもよい。即ち、上記の文字データ変換装置に、ユーザーを特定するユーザー特定手段を付加する。この場合、前記の記憶手段は、ユーザー特定手段で特定されたユーザーと、前記の変換手段で変換された文字データと、その文字データから訂正された文字データとを対応づけて記憶する。そして、前記の特定手段は、ユーザー特定手段で特定されたユーザーと前記の変換手段で変換された文字データをキーとして前記の記憶手段を検索して「訂正された文字データ」を特定する。
このような構成にすると、上記を例にすれば、ユーザーＡとＸ（変換された文字データ）とＹ（訂正された文字データ）とを対応づけて記憶できるとともに、ユーザーＢとＸ（変換された文字データ）とＺ（訂正された文字データ）とを対応づけて記憶できる。この場合、ユーザーＡがＹと発声したのを変換手段がＸという文字データに再度変換した場合に、ユーザーＡとＸをキーとして記憶手段が検索されてＹが特定される。本発明によると、個々のユーザーが発声した音声に対応した文字データに正確に変換できるようになることが期待できる。
【０００８】
前記の記憶手段は、前記の変換手段で変換された文字データに対応づけて複数の「訂正された文字データ」をそれぞれ重み付けして記憶可能であってもよい。この場合、前記の特定手段は、キーとした「前記の変換手段で変換された文字データ」に対応づけて複数の「訂正された文字データ」が記憶されている場合に、前記した重みが最大の「訂正された文字データ」を特定する。
上記した「重み」とは、例えば、その「訂正された文字データ」に対応づけられている「前記の変換手段で変換された文字データ」に変換手段が変換した総回数に対する、その「訂正された文字データ」をユーザーが発声した回数の割合を意味する。
以下の事象を例にして本発明を説明する。（１）ユーザーがＸと発声したにもかかわらず変換手段がＺに変換し、そのＺをユーザーがＸに訂正した。（２）ユーザーがＸと発声したにもかかわらず変換手段が再びＺに変換し、そのＺから記憶手段が検索されてＸが特定された。（３）ユーザーがＹと発声したにもかかわらず変換手段がＺに変換し、そのＺをユーザーがＹに訂正した。
上記の（１）〜（３）の事象が起こった場合は、記憶手段では、Ｚ（変換された文字データ）とＸ（訂正された文字データ）と２／３（重み）とが対応づけて記憶され、Ｚ（変換された文字データ）とＹ（訂正された文字データ）と１／３とが対応づけて記憶される。ここでの重みの分母は、変換手段がＺに変換した総回数である。また、重みの分子はＸ又はＹとユーザーが発声した回数である。この状態で、次の事象が起こったとする。（４）ユーザーがＸと発声したにもかかわらず変換手段がＺに変換した。この（４）の事象が起こると、特定手段はＺをキーとして記憶手段を検索し、重みが大きいＸを特定する。このように、本発明では、誤って変換される可能性の高い「訂正された文字データ」を選択するために、一つの文字データが複数の文字データに訂正された場合であってもうまく対応することができる。
【０００９】
本発明は、ユーザーが発した音声に対応する返答を音声出力することによってユーザーと対話する装置に具現化することができる。この対話装置は、音声を入力する手段と、入力された音声を文字データに変換する手段と、前記の変換手段で変換された文字データをユーザーが訂正できる訂正手段と、前記の変換手段で変換された文字データと、その文字データから訂正された文字データとを対応づけて記憶する第１記憶手段と、複数の文字データを記憶しているとともに、文字データ毎に返答を記憶している第２記憶手段と、前記の変換手段で変換された文字データが第２記憶手段に記憶されていない場合に、その「前記の変換手段で変換された文字データ」をキーとして前記の第１記憶手段を検索して「訂正された文字データ」を特定する手段と、前記の変換手段で変換された文字データ又は前記の特定手段で特定された「訂正された文字データ」が第２記憶手段に記憶されている場合に、前記の変換手段で変換された文字データ又は前記の特定手段で特定された「訂正された文字データ」に対応した返答を音声出力する手段とを備える。
この対話装置によると、ユーザーが発した音声とは異なる文字データに変換された場合でも、ユーザーが発した音声に対応した返答を出力できることが期待できる。
【００１０】
また、本発明は、ユーザーが発した音声をコンピュータが文字データに変換する方法として定義することができる。この文字データ変換方法は、音声を入力する工程と、入力された音声を文字データに変換する工程と、前記の変換工程で変換された文字データをユーザーが訂正した場合に、その「前記の変換工程で変換された文字データ」と、その文字データから訂正された文字データとを対応づけて記憶する工程と、前記の変換工程で変換された文字データをキーとして前記の記憶工程で記憶された記憶内容を検索して「訂正された文字データ」を特定する工程とを備える。
この方法を用いると、ユーザーが発声した音声をコンピュータが正確に文字データに変換できるようになることが期待できる。
【００１１】
また、本発明は、ユーザーが発した音声をコンピュータが文字データに変換するためのプログラムとして定義することもできる。このプログラムは、コンピュータに、以下の処理、即ち、音声を入力する処理と、入力された音声を文字データに変換する処理と、前記の変換処理で変換された文字データをユーザーが訂正した場合に、その「前記の変換処理で変換された文字データ」と、その文字データから訂正された文字データとを対応づけて記憶する処理と、前記の変換処理で変換された文字データをキーとして前記の記憶処理で記憶された記憶内容を検索して「訂正された文字データ」を特定する処理とを実行させる。
このプログラムを用いることによって、ユーザーが発声した音声をコンピュータが正確に文字データに変換できるようになることが期待できる。
【００１２】
【発明の実施の形態】上記各請求項に記載の発明は、下記の形態で好適に実施することができる。
（形態１）文字データ変換装置は、ユーザーが発声した音声（言葉）を入力するマイクを有する。マイクは、入力された音声波を電気信号化する。上記の変換手段は、マイクで電気信号化された音声をテキスト形式の文字データに変換する。
（形態２）文字データ変換装置はキーボードを有する。ユーザーは、キーボードに文字を入力することによって、上記した変換手段で変換された文字データを訂正できる。
（形態３）上記した第２記憶手段は、ユーザーに対する質問を記憶している。さらに、その質問に対する複数の答えを記憶しており、答え毎に返答を記憶している。
（形態４）ユーザー特定手段は、キーボードを用いてユーザー名が入力されることによってユーザーを特定する。
【００１３】
【実施例】（第１実施例）  図面を参照して、本発明の実施例を説明する。図１は、本実施例に係る対話装置（対話コンピュータ）１０の概略構成を示したものである。この対話装置１０は、ユーザーに対して質問し、その質問に対してユーザーが発声した答えを特定し、その特定された答えに対して返答する。
対話装置１０は、マイク２０と音声特定部３０と制御部４０と音声合成部５０とスピーカ６０とディスプレイ７０とキーボード８０と第１データベース９０と第２データベース１００とユーザー名−ユーザーＩＤ記憶部１１０等から構成される。
マイク２０は、ユーザーが発声した言葉（音声波）を入力する。そして、入力された言葉を電気信号に変換して音声特定部３０に送る。
音声特定部３０は、電気信号化された言葉をテキスト形式の文字データに変換する。音声特定部３０は、文字データを制御部４０に送る。
制御部４０には、音声特定部３０と音声合成部５０とディスプレイ７０とキーボード８０と第１データベース９０と第２データベース１００とユーザー名−ユーザーＩＤ記憶部１１０とが接続されている。制御部４０は、音声特定部３０から送られてくる文字データを入力する。そして、入力した文字データに基づいて返答を出力する処理を実行する。制御部４０は、他にも、ディスプレイ７０に情報に表示するための処理や、第２データベース１００やユーザー名−ユーザーＩＤ記憶部１１０の記憶内容を変更する処理等も実行する。制御部４０が実行する各処理については後で詳しく説明する。
【００１４】
ディスプレイ７０では種々の画像が表示される。表示される画像については後で説明する。ユーザーは、キーボード８０を用いて文字データを入力することができる。キーボード８０に入力された文字データは制御部４０に送られる。
ユーザー名−ユーザーＩＤ記憶部１１０には、ユーザーの名前と、そのユーザーを特定するＩＤとが対応づけて記憶されている。図２に、ユーザー名−ユーザーＩＤ記憶部１１０の記憶内容の一例を示す。対話装置１０のユーザーは、自分の名前を対話装置１０に予め登録しておく。ユーザー名の登録は、キーボード８０を用いて名前を入力することによって行なう。入力されたユーザー名は制御部４０に送られる。制御部４０は、ユーザー名が送られてくるとユーザーＩＤを取得し、そのユーザー名とユーザーＩＤとを対応づけてユーザー名−ユーザーＩＤ記憶部１１０で記憶する。
【００１５】
第１データベース９０には、ユーザーに対しての質問と、その質問の答えとして想定される答え群と、各答えに対しての返答とが対応づけて記憶されている。図３には、第１データベース９０の記憶内容の一例を示している。例えば、質問「好きな果物は何ですか」に対応づけて答え（リンゴ、梨、みかん等）が記憶されている。さらに、ユーザーの答え毎に返答が記憶されている。例えば、リンゴの場合であれば、「リンゴはおいしいよね」という返答が記憶されている。
【００１６】
図４に、第２データベース１００の記憶内容の一例を示す。第２データベース１００は、ユーザーＩＤと特定単語と真単語と重みとが対応づけて記憶されている。
「特定単語」とは、音声特定部３０で特定された単語（変換された文字データ）であって、第１データベース９０に記憶されていないものを意味する。例えば、ユーザーが発声した単語と異なる単語に変換された場合に、その変換された単語が特定単語となることがある。なお、本明細書での「単語」は、一つの文字又は文字の集まりを意味し、一般的にいわれる単語の概念よりも広い概念である。また、詳しくは後述するが、ユーザーは、音声特定部３０によってユーザーが発声した単語と異なる単語に変換された場合に、その誤って変換された単語を訂正することができる（キーボード８０を用いて単語を入力することができる）。
「真単語」とは、ユーザーがキーボード８０を用いて入力した単語を意味する。例えば、ユーザーが発声した単語と異なる文字データに音声特定部３０が変換した単語からユーザーによって訂正された単語（簡単にいうと、音声特定部３０が誤って特定した単語から訂正された単語）を意味する。図４を例にすると、特定単語「やし」に対応づけて真単語「なし」が記憶されているが、これは、ユーザーが「なし」と発声したにもかかわらず音声特定部３０が「やし」と変換し、その「やし」が「なし」に訂正されたことを意味している。また、特定単語「やし」に対応づけて真単語「やし」が記憶されているが、これは、ユーザーが「やし」と発声したのを音声特定部３０が「やし」と変換し、「やし」が第１データベース９０に記憶されていないためにユーザーにキーボード８０で単語を入力してもらったところ、「やし」と入力されたことを意味する。
「重み」とは、その重みと対応づけられている特定単語に音声特定部３０が変換した総回数に対する、その重みと対応づけられている真単語をユーザーが発声した回数の割合を意味する（単位はパーセント）。図４を例にすると特定単語「やし」と真単語「なし」と重み「８０」とが対応づけて記憶されているが、これは、音声特定部３０が「やし」と変換した総回数に対する、ユーザーが「なし」と発声した回数の割合が８０％であることを意味している。また、重みとともに分数が記憶されているが（図４の重み欄のカッコ内に示されている）、これは、その重みと対応づけられている特定単語に音声特定部３０が変換した総回数が分母であり、その重みと対応づけられている真単語をユーザーが発声した回数が分子である。図４を例にすると、特定単語「やし」と真単語「なし」に対応づけられている重みのカッコ内に１６／２０と記載されているが、これは、音声特定部３０が特定単語「やし」と変換したのが２０回あって、その２０回のうちにユーザーが「なし」と発声したのが１６回あったことを意味している。また、特定単語「あし」と真単語「なし」に対応づけられている重みのカッコ内に１／１と記載されているが、これは、音声特定部３０が特定単語「あし」と変換したのは１回しかなく、それが「なし」に訂正されたこと（即ちユーザーが「なし」と発声したこと）を意味している。
【００１７】
図１に示される音声合成部５０は、制御部４０から出力された文字データを電気信号に変換し、その電気信号化されたデータをスピーカ６０に送る。これにより、スピーカ６０から音声が出力される。
【００１８】
次に、対話装置１０が実行する処理について説明する。図５から図７には、対話装置１０が実行する処理のフローチャートを示している。
ユーザーは、対話装置１０を使用するのに先だって、キーボード８０を用いて自分の名前を入力する。対話装置１０は、ユーザーが入力したユーザー名を読取る（ステップＳ２）。ステップＳ２でユーザー名を読取ると、その読取ったユーザー名からユーザー名−ユーザーＩＤ記憶部１１０を検索してユーザーＩＤを特定する（ステップＳ４）。
続いて、対話装置１０は、ユーザーに対して質問する（ステップＳ６）。この処理は、具体的には以下のようにして実行される。まず、制御部４０は、第１データベース９０に記憶されている複数の質問の中から一つの質問をランダムに選択する。そして、選択された質問の文字データを音声合成部５０に送る。音声合成部５０は、送られてくる文字データ（質問）を電気信号化してスピーカ６０に送る。これにより、スピーカ６０から質問が音声出力される。
【００１９】
ユーザーに対して質問すると、その質問に対してのユーザーの答えを特定する（ステップＳ８）。この処理は、マイク２０に入力されたユーザーの答えを音声特定部３０が文字データに変換することによって実行される。音声特定部３０は、特定した答え（変換された文字データ）を制御部４０に送る。なお、ユーザーは、例えば「好きな果物は何ですか？」という質問に対して、「リンゴです」と答える場合もあれば、「私はリンゴが好きです」と答える場合もある。また、「リンゴ」と単語だけを答える場合もある。このステップＳ８では、制御部４０は、答えとなる単語（上記の例ではリンゴ）の前後に付けられる語句（「私は」や「が好きです」や「です」等）を除去して答えとなる単語のみを特定する。
次に、特定した答えが第１データベース９０に記憶されているか否かを判別する（ステップＳ１０）。この処理は、ステップＳ６で選択された質問に対応づけて記憶されている答え群の中に、ステップＳ８で特定した答えがあるか否かを確認することによって実行される。例えば、質問「好きな果物は何ですか？」に対応づけて「梨」が記憶されているために、ステップＳ８で特定した答えが「なし」であった場合はステップＳ１０でＹＥＳと判別される。これに対し、質問「好きな果物は何ですか？」に対応づけて「やし」は記憶されていないために、ステップＳ８で特定した答えが「やし」であった場合はステップＳ１０でＮＯと判別される。
ステップＳ１０でＹＥＳと判別されると、ステップＳ８で特定した答えに対応づけられた返答を出力する（ステップＳ１２）。この処理は以下のようにして実行する。まず、ステップＳ８で特定した答えから第１データベース９０を検索してその答えに対応づけられた返答を特定する。次いで、その特定した返答を音声合成部５０に送る。音声合成部５０が文字データの返答を電気信号に変換し、その電気信号化された返答をスピーカ６０に送ることによって返答が音声出力される。
【００２０】
図８には、対話装置１０とユーザーとの会話例を示している。上記したステップＳ６，Ｓ８，Ｓ１０，Ｓ１２という流れで処理された場合は、図８のパターン１のようになる。パターン１では、「好きな果物は何ですか？」という質問をした場合に、ユーザーが「梨」と答えたところ、音声特定部３０が「なし」と特定している。そして、「しゃりしゃり感がおいしいよね」と返答している。
【００２１】
一方、ステップＳ１０でＮＯと判別されると、図６のステップＳ２０に進む。ステップＳ２０では、ステップＳ８で特定した答えが、第２データベース１００の特定単語として記憶されているか否かを判別する。この処理は、ステップＳ８で特定した答えから第２データベース１００を検索することによって実行される。但し、この処理では、第２データベース１００に記憶されている全ての特定単語を検索対象にするのではなく、ステップＳ４で特定されたユーザーＩＤに対応づけられた特定単語群の中にステップＳ８で特定した答えがあるか否かが判別される。例えば、ユーザーＩＤが「ＸＸＸ１」であるとともにステップＳ８で特定された答えが「やし」だった場合は、ユーザーＩＤ「ＸＸＸ１」に対応づけて特定単語「やし」が記憶されているために（図４参照）、ステップＳ２０でＹＥＳと判別される。ステップＳ２０でＹＥＳと判別されるとステップＳ２２に進み、ステップＳ２０でＮＯと判別されると図７のステップＳ４０に進む。
ステップＳ２２では、重みが最も大きい真単語を特定する。例えば、ユーザーＩＤが「ＸＸＸ１」であるとともにステップＳ８で特定された答えが「やし」だった場合は、重みが最も大きい真単語「なし」を特定する。
ステップＳ２２で真単語を特定すると、その真単語が第１データベース９０に記憶されているか否かを判別する（ステップＳ２４）。このステップＳ２４でＹＥＳと判別された場合はステップＳ２６に進み、ＮＯと判別された場合はステップＳ３４に進む。
【００２２】
ステップＳ３４では、「あなたの言葉がわかりません。質問を変更します。」と音声出力する。そして、ステップＳ６に戻って他の質問を出力する。即ち、これ以上対話することが不可能であるために他の質問に移るのである。
【００２３】
ステップＳ２６では、ステップＳ２２で特定された真単語を発声したのか否かをユーザーに確認する。例えば、ステップＳ２２で特定された真単語が「なし」であった場合は、「梨と言いましたか？」と音声出力する。この音声出力と同時に、ディスプレイ７０の画面上に「はい又はいいえとお答え下さい」と表示する処理も実行される。この表示処理は、制御部４０が表示用データをディスプレイ７０に送ることによって行なわれる。
続いて、ユーザーが「はい」と発声したのか、あるいは「いいえ」と発声したのかを監視する（ステップＳ２８）。この処理は、音声特定部３０が「はい」又は「いいえ」と特定し、その「はい」又は「いいえ」を制御部４０が入力することによって実行される。ユーザーが「はい」と発声した場合にはステップＳ３０に進み。また、ユーザーが「いいえ」と発声した場合には図７のステップＳ４０に進む。
ステップＳ３０では、ステップＳ２２で特定された真単語に対応する返答を音声出力する。例えば、ステップＳ２２で特定された真単語が「なし」であった場合は、第１データベース９０において「なし」に対応づけて記憶されている「しゃりしゃり感がおいしいよね」を出力する。
ステップＳ３０の処理を終えると、続いて、第２データベース１００の記憶内容を変更する処理を実行する（ステップＳ３２）。例えば、特定単語が「やし」であって真単語「なし」が特定されてステップＳ３０までの処理が実行された場合は、特定単語「やし」と真単語「なし」とに対応づけられている重みを大きくするとともに、特定単語「やし」と他の真単語（例えば「やし」や「やぎ」）とに対応づけられている重みを小さくする。図４を例にすると、特定単語「やし」と真単語「なし」とに対応づけられている重み「８０（１６／２０）」を「８１（１７／２１）」に変更する。そして、特定単語「やし」と真単語「やし」とに対応づけられている重み「１５（３／２０）」を「１４（３／２１）」に変更し、特定単語「やし」と真単語「やぎ」とに対応づけられている重み「５（１／２０）」を「５（１／２１）」に変更する。また、例えば、ステップＳ８で特定された単語が「あし」であってステップＳ２２において真単語「なし」が特定されてステップＳ３０までの処理が実行された場合は、重み「１００（１／１）」を「１００（２／２）」に変更する。
【００２４】
上記したステップＳ６〜Ｓ１０，Ｓ２０〜Ｓ３２という流れで処理された場合は、図８のパターン２のようになる。パターン２では、「好きな果物は何ですか？」という質問に対してユーザーが「梨」と答えたが、音声特定部３０が誤って「やし」と特定している。この「やし」は第１データベース９０にないが、第２データベース１００に記憶されている。このとき、特定単語「なし」と真単語「なし」に対応づけられている重みが最大であるために、「梨とおっしゃいましたか？」とユーザーに尋ねている。ユーザーが「はい」と答えたので、「しゃりしゃり感がおいしいよね」と返答している。最後に、第２データベース１００の重みを変更している。
【００２５】
続いて、図７を参照して、ステップＳ４０からの処理について説明する。ステップＳ４０では、「話した言葉をキーボードに入力して下さい」と音声出力する。次いで、ユーザーがキーボード８０に入力したか否かを監視する（ステップＳ４２）。この処理は、ステップＳ４０の音声出力から３０秒経過するまでにキーボード８０に入力されるとＹＥＳとし、３０秒経過するまでにキーボード８０に入力されなかったらＮＯとする。ここでＹＥＳと判別されるとステップＳ４４に進み、ＮＯと判別されるとステップＳ５０に進む。ユーザーは、キーボード８０に文字データを入力することによって、音声特定部３０で誤って変換された文字データを訂正することができる。例えば、ユーザーＩＤＸＸＸ１に対応づけていずれの特定単語も記憶されていない場合に、ユーザーが「なし」と発声したにもかかわらずステップＳ８で「やし」と特定されると、ユーザーはキーボード８０を用いて「なし」と入力することができる。これにより、「やし」が「なし」に訂正されることになる。
【００２６】
ステップＳ５０では、「あなたの言葉がわかりません。質問を変更します。」と音声出力する。この場合は、ステップＳ６（図５）に戻って他の質問を出力する。
一方、ステップＳ４４では、キーボード入力された文字データが第１データベース９０に記憶されているか否かを判別する。即ち、ステップＳ６で選択された質問に対応づけられた答え群の中に、ステップＳ４２でキーボード入力された文字データがあるか否かを判別する。ここでＹＥＳと判別された場合はステップＳ４６に進み、ＮＯと判別された場合はステップＳ４８に進む。
ステップＳ４８では、「あなたの言葉がわかりません。質問を変更します。」と音声出力する。この場合は、ステップＳ６（図５）に戻って他の質問を出力する。ステップＳ４６では、キーボード入力された言葉に対応した返答を出力する。ステップＳ４６又はステップＳ４８の処理を終えると、第２データベース１００の記憶内容を変更する（ステップＳ５２）。このステップＳ５２で記憶内容がどのように変更されるのかは次で詳しく説明する。
【００２７】
ステップＳ２０でＮＯと判別されて、その後にステップＳ４０，Ｓ４２，Ｓ４４，Ｓ４６，Ｓ５２という流れで処理された場合は、図８のパターン３のようになる。パターン３では、「好きな果物は何ですか？」という質問に対してユーザーが「梨」と答えたが、音声特定部３０が誤って「やし」と特定している。特定された「やし」は、第１データベース９０に記憶されていないとともに、特定単語「やし」として第２データベース１００にも記憶されていない。キーボード入力を促すと「なし」と入力されている（即ち「やし」が「なし」に訂正されている）。そして、「しゃりしゃり感がおいしいよね」と返答している。この場合は、特定単語「やし」と真単語「なし」とを対応づけて第２データベース１００に記憶する。この場合の重みは１００（１／１）である。
また、ステップＳ２０でＮＯと判別されて、その後にステップＳ４０，Ｓ４２，Ｓ４４，Ｓ４８，Ｓ５２という流れで処理された場合は、図９のパターン４のようになる。パターン４では、「好きな果物は何ですか？」という質問に対してユーザーが「やし」と答えて音声特定部３０が「やし」と特定している。特定された「やし」は、第１データベース９０に記憶されていないとともに、特定単語「やし」として第２データベース１００にも記憶されていない。キーボード入力を促すと「やし」とキーボード８０に入力されている。そして、「あなたの言葉がわかりません。質問を変更します。」と音声出力している。この場合は、特定単語「やし」と真単語「やし」とを対応づけて第２データベース１００に記憶する。この場合の重みは１００（１／１）である。
また、ステップＳ２８でＮＯと判別されて、その後にステップＳ４０，Ｓ４２，Ｓ４４，Ｓ４８，Ｓ５２という流れで処理された場合は、図９のパターン５のようになる。パターン５では、「好きな果物は何ですか？」という質問に対してユーザーが「やし」と答えて音声特定部３０が「やし」と特定している。この「やし」は第１データベース９０に記憶されていないが、第２データベース１００に記憶されている。特定単語「やし」と真単語「なし」に対応づけられている重みが最大であるために、「梨とおっしゃいましたか？」とユーザーに聞く。このときユーザーが「いいえ」と答えたためにキーボード入力を促すと、「やし」とキーボード８０に入力された。そして、「あなたの言葉がわかりません。質問を変更します。」と音声出力している。この場合は、特定単語「やし」と対応づけられた全ての重みを変更する。図４を例にすると、特定単語「やし」と真単語「やし」に対応づけられた重み「１５（３／２０）」を「１９（４／２１）」に変更し、特定単語「やし」と真単語「なし」に対応づけられた重み「８０（１６／２０）」を「７６（１６／２１）」に変更し、特定単語「やし」と真単語「やぎ」に対応づけられた重み「５（１／２０）」を「５（１／２１）」に変更する。
【００２８】
上記した本実施例に係る対話装置１０によると、ユーザーが発声した言葉と異なる文字データに音声特定部３０が誤って変換した場合でも、その誤りをカバーしてユーザーが発声した言葉を正確に特定できる。また、第２データベース１００でユーザー毎に特定単語と真単語が記憶されているために、発音や声質等が異なる個々のユーザーに応じて真単語を特定できる。
【００２９】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
上記した実施例では、ユーザーを特定する方法としてキーボード８０で名前を入力する方法を採用していたが（ステップＳ２）、例えば、自分の名前をユーザーに発声してもらうことによってユーザーを特定することもできる。また、カメラを用いてユーザーを撮影することによってユーザーを特定することもできる。このカメラを用いる場合は、ユーザー名を登録する必要はなく、ユーザーの顔の特徴とユーザーＩＤとを対応づけて記憶すればよい。
上記した実施例では、ユーザーが特定単語を真単語に訂正する方法としてキーボード８０に真単語を入力する方法を採用していたが、次のような方法を採用することもできる。例えば、ユーザーに真単語を書いてもらって、それをカメラ等で撮影して読取ることによって真単語に訂正することができる。また、ユーザーに再発声してもらうことによって真単語に訂正することもできる。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【図面の簡単な説明】
【図１】実施例に係る対話装置の概略構成。
【図２】ユーザー名−ユーザーＩＤ記憶部の記憶内容の一例。
【図３】第１データベースの記憶内容の一例。
【図４】第２データベースの記憶内容の一例。
【図５】対話装置が実行する処理のフローチャート。
【図６】対話装置が実行する処理のフローチャート（図５の続き）。
【図７】対話装置が実行する処理のフローチャート（図６の続き）。
【図８】対話装置が実行する処理の一例（パターン１〜３）。
【図９】対話装置が実行する処理の一例（パターン４と５）。
【符号の説明】
１０・・対話装置
２０・・マイク
３０・・音声特定部
４０・・制御部
５０・・音声合成部
６０・・スピーカ
７０・・ディスプレイ
８０・・キーボード
９０・・第１データベース
１００・・第２データベース
１１０・・ユーザー名−ユーザーＩＤ記憶部
【図１】
2004341293.tif 000002
【図２】
2004341293.tif 000003
【図３】
2004341293.tif 000004
【図４】
2004341293.tif 000005
【図５】
2004341293.tif 000006
【図６】
2004341293.tif 000007
【図７】
2004341293.tif 000008
【図８】
2004341293.tif 000009
【図９】
2004341293.tif 000010