JP6696803B2 - 音声処理装置および音声処理方法 - Google Patents

音声処理装置および音声処理方法 Download PDF

Info

Publication number
JP6696803B2
JP6696803B2 JP2016051137A JP2016051137A JP6696803B2 JP 6696803 B2 JP6696803 B2 JP 6696803B2 JP 2016051137 A JP2016051137 A JP 2016051137A JP 2016051137 A JP2016051137 A JP 2016051137A JP 6696803 B2 JP6696803 B2 JP 6696803B2
Authority
JP
Japan
Prior art keywords
phoneme
name
confirmation
voice
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016051137A
Other languages
English (en)
Other versions
JP2017167270A (ja
Inventor
山本 俊一
俊一 山本
住田 直亮
直亮 住田
近藤 宏
宏 近藤
あす香 椎名
あす香 椎名
一博 中臺
一博 中臺
圭佑 中村
圭佑 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2016051137A priority Critical patent/JP6696803B2/ja
Priority to US15/444,553 priority patent/US20170270923A1/en
Publication of JP2017167270A publication Critical patent/JP2017167270A/ja
Application granted granted Critical
Publication of JP6696803B2 publication Critical patent/JP6696803B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/10Speech classification or search using distance or distortion measures between unknown speech and reference templates
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/187Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • G10L2015/025Phonemes, fenemes or fenones being the recognition units
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/225Feedback of the input speech

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Machine Translation (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、音声処理装置および音声処理方法に関する。
音声認識技術は、操作の指示や名字、名前などの検索などに応用されている。例えば、特許文献1には、入力された単語の音声を周波数分析した結果を複数の認識テンプレートを用いて作成した単語辞書と照合して音声認識する際、誤認識が発生した場合には複数回のやり直しを許容するとともに、特定回数のやり直し後にも誤認識が発生した場合には、それまで使用していた認識テンプレートを他の認識テンプレートに入れ替えて再実行する音声認識方法と当該方法を応用した車載ナビゲーション装置について記載されている。
特開2002−108386号公報
かかる音声認識方法は、ユーザである来客の発話から呼び出し対象となる被呼出人の名を認識し、その被呼出人を呼び出す機能を有する受付ロボットに応用することが考えられる。受付ロボットは、認識した名を確認するための確認音声を再生し、ユーザの発話から確認音声に対応する肯定発話または否定発話またはもう一度被呼出人の名を発話する訂正発話を認識する。しかし、上述した音声認識方法でも互いに音素間距離が小さい音素列を有する呼称同士でも誤認識が繰り返されるおそれがある。例えば、ユーザが被呼出人として小野(音素列:ono)を呼び出したいにも関わらず、小野の音素列と音素間距離が小さい音素列を有する大野(音素列:o:no)と誤認識されることがある。このとき、ユーザが何度小野と発話しても、大野と誤認識され、受付ロボットによる認識結果の確認音声(例えば、「大野さんですか?」)の再生と、ユーザによる確認結果に対する訂正発話(例えば、「小野です」)が繰り返される。そのため、ユーザが意図した名を特定することが困難になる課題が生じうる。
本発明は上記の点に鑑みてなされたものであり、ユーザが意図した名を円滑に特定することができる音声処理装置および音声処理方法を提供する。
本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、(1)音声を認識して音素列を生成する音声認識部と、第1の名前の音素列を示す第1名前リストと、前記第1の名前のうち所定の第1の名前の音素列に当該第1の名前の音素列に誤認識される可能性が所定の可能性よりも高い第2の名前の音素列とが対応付けてなる第2名前リストとを記憶する記憶部と、前記第1の名前の音素列と前記音声認識部が生成した音素列との類似度に基づいて前記音声が示す名前を特定する名前特定部と、メッセージの音声を合成する音声合成部と、前記名前特定部が特定した名前が、正しい名前であるか否か回答を促す確認メッセージの音声を前記音声合成部に合成させる確認部と、データ生成部と、を備え前記確認部は、前記特定した名前が、正しい名前ではないと回答されるとき、前記第2名前リストを参照して前記特定した名前の音素列に対応し、前記第1の名前の音素列との距離が小さい第2の名前の音素列ほど優先して選択し、前記選択した第2の名前について前記確認メッセージの音声を前記音声合成部に合成させ、前記第2の名前の音素列は、前記第1の名前の音素列の誤認識の要素として、前記第1の名前の音素列をなす一部の音素の他の音素への置換、音素の挿入ならびに前記一部の音素の削除の少なくとも一回によってなり、前記距離は、前記誤認識の要素に係るコストを累積して算出され、前記データ生成部は、前記特定した名前が、正しい名前であると回答された名前の音素列である確認成功音素列を構成する各音素が正しく認識された音素と判定し、正しい名前であると回答される前に、正しい名前であると回答されなかった音素列である確認失敗音素列と前記確認成功音素列とを照合し、前記確認失敗音素列から正しく認識された音素と前記誤認識の要素を判定し、前記正しく認識された音素と前記誤認識の要素の出現回数に基づいて、確認失敗音素列と確認成功音素列にそれぞれ含まれる音素および削除される音素である入力音素の出現回数と、入力音素ごとに認識された音素および追加された音素である出力音素の出現回数を示す音素認識データを更新し、前記誤認識の要素の頻度が高いほど低い値となるように、入力音素と出力音素のセットごとの出現回数に基づいて前記コストを更新する音声処理装置である。
(2)本発明の一態様は、(1)の音声処理装置であって、前記第2名前リストにおいて前記第1の名前の音素列と対応付けられた第2の名前の音素列と当該第1の名前の音素列との距離が、所定の距離よりも小さいことを特徴とする。
(3)本発明の一態様は、第1の名前の音素列を示す第1名前リストと、前記第1の名前のうち所定の第1の名前の音素列に当該第1の名前の音素列に誤認識される可能性が所定の可能性よりも高い第2の名前の音素列とが対応付けてなる第2名前リストとを記憶する記憶部を備える音声処理装置における音声処理方法において、前記音声処理装置は、音声を認識して音素列を生成する音声認識ステップと、前記第1の名前の音素列と前記音声認識ステップにおいて生成された音素列との類似度に基づいて前記音声が示す名前を特定する名前特定ステップと、前記名前特定ステップにおいて特定された名前が、正しい名前であるか否か回答を促す確認メッセージの音声を音声合成部に合成させる確認ステップと、データ生成ステップと、を有し、前記確認ステップは、前記特定された名前が、正しい名前ではないと回答されるとき、前記第2名前リストを参照して前記特定された名前の音素列に対応し、前記第1の名前の音素列との距離が小さい第2の名前の音素列ほど優先して選択するステップと、前記選択した第2の名前について前記確認メッセージの音声を前記音声合成部に合成させるステップと、を有し、前記第2の名前の音素列は、前記第1の名前の音素列の誤認識の要素として、前記第1の名前の音素列をなす一部の音素の他の音素への置換、音素の挿入ならびに前記一部の音素の削除の少なくとも一回によってなり、前記距離は、前記誤認識の要素に係るコストを累積して算出され、前記距離は、前記誤認識の要素に係るコストを累積して算出され、前記データ生成ステップは、前記特定した名前が、正しい名前であると回答された名前の音素列である確認成功音素列を構成する各音素が正しく認識された音素と判定するステップと、正しい名前であると回答される前に、正しい名前であると回答されなかった音素列である確認失敗音素列と前記確認成功音素列とを照合し、前記確認失敗音素列から正しく認識された音素と前記誤認識の要素を判定するステップと、前記正しく認識された音素と前記誤認識の要素の出現回数に基づいて、確認失敗音素列と確認成功音素列にそれぞれ含まれる音素および削除される音素である入力音素の出現回数と、入力音素ごとに認識された音素および追加された音素である出力音素の出現回数を示す音素認識データを更新するステップと、前記誤認識の要素の頻度が高いほど低い値となるように、入力音素と出力音素のセットごとの出現回数に基づいて前記コストを更新するステップと、を有する音声処理方法。
(1)または(3)の構成により、第2名前リストを参照して認識された名前と発音が類似する名前が選択される。ユーザにより認識された名前が否定された場合であっても、選択された名前が、ユーザが意図した名前の候補として提示される。そのため、ユーザが意図した名前が早く特定される可能性が高くなる。また、認識結果の確認音声の再生と、確認結果に対する訂正発話の繰り返しが回避される。そのため、ユーザが意図した名前が円滑に特定される。
(1)または(3)の構成により、さらに、発話された名前が第1の名前であると誤認識される場合でも、第2の名前が特定される名前の候補として選択される。そのため、ユーザが意図した名前が特定される可能性が高くなる。
(2)の構成により、さらに、第2の名前として第1の名前の発音と定量的に類似する発音の名前が特定される名前の候補として選択される。そのため、誤認識される名前とは発音が類似する名前が、ユーザが意図した名前として特定される可能性が高くなる。
(1)または(3)の構成により、さらに、第1の名前に対応する第2の名前が複数存在する場合、第1の名前と発音が類似する第2の名前ほど優先して選択される。誤認識される名前と発音が類似する名前ほど優先して提示されるので、ユーザが意図した名前が早期に特定される可能性が高くなる。
(1)または(3)の構成により、さらに、誤認識による音素列の変更が単純であるほど小さい距離が算出される。そのため、誤認識される名前と発音が類似する名前が定量的に定められる。
(1)または(3)の構成により、さらに、第1の名前の音素列に誤認識される可能性が高い音素列に係る名前が第2の名前として選択される。そのため、第2の名前としてユーザが意図した名前が特定される可能性が高くなる。
本実施形態に係る音声処理システムの構成を示すブロック図である。 本実施形態に係る音素認識データの一例を示す図である。 本実施形態に係るコストデータの一例を示す図である。 本実施形態に係る編集距離の計算例(1)を示す図である。 本実施形態に係る編集距離の計算例(2)を示す図である。 本実施形態に係る編集距離の計算例(3)を示す図である。 本実施形態に係る編集距離の計算例(4)を示す図である。 本実施形態に係る第2名前リストの生成処理の例を示すフローチャートである。 本実施形態に係る第1名前リストの一例を示す図である。 本実施形態に係る第2名前リストの一例を示す図である。 本実施形態に係る音声処理の例を示すフローチャートである。 本実施形態に係る確認処理の一部を示すフローチャートである。 本実施形態に係る確認処理の他の一部を示すフローチャートである。 本実施形態に係るメッセージ等の例を示す図である。 本実施形態の一変形例に係る音声処理システムを示すブロック図である。
(第1の実施形態)
以下、図面を参照しながら本発明の実施形態について詳しく説明する。図1は、本実施形態に係る音声処理システム1の構成を示すブロック図である。
本実施形態に係る音声処理システム1は、音声処理装置10、収音部21、拡声部22および通信部31を含んで構成される。
音声処理装置10は、収音部21から入力された音声データが示す音声を認識し、認識された音素列を発話者が意図した内容であるか否かの回答を促すための確認メッセージを示す音声データを拡声部22に出力する。確認対象の音素列には、呼び出し対象である被呼出人の名の発音を示す音素列が含まれる。また、音声処理装置10は、確認された音素列に対応する動作を実行もしくは制御する。実行もしくは制御対象の動作には、被呼出人を呼び出すための処理、例えば、被呼出人が用いる通信機器との通信を開始する処理が含まれる。
収音部21は、到来した音を示す音声データを生成し、生成した音声データを音声処理装置10に出力する。音声データは、収音部21に到来する音の波形を表すデータであり、所定のサンプリング周波数(例えば、16kHz)でサンプリングされた信号値の時系列で構成される。収音部21は、例えば、マイクロホン等の電気音響変換器を含んで構成される。
拡声部22は、音声処理装置10から入力される音声データが示す音を再生する。拡声部22は、例えば、スピーカ等を含んで構成される。
通信部31は、音声処理装置10から入力される機器情報が示す通信機器と無線または有線で接続し、当該通信機器との通信を行う。機器情報には、被呼出人が用いる通信機器のIPアドレス、電話番号などが含まれる。通信部31は、例えば、通信モジュールを含んで構成される。
音声処理装置10は、入力部101、音声認識部102、名前特定部103、確認部104、音声合成部105、出力部106、データ生成部108および記憶部110を含んで構成される。
入力部101は、収音部21から入力される音声データを音声認識部102に出力する。入力部101は、例えば、収音部21と有線または無線で接続する入出力インタフェースである。
音声認識部102は、入力部101から入力される音声データに基づいて所定時間(例えば、10〜50ms)毎に所定の音声特徴量を算出する。算出される音声特徴量は、例えば、25次元のメル尺度ケプストラム(MFCC:Mel−Frequency Cepstrum Coefficient)である。音声認識部102は、算出した音声特徴量からなる音声特徴量の時系列に基づいて公知の音声認識処理を行って発話者が発話した音素を含んで構成される音素列を生成する。音声認識部102は、音声認識処理に用いる音響モデルとして、例えば、隠れマルコフモデル(HMM)を、言語モデルとして、例えば、n−グラム(n−gram)が用いられる。音声認識部102は、生成した音素列を名前特定部103と確認部104に出力する。
名前特定部103は、音声認識部102から入力される音素列から名が発話されている部分の音素列を回答パターン(後述)を用いて抽出する。名前特定部103は、記憶部110に予め記憶された第1名前リスト(後述)が示す名毎の音素列と、抽出した音素列との類似度を示す編集距離を算出する。編集距離が小さいほど比較対象の音素列間の類似度が高く、編集距離が大きいほど当該音素列間の類似度が低い。名前特定部103は、算出した編集距離として最も小さい編集距離を与える音素列に対応する名前を特定する。名前特定部103は、特定した名前に係る音素列を確認部104に出力する。
確認部104は、音声認識部102または名前特定部103から入力される音素列で表される発話内容について確認メッセージを生成する。確認部104は、確認メッセージは、入力された発話内容が、発話者が意図した発話内容であるか否かの回答を促すためのメッセージである。これにより、確認部104は、発話内容についての確認メッセージを示す音声の音声データを音声合成部105に合成させる。
例えば、名前特定部103から発話名(後述)に係る音素列が入力される場合、確認部104は、記憶部110から予め記憶された確認メッセージパターンを読み取る。確認部104は、読み取った確認メッセージパターンに入力された音素列を挿入して確認メッセージを生成する。確認部104は、生成した確認メッセージを音声合成部105に出力する。
音声認識部102から否定発話(後述)もしくは候補名(後述)を示す音素列が入力される場合、確認部104は、記憶部110に予め記憶された第2名前リストが示す発話名に対応する候補名に対応する候補名の音素列を読み取る。候補名として、その発話名に誤認識される可能性が高い名前が第2名前リストに対応付けられている。確認部104は、読み取った確認メッセージパターンに読み取った候補名の音素列を挿入して確認メッセージを生成する。確認部104は、生成した確認メッセージを音声合成部105に出力する。
音声認識部102から肯定発話(後述)もしくは発話名の音素列(もしくは直近に入力された候補名の音素列)が入力される場合、確認部104は、発話名(もしくは直近に音素列が入力された候補名)を発話者が正しく意図した被呼出人の名前であると特定する。
なお、発話者が意図した被呼出人の名前を確認するための一連の音声処理の詳細については、後述する。
確認部104は、予め記憶部110に記憶した連絡先リストを参照し、特定した名前に対応する連絡先の機器情報を特定する。確認部104は、特定した機器情報が示す通信機器との通信を開始させるための呼出コマンドを生成する。確認部104は、生成した呼出コマンドを通信部31に出力する。これにより、確認部104は、通信部31に当該通信機器との通信を開始させる。呼出コマンドには、呼出メッセージが含まれてもよい。その場合、確認部104は、予め記憶部110に記憶した呼出メッセージを読み取り、通信部31に当該通信機器へ読み取った呼出メッセージを送信する。当該通信機器は、確認部104から受信した呼出メッセージ音声データが示す呼出メッセージに基づく音声を再生する。よって、音声処理装置10のユーザは、音声処理装置10を介して当該通信機器を用いる被呼出人を呼び出すことができる。ユーザには、主に各種の事業所、施設などへの来客その他の来訪者がなりうる。また、確認部104は、予め記憶部110に記憶した待機メッセージを読み取り、読み取った待機メッセージを音声合成部105に出力する。音声合成部105は、確認部104から入力された待機メッセージが示す音素列で表される発音を有する音声の音声データを生成し、出力部106を介して拡声部22に出力する。そのため、ユーザは、その時点において被呼出人を呼び出し中であることが通知される。
音声合成部105は、確認部104から入力される確認メッセージが示す音素列に基づいて音声合成処理を行って音声データを生成する。生成される音声データは、当該音素列で表される発音を有する音声を示すデータである。音声合成処理において、例えば、音声合成部105は、フォルマント合成を行って当該音声データを生成する。音声合成部105は、生成した音声データを出力部106に出力する。
出力部106は、音声合成部105から入力される音声データを拡声部22に出力する。出力部106は、例えば、拡声部22と有線または無線で接続する入出力インタフェースである。出力部106は、入力部101と一体に構成されてもよい。
データ生成部108は、予め記憶部110に記憶された第1名前リストが示す名を示す音素列と、編集距離が所定の編集距離よりも小さい他の名を対応付けて示す第2名前リストを生成する。データ生成部108は、生成した第2名前リストを記憶部110に記憶する。編集距離は、認識された音素列において、ある音素が変更して認識される度合い(コスト)を累積して算出される。変更には、誤認識、挿入、削除が含まれる。データ生成部108は、確認部104で取得された肯定発話に係る音素列と否定発話に係る音素列に基づいて第2名前リストを更新してもよい(オンライン学習)。
記憶部110は、他の構成部において処理に用いられるデータ、他の構成部が生成したデータを記憶する。記憶部110は、例えば、RAM(Random Access Memory)等の記憶媒体を含んで構成される。
(音素間の誤認識)
音素間の誤認識の要素には、大きく次の3種類がある、(1)置換、(2)挿入、(3)削除。(1)置換とは、本来認識されるべき音素が他の音素であるとして認識されることを意味する。(2)挿入とは、本来認識対象にない音素が認識されることを意味する。(3)削除とは、本来認識されるべき音素が認識されないことを意味する。そこで、データ生成部108は、入力音素毎に各出力音素の頻度を示す音素認識データを取得する。音声認識部102は、例えば、多様な既知の音素列が発話された音声を示す音声データについて音声認識処理を行って音素列を生成する。そして、データ生成部108は、既知の音素列それぞれについて音声認識部102が生成した音素列を照合して、既知の音素列を構成する音素毎に認識された音素を特定する。データ生成部108は、照合において、例えば、始終端フリーDPマッチング法などの公知の手法が利用可能である。データ生成部108は、既知の音素列を構成する個々の音素を入力音素として、入力音素毎に各出力音素の頻度を計数する。出力音素は、音声認識部102が生成した音素列、つまり認識された音素列に含まれる個々の音素を意味する。
図2は、本実施形態に係る音素認識データの一例を示す図である。図2に示す例では、音素認識データは、入力音素毎に認識された出力音素の回数を示す。図2の第3行に示す例では、入力音素/a/の出現回数100回について出力音素/a/、/e/、/i/、/o/、/u/として認識された回数が、それぞれ90回、1回、1回、3回、5回である。正しく/a/として認識される確率は、90%、/e/、/i/、/o/、/u/に置換される確率は、それぞれ、1%、1%、3%、5%である。なお、ある1つの音素1が他の音素2に置換される頻度と、音素2が音素1に置換される頻度とは、一般に異なる。従って、音素認識データでは、入力音素と出力音素のセットと、その出力音素と入力音素とそれぞれ等しい入力音素と出力音素のセットと、区別する。また、図2は、入力音素と同一の音素が認識される場合(誤認識なし)、入力音素が他の音素に置換される場合のみを例にする。音素認識データにおいて、入力音素の一種として該当音素なし(φ)の行、出力音素の一種として該当音素なし(φ)の列を含めることで、追加、挿入の各場合を表すことができる。
データ生成部108は、音素認識データに基づいて入力音素と出力音素のセット毎のコスト値を定める。データ生成部108は、入力音素と出力音素のセットの出現率が高いほど大きくなるようにコスト値を定める。コスト値は、例えば、0から1の間の値をとるように正規化された実数値である。例えば、1から当該セットの認識率を差し引いて得られる値がコスト値として利用される。入力音素と出力音素が等しいセット(誤認識なし)については、データ生成部108は、コスト値を0と定める。なお、入力音素に該当音素がない(挿入)セットには、データ生成部108は、1からそのセットの出現確率を差し引いて得られる値をコスト値として定めてもよい。また、出力音素に該当音素がない(削除)セットには、データ生成部108は、そのセットについてコスト値を1(最高値)と定めてもよい。これにより、置換または追加よりも削除の方が発生する可能性が低いことが考慮される。
データ生成部108は、定めた入力音素と出力音素のセット毎のコスト値を示すコストデータを生成する。図3は、本実施形態に係るコストデータの一例を示す図である。
図3の第3行に示す例では、入力音素/a/について出力音素/a/、/r/、/i/、/o/、/u/と認識される場合のコスト値は、それぞれ0、0.99、0.99、0.97、0.95である。正しい出力音素/a/については、コスト値は0と設定されている。誤認識される頻度が少ない出力音素ほどコスト値が高くなる。
(編集距離)
名前特定部103およびデータ生成部108は、音素列間の類似度の指標値の一例として編集距離を算出する。編集距離は、目標の音素列から認識された音素列を得るまでに要する編集毎のコスト値の総和である。編集距離を算出する際、名前特定部103およびデータ生成部108は、音声認識部102から入力された音素列を構成する音素を出力音素として、記憶部110に記憶させたコストデータを参照する。名前特定部103およびデータ生成部108が入力音素として参照する音素は、第1名前リストに記憶された名毎の音素列を構成する音素である。編集は、1個の入力音素から出力音素への置換、1個の入力音素の削除および1個の出力音素の挿入といった、音素列を構成する個々の音素の誤認識、つまり誤認識の要素を意味する。
次に、編集距離の計算例について図4〜図7を用いて説明する。
図4は、音素列”ono”(小野)と音素列”o:no”(大野)との編集距離の計算例(1)を示す図である。音素列”ono”のうち、最初の音素/o/が音素/o:/に置換されて、音素列”o:no”が形成される。音素/o/から音素/o:/への置換に係るコスト値は、0.8である。従って、音素列”ono”と”o:no”の編集距離は、0.8となる。
図5は、音素列”o:ta”(太田)と音素列”o:kawa”(大川)との編集距離の計算例(2)を示す図である。音素列”o:ta”のうち、最初から2番目の音素/t/が音素/k/に置換され、音素列”o:ta”に含まれない音素/w/と/a/が末尾にその順序に追加(挿入)されて、音素列”o:kawa”が形成される。音素/t/から音素/k/への置換に係るコスト値、音素/w/の挿入に係るコスト値、音素/a/の挿入に係るコスト値は、それぞれ0.6、0.85、0.68である。従って、音素列”o:ta”と音素列”o:kawa”との編集距離は、2.13である。
図6は、音素列”oka”(岡)と音素列”o:oka”(大岡)との編集距離の計算例(3)を示す図である。音素列”oka”の最初には新たな音素/o:/が追加(挿入)されて、音素列”o:oka”が形成される。音素/o:/の挿入に係るコスト値は、0.76である。従って、音素列”oka”と音素列”o:oka”との編集距離は、0.76である。
図7は、音素列”o:oka”(大岡)と音素列”oka”(岡)との編集距離の計算例(4)を示す図である。図7に示す例では、図6に示す例とは逆に、音素列”o:oka”から最初の音素/o:/が削除されて音素列”oka”が形成される。音素/o:/の削除に係るコスト値は、1.0である。従って、音素列”o:oka”と音素列”oka”との編集距離は、1.0である。図7に示す誤認識の例は、図6に示す例とは、逆のケースに相当する。図6に示す例での編集距離と、図7に示す例での編集距離との差異は、共通の音素について削除と追加では発生頻度が異なることによる。
次に、第2名前リストの生成処理の例について説明する。
図8は、本実施形態に係る第2名前リストの生成処理の例を示すフローチャートである。
(ステップS101)データ生成部108は、記憶部110に予め記憶された第1名前リストから互いに異なる2つの名前それぞれの音素列n1、n2を読み取る。例えば、データ生成部108は、図9に示す第1名前リストから、音素列”o:ta”(太田)と”oka”(岡)を読み取る。その後、ステップS102の処理に進む。
(ステップS102)データ生成部108は、読み取った音素列n1、n2間の編集距離dを計算する。その後、ステップS103の処理に進む。
(ステップS103)データ生成部108は、計算した編集距離dが、所定の編集距離の閾値dthよりも小さいか否かを判定する。小さいと判定するとき(ステップS103 YES)、ステップS104の処理に進む。小さくないと判定するとき(ステップS103 NO)、ステップS105の処理に進む。
(ステップS104)データ生成部108は、音素列n2に係る名前が音素列n1に係る名前から誤る可能性が高い名前であると判定する。データ生成部108は、音素列n1に係る名前と、当該音素列n2に係る名前とを対応付けて記憶部110に記憶する。記憶部110に音素列n1に係る名前毎に、音素列n2に係る名前が累積されてなるデータは、第2名前リストを形成する。その後、ステップS105の処理に進む。
(ステップS105)データ生成部108は、第1名前リストに記憶された名前のうち各2つの名前の全ての組についてステップS101〜S104の処理を終了したか否かを判定する。ステップS101〜S104の処理を終了していない他の組がある場合、データ生成部108は、処理を終了していない各組についてステップS101〜S104の処理を行う。全ての組についてステップS101〜S104の処理を終了した場合、図8に示す処理を終了する。
図10は、本実施形態に係る第2名前リストの一例を示す図である。
図10に示す例では、音素列n1に係る名前が発話名と音素列n2に係る名前が候補名として対応付けて第2名前リストが形成されている。発話名とは、ユーザにより発話される名前について、音声認識部102が取得した音素列に基づいて名前特定部103により特定される名前である。候補名は、発話名に誤認識される可能性がある名前、つまりユーザが意図した名前の候補である。
図10において、候補名1、候補名2とは、複数の候補名を区別するためのインデックスである。図10の第2行には、音素列”ono”を有する発話名「小野」には、音素列1”o:no”を有する候補名1「大野」と音素列2”uno”を有する候補名2「宇野」が対応付けられている。図10に示す例では、各発話名について2名の候補名が対応付けられているが、一般には、発話名に対応付けられた候補名の数は、発話名毎に異なる。複数の候補名がある場合、データ生成部108は、発話名に係る音素列n1と候補名に係る音素列n2の編集距離の昇順にそれらの複数の候補名を配列する。その場合には、データ生成部108は、編集距離の昇順に順次、他の候補名を直ちに選択することができる。
(音声処理)
次に、本実施形態に係る音声処理の例について説明する。次の説明では、音声処理装置10が、ユーザが発話する音声から被呼出人の名前を認識し、認識した被呼出人の名前の確認に応用される場合を例にする。図11は、本実施形態に係る音声処理の例を示すフローチャートである。確認部104は、記憶部110に予め記憶された初期メッセージを読み取り、読み取った初期メッセージを音声合成部105に出力する。初期メッセージには、ユーザに被呼出人の名前の発話を促すためのメッセージが含まれる。
(ステップS111)初期メッセージの出力後、所定時間(例えば、5〜15秒)内に名前特定部103から音素列nが入力される。音素列nは、音声認識部102から入力される音素列に基づいて名前特定部103が特定した名前に係る音素列である。その後、ステップS112の処理に進む。
(ステップS112)確認部104は、記憶部110に記憶された第2名前リストを参照して、音素列nと一致する音素列を有する発話名を検索する。その後、ステップS113に出力する。
(ステップS113)確認部104は、音素列nと一致する音素列を有する発話名を発見したか否かを判定する。発見した場合(ステップS113 YES)、ステップS114の処理に進む。発見していないと判定される場合(ステップS113 NO)、ステップS115の処理に進む。
(ステップS114)確認部104は、後述の確認処理1を行う。その後、ステップS116の処理に進む。
(ステップS115)確認部104は、後述の確認処理2を行う。その後、ステップS116の処理に進む。
(ステップS116)確認部104は、確認処理1または確認処理2において確認成功と判定する場合(ステップS116 YES)、図11に示す処理を終了する。確認部104は、確認処理1または確認処理2において確認失敗と判定する場合(ステップS116 NO)、ステップS111に戻る。なお、ステップS111に戻る前に、確認部104は、繰り返し要求メッセージを記憶部110から読み取り、読み取った繰り返し要求メッセージを音声合成部105に出力する。繰り返し要求メッセージには、ユーザに被呼出人の名前の再度の発話を促すためのメッセージが含まれる。
図12は、図11のステップS114において実行される確認処理1を示すフローチャートである。
(ステップS121)確認部104は、ステップS113において発見された音素列nに対応する候補名に係る音素列n_simを記憶部110に記憶された第2名前リストから読み取る。音素列n_simは、音素列nから誤る可能性が高い音素列である。その後、ステップS122に進む。
(ステップS122)確認部104は、記憶部110から確認メッセージパターンを読み取る。確認部104は、音素列nを確認メッセージパターンに挿入して確認メッセージを生成する。生成される確認メッセージは、音素列nが正しくユーザが意図した名前の音素列であるか否かを確認するための質問を示すメッセージである。確認部104は、生成した確認メッセージを音声合成部105に出力する。その後、ステップS123の処理に進む。
(ステップS123)確認部104には、確認メッセージの出力後、所定時間(例えば、5〜10秒)内に音声認識部102から発話内容を示す音素列が入力される。入力された音素列が肯定発話の音素列または音素列n_simと同一である場合(ステップS123 肯定発話またはn_sim)、ステップS126の処理に進む。肯定発話とは、直前に提示されたメッセージを肯定する回答である。肯定発話には、例えば、「はい」、「ええ」などの発話が該当する。つまり、ステップS126の処理に進む場合は、認識された音素列に係る名前が、ユーザが正しく意図した名前であることがユーザの発話により肯定される場合に相当する。入力された音素列が否定発話の音素列または音素列nと同一である場合(ステップS123 否定発話またはn)、ステップS124の処理に進む。つまり、ステップS124の処理に進む場合は、認識された音素列に係る名前が、ユーザが正しく意図した名前であることがユーザの発話により否定される場合に相当する。入力された音素列がそれ以外の音素列である場合(ステップS123 それ以外)、ステップS127の処理に進む。
(ステップS124)確認部104は、記憶部110から確認メッセージパターンを読み取る。確認部104は、音素列n_simを確認メッセージパターンに挿入して確認メッセージを生成する。生成される確認メッセージは、音素列n_simが正しくユーザが意図した名前の音素列であるかを否かの質問を示す。確認部104は、生成した確認メッセージを音声合成部105に出力する。その後、ステップS125の処理に進む。
(ステップS125)確認部104には、確認メッセージの出力後、所定時間(例えば、5〜10秒)内に音声認識部102から発話内容を示す音素列が入力される。入力された音素列が肯定発話の音素列と同一である場合(ステップS125 肯定発話)、ステップS126の処理に進む。つまり、ステップS126の処理に進む場合は、ユーザーが発話した名前の音素列が音素列n_simであることがユーザの発話により肯定される場合に相当する。入力された音素列がそれ以外の音素列である場合(ステップS125 それ以外)、ステップS127の処理に進む。
(ステップS126)確認部104は、直近の処理対象の名前の音素列についてユーザが意図した名前の音素列であることについて確認成功と判定する。その後、ステップS116(図11)の処理に進む。
(ステップS127)確認部104は、直近の処理対象の名前の音素列についてユーザが意図した名前の音素列であることについて確認失敗と判定する。その後、ステップS116(図11)の処理に進む。
なお、図12に示す処理は、第2名前リストにおいて、発話名に係る音素列nに候補名の音素列n_simが1個のみ対応付けられている場合を例にしたが。音素列nに候補名の音素列が2個以上対応付けられている場合がある。その場合、ステップS123において入力された音素列が否定発話の音素列もしくは音素列nと判定されるとき、確認部104は、音素列nに代えて最初の候補名から最後から2番目までの未処理の候補名の音素列のそれぞれについてステップS122の処理と、ステップS123の処理を繰り返す。但し、ステップS123において入力された音素列が否定発話の音素列と同一である場合、確認部104は、ステップS122の処理に戻る。また、ステップS123において入力された音素列が処理対象の候補名とは異なるいずれかの未処理の候補名の音素列と同一である場合についても、確認部104は、ステップS122の処理に戻る。この場合、確認部104は、その音素列について音素列nに代えてステップS122の処理を行う。処理の繰り返しは、ステップS123において、ステップS126またはステップS127に進むと判定される場合に終了する。そして、確認部104は、最後の音素列についてステップS124の処理と、ステップS125の処理を行う。従って、音素列nから誤る可能性が高い候補名の音素列の順に、確認の成否が判定される。処理の繰り返しの順序は、第2名前リストにおいて、候補名が配列されている順序である。
図13は、図11のステップS114において実行される確認処理2のフローチャートである。
(ステップS131)確認部104は、ステップS122と同様の処理を行う。その後、ステップS132に進む。
(ステップS132)確認部104には、確認メッセージの出力後、所定時間(例えば、5〜10秒)内に音声認識部102から発話内容を示す音素列が入力される。入力された音素列が肯定発話の音素列または音素列nと同一である場合(ステップS123 肯定発話またはn)、ステップS133の処理に進む。入力された音素列がそれ以外の音素列である場合(ステップS132 それ以外)、ステップS134の処理に進む。
(ステップS133)確認部104は、直近の処理対象の名前の音素列nについてユーザが意図した名前の音素列であることについて確認成功と判定する。その後、ステップS116(図11)の処理に進む。
(ステップS134)確認部104は、直近の処理対象の名前の音素列nについてユーザが意図した名前の音素列であることについて確認失敗と判定する。その後、ステップS116(図11)の処理に進む。
従って、図11〜図13の処理によれば、認識結果となる名前の確認メッセージの再生と、確認メッセージに対するユーザによる訂正発話の繰り返しが回避される。そのため、音声処理装置10は、ユーザが意図した名前をより円滑に特定することができる。
ところで、図12のステップS123、S125、図13のステップS132において、確認部104が、確認メッセージの出力から所定時間(例えば、5〜10秒)を超えて音声認識部102から音素列が入力されない場合がある。その場合において、確認部104は、それぞれステップS126、S126、S133の処理に進み、確認成功として判定してもよい。これにより、確認メッセージに対してユーザが発話しない場合でも、認識結果が容認されたものとして扱われる。その場合においても、認識結果となる名前の確認メッセージの再生と、確認メッセージに対するユーザによる訂正発話の繰り返しが回避される。
(メッセージ)
次に、音声処理装置10が対話処理に用いる各種のメッセージならびにメッセージパターンについて説明する。対話処理には、図11に示す音声処理、図12、図13に示す確認処理が含まれる。記憶部110には、予め各種のメッセージならびにメッセージパターンを予め記憶しておく。以下、メッセージとメッセージパターンをメッセージ等と呼ぶ。
図14は、本実施形態に係るメッセージ等の例を示す図である。
メッセージ等は、その発音を示す音素列の情報を示すデータである。メッセージは、その発音を示す音素列区間の情報を示すデータである。メッセージパターンは、その発音を示す音素列区間の情報と挿入区間の情報とを含んで構成されるデータである。挿入区間は、他の語句の音素列が挿入可能な区間である。挿入区間は、図14において、<…>で囲まれる区間である。音素列区間と挿入区間に挿入される音素列とを統合してなる一連の音素列は、1つのメッセージの発音を示す。
本実施形態に係るメッセージ等は、質問メッセージ、発話メッセージ、通知メッセージの3種類に分けられる。質問メッセージは、音声処理装置10がユーザに対する質問の音声を再生するために用いられるメッセージ等である。発話メッセージは、ユーザの発話内容の音素列と照合することにより、その音素列の特定に用いられるメッセージ等である。特定結果は、音声処理装置10の動作の制御に用いられる。通知メッセージは、音声処理装置10の動作状況をユーザであるユーザまたは被呼出人への通知に用いられるメッセージ等である。
質問メッセージには、初期メッセージ、確認メッセージパターンおよび繰り返し要求メッセージが含まれる。初期メッセージは、ユーザが来訪するときにユーザに被呼出人の名前を発話することを促すためのメッセージである。図14の第2行に示す例では、初期メッセージは、”irasshaimase, donatani goyo:desuka?”(いらっしゃいませ、どなたにご用ですか?)である。
確認メッセージパターンは、直前(例えば、その時点から5〜15秒以内)になされた発話から認識された音素列を発話者であるユーザが意図した内容であるか否かの回答を促すためのメッセージの生成に用いられるメッセージパターンである。図14の第3行に示す例では、確認メッセージパターンは、”<…> desuka?”(<…>ですか?)である。<…>は、認識された音素列が挿入される挿入区間である。
繰り返し要求メッセージは、発話者であるユーザに被呼出人の名前の再度の発話を促すためのメッセージである。図14の第4行に示す例では、繰り返し要求メッセージは、”mo:ichido osshattekudasai”(もう一度おっしゃって下さい)である。
発話メッセージには、肯定発話、否定発話および回答パターンが含まれる。肯定発話は、直前になされたメッセージの内容の肯定を表す発話の音素列を示す。図14の第5、6行に示す例では、肯定発話は、”hai”(はい)、”ee”(ええ)である。否定発話は、直前になされたメッセージの内容の否定を表す発話の音素列を示す。図14の第7、8行に示す例では、否定発話は、”iie”(いいえ)、”chigaimasu”(違います)である。
回答パターンは、発話者であるユーザの発話から確認メッセージに対する回答として音素列を抽出するための挿入区間を含むメッセージパターンである。回答パターンに含まれる音素列は、回答内容を含む文に定型的に現れ、回答内容として不要な発話の音素列に相当する。挿入区間は、回答内容が含まれる部分を表す。本実施形態では、回答内容として被呼出人の名前の音素列が求められる。図14の第9、10行に示す例では、回答パターンは、”<…> desu”(<…>です)、”<> san onegaishimasu”(<…>さん お願いします)である。これらのメッセージは、名前特定部103ならびに確認部104が音声認識部102から入力される音素列と照合し、照合された音素列から回答内容となる名前の音素列を取得する際に用いられる。照合において、例えば、始終端フリーDPマッチング法などの公知の手法が利用可能である。
通知メッセージには、呼出メッセージと待機メッセージが含まれる。呼出メッセージは、ユーザが来訪したことを被呼出人に通知するためのメッセージである。図14の第11行に示す例では、呼出メッセージは、”tadaima okyakusamaga irasshaimashita”(ただいま、お客様がいらっしゃいました)である。待機メッセージは、ユーザに被呼出人を呼び出し中であることを通知するためのメッセージである。図14の第12行に示す例では、待機メッセージは、”tadaima yobidashichu:desu, mo:shibaraku omachikudasai”(ただいま、呼び出し中です。もうしばらくお待ちください。)である。
(変形例)
次に、本実施形態の変形例について説明する。一変形例では、データ生成部108は、図12、図13に示す確認処理に基づいて音素認識データを更新してもよい。データ生成部108は、ステップS116、S126において確認に成功した音素列を構成する各音素は、正しく認識された音素であると判定する。データ生成部108は、ステップS116、S126において確認成功と判定される前に、ステップS127において確認に失敗した音素列と、確認成功と判定された音素列とを照合する。データ生成部108は、確認成功と判定された音素列と確認失敗と判定された音素列の間で共通する音素を正しく認識された音素であると判定する。データ生成部108は、確認成功と判定された音素列と確認失敗と判定された音素列の間で異なる音素のうち、確認失敗と判定された音素列に含まれる音素を入力音素であると判定し、確認成功と判定された音素列に含まれる音素が正しく認識されなかった出力音素であると判定する。これにより、正しく認識されなかった入力音素がその入力音素とは異なる出力音素に誤認識されたことが判定される。そして、データ生成部108は、正しく認識された音素の出現回数を、その音素を入力音素として、その音素が出力音素である回数に加算することにより累積する。データ生成部108は、正しく認識されなかった入力音素について誤認識された出力音素の出現回数を、その入力音素についてその出力音素の回数に加算する。誤認識の要素である追加、削除については、データ生成部108は、それぞれ入力音素、出力音素が存在しないものとして、追加される出力音素の出現回数、削除される入力音素の出現回数を累積する。よって、入力音素毎に認識された出力音素の回数を示す音素認識データが更新される。
その後、データ生成部108は、更新された音素認識データを用いて入力音素と出力音素のセット毎のコスト値を示すコストデータを更新する。データ生成部108は、第1名前リストと更新したコストデータを参照して、図8に示す生成処理を行う。これにより、第2名前リストが更新される。更新された第2名前リストは、図11に示す音声処理、図12に示す確認処理1において用いられる。従って、音声処理ならびに確認処理1、2における音素列の成否に基づいて音素認識データが更新され、更新された音素認識データに基づいて第2名前リストが音声処理ならびに確認処理1に用いられる。よって、使用環境に依存した音素列の認識に応じて誤認識される可能性が高い名前を候補名とする第2名前リストが更新される。使用環境に応じて定められた候補名がより有力な被呼出人の候補として優先して提示されるので、ユーザである来客が意図した名前を円滑に特定することができる。
本実施形態の他の変形例に係る音声処理システム2は、ロボットシステムとして構成されてもよい。図15は、本変形例に係る音声処理システム2を示すブロック図である。
本変形例に係る音声処理システム2は、音声処理装置10、収音部21、拡声部22および通信部31に、さらに動作制御部32、動作機構部33および動作モデル記憶部34を含んだ単一のロボットシステムとして構成される。
記憶部110には、ロボットの動作毎にその動作を指示するためのロボットコマンド情報と、その動作を示す語句の音素列がさらに対応付けて記憶されている。確認部104は、音声認識部102から入力された音素列と、動作毎の音素列とを照合し、類似度が最も高い音素列に係る動作を特定する。確認部104は、類似度の指標値として上述した編集距離を用いてもよい。確認部104は、特定した動作に係るロボットコマンド情報を記憶部110から読み取り、読み取ったロボットコマンド情報を、動作制御部32に出力する。
動作モデル記憶部34には、動作毎に電力値の時系列データを対応付けてなる電力モデル情報を予め記憶させておく。電力値の時系列データは、動作機構部33を構成する機構部に供給する電力値を示すデータである。機構部とは、例えば、マニピュレータ(manipulator)、多指グラスパ(multi−finger grasper)などである。即ち、電力値は、動作毎に機構部がその動作を実行するために消費する電力の大きさを示す。
動作制御部32は、確認部104から入力されたロボットコマンド情報に係る動作の電力モデル情報を動作モデル記憶部34から読み取る。動作制御部32は、読み取った動作モデル情報が示す時系列データが示す電力量の電力を機構部に供給する。動作制御部32から電力された供給された機構部が、その電力を消費して動作することにより、動作機構部33は、ユーザが発話により指示したロボットコマンド情報に応じた動作を実行する。
なお、データ生成部108は、ロボットに実行させる動作の名称を示すロボットコマンドについても、名前と同様に誤認識される可能性が高いロボットコマンドを示すロボットコマンドリストを生成してもよい。そして、確認部104は、生成したロボットコマンドリストを用いて、ロボットコマンドについても図11に示す音声処理を実行してもよい。これにより、認識結果となるコマンドの確認メッセージの再生と、確認メッセージに対するユーザによる訂正発話の繰り返しが回避される。
以上に説明したように、本実施形態に係る音声処理装置10は、音声を認識して音素列を生成する音声認識部102を備える。音声処理装置10は、第1の名前(発話名)の音素列を示す第1名前リストと、第1の名前のうち所定の第1の名前の音素列に当該第1の名前の音素列と類似する第2の名前(候補名)の音素列とが対応付けてなる第2名前リストとを記憶する記憶部110を備える。音声処理装置10は、第1の名前の音素列と音声認識部102が生成した音素列との類似度に基づいて発話された音声が示す名前を特定する名前特定部103を備える。また、音声処理装置10は、メッセージの音声を合成する音声合成部105と、正しい名前であるか否か回答を促す確認メッセージの音声を音声合成部に合成させる確認部104を備える。また、確認部104は、名前特定部103が特定した名前について確認メッセージの音声を音声合成部105に合成させ、名前特定部が特定した名前が、正しい名前ではないと回答されるとき、第2名前リストを参照して名前特定部103が特定した名前(発話名)の音素列に対応する第2の名前(候補名)の音素列を選択する。また、確認部104は、選択した第2の名前について確認メッセージの音声を音声合成部105に合成させる。
この構成により、第2名前リストを参照して認識された名前と発音が類似する名前が選択される。ユーザにより認識された名前が否定された場合であっても、選択された名前が、ユーザが意図した名前の候補として提示される。そのため、ユーザが意図した名前が早く特定される可能性が高くなる。また、認識結果の確認音声の再生と、確認結果に対する訂正発話の繰り返しが回避される。そのため、ユーザが意図した名前を円滑に特定される。
また、記憶部110に記憶される第2名前リストに含まれる第2の名前の音素列は、第1の名前に誤認識される可能性が所定の可能性よりも高い音素列である。
この構成により、発話された名前が第1の名前であると誤認識される場合でも、第2の名前が特定される名前の候補として選択される。そのため、ユーザが意図した名前が特定される可能性が高くなる。
また、第2名前リストにおいて第1の名前の音素列と対応付けられた第2の名前の音素列と当該第1の名前の音素列との編集距離が、所定の編集距離よりも小さい。
この構成により、第2の名前として第1の名前の発音と定量的に類似する発音の名前が特定される名前の候補として選択される。そのため、誤認識される名前とは発音が類似する名前が、ユーザが意図した名前として特定される可能性が高くなる。
また、確認部104は、第1の名前の音素列との編集距離が小さい音素列に係る第2の名前ほど優先して選択する。
この構成により、第1の名前に対応する第2の名前が複数存在する場合、第1の名前と発音が類似する第2の名前ほど優先して選択される。誤認識される名前と発音が類似する名前ほど優先して提示されるので、ユーザが意図した名前が早期に特定される可能性が高くなる。
また、第2の名前の音素列は、第1の名前の音素列の誤認識の要素として、第1の名前の音素列をなす一部の音素の他の音素への置換、他の音素の挿入ならびに一部の音素の削除の少なくとも一回によってなる。また、編集距離は、誤認識の要素に係るコスト値を累積して算出される。
この構成により、誤認識による音素列の変更が単純であるほど小さい編集距離が算出される。そのため、誤認識される名前と発音が類似する名前が定量的に定められる。
また、コスト値として、誤認識の要素の頻度が高いほど低い値が定められる。
この構成により、第1の名前の音素列に誤認識される可能性が高い音素列に係る名前が第2の名前として選択される。そのため、第2の名前としてユーザが意図した名前が特定される可能性が高くなる。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。上述の実施形態において説明した各構成は、任意に組み合わせることができる。
例えば、上述した実施形態は、日本語の音素、音素列、メッセージおよびメッセージパターンが用いられる場合を例にするが、これには限定されない。上述した実施形態において、他の言語、例えば、英語の音素、音素列、メッセージおよびメッセージパターンが用いられてもよい。
また、上述した実施形態では、名前が主に自然人の姓である場合を例にしたが、これには限られない。姓に代えて名が用いられてもよいし、氏名が用いられてもよい。また、名前は、必ずしも自然人の名前に限られず、組織名、部門名、もしくはそれらの通称が用いられてもよい。また、名前は、正式名称、本名に限られず、通称、愛称、略称、筆名などの変名でもよい。また、被呼出人は、特定の自然人に限られず、組織、部門などの構成員であってもよい。
また、音声処理装置10は、収音部21、拡声部22および通信部31のいずれか1個、いずれか2個または全てを一体化して構成されてもよい。
なお、上述した実施形態における音声処理装置10の一部、例えば、音声認識部102、名前特定部103、確認部104、音声合成部105およびデータ生成部108をコンピュータで実現するようにしてもよい。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、音声処理装置10に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
また、上述した実施形態における音声処理装置10の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。音声処理装置10の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
1、2…音声処理システム、10…音声処理装置、101…入力部、102…音声認識部、103…名前特定部、104…確認部、105…音声合成部、106…出力部、108…データ生成部、110…記憶部、21…収音部、22…拡声部、31…通信部、32…動作制御部、33…動作機構部、34…動作モデル記憶部

Claims (3)

  1. 音声を認識して音素列を生成する音声認識部と、
    第1の名前の音素列を示す第1名前リストと、前記第1の名前のうち所定の第1の名前の音素列に当該第1の名前の音素列に誤認識される可能性が所定の可能性よりも高い第2の名前の音素列とが対応付けてなる第2名前リストとを記憶する記憶部と、
    前記第1の名前の音素列と前記音声認識部が生成した音素列との類似度に基づいて前記音声が示す名前を特定する名前特定部と、
    メッセージの音声を合成する音声合成部と、
    前記名前特定部が特定した名前が、正しい名前であるか否か回答を促す確認メッセージの音声を前記音声合成部に合成させる確認部と、
    データ生成部と、を備え
    前記確認部は、
    前記特定した名前が、正しい名前ではないと回答されるとき、前記第2名前リストを参照して前記特定した名前の音素列に対応し、前記第1の名前の音素列との距離が小さい第2の名前の音素列ほど優先して選択し、
    前記選択した第2の名前について前記確認メッセージの音声を前記音声合成部に合成させ
    前記第2の名前の音素列は、前記第1の名前の音素列の誤認識の要素として、前記第1の名前の音素列をなす一部の音素の他の音素への置換、音素の挿入ならびに前記一部の音素の削除の少なくとも一回によってなり、
    前記距離は、前記誤認識の要素に係るコストを累積して算出され、
    前記データ生成部は、
    前記特定した名前が、正しい名前であると回答された名前の音素列である確認成功音素列を構成する各音素が正しく認識された音素と判定し、
    正しい名前であると回答される前に、正しい名前であると回答されなかった音素列である確認失敗音素列と前記確認成功音素列とを照合し、前記確認失敗音素列から正しく認識された音素と前記誤認識の要素を判定し、
    前記正しく認識された音素と前記誤認識の要素の出現回数に基づいて、確認失敗音素列と確認成功音素列にそれぞれ含まれる音素および削除される音素である入力音素の出現回数と、入力音素ごとに認識された音素および追加された音素である出力音素の出現回数を示す音素認識データを更新し、
    前記誤認識の要素の頻度が高いほど低い値となるように、入力音素と出力音素のセットごとの出現回数に基づいて前記コストを更新する
    音声処理装置。
  2. 前記第2名前リストにおいて前記第1の名前の音素列と対応付けられた第2の名前の音素列と当該第1の名前の音素列との距離が、所定の距離よりも小さい
    請求項1に記載の音声処理装置。
  3. 第1の名前の音素列を示す第1名前リストと、前記第1の名前のうち所定の第1の名前の音素列に当該第1の名前の音素列に誤認識される可能性が所定の可能性よりも高い第2の名前の音素列とが対応付けてなる第2名前リストとを記憶する記憶部を備える音声処理装置における音声処理方法において、
    前記音声処理装置は、
    音声を認識して音素列を生成する音声認識ステップと、
    前記第1の名前の音素列と前記音声認識ステップにおいて生成された音素列との類似度に基づいて前記音声が示す名前を特定する名前特定ステップと、
    前記名前特定ステップにおいて特定された名前が、正しい名前であるか否か回答を促す確認メッセージの音声を音声合成部に合成させる確認ステップと、
    データ生成ステップと、を有し、
    前記確認ステップは、
    前記特定された名前が、正しい名前ではないと回答されるとき、前記第2名前リストを参照して前記特定された名前の音素列に対応し、前記第1の名前の音素列との距離が小さい第2の名前の音素列ほど優先して選択するステップと、
    前記選択した第2の名前について前記確認メッセージの音声を前記音声合成部に合成させるステップと、を有し、
    前記第2の名前の音素列は、前記第1の名前の音素列の誤認識の要素として、前記第1の名前の音素列をなす一部の音素の他の音素への置換、音素の挿入ならびに前記一部の音素の削除の少なくとも一回によってなり、
    前記距離は、前記誤認識の要素に係るコストを累積して算出され、
    前記データ生成ステップは、
    前記特定した名前が、正しい名前であると回答された名前の音素列である確認成功音素列を構成する各音素が正しく認識された音素と判定するステップと、
    正しい名前であると回答される前に、正しい名前であると回答されなかった音素列である確認失敗音素列と前記確認成功音素列とを照合し、前記確認失敗音素列から正しく認識された音素と前記誤認識の要素を判定するステップと、
    前記正しく認識された音素と前記誤認識の要素の出現回数に基づいて、確認失敗音素列と確認成功音素列にそれぞれ含まれる音素および削除される音素である入力音素の出現回数と、入力音素ごとに認識された音素および追加された音素である出力音素の出現回数を示す音素認識データを更新するステップと、
    前記誤認識の要素の頻度が高いほど低い値となるように、入力音素と出力音素のセットごとの出現回数に基づいて前記コストを更新するステップと、
    を有する音声処理方法。
JP2016051137A 2016-03-15 2016-03-15 音声処理装置および音声処理方法 Active JP6696803B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016051137A JP6696803B2 (ja) 2016-03-15 2016-03-15 音声処理装置および音声処理方法
US15/444,553 US20170270923A1 (en) 2016-03-15 2017-02-28 Voice processing device and voice processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016051137A JP6696803B2 (ja) 2016-03-15 2016-03-15 音声処理装置および音声処理方法

Publications (2)

Publication Number Publication Date
JP2017167270A JP2017167270A (ja) 2017-09-21
JP6696803B2 true JP6696803B2 (ja) 2020-05-20

Family

ID=59855844

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016051137A Active JP6696803B2 (ja) 2016-03-15 2016-03-15 音声処理装置および音声処理方法

Country Status (2)

Country Link
US (1) US20170270923A1 (ja)
JP (1) JP6696803B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102421745B1 (ko) * 2017-08-22 2022-07-19 삼성전자주식회사 Tts 모델을 생성하는 시스템 및 전자 장치
JP6829406B1 (ja) * 2019-08-22 2021-02-10 富士通クライアントコンピューティング株式会社 情報処理装置およびプログラム
JP2021097386A (ja) * 2019-12-19 2021-06-24 Necプラットフォームズ株式会社 発信制御システム、発信制御方法及び発信制御プログラム
JP7485030B2 (ja) * 2020-06-11 2024-05-16 日本電気株式会社 検索装置、検索方法、およびプログラム
CN113312070B (zh) * 2021-06-03 2023-02-24 海信集团控股股份有限公司 车载应用的应用名称更新方法及车辆

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09114493A (ja) * 1995-10-19 1997-05-02 N T T Data Tsushin Kk 対話制御装置
US6304844B1 (en) * 2000-03-30 2001-10-16 Verbaltek, Inc. Spelling speech recognition apparatus and method for communications
US20030078777A1 (en) * 2001-08-22 2003-04-24 Shyue-Chin Shiau Speech recognition system for mobile Internet/Intranet communication
JP4336282B2 (ja) * 2004-09-15 2009-09-30 日本電信電話株式会社 音声認識性能推定方法、認識障害単語抽出方法、音声認識性能推定装置、認識障害単語抽出装置、音声認識性能推定プログラム、認識障害単語抽出プログラムおよび記録媒体
GB0426347D0 (en) * 2004-12-01 2005-01-05 Ibm Methods, apparatus and computer programs for automatic speech recognition
US8010343B2 (en) * 2005-12-15 2011-08-30 Nuance Communications, Inc. Disambiguation systems and methods for use in generating grammars
US7991615B2 (en) * 2007-12-07 2011-08-02 Microsoft Corporation Grapheme-to-phoneme conversion using acoustic data
US8762153B2 (en) * 2008-08-18 2014-06-24 At&T Intellectual Property I, L.P. System and method for improving name dialer performance
US8108214B2 (en) * 2008-11-19 2012-01-31 Robert Bosch Gmbh System and method for recognizing proper names in dialog systems
US9361879B2 (en) * 2009-02-24 2016-06-07 Nexidia Inc. Word spotting false alarm phrases
US20150106089A1 (en) * 2010-12-30 2015-04-16 Evan H. Parker Name Based Initiation of Speech Recognition
US8954329B2 (en) * 2011-05-23 2015-02-10 Nuance Communications, Inc. Methods and apparatus for acoustic disambiguation by insertion of disambiguating textual information
US9176936B2 (en) * 2012-09-28 2015-11-03 International Business Machines Corporation Transliteration pair matching
US9710463B2 (en) * 2012-12-06 2017-07-18 Raytheon Bbn Technologies Corp. Active error detection and resolution for linguistic translation
WO2014197334A2 (en) * 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
US9443507B2 (en) * 2013-07-15 2016-09-13 GM Global Technology Operations LLC System and method for controlling a speech recognition system
JP2015175983A (ja) * 2014-03-14 2015-10-05 キヤノン株式会社 音声認識装置、音声認識方法及びプログラム
JP6475426B2 (ja) * 2014-06-05 2019-02-27 クラリオン株式会社 意図推定装置、及び、モデルの学習方法
US9514743B2 (en) * 2014-08-29 2016-12-06 Google Inc. Query rewrite corrections

Also Published As

Publication number Publication date
JP2017167270A (ja) 2017-09-21
US20170270923A1 (en) 2017-09-21

Similar Documents

Publication Publication Date Title
EP3114679B1 (en) Predicting pronunciation in speech recognition
US9640175B2 (en) Pronunciation learning from user correction
JP6696803B2 (ja) 音声処理装置および音声処理方法
CN1655235B (zh) 基于话音特征自动标识电话呼叫者
JP4542974B2 (ja) 音声認識装置、音声認識方法および音声認識プログラム
EP3832643A1 (en) Dynamic wakewords for speech-enabled devices
JP3284832B2 (ja) 音声認識対話処理方法および音声認識対話装置
KR102097710B1 (ko) 대화 분리 장치 및 이에서의 대화 분리 방법
JP5200712B2 (ja) 音声認識装置、音声認識方法及びコンピュータプログラム
CN110706714B (zh) 说话者模型制作系统
JP2002511154A (ja) ユーザにオーディオ・フィードバックを与える拡張可能音声認識システム
US20080154591A1 (en) Audio Recognition System For Generating Response Audio by Using Audio Data Extracted
JP2008293019A (ja) 言語理解装置
JP2014063088A (ja) 音声認識装置、音声認識システム、音声認識方法および音声認識プログラム
JP2004101901A (ja) 音声対話装置及び音声対話プログラム
JP6690484B2 (ja) 音声認識用コンピュータプログラム、音声認識装置及び音声認識方法
JP6468258B2 (ja) 音声対話装置および音声対話方法
WO2006093092A1 (ja) 会話システムおよび会話ソフトウェア
JP2004325635A (ja) 音声処理装置、音声処理方法、音声処理プログラム、および、プログラム記録媒体
JP2018031985A (ja) 音声認識補完システム
US10854196B1 (en) Functional prerequisites and acknowledgments
JP4296290B2 (ja) 音声認識装置、音声認識方法及びプログラム
JP2005283646A (ja) 音声認識率推定装置
JP2020091435A (ja) 音声認識システム、音声認識システムの通知方法、プログラム、及び移動体搭載機器
JP6991409B2 (ja) 情報処理装置、プログラム及び情報処理方法

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20181005

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191003

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191029

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191121

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200414

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200423

R150 Certificate of patent or registration of utility model

Ref document number: 6696803

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150