(57)【要約】【課題】使用者の発話の習熟度を適切に判定し、効率の良い対話を行うことができる音声認識機器制御装置を提供する。【解決手段】使用者から発話が入力される音声入力手段２と、入力された発話を認識する音声認識手段３と、使用者への応答を出力する応答出力手段１０と、音声認識手段３の認識結果に基づいて機器を制御する機器制御手段１１とを備える。機器を制御するために必要な所定数の項目のうち、認識された発話から特定される項目の個数を検出する入力項目数検出手段４と、該発話から特定される項目の個数の基準値を設定する基準入力項目数設定手段６と、入力項目数検出手段４により検出された項目の個数と、基準入力項目数設定手段６により設定された基準値とを比較する入力項目数比較手段７と、比較の結果に基づいて使用者の発話の習熟度を判定する習熟度判定手段８と、判定された習熟度に応じて出力する応答を制御する応答制御手段９とを備える。【選択図】図１
2007114475.tif 000002
【特許請求の範囲】
【請求項１】
使用者から発話が入力される音声入力手段と、
前記音声入力手段に入力された発話を認識する音声認識手段と、
前記使用者への応答を出力する応答出力手段と、
前記音声認識手段の認識結果に基づいて機器を制御する機器制御手段とを備えた音声認識機器制御装置において、
前記機器を制御するために必要な所定数の項目のうち、前記音声認識手段によって認識された発話から特定される項目の個数を検出する入力項目数検出手段と、
前記入力された発話の内容に基づいて、該発話から特定される項目の個数の基準値を設定する基準入力項目数設定手段と、
前記入力項目数検出手段により検出された項目の個数と、前記基準入力項目数設定手段により設定された項目の個数の基準値とを比較する入力項目数比較手段と、
前記入力項目数比較手段の比較結果に基づいて、前記使用者の発話の習熟度を判定する習熟度判定手段と、
前記習熟度判定手段により判定された習熟度に応じて、前記応答出力手段から出力する応答を制御する応答制御手段とを備えることを特徴とする音声認識機器制御装置。
【請求項２】
使用者の発話の暫定的な習熟度を更新可能に記憶する習熟度記憶手段を備え、
前記基準入力項目数設定手段は、前記習熟度記憶手段により記憶された前記使用者の発話の暫定的な習熟度に基づいて、該発話から特定される項目の個数の基準値を設定することを特徴とする請求項１記載の音声認識機器制御装置。
【請求項３】
前記機器の種類は複数であり、
前記習熟度記憶手段は、前記使用者の発話の暫定的な習熟度を、前記機器の種類毎に記憶し、
前記基準入力項目数設定手段は、前記発話から特定される項目の個数の基準値を、前記機器の種類毎に設定し、
前記入力項目数比較手段は、前記入力項目数検出手段により検出された項目の個数と、前記機器の種類毎に設定された項目の個数の基準値とを比較し、
前記習熟度判定手段は、前記入力項目数比較手段の比較結果に基づいて、前記機器の種類毎に前記使用者の発話の習熟度を判定することを特徴とする請求項２記載の音声認識機器制御装置。
【請求項４】
前記複数の種類の機器には、それぞれ、前記使用者により操作可能な複数の種類の操作対象が備えられており、
前記機器を制御するために必要な所定数の項目には、前記操作対象を操作するために必要な項目が含まれ、
前記習熟度記憶手段は、前記使用者の発話の暫定的な習熟度を、前記機器の種類毎及び操作対象の種類毎に記憶し、
前記基準入力項目数設定手段は、前記発話から特定される項目の個数の基準値を、前記機器の種類毎及び操作対象の種類毎に設定し、
前記入力項目数比較手段は、前記入力項目数検出手段により検出された項目の個数と、前記機器の種類毎及び操作対象の種類毎に設定された項目の個数の基準値とを比較し、
前記習熟度判定手段は、前記入力項目数比較手段の比較結果に基づいて、前記機器の種類毎及び操作対象の種類毎に前記使用者の発話の習熟度を判定することを特徴とする請求項３記載の音声認識機器制御装置。
【請求項５】
前記習熟度記憶手段は、前記習熟度判定手段の判定結果に基づいて、該習熟度記憶手段に記憶された前記使用者の発話の暫定的な習熟度を更新することを特徴とする請求項２〜請求項４のうちいずれか１項記載の音声認識機器制御装置。
【請求項６】
前記応答制御手段は、前記機器を制御するために必要な所定数の項目のうち、前記音声認識手段によって認識された発話から特定されていない項目がある場合には、該特定されていない項目のうちの、前記習熟度判定手段により判定された習熟度に応じて設定される所定数の項目の入力を使用者に促すように応答を制御する手段を備えることを特徴とする請求項１〜請求項５のうちいずれか１項記載の音声認識機器制御装置。
【請求項７】
移動体に搭載される音声認識機器制御装置であり、
前記移動体の運転者である前記使用者の運転負荷を検出する運転負荷検出手段を備え、
前記基準入力項目数設定手段は、前記入力された発話の内容と、前記運転負荷検出手段により検出された前記運転負荷とに基づいて、該発話から特定される項目の個数の基準値を設定することを特徴とする請求項１記載の音声認識機器制御装置。
【請求項８】
移動体に搭載される音声認識機器制御装置であり、
前記移動体の運転者である前記使用者の運転負荷を検出する運転負荷検出手段を備え、
前記基準入力項目数設定手段は、前記習熟度記憶手段により記憶された前記使用者の発話の暫定的な習熟度と、前記運転負荷検出手段により検出された前記運転負荷とに基づいて、該発話から特定される項目の個数の基準値を設定することを特徴とする請求項２〜請求項５のうちいずれか１項記載の音声認識機器制御装置。
【請求項９】
前記応答制御手段は、前記機器を制御するために必要な所定数の項目のうち、前記音声認識手段によって認識された発話から特定されていない項目がある場合には、該特定されていない項目のうちの、前記習熟度判定手段により判定された習熟度と前記運転負荷検出手段により検出された前記運転負荷とに応じて設定される所定数の項目の入力を使用者に促すように応答を制御する手段を備えることを特徴とする請求項７又は請求項８記載の音声認識機器制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、使用者により入力される音声を認識し、認識した結果に基づいて応答して使用者と対話し、機器を制御するための情報を取得する音声認識機器制御装置に関する。
【背景技術】
【０００２】
近年、例えば、使用者が物品の購入や機器の操作等を行うシステムにおいて、使用者により入力される音声を認識して、物品の購入や機器の操作等に必要な情報を取得する音声認識機器制御装置が用いられている。このような音声認識機器制御装置では、使用者により入力される音声（発話）を認識し、認識した結果に基づいて使用者に応答（音声ガイドを出力）して使用者の次の発話を促すことで、使用者との対話が行われる。そして、使用者との対話を認識した結果から、物品の購入や機器の操作等を行うために必要な情報が取得される。
【０００３】
このような音声認識機器制御装置において、音声ガイドや対話の流れが、使用者や使用者の状況に関わらず固定されたものであると、効率の良い対話を行うことができない場合がある。例えば、音声認識機器制御装置への発話に不慣れな使用者に合わせた音声ガイドは、音声認識機器制御装置への発話に慣れた使用者には冗長である。よって、このような音声ガイドに固定された音声認識機器制御装置を用いたシステムは、発話に慣れた使用者にとっては使いにくいものとなる。このため、使用者の発話の習熟度を判定し、判定した結果に基づいて使用者への応答を変更する音声認識機器制御装置が提案されている（例えば、特許文献１を参照）。
【０００４】
特許文献１の音声認識機器制御装置である音声認識応答装置は、電話による使用者からの発話を認識して応答するものである。前記音声認識応答装置は、例えば、電話による航空券予約システムに適用された場合には、出発地・目的地の空港名や出発の日時等を、電話による使用者との対話から音声認識により取得する。
【０００５】
このとき、前記音声認識応答装置は、使用者の発話の習熟度を判定する習熟度判定手段と、習熟度判定手段の判定結果に基づいて使用者との対話の流れ（音声ガイドの内容と音声ガイドの発話速度）を制御する発話制御手段とを備える。習熟度判定手段は、音声ガイドの出力が開始されてから使用者が発話するまでの時間Ａ、使用者の発話時間Ｔ、使用者の発話音数（発話語数）Ｎに基づいて、Ａ及びＴの時間が短く発話音数Ｎが少ないほど習熟度は高く、Ａ及びＴの時間が長く発話音数Ｎが多いほど習熟度は低いと判定する。そして、発話制御手段は、習熟度判定手段の判定結果に基づいて決められる音声ガイドの内容と発話速度とを用いて、習熟度が高い場合には、簡潔で短い音声ガイドを早く発話し、習熟度が低い場合には、詳細な音声ガイドをゆっくり発話する。
【０００６】
しかしながら、発話時間や発話音数といった発話の傾向は、使用者の個人的な嗜好よっても相違するものであり、発話時間が長く発話音数が多いからといって、必ずしも発話の習熟度が低いとは限らない。例えば、発話の速度がゆっくりでも、必要な情報を全て確実に入力できているような場合であれば、使用者の発話の習熟度は高いと考えられる。従って、特許文献１の音声認識応答装置のように、発話時間や発話音数に基づいて使用者の発話の習熟度を判定すると、適切に習熟度を判定できず、効率の良くない対話となる場合があるという不都合があった。
【特許文献１】特開２０００−１９４３８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、かかる不都合を解消して、使用者の発話の習熟度を適切に判定し、効率の良い対話を行うことができる音声認識機器制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
かかる目的を達成するために、本発明の音声認識機器制御装置は、使用者から発話が入力される音声入力手段と、前記音声入力手段に入力された発話を認識する音声認識手段と、前記使用者への応答を出力する応答出力手段と、前記音声認識手段の認識結果に基づいて機器を制御する機器制御手段とを備えた音声認識機器制御装置において、前記機器を制御するために必要な所定数の項目のうち、前記音声認識手段によって認識された発話から特定される項目の個数を検出する入力項目数検出手段と、前記入力された発話の内容に基づいて、該発話から特定される項目の個数の基準値を設定する基準入力項目数設定手段と、前記入力項目数検出手段により検出された項目の個数と、前記基準入力項目数設定手段により設定された項目の個数の基準値とを比較する入力項目数比較手段と、前記入力項目数比較手段の比較結果に基づいて、前記使用者の発話の習熟度を判定する習熟度判定手段と、前記習熟度判定手段により判定された習熟度に応じて、前記応答出力手段から出力する応答を制御する応答制御手段とを備えることを特徴とする。
【０００９】
前記本発明の音声認識機器制御装置によれば、前記入力項目数検出手段は、前記機器を制御するために必要な所定数の項目のうち、前記音声認識手段によって認識された発話から特定される項目の個数を検出する。ここで、前記機器を制御するために必要な項目は、例えば、制御対象（機器の種類）や、制御対象毎の制御内容や、制御内容毎のパラメータである。このとき、必要な項目の個数は、制御対象と制御内容とに応じて予め定められる所定数となる。また、前記基準入力項目数設定手段は、前記入力された発話の内容に基づいて、該発話から特定される項目の個数の基準値を設定する。ここで、前記基準値としては、例えば、標準的な使用者の発話から特定される項目の個数として予め定められた所定値を用いることができる。
【００１０】
このとき、使用者が機器の制御をするための発話に慣れている場合には、使用者は１回の発話でより多くの項目を入力することができると考えられる。そこで、前記習熟度判定手段は、前記入力項目数比較手段の比較結果に基づいて、前記使用者の発話の習熟度を判定する。これにより、使用者が１回の発話で入力することができる項目の個数が多いか少ないかに応じて、使用者の発話の習熟度が判定される。よって、例えば、発話速度や発話音数といった使用者の発話の傾向によらずに、機器の制御をするための使用者の発話の習熟度が適切に判定される。そして、前記応答制御手段は、前記習熟度判定手段により判定された習熟度に応じて、前記応答出力手段から出力する応答を制御する。本発明によれば、このように制御された応答の出力により、使用者の次の発話を促すことで、効率の良い対話を行うことができる。
【００１１】
また、前記本発明の音声認識機器制御装置において、使用者の発話の暫定的な習熟度を更新可能に記憶する習熟度記憶手段を備え、前記基準入力項目数設定手段は、前記習熟度記憶手段により記憶された前記使用者の発話の暫定的な習熟度に基づいて、該発話から特定される項目の個数の基準値を設定することが好ましい。
【００１２】
これによれば、前記習熟度記憶手段は、使用者の発話の暫定的な習熟度を更新可能に記憶する。ここで、使用者の発話の暫定的な習熟度としては、例えば、使用者により予め定められた所定値や、使用者の過去の発話から判定された習熟度に基づいて定められた所定値を用いることができる。そして、前記基準入力項目数設定手段は、前記習熟度記憶手段により記憶された前記使用者の発話の暫定的な習熟度に基づいて、該発話から特定される項目の個数の基準値を設定する。よって、暫定的な習熟度に基づいて基準値が設定され、この基準値との比較により習熟度が判定されるので、現在の習熟度を暫定的な習熟度に対して相対的に決定することができる。これにより、例えば、過去の発話における使用者の習熟度の傾向をより反映させて、現在の習熟度を決定することができる。
【００１３】
さらに、前記本発明の音声認識機器制御装置において、前記機器の種類が複数である場合には、前記習熟度記憶手段は、前記使用者の発話の暫定的な習熟度を、前記機器の種類毎に記憶し、前記基準入力項目数設定手段は、前記発話から特定される項目の個数の基準値を、前記機器の種類毎に設定し、前記入力項目数比較手段は、前記入力項目数検出手段により検出された項目の個数と、前記機器の種類毎に設定された項目の個数の基準値とを比較し、前記習熟度判定手段は、前記入力項目数比較手段の比較結果に基づいて、前記機器の種類毎に前記使用者の発話の習熟度を判定することが好ましい。
【００１４】
すなわち、前記機器の種類が複数である場合には、使用者によって使用する頻度の高い機器が異なり、機器の種類毎に習熟度が異なることが考えられる。このとき、前記習熟度記憶手段は、前記使用者の発話の暫定的な習熟度を、前記機器の種類毎に記憶し、前記基準入力項目数設定手段は、前記発話から特定される項目の個数の基準値を、該機器の種類毎に設定する。そして、前記入力項目数比較手段は、前記入力項目数検出手段により検出された項目の個数と、前記機器の種類毎に設定された項目の個数の基準値とを比較する。よって、前記習熟度判定手段により、前記使用者の発話の習熟度は、前記機器の種類毎に判定される。従って、例えば、機器の種類が複数であり、各使用者の発話の習熟度が機器の種類毎に異なる場合でも、それぞれの機器についての使用者の発話の習熟度が適切に判定される。
【００１５】
さらに、前記複数の種類の機器に、それぞれ、前記使用者により操作可能な複数の種類の操作対象が備えられており、前記機器を制御するために必要な所定数の項目に、前記操作対象を操作するために必要な項目が含まれる場合には、前記習熟度記憶手段は、前記使用者の発話の暫定的な習熟度を、前記機器の種類毎及び操作対象の種類毎に記憶し、前記基準入力項目数設定手段は、前記発話から特定される項目の個数の基準値を、前記機器の種類毎及び操作対象の種類毎に設定し、前記入力項目数比較手段は、前記入力項目数検出手段により検出された項目の個数と、前記機器の種類毎及び操作対象の種類毎に設定された項目の個数の基準値とを比較し、前記習熟度判定手段は、前記入力項目数比較手段の比較結果に基づいて、前記機器の種類毎及び操作対象の種類毎に前記使用者の発話の習熟度を判定することが好ましい。
【００１６】
すなわち、前記複数の種類の機器に、それぞれ、前記使用者により操作可能な複数の種類の操作対象が備えられているときには、前記機器を制御するために必要な所定数の項目に、前記操作対象を操作するために必要な項目が含まれ、操作対象毎に項目が異なることとなる。このような場合に、使用者によって使用する頻度の高い機器が異なることに加えて、さらに各機器において使用する頻度の高い操作対象が異なり、機器の種類毎及び操作対象の種類毎に習熟度が異なることが考えられる。このとき、前記習熟度記憶手段は、前記使用者の発話の暫定的な習熟度を、前記機器の種類毎及び操作対象の種類毎に記憶し、前記基準入力項目数設定手段は、前記発話から特定される項目の個数の基準値を、該機器の種類毎及び操作対象の種類毎に設定する。そして、前記入力項目数比較手段は、前記入力項目数検出手段により検出された項目の個数と、前記機器の種類毎及び操作対象の種類毎に設定された項目の個数の基準値とを比較する。よって、前記習熟度判定手段により、前記使用者の発話の習熟度が、前記機器の種類毎及び操作対象の種類毎に判定される。従って、例えば、複数の種類の機器に、それぞれ、使用者により操作可能な複数の種類の操作対象が備えられ、各使用者の発話の習熟度が機器の種類毎及び操作対象の種類毎に異なる場合でも、それぞれの機器及び操作対象についての使用者の発話の習熟度が適切に判定される。
【００１７】
さらに、前記本発明の音声認識機器制御装置において、前記習熟度記憶手段は、前記習熟度判定手段の判定結果に基づいて、該習熟度記憶手段に記憶された前記使用者の発話の暫定的な習熟度を更新することが好ましい。
【００１８】
これによれば、前記習熟度記憶手段は、前記習熟度判定手段の判定結果に基づいて、該習熟度記憶手段に記憶された前記使用者の発話の暫定的な習熟度を更新する。なお、このとき、前記習熟度判定手段により、前記使用者の発話の習熟度が前記機器の種類毎に判定されている場合には、前記習熟度記憶手段は、該機器の種類毎に記憶された前記使用者の発話の暫定的な習熟度を更新する。また、前記習熟度判定手段により、前記使用者の発話の習熟度が前記機器の種類毎及び操作対象の種類毎に判定されている場合には、前記習熟度記憶手段は、該機器の種類毎及び操作対象の種類毎に記憶された前記使用者の発話の暫定的な習熟度を更新する。これにより、習熟度を判定するための基準値が、適宜更新された暫定的な習熟度に基づいて設定されるので、現在の習熟度がより適切に判定される。さらに、このとき、必要な項目が多数あり、応答出力手段により出力される応答（質問）が多岐に亘る場合には、使用者の習熟度は、質問内容毎に変動することが考えられる。例えば、対話が進んでいくうちに、使用者にとって慣れている質問となったり、慣れていない質問となったりして、習熟度が変動することがある。これに対し、本発明によれば、暫定的な習熟度は適宜更新され、この暫定的な習熟度に基づいて基準値が設定され、この基準値との比較により習熟度が判定されるので、対話中に使用者の発話の習熟度が変動しても適切に判定される。
【００１９】
さらに、前記本発明の音声認識機器制御装置において、前記応答制御手段は、前記機器を制御するために必要な所定数の項目のうち、前記音声認識手段によって認識された発話から特定されていない項目がある場合には、該特定されていない項目のうちの、前記習熟度判定手段により判定された習熟度に応じて設定される所定数の項目の入力を使用者に促すように応答を制御する手段を備えることが好ましい。
【００２０】
これによれば、機器を制御するために必要な所定数の項目のうち、音声認識手段によって認識された発話から特定されていない項目がある場合には、その後の使用者との対話で、該特定されていない項目が入力される必要がある。よって、前記特定されていない項目の入力を使用者に促すような応答（音声ガイド）が応答出力手段から出力される。このとき、前記応答制御手段は、前記特定されていない項目のうちの、前記習熟度判定手段により判定された習熟度に応じて設定される所定数の項目の入力を使用者に促すように応答を制御する。例えば、前記応答制御手段は、前記習熟度が高いほど前記所定数を大きい値に設定する。なお、前記機器の種類が複数であり、前記使用者の発話の習熟度が、前記機器の種類毎に判定されている場合には、前記機器を制御するために必要な所定数の項目は、該機器の種類毎に定められる項目である。また、前記複数の種類の機器に、それぞれ、前記使用者により操作可能な複数の種類の操作対象が備えられ、前記使用者の発話の習熟度が、前記機器の種類毎及び操作対象の種類毎に判定されている場合には、前記機器を制御するために必要な所定数の項目は、該機器の種類毎及び操作対象の種類毎に定められる項目である。
【００２１】
これにより、例えば、機器を制御するための発話に慣れていて、一回の発話で多くの項目を入力することができる使用者には、多くの項目の入力を促すような音声ガイドが出力される。また、例えば、機器を制御するための発話に不慣れで、一回の発話で多くの項目を入力することができない使用者には、項目の入力を一つずつ促すような音声ガイドが出力される。従って、本発明によれば、使用者の発話の習熟度を考慮した適切な応答が応答出力手段から出力され、効率の良い対話が行われる。
【００２２】
また、前記本発明の音声認識機器制御装置は、例えば、車両等の移動体に搭載され、該移動体の運転者によって機器を制御するために用いられる。このとき、運転中においては、例えば車両の場合、車両の走行状態等による運転者の運転負荷に応じて、運転者が運転に集中しなければならない度合が異なる。よって、前記本発明の音声認識機器制御装置が、移動体に搭載されたものであるときに、前記移動体の運転者である前記使用者の運転負荷を検出する運転負荷検出手段を備え、前記基準入力項目数設定手段は、前記入力された発話の内容と、前記運転負荷検出手段により検出された前記運転負荷とに基づいて、該発話から特定される項目の個数の基準値を設定することが好ましい。特に、前記習熟度記憶手段を備える場合には、前記移動体の運転者である前記使用者の運転負荷を検出する運転負荷検出手段を備え、前記基準入力項目数設定手段は、前記入力された発話の内容の種類に応じた、前記習熟度記憶手段により記憶された前記使用者の発話の暫定的な習熟度と、前記運転負荷検出手段により検出された前記運転負荷とに基づいて、該発話から特定される項目の個数の基準値を設定することが好ましい。
【００２３】
これによれば、前記運転負荷検出手段により、前記移動体の運転者である前記使用者の運転負荷が検出される。ここで、前記運転負荷は、例えば車両の場合、車速、ステアリング操作、ブレーキ操作、手掌部の発汗等から検出することができる。そして、例えば、運転負荷が高いときには、使用者が運転に集中しなければならない度合が高いので機器の制御に集中する度合は低くなり、一回の発話で入力される項目は運転負荷が低いときに比べて少なくなると考えられる。このとき、運転負荷が低いときと同じ基準値と比較した結果に基づいて習熟度が判定されると、使用者の発話の習熟度は、実際の習熟度より低く判定される惧れがある。これに対し、前記基準入力項目数設定手段は、前記使用者の発話の内容、又は前記習熟度記憶手段により記憶された前記使用者の発話の暫定的な習熟度に加えて、前記運転負荷検出手段により検出された前記運転負荷に基づいて、該発話から特定される項目の個数の基準値を設定する。これにより、運転者である使用者の運転負荷を考慮した基準値が設定されるので、運転中であっても、使用者の発話の実際の習熟度が適切に判断される。なお、前記使用者の発話の暫定的な習熟度が、前記機器の種類毎に記憶されたものである場合には、前記発話から特定される項目の個数の基準値は、該機器の種類毎に設定されるので、前記使用者の発話の習熟度は、該機器の種類毎に判定される。また、前記使用者の発話の暫定的な習熟度が、前記機器の種類毎及び操作対象の種類毎に記憶されたものである場合には、前記発話から特定される項目の個数の基準値は、該機器の種類毎及び操作対象の種類毎に設定されるので、前記使用者の発話の習熟度は、該機器の種類毎及び操作対象の種類毎に判定される。
【００２４】
さらに、前記本発明の音声認識機器制御装置において、前記運転負荷検出手段を備えているときには、前記応答制御手段は、前記機器を制御するために必要な所定数の項目のうち、前記音声認識手段によって認識された発話から特定されていない項目がある場合には、該特定されていない項目のうちの、前記習熟度判定手段により判定された習熟度と前記運転負荷検出手段により検出された前記運転負荷とに応じて設定される所定数の項目の入力を使用者に促すように応答を制御する手段を備えることが好ましい。
【００２５】
これによれば、機器を制御するために必要な所定数の項目のうち、音声認識手段によって認識された発話から特定されていない項目がある場合には、その後の使用者との対話で、該特定されていない項目が入力される必要がある。よって、前記特定されていない項目の入力を使用者に促すような応答（音声ガイド）が応答出力手段から出力される。このとき、前記応答制御手段は、前記特定されていない項目のうちの、前記習熟度判定手段により判定された習熟度と前記運転負荷検出手段により検出された前記運転負荷とに応じて設定される所定数の項目の入力を使用者に促すように応答を制御する。例えば、前記応答制御手段は、前記習熟度が高いほど前記所定数を大きい値に設定すると共に、前記運転負荷が高いほど前記所定数を低めに制限した値に設定する。なお、前記機器の種類が複数であり、前記使用者の発話の習熟度が、前記機器の種類毎に判定されている場合には、前記機器を制御するために必要な所定数の項目は、該機器の種類毎に定められる項目である。また、前記複数の種類の機器に、それぞれ、前記使用者により操作可能な複数の種類の操作対象が備えられ、前記使用者の発話の習熟度が、前記機器の種類毎及び操作対象の種類毎に判定されている場合には、前記機器を制御するために必要な所定数の項目は、該機器の種類毎及び操作対象の種類毎に定められる項目である。
【００２６】
これにより、例えば、機器を制御するための発話に慣れていて、一回の発話で多くの項目を入力することができる使用者には、多くの項目の入力を促すような音声ガイドが出力される。また、例えば、機器を制御するための発話に不慣れで、一回の発話で多くの項目を入力することができない使用者には、項目の入力を一つずつ促すような音声ガイドが出力される。さらに、例えば、運転負荷が高く、使用者が運転に集中しなければならない度合が高いので機器の制御に集中する度合は低いときには、運転負荷が低いときに比べて少ない項目の入力を促すような音声ガイドが出力される。従って、本発明によれば、使用者の発話の習熟度に加えて使用者の運転負荷も考慮した適切な応答が応答出力手段から出力され、効率の良い対話が行われる。
【発明を実施するための最良の形態】
【００２７】
本発明の一実施形態を添付の図面を参照して説明する。図１は、本実施形態である音声認識機器制御装置の機能ブロック図であり、図２〜７は、図１の音声認識機器制御装置における音声認識による機器制御処理のフローチャートである。また、図８は、図１の音声認識機器制御装置における対話例を示す。
【００２８】
図１を参照して、音声認識機器制御装置１は、マイクロコンピュータ等により構成された電子ユニットであり、その処理機能として、運転者の発話が入力される音声入力手段２と、入力された発話を認識する音声認識手段３と、運転者への応答を出力する応答出力手段１０と、認識結果に基づいて機器を制御する機器制御手段１１と、運転者の運転負荷を検出する運転負荷検出手段１２とを備え、車両１３に搭載されている。
【００２９】
さらに、音声認識機器制御装置１は、機器を制御するために必要な所定数の項目のうち、認識された発話から特定される項目の個数（入力項目数）を検出する入力項目数検出手段４と、運転者の発話の暫定的なスキルレベルを記憶するスキルレベルデータベース５と、運転者の発話の暫定的なスキルレベルと運転負荷とに基づいて、入力項目数の基準値を設定する基準入力項目数設定手段６と、入力項目数と入力項目数の基準値とを比較する入力項目数比較手段７と、比較結果に基づいて運転者の発話のスキルレベルを判定するスキルレベル判定手段８と、判定したスキルレベルに応じて出力する応答を制御する応答制御手段９とを備える。
【００３０】
音声入力手段２は、車両１３の運転者の発話が入力されるものであり、マイク等により構成される。
【００３１】
音声認識手段３は、音声入力手段２に入力された発話について、構文解析等の音声認識処理を行い、キーワードを抽出する。なお、音声認識処理の手法としては、特許文献１に記載されているような、一般的な手法を用いることができる。
【００３２】
応答出力手段１０は、車両１３の運転者への応答（音声ガイド）を出力するものであり、スピーカ等により構成される。応答は、例えば、ＴＴＳ(Text to Speech)等の音声合成処理を用いて音声出力される。
【００３３】
機器制御手段１１は、音声認識手段３によって認識された発話から特定される、機器を制御するために必要な所定数の項目（後述する）のデータに基づいて、車両１３に装備された機器を制御する。
【００３４】
制御される機器は、図示を省略するが、本実施形態では、車両１３に装備されたオーディオ、ナビゲーションシステム、エアコンディショナ等に大別される。以下、この大別された各種類の機器を総称的にアプリケーションという。また、各アプリケーションに備えられた操作可能な要素（デバイス，コンテンツ等）が予め定められており、その要素が、各アプリケーションの操作対象として、機器制御手段１１により制御される。例えば、アプリケーションがオーディオである場合には、その操作対象（デバイス）は、ＣＤ、ＤＶＤ、ラジオ、ＭＰ３、スピーカ等である。また、例えば、アプリケーションがナビゲーションシステムである場合には、その操作対象（コンテンツ）は、ＰＯＩ(Point of Interest)、地図等である。
【００３５】
運転負荷検出手段１２は、車両１３の運転者の運転負荷を、センサ等により検出される車速、ステアリング操作、ブレーキ操作、手掌部の発汗等に基づいて検出する。運転者の運転負荷は、運転者が運転に集中している度合や、運転に集中すべき度合を示す値である。このとき、例えば、車速が速いほど、あるいはステアリング操作量が大きいほど、あるいはブレーキ操作の頻度が多いほど、あるいは手掌部の発汗が多いほど、運転負荷は高い値とされる。
【００３６】
入力項目数検出手段４は、音声認識手段３によって抽出されたキーワードに基づいて、機器を制御するために必要な所定数の項目のデータ（各項目の入力値）を特定する。そして、入力項目数検出手段４は、入力値が特定された項目の個数（入力項目数）を検出する。
【００３７】
機器を制御するために必要な項目としては、アプリケーションを指定する項目である「アプリケーション」と、各アプリケーションに備えられた操作対象を指定する項目である「操作対象」と、操作対象毎の操作内容を指定する項目である「操作内容」と、操作内容毎に操作のために必要なパラメータを指定する項目である「操作パラメータ」とがある。「操作パラメータ」は、詳細には、総数Ｎの項目｛操作パラメータ１，操作パラメータ２，．．．，操作パラメータＮ｝からなる。操作パラメータの総数Ｎと各操作パラメータの具体的な内容とは、アプリケーションと操作対象と操作内容との組に対応して予め定められている。なお、機器を制御するために必要な項目の総数（所定数）はＮ＋３となる。
【００３８】
例えば、「操作内容」のデータは、「操作対象」のデータが「ＣＤ」である場合には、「再生」「停止」等である。また、例えば、｛アプリケーション，操作対象，操作内容｝のデータが、それぞれ｛オーディオ，ＣＤ，再生｝である場合には、操作パラメータの総数Ｎは２であり、「操作パラメータ１」は再生するＣＤ名を指定する項目である「ＣＤ名」となり、「操作パラメータ２」はＣＤの何曲目から再生するかを指定する項目である「トラック番号」となる。
【００３９】
スキルレベルデータベース５（本発明の習熟度記憶手段）は、運転者の発話の暫定的なスキルレベルが更新可能に記憶されているＣＤ−ＲＯＭ、ＤＶＤ、ＨＤＤ等の記憶媒体である。ここで、運転者の発話の暫定的なスキルレベルとは、運転者の過去の発話から判定されたスキルレベルから定められる値である。
【００４０】
運転者の発話のスキルレベル（習熟度）とは、運転者が機器を制御するための発話に慣れている度合を示す値である。なお、本実施形態において、スキルレベルの値は、１〜３で設定される。スキルレベルの値が大きいほど、運転者のスキルレベルは高く、運転者が機器を制御するための発話に慣れている状態を示す。
【００４１】
スキルレベルデータベース５には、「アプリケーション」毎の運転者の発話の暫定的なスキルレベルと、「操作対象」毎の運転者の発話の暫定的なスキルレベルとが記憶されている。なお、アプリケーションの暫定的なスキルレベルの値は、アプリケーションに備えられた全ての操作対象の暫定的なスキルレベルの平均値（小数点以下を四捨五入）に設定されている。
【００４２】
例えば、表１に例示したように、アプリケーションがオーディオの場合には、スキルレベルデータベース５に、「オーディオ」のスキルレベルとして２が記憶され、オーディオが備える操作対象である｛ＣＤ，ＤＶＤ，ラジオ，ＭＰ３，スピーカ｝のそれぞれの暫定的なスキルレベルとして｛２，１，３，１，３｝が記憶されている。
【００４３】
【表１】
2007114475.tif 000003
【００４４】
基準入力項目数設定手段６は、音声認識手段３により認識された発話から特定されたアプリケーション又は操作対象の種類に応じて、スキルレベルデータベース５により記憶された使用者の発話の暫定的なスキルレベルを読み込む。そして、読み込んだ暫定的なスキルレベルと、運転負荷検出手段１２により検出された運転者の運転負荷とに基づいて、発話から入力値が特定される項目の個数（入力項目数）の基準値を設定する。
【００４５】
入力項目数比較手段７は、入力項目数検出手段４により検出された入力項目数と、基準入力項目数設定手段６により設定された入力項目数の基準値とを比較する。
【００４６】
スキルレベル判定手段８（本発明の習熟度判定手段）は、入力項目数比較手段７の比較結果に応じて、スキルレベルデータベース５から読み込まれた運転者の暫定的なスキルレベルの値に対する相対的な運転者の発話のスキルレベルを判定する。さらに、スキルレベル判定手段８は、判定した結果に基づいて、スキルレベルデータベース５に記憶された使用者の発話の暫定的なスキルレベルの値を更新する。
【００４７】
応答制御手段９は、スキルレベル判定手段８により判定されたスキルレベルと、運転負荷検出手段１２により検出された運転負荷とに応じて、応答出力手段１０から出力する応答を制御する。具体的には、応答制御手段９は、出力する応答の内容（運転者の次の発話を促すための質問文や、操作の完了等を使用者に報知するための応答文）を、予め記憶された音声、フレーズ、文章等を合成して生成する。また、応答制御手段９は、応答を出力する際の速度や音量を決定する。
【００４８】
次に、本実施形態の音声認識機器制御装置１の作動（音声認識機器制御処理）を、図２〜図６に示したフローチャートに従って説明する。図２は音声認識機器制御処理の全体的な作動（音声認識機器制御装置１のメインルーチン処理）を示すフローチャート、図３は入力文を解析する処理（サブルーチン処理）を示すフローチャート、図４は暫定的なスキルレベルを読み込む処理（サブルーチン処理）を示すフローチャート、図５は入力項目数の基準値を設定する処理（サブルーチン処理）を示すフローチャート、図６はスキルレベルを判定する処理（サブルーチン処理）を示すフローチャート、図７は質問文を生成する処理（サブルーチン処理）を示すフローチャートである。
【００４９】
図２を参照して、まず、ＳＴＥＰ００１で、音声入力手段２に、車両１３の運転者から、最初の発話（機器の制御を開始するための発話）が入力される。次に、ＳＴＥＰ００２で、入力された発話が解析される。入力された発話を解析する処理は、図３に示す如く実行される。まず、ＳＴＥＰ１０１で、音声認識手段３は、音声入力手段２に入力された発話について構文解析等の音声認識処理を行い、その構文中のキーワードを抽出する。次に、ＳＴＥＰ１０２で、入力項目数検出手段４は、入力項目格納バッファからデータを読み込む。
【００５０】
入力項目格納バッファは、機器を制御するために必要な所定数の項目のデータ（各項目の入力値）を記憶保持する格納バッファである。入力項目格納バッファには、｛アプリケーション，操作対象，操作内容，操作パラメータ１，．．．，操作パラメータＮ｝の各項目のデータが格納される。なお、初期状態においては、項目は｛アプリケーション，操作対象，操作内容｝のみであり、各項目のデータとして、項目の入力値が特定されていない旨を示す「未確定」が格納されている。
【００５１】
次に、ＳＴＥＰ１０３で、入力項目数検出手段４は、各項目に合致するキーワードを選定し、発話から項目の入力値を特定する。まず、ＳＴＥＰ１０３で、入力項目格納バッファから読み込んだデータにおいて、｛アプリケーション，操作対象，操作内容｝に「未確定」の項目がある場合には、入力項目数検出手段４は、「未確定」の項目に合致するキーワードを選定し、項目の入力値を特定する。このとき、｛アプリケーション，操作対象，操作内容｝の項目について、「アプリケーション」が確定していないときには、まず「アプリケーション」の入力値を特定する処理が行われ、「アプリケーション」が確定すると「操作対象」の入力値を特定する処理が行われ、「操作対象」が確定すると「操作内容」の入力値を特定する処理が行われて、順に項目の入力値が特定されていく。
【００５２】
そして、ＳＴＥＰ１０３で入力値を特定した結果、｛アプリケーション，操作対象，操作内容｝にまだ確定しない項目があるときには、ＳＴＥＰ１０４に進み、入力項目数検出手段４は、入力値が特定された項目の個数（入力項目数ｎ）を検出して、ＳＴＥＰ１０５に進む。また、ＳＴＥＰ１０３で入力値を特定した結果、｛アプリケーション，操作対象，操作内容｝の全項目が確定したときには、入力項目数検出手段４は、これらの項目の組に対応した総数Ｎの操作パラメータの具体的な内容を設定する。このとき、各操作パラメータのデータは「未確定」となっている。そして、入力項目数検出手段４は、設定された各操作パラメータの項目に合致するキーワードを選定し、項目の入力値を特定する。次に、ＳＴＥＰ１０４に進み、入力値が特定された項目の個数（入力項目数ｎ）を検出して、ＳＴＥＰ１０５に進む。
【００５３】
ＳＴＥＰ１０３で、入力項目格納バッファから読み込んだデータにおいて、｛アプリケーション，操作対象，操作内容｝の全項目が確定しており、これらの項目の組に対応した総数Ｎの操作パラメータの具体的な内容が設定されている場合には、入力項目数検出手段４は、操作パラメータの「未確定」の項目に合致するキーワードを選定し、項目の入力値を特定する。次に、ＳＴＥＰ１０４に進み、入力値が特定された項目の個数（入力項目数ｎ）を検出して、ＳＴＥＰ１０５に進む。
【００５４】
ＳＴＥＰ１０５では、入力値が特定された項目のデータが、入力項目格納バッファに格納される。なお、ＳＴＥＰ１０３で操作パラメータが設定されたときには、入力項目格納バッファに格納する項目に操作パラメータの項目が追加される。また、入力値が特定されていない操作パラメータの項目のデータとして、「未確定」が格納される。
【００５５】
例えば、「３枚目のＣＤの２曲目を再生して」という発話が入力された場合には、表２に例示したように、入力項目格納バッファには、｛アプリケーション，操作機器，操作内容，ＣＤ名，トラック番号｝の各項目に対して、｛オーディオ，ＣＤ，再生，ディスク３，トラック２｝というデータが格納される。
【００５６】
【表２】
2007114475.tif 000004
【００５７】
図２に戻り、ＳＴＥＰ００３で、アプリケーションが確定しているか否かが判断される。ＳＴＥＰ００３の判定結果がＮＯの場合（アプリケーションが確定していない場合）には、ＳＴＥＰ００８に進み、スキルレベル判定手段８は、スキルレベルＳ（後述するＳＴＥＰ０１０で質問文を生成するために使用されるスキルレベル）に１を設定して、ＳＴＥＰ００９に進む。これにより、入力された発話からアプリケーションが確定できない（項目の入力値が一つも特定されない）ような場合には、スキルレベルＳは最も低いレベルである１と判定される。
【００５８】
ＳＴＥＰ００３の判定結果がＹＥＳの場合（アプリケーションが確定している場合）には、以下のＳＴＥＰ００４〜００７の処理が行われる。まず、ＳＴＥＰ００４で、運転者の発話の暫定的なスキルレベルが、スキルレベルデータベース５から読み込まれる。暫定的なスキルレベルを読み込む処理は、図４に示す如く実行される。まず、ＳＴＥＰ２０１で、操作対象が確定されているか否かが判断される。ＳＴＥＰ２０１の判断結果がＹＥＳの場合、ＳＴＥＰ２０２に進み、操作対象毎の暫定的なスキルレベルのうちの、確定された操作対象に対応する暫定的なスキルレベルＳ０が読み込まれる。ＳＴＥＰ２０１の判断結果がＮＯの場合、ＳＴＥＰ２０３に進み、スキルレベルデータベース５から、アプリケーション毎の暫定的なスキルレベルのうちの、確定されたアプリケーションに対応する暫定的なスキルレベルＳ０が読み込まれる。
【００５９】
次に、図２に戻り、ＳＴＥＰ００５で、入力項目数の基準値ｒが設定される。入力項目数の基準値ｒを設定する処理は、図５に示す如く実行される。まず、ＳＴＥＰ３０１で、基準入力項目数設定手段６により、スキルレベルデータベース５から読み込まれた暫定的なスキルレベルＳ０の値が１〜３のいずれの値であるかが確認される。ＳＴＥＰ３０１の確認結果がＳ０＝１である場合には、ＳＴＥＰ３０２に進み、入力項目数の基準値ｒに１が設定される。
【００６０】
ＳＴＥＰ３０１の確認結果がＳ０＝２である場合には、ＳＴＥＰ３０３に進み、基準入力項目数設定手段６により、入力項目数の基準値ｒに、予想入力項目数ｐ／２（小数点以下を四捨五入）と１とのいずれか大きい値が設定される。ここで、予想入力項目数ｐは、スキルレベルの最も高い運転者が最低限入力できると予想される入力項目数である。例えば、最初の発話では、スキルレベルの最も高い運転者であれば、｛アプリケーション，操作対象，操作内容｝の全項目を最低限入力できると予想されることから、予想入力項目数ｐには３が用いられる。
【００６１】
ＳＴＥＰ３０１の確認結果がＳ０＝３である場合には、ＳＴＥＰ３０４に進み、基準入力項目数設定手段６により、入力項目数の基準値ｒに、予想入力項目数ｐの値が設定される。以上のＳＴＥＰ３０１〜３０４の処理により、暫定的なスキルレベルＳ０の値に応じて、暫定的なスキルレベルＳ０の値が高いほど基準値ｒが大きい値に設定される。
【００６２】
次に、ＳＴＥＰ３０５に進み、運転負荷検出手段１２は、車速、ステアリング操作、ブレーキ操作、手掌部の発汗等を検出した結果に基づいて、運転者の運転負荷を検出する。そして、検出した運転負荷は数値化される。次に、運転負荷が所定の閾値より高いか否かが判定される。ＳＴＥＰ３０５の判断結果がＹＥＳの場合には、ＳＴＥＰ３０６に進み、基準入力項目数設定手段６により、入力項目数の基準値ｒに、ＳＴＥＰ３０２〜３０４のいずれかで設定された基準値ｒを２で除算した値（小数点以下を四捨五入）が設定される。そして、図２のＳＴＥＰ００５に戻る。ＳＴＥＰ３０５の判断結果がＮＯの場合には、そのまま図２のＳＴＥＰ００５に戻る。これにより、運転者の運転負荷に応じて、運転負荷が高い場合には基準値ｒは低めに制限された値に設定される。
【００６３】
次に、ＳＴＥＰ００６に進み、運転者の発話のスキルレベルＳが判定される。判定されるスキルレベルＳは、操作対象が確定しているときには、該操作対象のスキルレベルであり、アプリケーションが確定して操作対象は確定していない場合には、該アプリケーションのスキルレベルである。スキルレベルＳを判定する処理は、図６に示す如く実行される。まず、ＳＴＥＰ４０１で、入力項目数比較手段７は、入力項目数ｎと入力項目数の基準値ｒとの差ｄ（＝ｎ−ｒ）を算出する。次に、入力項目数比較手段７は、算出した差ｄの値を０と比較する。
【００６４】
ＳＴＥＰ４０１の比較結果がｄ＞０の場合には、ＳＴＥＰ４０２に進み、スキルレベル判定手段８は、スキルレベルＳに、暫定的なスキルレベルＳ０より１大きい値を設定する（Ｓ＝Ｓ０＋１）。なお、Ｓ０＋１が３より大きい場合には、スキルレベル判定手段８は、スキルレベルＳに３を設定する。ＳＴＥＰ４０１の比較結果がｄ＝０の場合には、ＳＴＥＰ４０３に進み、スキルレベル判定手段８は、スキルレベルＳに、暫定的なスキルレベルＳ０の値と同じ値を設定する（Ｓ＝Ｓ０）。ＳＴＥＰ４０１の比較結果がｄ＜０の場合には、ＳＴＥＰ４０２に進み、スキルレベル判定手段は、スキルレベルＳに、暫定的なスキルレベルＳ０より１小さい値を設定する（Ｓ＝Ｓ０−１）。なお、スキルレベル判定手段８は、Ｓ０−１が１より小さい場合には、スキルレベルＳに１を設定する。
【００６５】
これにより、使用者が１回の発話で入力することができる項目の個数が多いか少ないかに応じて、使用者の発話のスキルレベルＳが判定される。よって、例えば、発話速度や発話音数といった使用者の発話の傾向によらずに、機器の制御をするための使用者の発話のスキルレベルＳが適切に判定される。このとき、暫定的なスキルレベルＳ０に基づいて設定された基準値ｒとの比較によりスキルレベルＳ０が判定されるので、現在のスキルレベルＳが暫定的なスキルレベルＳ０に対して相対的に設定される。
【００６６】
次に、図２に戻り、ＳＴＥＰ００７で、決定されたスキルレベルＳを用いて、スキルレベルデータベース５に記憶された暫定的なスキルレベルＳ０が更新される。このとき、スキルレベルＳが、アプリケーションのスキルレベルである場合には、スキルレベルデータベース５に記憶された該当するアプリケーションの暫定的なスキルレベルＳ０が更新される。また、スキルレベルＳが、操作対象のスキルレベルである場合には、スキルレベルデータベース５に記憶された該当する操作対象の暫定的なスキルレベルＳ０が更新される。これにより、次回の発話におけるスキルレベルＳを判定するための基準値ｒが、適宜更新された暫定的なスキルレベルＳ０に基づいて設定される。
【００６７】
次に、ＳＴＥＰ００９で、運転者との対話が終了したか否かが判断される。機器を制御するために必要な項目の入力値が全て特定されていれば、対話が終了したと判断する。
【００６８】
ＳＴＥＰ００９の判断結果がＮＯの場合には、ＳＴＥＰ０１０に進み、運転者への質問文が生成されて出力される。質問文を生成して出力する処理は、図７に示す如く実行される。まず、ＳＴＥＰ５０１で、応答制御手段９により、ＳＴＥＰ００６又は００８で設定されたスキルレベルＳの値が１〜３のいずれの値であるかが確認される。
【００６９】
ＳＴＥＰ５０１の確認結果がスキルレベルＳ＝１である場合には、ＳＴＥＰ５０２に進み、応答制御手段９により、次回の発話で使用者の入力を促す項目である質問項目の個数（質問項目数ｑ）に１が設定される。ＳＴＥＰ５０１の確認結果がＳ＝２である場合には、ＳＴＥＰ５０３に進み、応答制御手段９により、質問項目数ｑに、未入力項目数ｓ／２（小数点以下を四捨五入）と１とのいずれか大きい値が設定される。ここで、未入力項目数ｓは、機器を制御するために必要な項目のうち、まだ入力値が特定されていない項目の個数である。ＳＴＥＰ５０１の確認結果がＳ＝３である場合には、ＳＴＥＰ５０４に進み、応答制御手段９により、質問項目数ｑに未入力項目数ｓの値が設定される。以上のＳＴＥＰ５０１〜５０４の処理により、スキルレベルＳの値に応じて、スキルレベルＳの値が高いほど質問項目数ｑが大きい値に設定される。
【００７０】
次に、ＳＴＥＰ５０５に進み、運転者の運転負荷が所定の閾値より高いか否かが判定される。ＳＴＥＰ５０５の判断結果がＹＥＳの場合には、ＳＴＥＰ５０６に進み、応答制御手段９により、質問項目数ｑに、ＳＴＥＰ５０２〜５０４のいずれかで設定された質問項目数ｑを２で除算した値（小数点以下を四捨五入）が設定され、ＳＴＥＰ５０７に進む。ＳＴＥＰ５０５の判断結果がＮＯの場合には、そのままＳＴＥＰ５０７に進む。これにより、運転者の運転負荷に応じて、運転負荷が高い場合には質問項目数ｑは低めに制限された値に設定される。
【００７１】
次に、ＳＴＥＰ５０７で、応答制御手段９は、入力値が特定されていない項目のうちの質問項目数ｑの項目の入力を促すような質問文を生成する。例えば、質問項目数ｑ＝１で、項目の入力値が一つも特定されていない場合には、「アプリケーション」の入力を促すような質問文が生成される。また、例えば、質問項目数ｑ＝１で、「アプリケーション」の入力値だけが特定されている場合には、「操作対象」の入力を促すような質問文が生成される。なお、質問項目数ｑが極端に多い場合には、質問項目数ｑを所定の最大値に制限して質問文を生成する。次に、ＳＴＥＰ５０８で、生成された質問文が応答出力手段１０から出力される。これにより、運転者のスキルレベルと運転負荷とに応じて、運転者の次回の発話を促す適切な質問文が生成される。そして、このように生成された質問文の出力により、使用者の次の発話を促すことで、効率の良い対話が行われる。
【００７２】
次に、図２のＳＴＥＰ００１に戻り、２回目の運転者の発話が入力される。そして、１回目の発話と同様に、ＳＴＥＰ００１〜００８の処理が行われる。但し、２回目の発話（応答出力手段１０から出力された質問文に対する発話）においては、ＳＴＥＰ００５で入力項目数の基準値ｒを設定する処理を行う際に、図５のＳＴＥＰ３０３，３０４で用いられる予想入力項目数ｐとして、上述のＳＴＥＰ５０２，５０３で用いられる未入力項目数ｓ（＝スキルレベルの最も高い運転者に対する質問項目数ｑ）と同じ値を用いる。なお、ＳＴＥＰ５０７で質問項目数ｑを制限した場合は、予想入力項目数ｐは前記所定の最大値と同じ値を用いる。
【００７３】
次に、ＳＴＥＰ００９で、運転者との対話が終了したか否かが判断される。ＳＴＥＰ００９の判断結果がＮＯの場合には、ＳＴＥＰ０１０に進み、応答制御手段９により、運転者への質問文が生成される。そして、生成された質問文が、応答出力手段１０から出力される。
【００７４】
以下、ＳＴＥＰ００９の判断結果がＹＥＳとなるまで、上述の２回目の発話に対するＳＴＥＰ００１〜ＳＴＥＰ００８と同様の処理が繰り返される。
【００７５】
ＳＴＥＰ００９の判断結果がＹＥＳの場合には、ＳＴＥＰ０１１に進み、応答制御手段９により、例えば、特定された各項目の入力値を確認するような応答文（各項目の入力値を運転者に報知する応答文）が生成される。そして、生成された応答文が、応答出力手段１０から出力される。次に、ＳＴＥＰ０１２で、機器制御手段１１により、入力値が特定された項目のデータに基づいて機器が制御される。次に、ＳＴＥＰ０１３で、入力項目格納バッファが初期化（リセット）され、処理が終了される。なお、入力項目格納バッファを初期化する際に、スキルレベルデータベース５において、上述の処理で確定したアプリケーションの暫定的なスキルレベルが、該アプリケーションの全操作対象の暫定的なスキルレベルの平均値（小数点以下を四捨五入）で更新される。以上の処理によって、運転者の発話のスキルレベルが発話毎に適切に判定され、効率の良い対話により機器を制御するための情報（機器を制御するために必要な項目のデータ）が取得される。
【００７６】
次に、上述した作動について、図８（ａ）〜（ｃ）に示した対話例を用いて詳細に説明する。まず、図８（ａ）の対話例について説明する。図８（ａ）の対話例は、運転者がＣＤの再生を行う対話例である。この対話例では、スキルレベルデータベース５において、アプリケーションが「オーディオ」であるときの暫定的なスキルレベルＳ０は２であり、操作対象が「ＣＤ」であるときの暫定的なスキルレベルは２であるとしている。また、運転者の運転負荷は閾値以下であるとしている。
【００７７】
図８（ａ）の対話例において、まず、ＳＴＥＰ００１で、運転者から「ＣＤかけて」という発話が入力される。次に、ＳＴＥＰ００２で、入力された発話が解析され、｛アプリケーション，操作対象，操作内容｝の各項目の入力値が、それぞれ｛オーディオ，ＣＤ，再生｝であると特定される。さらに、｛オーディオ，ＣＤ，再生｝の組に対応した操作パラメータが設定される。この場合、操作パラメータは、再生するＣＤを指定するパラメータである「ＣＤ名」と、ＣＤの何曲目から再生するかを指定するパラメータである「トラック番号」とである。「ＣＤ名」「トラック番号」の各項目の入力値は発話から特定されず、入力項目数ｎには３が設定される。そして、入力値が特定された「アプリケーション」「操作対象」「操作内容」のデータが、入力項目格納バッファに格納される。また、「ＣＤ名」「トラック番号」のデータとして「未確定」が格納される。
【００７８】
次に、ＳＴＥＰ００３で、アプリケーションが「オーディオ」と確定しているので、ＳＴＥＰ００４に進む。ＳＴＥＰ００４で、操作対象が「ＣＤ」と確定しているので、「ＣＤ」の暫定的なスキルレベルＳ０＝２がスキルレベルデータベース５から読み込まれる。次に、ＳＴＥＰ００５で、暫定的なスキルレベルＳ０＝２であり、最初の発話であることから予想入力項目数ｐ＝３（所定値）が用いられ、運転負荷は閾値以下であるので、基準値ｒには２が設定される（ｒ＝ｐ／２）。
【００７９】
次に、ＳＴＥＰ００６で、ｄ＝ｎ−ｒ＝１＞０より、スキルレベルＳには３が設定される（Ｓ＝Ｓ０＋１）。このように、最初の発話で｛アプリケーション，操作対象，操作内容｝の全項目の入力値が特定できるような、運転者が発話に慣れていると考えられる場合には、スキルレベルＳが暫定的なスキルレベルＳ０＝２より高く、最も高いレベルである３と判定される。
【００８０】
次に、ＳＴＥＰ００７で、スキルレベルデータベース５の「ＣＤ」の暫定的なスキルレベルＳ０が３に更新される。次に、ＳＴＥＰ００９で、入力値が特定されていない項目（この場合は、「ＣＤ名」「トラック番号」）があるので、ＳＴＥＰ０１０に進む。
【００８１】
ＳＴＥＰ０１０では、スキルレベルＳ＝３であり、入力値が特定されていない項目の個数が２であることから未入力項目数ｓ＝２が用いられ、運転負荷は閾値以下であるので、質問項目数ｑには２が設定される（ｑ＝ｓ）。そして、「ＣＤ名」「トラック番号」の入力を促すように、「ＣＤ名かアーティスト名と、トラックＮｏ．を入力してください」という質問文が生成される。そして、質問文が運転者に音声出力される。このように、スキルレベルＳが高く、運転者が発話に慣れていると考えられる場合には、残り全ての項目の入力を促すような質問文が出力される。
【００８２】
次に、ＳＴＥＰ００１で、出力された質問文に対して、運転者から「本田のＣＤを、頭から」という発話が入力される。ＳＴＥＰ００２で、新たに「ＣＤ名」「トラック番号」の各項目の入力値が、それぞれ「本田」「頭」であると特定され、入力項目数ｎは２に設定される。そして、入力値が特定された「ＣＤ名」「トラック番号」のデータが、入力項目格納バッファに格納される。
【００８３】
次に、ＳＴＥＰ００３で、アプリケーションは「オーディオ」に確定しているので、ＳＴＥＰ００４に進み、操作対象は「ＣＤ」に確定しているので、「ＣＤ」の暫定的なスキルレベルＳ０＝３がスキルレベルデータベース５から読み込まれる。次に、ＳＴＥＰ００５で、暫定的なスキルレベルＳ０＝３であり、出力された質問文に対する発話であることから予想入力項目数ｐ＝２（＝未入力項目数ｓ）が用いられ、運転負荷は閾値以下であるので、基準値ｒには２が設定される（ｒ＝ｐ）。
【００８４】
次に、ＳＴＥＰ００６で、ｄ＝ｎ−ｒ＝０より、スキルレベルＳには３が設定される（Ｓ＝Ｓ０）。このように、質問文で入力を促された項目が、入力された発話から全て特定できるような場合には、スキルレベルＳは暫定的なスキルレベルＳ０と同じレベルであると判定される。
【００８５】
次に、ＳＴＥＰ００９で、機器（オーディオ）の制御に必要な５つの項目の入力値が全て特定されているので、対話終了と判定され、ＳＴＥＰ０１１に進む。ＳＴＥＰ０１１で、特定された各項目の入力値を確認するような応答文「それでは本田のＣＤを最初から」が出力される。次に、ＳＴＥＰ０１２で、本田のＣＤが最初から再生される。次に、ＳＴＥＰ０１３で、入力項目格納バッファが初期化され、スキルレベルデータベース５の「オーディオ」の暫定的なスキルレベルＳ０が更新されて、処理が終了する。以上の処理により、運転者の発話のスキルレベルＳが適切に判定され、効率の良い対話を介して機器の制御が行われる。
【００８６】
次に、図８（ｂ）の対話例について説明する。図８（ｂ）の対話例は、運転者がナビゲーションシステムのＰＯＩ検索機能を用いて検索を行う対話例である。この対話例では、スキルレベルデータベース５において、アプリケーションが「ナビゲーションシステム」であるときの暫定的なスキルレベルは２であり、操作対象が「ＰＯＩ」であるときの暫定的なスキルレベルは２であるとしている。また、運転者の運転負荷は閾値以下であるとしている。
【００８７】
図８（ｂ）の対話例において、まず、ＳＴＥＰ００１で、運転者から「コンビニ探して」という発話が入力される。次に、ＳＴＥＰ００２で、入力された発話が解析され、｛アプリケーション，操作対象，操作内容｝の各項目の入力値が、それぞれ｛ナビゲーションシステム，ＰＯＩ，検索｝であると特定される。さらに、｛ナビゲーションシステム，ＰＯＩ，検索｝の組に対応した操作パラメータが設定される。この場合、操作パラメータは、情報を検索するための検索条件を指定するパラメータである「検索条件」と、検索された情報をさらに絞り込むための予め定められた所定の個数（例えば２つ）の絞込条件を指定するパラメータである「絞込条件１」「絞込条件２」とである。そして、「検索条件」の入力値が「コンビニ」であると発話から特定される。「絞込条件１」「絞込条件２」の入力値は発話から特定されず、入力項目数ｎには４が設定される。そして、入力値が特定された「アプリケーション」「操作対象」「操作内容」「検索条件」のデータが、入力項目格納バッファに格納される。また、「絞込条件１」「絞込条件２」のデータとして「未確定」が格納される。
【００８８】
次に、ＳＴＥＰ００３で、アプリケーションが「ナビゲーションシステム」と確定しているので、ＳＴＥＰ００４に進む。ＳＴＥＰ００４で、操作対象が「ＰＯＩ」と確定しているので、「ＰＯＩ」の暫定的なスキルレベルＳ０＝２がスキルレベルデータベース５から読み込まれる。次に、ＳＴＥＰ００５で、暫定的なスキルレベルＳ０＝２であり、最初の発話であることから予想入力項目数＝３（所定値）が用いられ、運転負荷は閾値以下であるので、基準値ｒには２が設定される（ｒ＝ｐ／２）。
【００８９】
次に、ＳＴＥＰ００６で、ｄ＝ｎ−ｒ＝２＞０より、スキルレベルＳには３が設定される（Ｓ＝Ｓ０＋１）。このように、最初の発話で｛アプリケーション，操作対象，操作内容｝の全項目の入力値が特定でき、さらに「操作パラメータ」の入力値も特定できるような、運転者が発話に慣れていると考えられる場合には、スキルレベルＳが暫定的なスキルレベルＳ０＝２よりも高く、最も高いレベルである３と判定される。
【００９０】
次に、ＳＴＥＰ００７で、スキルレベルデータベース５の「ＰＯＩ」の暫定的なスキルレベルが３に更新される。次に、ＳＴＥＰ００９で、入力値が特定されていない項目（この場合は、「絞込条件１」「絞込条件２」）があるので、ＳＴＥＰ０１０に進む。
【００９１】
ＳＴＥＰ０１０では、スキルレベルＳ＝３であり、入力値が特定されていない項目の個数が２であることから未入力項目数ｓ＝２が用いられ、運転負荷は閾値以下であるので、質問項目数ｑには２が設定される（ｑ＝ｓ）。そして、「絞込条件１」「絞込条件２」の入力を促すように、「コンビニの種類名と追加の検索条件を入力してください」という質問文が生成される。なお、「検索条件」のデータが「コンビニ」であることに基づいて、「絞込条件１」は具体的にはコンビニエンスストアの種類名（ブランド名）を指定するパラメータであると定められている。そして、質問文が運転者に音声出力される。このように、スキルレベルＳが高く、運転者が発話に慣れていると考えられる場合には、残り全ての項目の入力を促すような質問文が出力される。
【００９２】
次に、ＳＴＥＰ００１で、出力された質問文に対して、運転者から「どこでもいいから、近いところ」という発話が入力される。ＳＴＥＰ００２で、新たに「絞込条件１」「絞込条件２」の各項目の入力値が、それぞれ「指定無し」「最短」であると特定され、入力項目数ｎは２に設定される。そして、入力値が特定された「絞込条件１」「絞込条件２」のデータが、入力項目格納バッファに格納される。
【００９３】
次に、ＳＴＥＰ００３で、アプリケーションは「ナビゲーションシステム」に確定しているので、ＳＴＥＰ００４に進み、操作対象は「ＰＯＩ」に確定しているので、「ＰＯＩ」の暫定的なスキルレベルＳ０＝３が読み込まれる。次に、ＳＴＥＰ００５で、暫定的なスキルレベルＳ０＝３であり、出力された質問文に対する発話であることから予想入力項目数ｐ＝２（＝未入力項目数ｓ）が用いられ、運転負荷は閾値以下であるので、基準値ｒには２が設定される（ｒ＝ｐ）。
【００９４】
次に、ＳＴＥＰ００６で、ｄ＝ｎ−ｒ＝０より、スキルレベルＳには３が設定される（Ｓ＝Ｓ０）。このように、質問文で入力を促された項目の入力値が、入力された発話から全て特定できるような場合には、スキルレベルＳは暫定的なスキルレベルＳ０と同じレベルであると判定される。
【００９５】
次に、ＳＴＥＰ００９で、機器（ナビゲーションシステム）の制御に必要な６つの項目の入力値が全て特定されているので、対話終了と判定され、ＳＴＥＰ０１１に進む。ＳＴＥＰ０１１で、特定された各項目の入力値を確認するような応答文「それでは最も近い本田マートまで案内します」が出力される。次に、ＳＴＥＰ０１２で、本田マートへの走行経路等がナビゲーションシステムにより運転者に提示される。次に、ＳＴＥＰ０１３で、入力項目格納バッファが初期化され、スキルレベルデータベース５の「ナビゲーションシステム」の暫定的なスキルレベルが更新されて、処理が終了される。以上の処理により、運転者の発話のスキルレベルＳが適切に判定され、効率の良い対話を介して機器の制御が行われる。
【００９６】
次に、図８（ｃ）の対話例について説明する。図８（ｃ）の対話例は、運転者がＣＤの再生を行う対話例である。この対話例では、スキルレベルデータベースにおいて、アプリケーションが「オーディオ」であるときの暫定的なスキルレベルは２であり、操作対象が「ＣＤ」であるときの暫定的なスキルレベルは２であるとしている。また、運転者の運転負荷は閾値以下であるとしている。
【００９７】
図８（ｃ）の対話例において、まず、ＳＴＥＰ００１で、運転者から「音楽が聴きたい」という発話が入力される。次に、ＳＴＥＰ００２で、入力された発話が解析され、「アプリケーション」の入力値が、「オーディオ」であると特定される。「操作対象」の入力値は特定されないので、「操作内容」の入力値も特定されず、操作パラメータも設定されない。入力項目数ｎには１が設定される。そして、入力値が特定された「アプリケーション」のデータが、入力項目格納バッファに格納される。
【００９８】
次に、ＳＴＥＰ００３で、アプリケーションが「オーディオ」と確定しているので、ＳＴＥＰ００４に進む。ＳＴＥＰ００４で、操作対象が確定していないので、「オーディオ」の暫定的なスキルレベルＳ０＝２がスキルレベルデータベース５から読み込まれる。次に、ＳＴＥＰ００５で、暫定的なスキルレベルＳ０＝２であり、最初の発話であることから予想入力項目数＝３（所定値）が用いられ、運転負荷は閾値以下であるので、基準値ｒには２が設定される（ｒ＝ｐ／２）。
【００９９】
次に、ＳＴＥＰ００６で、ｄ＝ｎ−ｒ＝−１＜０より、スキルレベルＳには１が設定される（Ｓ＝Ｓ０−１）。このように、最初の発話で「アプリケーション」の入力値だけしか特定できず、運転者が発話に慣れていないと考えられる場合には、スキルレベルＳが暫定的なスキルレベルＳ０＝２より低いレベルである１と判定される。
【０１００】
次に、ＳＴＥＰ００７で、スキルレベルデータベース５の「オーディオ」の暫定的なスキルレベルが１に更新される。次に、ＳＴＥＰ００９で、入力値が特定されていない項目（この場合は、「操作対象」「操作内容」）があるので、ＳＴＥＰ０１０に進む。
【０１０１】
ＳＴＥＰ０１０では、スキルレベルＳ＝１であり、運転負荷は閾値以下であるので、質問項目数ｑには１（所定値）が設定される。そして、「操作対象」の入力を促すように、「操作するデバイスを選択してください。ＣＤ、ＤＶＤ、ラジオ…。」という質問文が生成される。そして、質問文が運転者に音声出力される。このように、スキルレベルＳが低く、運転者が発話に慣れていないと考えられる場合には、項目の入力を一つずつ促すような質問文が出力される。
【０１０２】
次に、ＳＴＥＰ００１で、出力された質問文に対して、運転者から「本田のＣＤかけて」という発話が入力される。ＳＴＥＰ００２で、新たに「操作対象」「操作内容」の各項目の入力値が、それぞれ「ＣＤ」「再生」であると特定される。さらに、｛オーディオ，ＣＤ，再生｝の組に対応した操作パラメータが設定される。この場合、操作パラメータは、再生するＣＤを指定するパラメータである「ＣＤ名」と、ＣＤの何曲目から再生するかを指定するパラメータである「トラック番号」とである。そして、「ＣＤ名」の入力値が「本田」であると発話から特定される。「トラック番号」の入力値は特定されず、入力項目数ｎは３に設定される。そして、入力値が特定された「操作対象」「操作内容」「ＣＤ名」のデータが、入力項目格納バッファに格納される。また、「トラック番号」のデータとして「未確定」が格納される。
【０１０３】
次に、ＳＴＥＰ００３で、アプリケーションは「オーディオ」に確定しているので、ＳＴＥＰ００４に進み、操作対象は「ＣＤ」に確定しているので、「ＣＤ」の暫定的なスキルレベルＳ０＝２が読み込まれる。これにより、操作対象が確定した場合には、操作対象毎の暫定的なスキルレベルＳ０に基づいて現在の発話のスキルレベルＳが判定されることとなるので、運転者のスキルレベルＳが操作対象によって異なるときでも、現在の発話のスキルレベルＳが適切に判定されることとなる。次に、ＳＴＥＰ００５で、暫定的なスキルレベルＳ０＝２であり、出力された質問文に対する発話であることから予想入力項目数ｐ＝２（＝未入力項目数ｓ）が用いられ、運転負荷は閾値以下であるので、基準値ｒには１が設定される（ｒ＝ｐ／２）。
【０１０４】
次に、ＳＴＥＰ００６で、ｄ＝ｎ−ｒ＝２＞０より、スキルレベルＳには３が設定される（Ｓ＝Ｓ０＋１）。このように、質問文で入力を促された項目よりも多い項目の入力値が、入力された発話から特定できるような場合には、スキルレベルＳは暫定的なスキルレベルＳ０＝２よりも高い、最も高いレベルである３と判定される。
【０１０５】
次に、ＳＴＥＰ００７で、スキルレベルデータベース５の「ＣＤ」の暫定的なスキルレベルが更新される。次に、ＳＴＥＰ００９で、入力値が特定されていない項目（この場合は、「トラック番号」）があるので、ＳＴＥＰ０１０に進む。
【０１０６】
ＳＴＥＰ０１０では、スキルレベルＳ＝３であり、入力値が特定されていない項目の個数が１であることから未入力項目数ｓ＝１が用いられ、運転負荷は閾値以下であるので、質問項目数ｑには１が設定される（ｑ＝ｓ）。そして、「トラック番号」の入力を促すように、「トラックＮｏ．を入力してください」という質問文が生成される。そして、質問文が運転者に音声出力される。このように、スキルレベルＳが高く、運転者が発話に慣れていると考えられる場合には、残り全ての項目の入力を促すような質問文が出力される。
【０１０７】
次に、ＳＴＥＰ００１で、出力された質問文に対して、運転者から「頭から」という発話が入力される。ＳＴＥＰ００２で、新たに「トラック番号」の入力値が「頭」であると特定され、入力項目数ｎは１に設定される。そして、入力値が特定された「トラック番号」のデータが、入力項目格納バッファに格納される。
【０１０８】
次に、ＳＴＥＰ００３で、アプリケーションは「オーディオ」に確定しているので、ＳＴＥＰ００４に進み、操作対象は「ＣＤ」に確定しているので、「ＣＤ」の暫定的なスキルレベルＳ０＝３が読み込まれる。次に、ＳＴＥＰ００５で、暫定的なスキルレベルＳ０＝３であり、出力された質問文に対する発話であることから予想入力項目数ｐ＝１（＝質問項目数ｑ）が用いられ、運転負荷は閾値以下であるので、基準値ｒには１が設定される（ｒ＝ｐ）。
【０１０９】
次に、ＳＴＥＰ００６で、ｄ＝ｎ−ｒ＝０より、スキルレベルＳには３が設定される（Ｓ＝Ｓ０）。このように、質問文で入力を促された項目の入力値が、入力された発話から全て特定できるような場合には、スキルレベルＳは暫定的なスキルレベルＳ０と同じレベルであると判定される。
【０１１０】
次に、ＳＴＥＰ００７で、スキルレベルデータベース５の「ＣＤ」のスキルレベルが更新される。次に、ＳＴＥＰ００９で、機器（オーディオ）の制御に必要な５つの項目の入力値が全て特定されているので、対話終了と判定され、ＳＴＥＰ０１１に進む。ＳＴＥＰ０１１で、特定された各項目の入力値を確認するような応答文「それでは本田のＣＤを最初から」が出力される。次に、ＳＴＥＰ０１２で、本田のＣＤが最初から再生される。次に、ＳＴＥＰ０１３で、入力項目格納バッファが初期化され、スキルレベルデータベース５の「オーディオ」の暫定的なスキルレベルが更新されて、処理が終了される。以上の処理により、運転者の発話のスキルレベルＳが適切に判定され、効率の良い対話を介して機器の制御が行われる。
【０１１１】
なお、本実施形態においては、運転負荷検出手段１２を備えるものとしたが、運転負荷検出手段１２を備えなくてもよい。このとき、基準入力項目数設定手段６は、暫定的なスキルレベルＳ０に応じてＳＴＥＰ３０２〜３０４で定められる入力項目数の基準値ｒをそのまま用いる。また、応答制御手段９は、ＳＴＥＰ５０２〜５０４で定められる質問項目数ｑをそのまま用いる。
【０１１２】
また、本実施形態においては、スキルレベルデータベース５に記憶された暫定的なスキルレベルＳ０の更新は、発話毎に毎回行われているが（図２のＳＴＥＰ００７）、暫定的なスキルレベルＳ０の更新は、過去の発話における使用者のスキルレベルＳの変動の傾向を反映するような所定のタイミングで行われるものとしてもよい。
【０１１３】
また、本実施形態においては、音声入力する使用者は、車両１３の運転者としたが、運転者以外の乗員としてもよい。
【０１１４】
また、本実施形態においては、音声認識機器制御装置１は、車両１３に搭載されるものとしたが、車両以外の移動体に搭載されるものとしてもよい。
【図面の簡単な説明】
【０１１５】
【図１】本実施形態である音声認識機器制御装置の機能ブロック図。
【図２】図１の音声認識機器制御装置における全体的な作動（音声認識機器制御処理）を示すフローチャート。
【図３】図２の音声認識機器制御処理における入力文を解析する処理を示すフローチャート。
【図４】図２の音声認識機器制御処理における暫定的なスキルレベルを読み込む処理を示すフローチャート。
【図５】図２の音声認識機器制御処理における基準入力項目数を設定する処理を示すフローチャート。
【図６】図２の音声認識機器制御処理におけるスキルレベルを決定する処理を示すフローチャート。
【図７】図２の音声認識機器制御処理における質問文を決定する処理を示すフローチャート。
【図８】図２の音声認識機器制御処理における対話例。
【符号の説明】
【０１１６】
１…音声認識機器制御装置、２…音声入力手段、３…音声認識手段、４…入力項目数検出手段、５…スキルレベルデータベース（習熟度記憶手段）、６…基準入力項目数設定手段、７…入力項目数比較手段、８…スキルレベル判定手段（習熟度判定手段）、９…応答制御手段、１０…応答出力手段、１１…機器制御手段、１２…運転負荷検出手段、１３…車両。
【図１】
2007114475.tif 000005
【図２】
2007114475.tif 000006
【図３】
2007114475.tif 000007
【図４】
2007114475.tif 000008
【図５】
2007114475.tif 000009
【図６】
2007114475.tif 000010
【図７】
2007114475.tif 000011
【図８】
2007114475.tif 000012