JP4843987B2 - 情報処理装置、情報処理方法、およびプログラム - Google Patents

情報処理装置、情報処理方法、およびプログラム Download PDF

Info

Publication number
JP4843987B2
JP4843987B2 JP2005108185A JP2005108185A JP4843987B2 JP 4843987 B2 JP4843987 B2 JP 4843987B2 JP 2005108185 A JP2005108185 A JP 2005108185A JP 2005108185 A JP2005108185 A JP 2005108185A JP 4843987 B2 JP4843987 B2 JP 4843987B2
Authority
JP
Japan
Prior art keywords
node
unit
parameter
learning
som
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.)
Expired - Fee Related
Application number
JP2005108185A
Other languages
English (en)
Other versions
JP2006285882A (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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2005108185A priority Critical patent/JP4843987B2/ja
Priority to US11/397,299 priority patent/US7499892B2/en
Priority to KR1020060030847A priority patent/KR20060107329A/ko
Priority to CN2006100898570A priority patent/CN1855224B/zh
Publication of JP2006285882A publication Critical patent/JP2006285882A/ja
Application granted granted Critical
Publication of JP4843987B2 publication Critical patent/JP4843987B2/ja
Expired - Fee Related 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/16Speech classification or search using artificial neural networks
    • 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
    • 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/26Speech to text systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Manipulator (AREA)

Description

本発明は、情報処理装置、情報処理方法、およびプログラムに関し、特に、例えば、ロボットなどが、自己の行動を能動的に変更し、かつ、自己の行動を、他から与えられる刺激に適応させるために必要な情報をより一段と適切に生成することができるようにする情報処理装置、情報処理方法、およびプログラムに関するものである。
例えば、人間と音声でコミュニケーションするロボットには、ユーザがロボットを観察したときに、ロボットが、そのユーザと同一の音韻構造を有するように見えることが要求される。従って、ロボットが、ユーザが発声する音韻を聞き取ることと、ユーザと同様の音韻による発話を行うこと、つまり、ユーザが使用する言語と同一の言語による音声を認識(音声認識)することと、その言語による音声を発する(音声合成をする)こととが要求される。
従来の音声認識技術や音声合成技術では、ユーザが使用する言語に応じて、あらかじめ用意された音韻や単語の辞書を用いて、ユーザが使用する言語と同一の言語による音声の音声認識や、その言語による音声の音声合成(合成音の生成)が行われる。
ところで、人間の社会には、国や地域ごとに異なる音韻や言語が存在する。従って、あらかじめ用意された辞書を用いて音声認識や音声合成を行うのでは、国や地域ごとに、別々の辞書を作成する必要がある。
しかしながら、辞書の作成には膨大なコストがかかる。そこで、近年においては、人間と音声でコミュニケーションするロボットについては、辞書なしに、外部とのインタラクション、即ち、例えば、ユーザとの対話を通じて、そのユーザが有するのと同様の音韻構造を獲得することが要請されている。
例えば、非特許文献1には、調音器官と聴覚器官を備え、ケアギバー(caregiver)とのインタラクションを通じて、社会と同じ音韻を自己組織的に獲得する学習を行うロボットが開示されている。
非特許文献1に記載のロボットは、調音器官において、音を発するためのパラメータ(モータコマンド)をランダムに生成し、そのパラメータにしたがって音を発する。
そして、ケアギバーと呼ばれるユーザは、ロボットが発した音を聴き、社会に存在する音として認識することができた場合は、その音を発話して、ロボットに学習を行わせることを繰り返すことによって、ロボットに、社会に存在する音韻を獲得させる。
即ち、ロボットは、聴覚器官に対応する自己組織化マップ(以下、適宜、聴覚SOM(Self Organization Map)という)と、調音器官に対応する自己組織化マップ(以下、適宜、調音SOMという)とを有する。
ここで、自己組織化マップ(SOM)には、複数のノードが配置され、各ノードは、パラメータを有する。自己組織化マップに対して、入力データ(パラメータ)が与えられた場合、その入力データに対して最も類似するパラメータを有するノードが、勝者ノード(winner)として決定され、その勝者ノードが有するパラメータが、入力データに近づくように更新される。さらに、自己組織化マップにおいて、勝者ノードの近傍のノードが有するパラメータも、入力データに少しだけ近づくように更新される。
従って、自己組織化マップに対して、多数の入力データを与えていくと、パラメータが類似したノードどうしは近くなるように、類似しないノードは遠くなるように、自己組織化マップ上に配置されていく。従って、自己組織化マップには、あたかも入力データに含まれるパターンに応じた地図が構成されていくことになる。このように、入力データを与えていくと、パラメータが類似するノードどうしが近い位置に配置され、入力データに含まれるパターンに応じた地図が構成が構成されていく学習(パラメータの更新)の様(態様)は、自己組織的または自己組織化(self-organization)と呼ばれる。
非特許文献1に記載のロボットは、調音SOMにおけるあるノードに注目し、その注目ノードが有するパラメータをランダムに変更して、その変更後のパラメータにしたがって音を発する。
ケアギバーは、ロボットが発する音を聴き、その音を、社会に存在する音として認識することができた場合は、その音を発話する。このように、ロボットが発した音を聴いたケアギバーが発話した場合には、ロボットは、ケアギバーの発話した音を、入力データとして、聴覚SOMの勝者ノードが決定され、さらに、聴覚SOM(のノードが有するパラメータ)が更新される。そして、調音SOMの注目ノードと、聴覚SOMの勝者ノードとの結合が強められる。
以上の処理が繰り返されることにより、ロボットにおいては、調音SOMのノードと、そのノードが有するパラメータにしたがって発せられた音を聴いたケアギバーが発声した音に対して勝者ノードとなる聴覚SOMのノードとの結合、つまり、ロボットが音を発するのに用いたパラメータを有する調音SOMのノードと、その音と同一の音としてケアギバーが発声した音に対して勝者ノードとなる聴覚SOMのノードとの結合が、他のノードどうしの結合よりも強められていく。これにより、ロボットは、社会に存在する音韻を獲得し、外部から入力された音声と同様の音を出力することができるようになる。
即ち、ロボットは、外部から音声が入力されると、その音声に対して勝者ノードとなる聴覚SOMのノードとの結合が最も強い調音SOMのノードを探索し、そのノードが有するパラメータにしたがって音を発する。
非特許文献1に記載のロボットが行う学習は、ロボットが発した音が社会に存在する音であるという「正解」を、ケアギバーが同一の音を発話することによってロボットに与える、いわゆる教師あり学習である。従って、ロボットは、自身(調音器官)が発した音と同一の音を発話して「正解」を与えてくれるケアギバーが存在しなければ、音韻を獲得することができない。即ち、「正解」が与えられない、いわゆる教師なし学習を行うことはできない。
一方、例えば、非特許文献2には、できるだけ少ない仮定の下で、連続的な音から音韻を発生することができるように、音韻を獲得する学習を行う学習方法が開示されている。
即ち、非特許文献2に記載の学習方法では、聴覚器官に対応する聴覚SOM、および調音器官に対応する調音SOM、並びに聴覚SOMのノードと調音SOMのノードとの間の写像(結合)を有する複数のエージェントそれぞれに対し、調音SOMのノードが有するパラメータの初期値として、そのパラメータのパラメータ空間(調音空間)に一様にかつランダムに分布する値が与えられる。
なお、学習の開始前においては、複数のエージェントそれぞれにおいて、調音SOMのノードが有するパラメータは異なっている。
学習においては、各エージェントは、外部から、自身が発した音以外の音、つまり、他のエージェントが発した音の入力があった場合には、その音に対して、聴覚SOMの勝者ノードを決定し、さらに、聴覚SOM(のノードが有するパラメータ)を更新する。そして、エージェントは、聴覚SOMの勝者ノードとの結合が最も強い調音SOMのノードを探索し、そのノードが有するパラメータをリファレンスとして、調音SOMを更新する。即ち、調音SOMの各ノードのパラメータが、聴覚SOMの勝者ノードとの結合が最も強い調音SOMのノードが有するパラメータに近づくように更新される。
また、各エージェントは、自身が有する調音SOMのあるノードに注目して、その注目ノードが有するパラメータにしたがって音を発する。エージェントは、自身が発した音の入力があった場合には、その音に対して、聴覚SOMの勝者ノードを決定し、さらに、調音SOMの注目ノードと、聴覚SOMの勝者ノードとの結合を強める。
以上の処理が繰り返されることにより、複数のエージェントのそれぞれにおいて、同一の音(の集合)が、自身が発することができる音として残り、その結果、複数のエージェントは、すべて、同一の音韻(の集合)を獲得する。
非特許文献2では、以上のような学習を行うことにより、複数のエージェントが獲得する音韻が幾つかの音韻に収束することが報告されている。
非特許文献2に記載の学習は、「正解」が与えられない教師なし学習ではあるが、人間の社会に存在する音韻の獲得を目的とするものではなく、実際、非特許文献2に記載の学習によって、エージェントが、人間の社会に存在する音韻を獲得することができるとは限らない。このことは、各エージェントに対して、自身が発した音以外の音として、他のエ
ージェントが発した音に代えて、人間が発話した音声を入力しても同様である。
即ち、非特許文献2に記載の学習によれば、調音SOMの更新は、その調音SOMのいずれかのノードが有するパラメータをリファレンス(入力)として行われるため、調音SOMのノードが有するパラメータは、その初期値が分布していた空間内でしか変化しない(更新されない)。従って、エージェントが、人間の社会に存在する音韻を獲得することができるようにするためには、調音SOMのノードが有するパラメータの初期値として、人間の社会に存在する音韻すべてを包含する空間の全体に亘って一様に分布する値を与える必要があるが、そのような値を与えることは困難である。
ユーザとの対話を通じて、そのユーザが有する音韻構造を獲得することが要請されるロボットに対して、ユーザが、意識して「正解」を与えることは、ユーザにとって面倒である。
従って、ユーザとの対話を通じて、そのユーザが有する音韻構造を獲得することが要請されるロボットには、ユーザが「正解」であるか否かを意識せずに行った発話から、そのユーザが有する音韻構造を獲得することが必要とされる。
ロボットにおいて、そのような音韻構造の獲得を行うためには、ロボットの自己の行動としての発話を、他から与えられる刺激としての、ユーザから与えられる発話に適応させる必要があり、そのためには、ロボットが、自己の行動としての発話を能動的に変更し、さらに、その行動としての発話を自己評価する、つまり、自己の行動としての発話が、他から与えられた刺激としての、ユーザから与えられた発話に近いかどうかを評価(判定)する必要がある。
Y. Yoshikawa, J. Koga, M. Asada, and K. Hosoda(2003), "A Constructive Model of Mother-Infant Interaction towardsInfant's Vowel Articulation", Proc. of the 3rd International Workshop on Epigenetic Robotics, pp.139-146, 2003. Oudeyer, P-Y. (2003), "From Analogous to Digital Speech Sounds", Tallerman M., editor, Evolutionary Pre-Requisites for Language. Oxford University Press
そこで、このような状況に鑑みて、例えば、ロボットなどが、自己の行動を能動的に変更し、その行動を自己評価することにより、自己の行動を、他から与えられる刺激に適応させることができる情報処理装置、情報処理方法、およびプログラムが、特願2005−015533(以下、先願と称する)として本出願人により既に出願されている。
先願によれば、HMMとSOMを組み合わせた自己組織化アルゴリズムを聴覚と調音の自己組織化マップ(聴覚SOMおよび調音SOM)として使用し、聴覚SOM上の各ノードと調音SOM上の各ノードとの間の写像(聴覚SOMと調音SOMとのノードどうしの結合の度合いを表す結合重み)を用いるフレームワークを使用して、いわゆる「聞きまね」を通じてロボットが自己組織的に社会の音韻を獲得し、聞きまねが上手くなっていくメカニズムを実現できる。
即ち、先願によれば、外界から音を聞いたときに、その音をロボット自身が発声できるように試み、その音とより近い音を出力することが可能なモータコマンドが探索できた場合における結合重みを獲得する。このような結合重みの獲得の更新(学習)を繰り返すことによって、ロボットは、外界の音とほぼ同じ音を発声できるようになる。換言すると、先願では、このようなロボット自身の自己評価に基づく結合重みの学習手法、即ち、いわゆる教師なし結合重みの学習手法が開示されている。
このような先願の学習手法を適用することで、ロボット自身の自己評価のみで、ほぼ適切な写像の構成が可能となる。
ただし、ロボットの自己評価のみで構成された写像は、ほぼ適切なものであるが、完全とは言いがたい。即ち、ロボットは、仮に自己評価が間違っているとすると、その間違いに気づくことができないので、その結果、完全ではない(正確ではない)写像が構成されることになる。
具体的には例えば、ロボットの自己評価により十分に学習された聴覚と調音の自己組織化マップ(聴覚SOMおよび調音SOM)および両者の間の写像(両者間の結合重み)が存在するとする。この場合、人が「あ」といった音韻に対して、自己評価による写像を用いてロボットが選択した調音SOM上のノードから生成される音韻が「エ」になってしまっていたときには、この間違った写像を自己評価のみで訂正することは非常に困難である(実質上不可能に近い)。
また例えば、人が「う」と言った音韻に対して、調音SOM上のノードから生成される音韻が「ヴ」というような、人の社会には存在しない音が割り当てられる写像が構成されてしまう可能性もあり、このような間違った写像もまた自己評価のみで訂正することは非常に困難である(実質上不可能に近い)。
以上の内容をまとめると、先願の学習手法をただ単に適用した場合には、次の第1の間違いと2の間違いとが生じる可能性がある。
第1の間違いとは、ロボットの調音パラメータから発声された音韻が人の社会に存在する音韻ではあるが、人と同じ音韻とマッピングされていないという間違いである。
第2の間違いとは、ロボットの調音パラメータから発声された音韻が人の社会に存在せず、その音韻と人の持つ音韻がマッピングされてしまっているという間違いである。
本発明は、このような状況に鑑みてなされたものであり、このような第1の間違いと第2の間違いとの発生頻度を可能な限り抑制すること、即ち、より正確な写像(結合重み)を適切に生成することで、例えばロボットなどが、自己の行動を能動的に変更し、かつ、自己の行動を他から与えられる刺激に適応させることがより一段と正確にできるようにするものである。
換言すると、本発明は、例えば、ロボットなどが、自己の行動を能動的に変更し、かつ、自己の行動を、他から与えられる刺激に適応させるために必要な情報(例えば写像、即ち結合重み)をより一段と適切に生成することができるようにするものである。
本発明の情報処理装置は、複数のノードで構成される第1および第2の自己組織化マップ、並びに第1の自己組織化マップのノードと第2の自己組織化マップのノードとの結合の度合いを表す結合重みからなる結合ネットワークを記憶する結合ネットワーク記憶手段と、外部を観測し、観測値を出力する観測手段が出力する観測値から抽出される第1のパラメータに基づき、第1の自己組織化マップの学習を行う第1の学習手段と、第1の自己組織化マップにおいて、第1のパラメータが観測される尤度が最も高いノードである勝者ノードを決定する勝者ノード決定手段と、第2の自己組織化マップにおいて、勝者ノードとの結合の度合いが最も高いノードである生成ノードを探索する探索手段と、生成ノードから、第2のパラメータを生成するパラメータ生成手段と、生成ノードから生成される第2のパラメータを変更させる変更手段と、第2のパラメータにしたがって駆動する駆動手段が、第2のパラメータにしたがって駆動した場合に、観測手段において観測される観測値に対して決定される勝者ノードに基づき、第2のパラメータの変更を終了する終了条件が満たされるかどうかを判定する判定手段と、終了条件が満たされた場合に、結合重みを更新する第1の結合重み更新手段と、駆動手段の駆動の結果に対するユーザの評価がユーザから報酬として与えられた場合に、結合重みを更新する第2の結合重み更新手段と、終了条件が満たされた場合の第2のパラメータに基づき、第2の自己組織化マップの学習を行う第2の学習手段とを備えることを特徴とする。
本発明の情報処理方法は、第1および第2の学習手段、勝者ノード決定手段、探索手段、パラメータ生成手段、変更手段、判定手段、第1の結合重み更新手段、並びに、第2の結合重み更新手段とを備える情報処理装置の、前記第1の学習手段が、外部を観測し、観測値を出力する観測手段が出力する観測値から抽出される第1のパラメータに基づき、複数のノードで構成される第1および第2の自己組織化マップ、並びに第1の自己組織化マップのノードと第2の自己組織化マップのノードとの結合の度合いを表す結合重みからなる結合ネットワークを記憶する結合ネットワーク記憶手段に記憶された第1の自己組織化マップの学習を行う第1の学習ステップと、前記勝者ノード決定手段が、第1の自己組織化マップにおいて、第1のパラメータが観測される尤度が最も高いノードである勝者ノードを決定する勝者ノード決定ステップと、前記探索手段が、第2の自己組織化マップにおいて、勝者ノードとの結合の度合いが最も高いノードである生成ノードを探索する探索ステップと、前記パラメータ生成手段が、生成ノードから、第2のパラメータを生成するパラメータ生成ステップと、前記変更手段が、生成ノードから生成される第2のパラメータを変更させる変更ステップと、前記判定手段が、第2のパラメータにしたがって駆動する駆動手段が、第2のパラメータにしたがって駆動した場合に観測手段において観測される観測値に対して決定される勝者ノードに基づき、第2のパラメータの変更を終了する終了条件が満たされるかどうかを判定する判定ステップと、前記第1の結合重み更新手段が、終了条件が満たされた場合に、結合重みを更新する第1の結合重み更新ステップと、前記第2の結合重み更新手段が、駆動手段の駆動の結果に対するユーザの評価がユーザから報酬として与えられた場合に、結合重みを更新する第2の結合重み更新ステップと、前記第2の学習手段が、終了条件が満たされた場合の第2のパラメータに基づき、第2の自己組織化マップの学習を行う第2の学習ステップとを含むことを特徴とする。
本発明のプログラムは、コンピュータに、外部を観測し、観測値を出力する観測手段が出力する観測値から抽出される第1のパラメータに基づき、複数のノードで構成される第1および第2の自己組織化マップ、並びに第1の自己組織化マップのノードと第2の自己組織化マップのノードとの結合の度合いを表す結合重みからなる結合ネットワークを記憶する結合ネットワーク記憶手段に記憶された第1の自己組織化マップの学習を行う第1の学習ステップと、第1の自己組織化マップにおいて、第1のパラメータが観測される尤度が最も高いノードである勝者ノードを決定する勝者ノード決定ステップと、第2の自己組織化マップにおいて、勝者ノードとの結合の度合いが最も高いノードである生成ノードを探索する探索ステップと、生成ノードから、第2のパラメータを生成するパラメータ生成ステップと、生成ノードから生成される第2のパラメータを変更させる変更ステップと、第2のパラメータにしたがって駆動する駆動手段が、第2のパラメータにしたがって駆動した場合に観測手段において観測される観測値に対して決定される勝者ノードに基づき、第2のパラメータの変更を終了する終了条件が満たされるかどうかを判定する判定ステップと、終了条件が満たされた場合に、結合重みを更新する第1の結合重み更新ステップと、駆動手段の駆動の結果に対するユーザの評価がユーザから報酬として与えられた場合に、結合重みを更新する第2の結合重み更新ステップと、終了条件が満たされた場合の第2のパラメータに基づき、第2の自己組織化マップの学習を行う第2の学習ステップとを含む処理を実行させることを特徴とする。
本発明においては、外部を観測し、観測値を出力する観測手段が出力する観測値から抽出される第1のパラメータに基づき、複数のノードで構成される第1および第2の自己組織化マップ、並びに第1の自己組織化マップのノードと第2の自己組織化マップのノードとの結合の度合いを表す結合重みからなる結合ネットワークにおける第1の自己組織化マップの学習が行われる。また、第1の自己組織化マップにおいて、第1のパラメータが観測される尤度が最も高いノードである勝者ノードが決定され、第2の自己組織化マップにおいて、勝者ノードとの結合の度合いが最も高いノードである生成ノードが探索される。さらに、生成ノードから生成される第2のパラメータが変更され、その第2のパラメータにしたがって駆動手段が駆動した場合に観測手段において観測される観測値に対して決定される勝者ノードに基づき、第2のパラメータの変更を終了する終了条件が満たされるかどうかが判定される。そして、終了条件が満たされた場合に、結合重みが更新される。さらに、駆動手段の駆動の結果に対するユーザの評価がユーザから報酬として与えられた場合にも、結合重みが更新される。また、終了条件が満たされた場合の第2のパラメータに基づき、第2の自己組織化マップの学習が行われる。
本発明によれば、例えば、ロボットなどが、自己の行動を能動的に変更し、その行動を自己評価することにより、自己の行動を、他から与えられる刺激に適応させることができる。特に、例えば、ロボットなどが、自己の行動を能動的に変更し、かつ、自己の行動を、他から与えられる刺激に適応させるために必要な情報として、結合重みをより一段と適切に生成する(更新していく)ことができる。
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
請求項1に記載の情報処理装置は、
複数のノードで構成される第1および第2の自己組織化マップ、並びに前記第1の自己組織化マップのノードと前記第2の自己組織化マップのノードとの結合の度合いを表す結合重みからなる結合ネットワークを記憶する結合ネットワーク記憶手段(例えば、図1の記憶部4)と、
外部を観測し、観測値を出力する観測手段(例えば、図1の観測部1)が出力する観測値から抽出される第1のパラメータ(例えば、音響パラメータ)に基づき、前記第1の自己組織化マップの学習を行う第1の学習手段(例えば、図1の学習部3)と、
前記第1の自己組織化マップにおいて、前記第1のパラメータが観測される尤度が最も高いノードである勝者ノードを決定する勝者ノード決定手段(例えば、図12の勝者ノード決定部52)と、
前記第2の自己組織化マップにおいて、前記勝者ノードとの結合の度合いが最も高いノードである生成ノードを探索する探索手段(例えば、図14の生成ノード決定部61)と、
前記生成ノードから、第2のパラメータ(例えば、調音パラメータ)を生成するパラメータ生成手段(例えば、図14の時系列生成部63)と、
前記生成ノードから生成される第2のパラメータを変更させる変更手段(例えば、図14のモデルパラメータ変更部62)と、
前記第2のパラメータにしたがって駆動する駆動手段(例えば、図1の駆動部8)が、前記第2のパラメータにしたがって駆動した場合に前記観測手段において観測される観測値に対して決定される前記勝者ノードに基づき、前記第2のパラメータの変更を終了する終了条件が満たされるかどうかを判定する判定手段(例えば、図1の制御部9)と、
前記終了条件が満たされた場合に、前記結合重みを更新する第1の結合重み更新手段(例えば、図16の自己学習用結合重み更新部76)と、
前記駆動手段の駆動の結果に対するユーザの評価が前記ユーザから報酬として与えられた場合に、前記結合重みを更新する第2の結合重み更新手段(例えば、図16の教示学習用結合重み更新部77)と、
前記終了条件が満たされた場合の前記第2のパラメータに基づき、前記第2の自己組織化マップの学習を行う第2の学習手段(例えば、図1の学習部7)と
を備えることを特徴とする。
請求項5に記載の情報処理方法は、
第1および第2の学習手段、勝者ノード決定手段、探索手段、パラメータ生成手段、変更手段、判定手段、第1の結合重み更新手段、並びに、第2の結合重み更新手段とを備える情報処理装置の、
前記第1の学習手段が、外部を観測し、観測値を出力する観測手段(例えば、図1の観測部1)が出力する観測値から抽出される第1のパラメータ(例えば、音響パラメータ)に基づき、複数のノードで構成される第1および第2の自己組織化マップ、並びに前記第1の自己組織化マップのノードと前記第2の自己組織化マップのノードとの結合の度合いを表す結合重みからなる結合ネットワークを記憶する結合ネットワーク記憶手段(例えば、図1の記憶部4)に記憶された前記第1の自己組織化マップの学習を行う第1の学習ステップと(例えば、図18のステップS105)、
前記勝者ノード決定手段が、前記第1の自己組織化マップにおいて、前記第1のパラメータが観測される尤度が最も高いノードである勝者ノードを決定する勝者ノード決定ステップ(例えば、図18のステップS104)と、
前記探索手段が、前記第2の自己組織化マップにおいて、前記勝者ノードとの結合の度合いが最も高いノードである生成ノードを探索する探索ステップ(例えば、図18のステップS106)と、
前記パラメータ生成手段が、前記生成ノードから、第2のパラメータ(例えば、調音パラメータ)を生成するパラメータ生成ステップ(例えば、図18のステップS109)と、
前記変更手段が、前記生成ノードから生成される第2のパラメータを変更させる変更ステップ(例えば、図18のステップS108)と、
前記判定手段が、前記第2のパラメータにしたがって駆動する駆動手段(例えば、図1の駆動部8)が、前記第2のパラメータにしたがって駆動した場合に前記観測手段において観測される観測値に対して決定される前記勝者ノードに基づき、前記第2のパラメータの変更を終了する終了条件が満たされるかどうかを判定する判定ステップ(例えば、図18のステップS114)と、
前記第1の結合重み更新手段が、前記終了条件が満たされた場合に、前記結合重みを更新する第1の結合重み更新ステップ(例えば、図18のステップS115で行われる図17のステップS47)と、
前記第2の結合重み更新手段が、前記駆動手段の駆動の結果に対するユーザの評価が前記ユーザから報酬として与えられた場合に、前記結合重みを更新する第2の結合重み更新ステップ(例えば、図18のステップS115で行われる図17のステップS48)と、
前記第2の学習手段が、前記終了条件が満たされた場合の前記第2のパラメータに基づき、前記第2の自己組織化マップの学習を行う第2の学習ステップ(例えば、図18のステップS115で行われる図17のステップS45)と
を含むことを特徴とする。
請求項6に記載のプログラムは、
コンピュータに
外部を観測し、観測値を出力する観測手段(例えば、図1の観測部1)が出力する観測値から抽出される第1のパラメータ(例えば、音響パラメータ)に基づき、複数のノードで構成される第1および第2の自己組織化マップ、並びに前記第1の自己組織化マップのノードと前記第2の自己組織化マップのノードとの結合の度合いを表す結合重みからなる結合ネットワークを記憶する結合ネットワーク記憶手段(例えば、図1の記憶部4)に記憶された前記第1の自己組織化マップの学習を行う第1の学習ステップと(例えば、図18のステップS105)、
前記第1の自己組織化マップにおいて、前記第1のパラメータが観測される尤度が最も高いノードである勝者ノードを決定する勝者ノード決定ステップ(例えば、図18のステップS104)と、
前記第2の自己組織化マップにおいて、前記勝者ノードとの結合の度合いが最も高いノードである生成ノードを探索する探索ステップ(例えば、図18のステップS106)と、
前記生成ノードから、第2のパラメータ(例えば、調音パラメータ)を生成するパラメータ生成ステップ(例えば、図18のステップS109)と、
前記生成ノードから生成される第2のパラメータを変更させる変更ステップ(例えば、図18のステップS108)と、
前記第2のパラメータにしたがって駆動する駆動手段(例えば、図1の駆動部8)が、前記第2のパラメータにしたがって駆動した場合に前記観測手段において観測される観測値に対して決定される前記勝者ノードに基づき、前記第2のパラメータの変更を終了する終了条件が満たされるかどうかを判定する判定ステップ(例えば、図18のステップS114)と、
前記終了条件が満たされた場合に、前記結合重みを更新する第1の結合重み更新ステップ(例えば、図18のステップS115で行われる図17のステップS47)と、
前記駆動手段の駆動の結果に対するユーザの評価が前記ユーザから報酬として与えられた場合に、前記結合重みを更新する第2の結合重み更新ステップ(例えば、図18のステップS115で行われる図17のステップS48)と、
前記終了条件が満たされた場合の前記第2のパラメータに基づき、前記第2の自己組織化マップの学習を行う第2の学習ステップ(例えば、図18のステップS115で行われる図17のステップS45)と
を含む処理を実行させる
以下、図面を参照して、本発明の実施の形態について説明する。
図1は、本発明を適用した情報処理装置の一実施の形態の構成例を示している。
この情報処理装置は、例えば、2足歩行型または4足歩行型のロボットの、音声に関係する処理を行う部分に適用することができる。
観測部1は、外部を観測し、観測値を出力する。即ち、観測部1は、例えば、音声(音)を観測するセンサとしての、例えば、マイク(マイクロフォン)、さらには、アンプ、A/D(Analog/Digital)変換器などで構成され、ユーザが発話した音声その他の音を観測し、観測値としての音声データを得て、特徴抽出部2に供給する。
なお、観測部1は、さらに、外部からの音声(音)の音声区間を検出し、その音声区間の単位で、音声データを、特徴抽出部2に供給する。但し、観測部1から特徴抽出部2に供給される音声データの単位(長さ)は、音声区間である必要はなく、適切な長さに区切られていればよい。即ち、観測部1から特徴抽出部2に対して供給される音声データは、例えば、音素や音韻の単位であっても良いし、単語や文、ある句読点から次の句読点までであっても良い。また、観測部1から特徴抽出部2に対して供給される音声データ(の区間)は、一定であっても良いし、一定でなくても(可変であっても)良い。
さらに、ここでは、観測部1は、上述のように、ユーザの音声等の外部からの音声を観測し、観測値としての音声データを出力するものとするが、その他、観測部1は、例えば、光を観測するセンサとしてのカメラ等で構成し、外部からの光を観測して、観測値としての画像データを出力するようにすることもできる。また、観測部1は、外部の温度や、外部から加えられる圧力、その他の物理量を観測するセンサで構成することができる。
ここで、観測部1が観測する外部からの音声には、ユーザが発声した音声と、後述する駆動部8が出力する音声(合成)とがある。さらに、駆動部8が出力する音声(合成)は、後述するユーザからの報酬が与えられる音声と、その報酬が与えられない音声とに区別される。このため、図1の例では、報酬取得部9により取得された報酬は、後述する学習部7に加えて、観測部1にも供給されるようになされている。即ち、観測部1は、必要に応じて、報酬の取得の有無を示す情報を音声データに付加して、特徴抽出部2に供給することもできる。
特徴抽出部2は、観測部1の出力から特徴量(第1のパラメータ)を抽出し、学習部3と認識部5に供給する。即ち、特徴抽出部2は、観測部1からの音声データから、その特徴量としての音響パラメータを抽出し、学習部3と認識部5に供給する。具体的には、特徴抽出部2は、観測部1からの音声データに対して一定時間間隔で周波数分析などの処理を施し、例えば、メルケプストラム(MFCC(Mel Frequency Cepstrum Coefficient))などの、音声認識に適した音響パラメータを抽出して、学習部3と認識部5に供給する。
ここで、観測部1から特徴抽出部2に供給される音声データは、時系列のデータ(時系列データ)であり、特徴抽出部2では、そのような音声データに対して、一定時間間隔で処理を施すことにより、音響パラメータを得て出力するから、特徴抽出部2が出力する音響パラメータも、観測部1から特徴抽出部2に供給される音声データと同様に、時系列データである。
なお、以下、適宜、時系列データである音響パラメータ(時系列の音響パラメータ)を、特に、音響パラメータ系列という。
学習部3は、特徴抽出部2からの音響パラメータ系列に基づき、記憶部4に記憶された、後述する結合ネットワークを構成する自己組織化マップである聴覚SOMの学習(更新)を行う。
即ち、学習部3には、特徴抽出部2から多数の音響パラメータ系列が与えられるが、学習部3は、その多数の音響パラメータ系列の代表的または特徴的なパターン(時系列パターン)を自己組織的に獲得していく教師なし学習を実行する。その結果、記憶部4に記憶された結合ネットワークを構成する聴覚SOMには、特徴抽出部2から学習部3に与えられる多数の音響パラメータ系列の代表的(特徴的)なパターンが、効率的に記憶される。即ち、特徴抽出部2が学習部3と認識部5に供給する音響パラメータ系列は、幾つかの代表的なパターン(時系列パターン)に分類することができ、学習部3では、聴覚SOMに、音響パラメータ系列の代表的な時系列パターンを記憶させるための学習が行われる。
記憶部4は、結合ネットワークを記憶している。結合ネットワークは、複数のノードで構成される自己組織化マップである聴覚SOMおよび調音SOM、並びに、聴覚SOMのノードと調音SOMのノードとの結合の度合いを表す結合重みからなる。なお、結合ネットワークの詳細については、後述する。
認識部5は、記憶部4に記憶された結合ネットワークを構成する聴覚SOMに基づき、特徴抽出部2から供給される音響パラメータ系列を用いて、観測部1で観測された音声を認識(音声認識)する認識処理を行い、その音声の認識結果を、生成部6に供給する。
生成部6は、認識部5から供給される認識結果に基づき、記憶部4に記憶された結合ネットワークを構成する調音SOMの所定のノードを探索する。さらに、生成部6は、その所定ノードを用いて、後段の駆動部8を駆動するパラメータ(第2のパラメータ)としての調音パラメータを生成し、学習部7と駆動部8に供給する。
なお、生成部6が出力する調音パラメータも、上述の特徴抽出部2が出力する音響パラメータと同様に、時系列データである。以下、適宜、時系列データである調音パラメータ(時系列の調音パラメータ)を、特に、調音パラメータ系列という。
ここで、生成部6が生成するパラメータは、駆動部8を駆動するパラメータであり、駆動部8が受け付けて駆動するパラメータであれば、その種類は問わない。駆動部8が、例えば、回転角度や回転速度等を指定するコマンドを受け付けて回転するモータなどで構成される場合には、そのコマンドを、生成部6が生成するパラメータとすることができる。また、駆動部8が、例えば、音声波形を生成するのに用いる音素片や、アクセント、ピッチ周波数などを表す情報を要素とするベクトルを受け付けて音声合成を行う音声合成装置などで構成される場合には、そのベクトルを、生成部6が生成するパラメータとすることができる。
学習部7は、生成部6からの調音パラメータ系列に基づき、記憶部4に記憶された結合ネットワークを構成する自己組織化マップである調音SOMの学習(更新)を、上述の学習部3が聴覚SOMの学習を行う場合と同様にして行う。
さらに、学習部7は、記憶部4に記憶された統合ネットワークを構成する結合重みの学習(更新)も行う。詳細については後述するが、この結合重みの学習(更新)には、情報処理装置自身が出力した音声(合成音)に基づく自己評価による学習、即ち、いわゆる教師なし学習と、情報処理装置自身が出力した音声(合成音)に対するユーザからの報酬(後述する報酬取得部9により取得される報酬)に基づく学習、即ち、この報酬を教師信号とするいわゆる教師あり学習とが存在する。
駆動部8は、生成部6からの調音パラメータにしたがって駆動する。即ち、駆動部8は、例えば、調音パラメータにしたがって音声合成を行う音声合成装置や、アンプ、D/A(Digital/Analog)変換器、スピーカなどで構成され、調音パラメータにしたがって音声合成を行う。そして、駆動部8は、その音声合成によって得られる音声(合成音)を出力する。
ここで、駆動部8を構成する音声合成装置としては、例えば、テキストを入力として音声合成を行うTTS(Text To Speech)の一部、即ち、例えば、テキストの解析結果に基づいて得られるベクトルを入力として音声合成を行うモジュールを利用することができる。この場合、調音パラメータ系列は、テキストの解析結果に基づいて得られる時系列のベクトルである。
なお、ここでは、駆動部8の駆動の形態として、音声合成装置による音声合成を採用し、駆動部8が駆動することにより合成音が生成されることとしているが、その他、駆動部8は、アクチュエータ(モータ)で構成し、そのアクチュエータが駆動することにより、ロボットの手や足に相当する部分が動かされるようにすることも可能である。この場合、生成部6では、アクチュエータを駆動するパラメータが生成され、学習部7と駆動部8に供給される。
報酬取得部9は、情報処理装置自身が出力した音声(合成音)に対するユーザの評価を報酬という形でユーザから取得し、観測部1と学習部7とに供給する。詳細については後述するが、この報酬には、情報処理装置自身が出力した合成音と外界の実際の音声とがほぼ一致していると評価した場合にユーザが与える報酬(以下、正報酬と称する)、および、その合成音と外界の実際の音声とが一致していないと評価した場合にユーザが与える報酬(以下、負報酬と称する)が存在する。
制御部10は、観測部1乃至報酬取得部9それぞれから必要なデータ(情報)の供給を受け、そのデータ等に基づいて、観測部1乃至報酬取得部9それぞれを制御する。なお、制御部10と、観測部1乃至報酬取得部9それぞれとの間は、データ等をやりとりするための接続線によって接続されているが、図1では、図が煩雑になるのを避けるため、その接続線の図示を省略してある。
次に、図2は、図1の記憶部4に記憶された結合ネットワークの構成例を模式的に示している。
結合ネットワークは、上述したように、聴覚SOMおよび調音SOM、並びに、結合重みからなる。
聴覚SOMおよび調音SOMは、複数のノードで構成される自己組織化マップである。但し、従来の自己組織化マップは、その自己組織化マップを構成するノードがパラメータを有し、そのパラメータが、要素の数が一定のベクトル(要素の数が1つのベクトルとみることができるスカラ量を含む)であるのに対して、結合ネットワークを構成する聴覚SOMおよび調音SOMである自己組織化マップは、その自己組織化マップを構成するノードが、時系列パターンを表現する時系列パターンモデルを有する点で、従来の自己組織化マップとは、異なる。結合ネットワークを構成する聴覚SOMおよび調音SOMである自己組織化マップの詳細については後述する。
結合ネットワークを構成する聴覚SOMおよび調音SOMにおいては、図3に示すように、聴覚SOMを構成する各ノードが、調音SOMを構成するノードのすべてと結合されている。そして、結合ネットワークにおいては、聴覚SOMを構成するノードと、調音SOMを構成するノードとの結合に対して、その結合の度合いを表す結合重みが定義されている。
次に、結合ネットワークを構成する聴覚SOMおよび調音SOMである自己組織化マップは、時系列パターンを表現する時系列パターンモデルを有する複数のノードの、いわばネットワークであり、従って、時系列パターンを記憶する時系列パターン記憶ネットワークであるということができる。時系列パターン記憶ネットワークは、その時系列パターン記憶ネットワークを構成するノードの数だけの(クラスタリングを行う)時系列パターンを記憶する。
図4は、時系列パターン記憶ネットワークの例を模式的に示している。
図4においては、時系列パターン記憶ネットワークは、ノードN1乃至N6の6つのノードから構成されている。
時系列パターン記憶ネットワークを構成する各ノードNi(図4では、i=1,2,・・・,6)は、時系列パターンを表現する時系列パターンモデルを有する。また、ノードNiは、他のノードNj(図4では、j=1,2,・・・,6)と結合関係を持つことができる。この結合関係をリンクと呼ぶ。図4では、例えば、ノードN1は、ノードN2,N3と直接の結合関係を有している。また、例えば、ノードN3は、ノードN1,N2,N5,N6と直接の結合関係を有しており、従って、ノードN5とN6は、ノードN3を介して、ノードN1と間接的な結合関係を有している。なお、2つのノードNiとNjとの結合関係としては、その2つのノードNiとNjとの最短の結合関係(パス)を考えるものとする。
時系列パターン記憶ネットワークの学習は、時系列データを、学習に用いる学習データとして行われるが、その学習データが、どのようなカテゴリ(クラス)に属する時系列データであるかを表す「正解」は与えられない。従って、時系列パターン記憶ネットワークの学習は、教師なし学習である。
次に、図5は、時系列パターン記憶ネットワークのノードNiの構成例を模式的に示している。
ノードNiは、時系列パターンを表現する時系列パターンモデル21と、その時系列パターンモデル21の学習に用いる時系列データである学習データを記憶する学習データ記憶部22とから構成される。
ここで、図5では、時系列パターンモデル21として、状態確率遷移モデルの1つであるHMM(連続HMM)が採用されている。また、図5では、HMMは、自己ループと次状態(右隣の状態)への状態遷移だけを有するleft-to-right型の3状態S1,S2,S3を有するものとなっている。図5の時系列パターンモデル21における○印は状態を表し、矢印は状態遷移を表している。なお、時系列パターンモデル21としてのHMMは、left-to-right型や、3状態のもの等に限定されない。
時系列パターンモデル21が、図5に示したようなHMMである場合、その時系列パターンモデル21としてのHMMは、状態遷移確率と出力確率密度関数(HMMが離散HMMである場合には、スカラ量である離散的なシンボルが出力される確率)とで定義される。
状態遷移確率は、HMMにおいて、状態が遷移する確率で、図5の時系列パターンモデル21における矢印で示した状態遷移それぞれに対して与えられる。出力確率密度関数は、状態遷移時に、HMMから観測される値の確率密度を表す。出力確率密度関数としては、例えば、混合正規分布などが採用される。これらのHMMのパラメータ(状態遷移確率と出力確率密度関数)は、例えば、Baum-Welch 法によって学習(推定)することができる。
ノードNiでは、学習データ記憶部22に記憶された学習データの統計的な特性、即ち、学習データ記憶部22に記憶された学習データの時系列パターンが、時系列パターンモデル21において学習され、これにより、時系列パターンモデル21と、学習データ記憶部22に記憶された学習データとが、対応関係を持つことになる。
なお、聴覚SOMとしての時系列パターン記憶ネットワークのノードNiにおいては、学習データ記憶部22は、学習データとして、音響パラメータ系列を記憶する。また、調音SOMとしての時系列パターン記憶ネットワークのノードNiにおいては、学習データ記憶部22は、学習データとして、調音パラメータ系列を記憶する。
次に、図6は、時系列パターン記憶ネットワークの他の例を模式的に示している。
図6では、時系列パターン記憶ネットワークは、9個のノードN1乃至N9で構成されており、この9個のノードN1乃至N9は、2次元的に配置されている。即ち、図6では、9個のノードN1乃至N9は、2次元平面上に、横×縦が3×3となるように配置されている。
さらに、図6では、2次元的に配置された9個のノードN1乃至N9の、横方向に隣接するノードどうしと、縦方向に隣接するノードどうしに対して、リンク(結合関係)が与えられている。なお、このようなリンクを与えることによって、時系列パターン記憶ネットワークを構成するノードには、空間的に、2次元的に配置される配置構造が与えられているということもできる。
時系列パターン記憶ネットワークでは、リンクによって与えられる空間的なノードの配置構造に基づき、その空間上でのある2つのノードどうしの距離を定義することができ、この2つのノードどうしの距離は、その2つのノードそれぞれが有する時系列パターンモデル21が表現する時系列パターンのパターン間距離(時系列パターンどうしの類似性)として用いることができる。
なお、2つのノードどうしの距離によって表される時系列パターンのパターン間距離は、2つのノードの結合関係(リンク)に基づくパターン間距離ということができる。
2つのノードどうしの距離としては、例えば、その2つのノードどうしを結ぶ最短のパスを構成するリンクの数を採用することができる。この場合、あるノードに注目すると、その注目ノードとの直接のリンクを有するノード(図6では、注目ノードの横方向や縦方向に隣接するノード)は、注目ノードとの距離が最も近く、注目ノードとの直接のリンクを有するノードから先のリンクを辿っていくことで到達することができるノードは、到達するのに辿るリンクの数が多いほど、注目ノードとの距離が遠くなっていく。
なお、ノードに与えるリンクは、図4や図6に示したものに限定されるものではない。また、図4や図6に示したリンクは、ノードに対して、2次元的な配置構造を与えるが、リンクは、その他、1次元的な配置構造や3次元的な配置構造等を与えるリンクであっても良い。さらに、ノードには、必ずしもリンクを与える必要はない。
即ち、図7は、時系列パターン記憶ネットワークのさらに他の例を模式的に示している。
図7では、時系列パターン記憶ネットワークは、図4における場合と同様に、6個のノードN1乃至N6で構成されているが、これらの6個のノードN1乃至N6は、いずれもリンクを有していない。従って、図7の時系列パターン記憶ネットワークを構成するノードN1乃至N6は、リンクによって与えられる空間的な配置構造は有していない。なお、空間的な配置構造は有していないということは、空間的な制約がない配置構造が与えられているということもできる。
ここで、ある2つのノードにリンクがない場合には、空間上でのその2つのノードどうしの距離を定義することはできないから、その2つのノードそれぞれが(有する時系列パターンモデル21が)表現する時系列パターンのパターン間距離として、結合関係(リンク)に基づくパターン間距離は用いることができない。そこで、この場合には、例えば、ノードが、ある時系列データ(の観測値)に適合する度合いに基づく順位(以下、適宜、適合順位という)に対応する値を、パターン間距離として用いることができる。
即ち、ある時系列データが与えられた場合には、その時系列データに対して、ノードが表現する時系列パターンとの類似性を、そのノードが適合する度合いとして求めることができる。いま、時系列パターン記憶ネットワークを構成するノードのうち、ある時系列データに最も適合するノードを、勝者ノードということとすると、勝者ノードと、時系列パターン記憶ネットワークのあるノードのそれぞれが表現する時系列パターンのパターン間距離としては、そのノードが時系列データに適合する順位(適合順位)に対応する値を採用することができる。
具体的には、時系列パターン記憶ネットワークを構成するノードのうち、勝者ノードとなっているノードの適合順位は第1位であり、このノード(勝者ノード)と勝者ノードとの(それぞれが表現する時系列パターンの)パターン間距離は、例えば、その適合順位から1を減算した0とすることができる。
また、時系列パターン記憶ネットワークを構成するノードのうち、適合順位が第2位のノードと勝者ノードとのパターン間距離は、例えば、その適合順位から1を減算した1とすることができる。以下、同様に、ノードの適合順位から1を減算して得られる値を、そのノードと、勝者ノード(となっているノード)とのパターン間距離とすることができる。
なお、ノードがある時系列データに適合する度合いに基づく順位(適合順位)に対応する値によって表されるパターン間距離は、ノードが時系列データに適合する度合いに基づくパターン間距離ということができる。
次に、図8は、図1の学習部3の構成例を示している。
学習部3には、特徴抽出部2(図1)から、新たな時系列データとしての(例えば、観測部1で検出された音声区間の)音響パラメータ系列が供給される。学習部3は、記憶部4に記憶された結合ネットワークを構成する聴覚SOMとしての時系列パターン記憶ネットワークを、特徴抽出部2からの新たな時系列データに基づいて、自己組織的に更新する。
即ち、スコア計算部41は、記憶部4に記憶された時系列パターン記憶ネットワークである聴覚SOMを構成する各ノードについて、そのノードが、特徴抽出部2から供給される新たな時系列データとしての音響パラメータ系列に適合する度合いをスコアとして求め、勝者ノード決定部42に供給する。即ち、ノードが有する時系列パターンモデル21が、例えば、図5に示したようにHMMである場合には、スコア計算部41は、ノードが有する時系列パターンモデル21としてのHMMから、特徴抽出部2から供給された新たな音響パラメータ系列が観測される尤度を求め、そのノードのスコアとして、勝者ノード決定部42に供給する。
勝者ノード決定部42は、記憶部4に記憶された時系列パターン記憶ネットワークである聴覚SOMにおいて、特徴抽出部2からの新たな音響パラメータ系列に最も適合するノードを求め、そのノードを、勝者ノードとして決定する。
即ち、勝者ノード決定部42は、記憶部4に記憶された時系列パターン記憶ネットワークである聴覚SOMを構成するノードのうちの、スコア計算部41からのスコアが最も高いノードを勝者ノードとして決定する。そして、勝者ノード決定部42は、勝者ノードを表す情報を、更新重み決定部43に供給する。
ここで、時系列パターン記憶ネットワークを構成するノードには、各ノードを識別するためのラベルであるノードラベルを付しておき、勝者ノードを表す情報、その他のノード表す情報としては、そのノードラベルを採用することができる。なお、ノードラベルは、ノード自体を識別するラベルであり、「正解」を表すものではない。
更新重み決定部43は、勝者ノード決定部42から供給されるノードラベルが表す勝者ノードに基づき、記憶部4に記憶された聴覚SOMを構成する各ノードについて、後述する更新重みを決定し、学習データ更新部44に供給する。
即ち、更新重み決定部43は、記憶部4に記憶された聴覚SOMを構成する各ノード(勝者ノードを含む)の更新重みを、そのノードと、勝者ノードとのパターン間距離に基づいて決定し、学習データ更新部44に供給する。
ここで、ノードが有する時系列パターンモデル21(図5)は、特徴抽出部2からの新たな音響パラメータ系列を用いて更新されるが、ノードの更新重みとは、そのノードが有する時系列パターンモデル21の更新によって、その時系列パターンモデル21が受ける新たな音響パラメータ系列の影響の度合いを表す。従って、ノードの更新重みが、例えば0であれば、そのノードが有する時系列パターンモデル21は、新たな音響パラメータ系列の影響を受けない(更新されない)。
なお、更新重み決定部43において、記憶部4に記憶された聴覚SOMを構成する各ノードの更新重みを決定する際のパターン間距離としては、聴覚SOMのノードが、図4や図6に示したように、リンクを有する場合には、そのノードと勝者ノードとの結合関係に基づくパターン間距離を採用し、また、聴覚SOMのノードが、図7に示したように、リンクを有しない場合には、聴覚SOMの各ノードが、特徴抽出部2からの新たな音響パラメータ系列に適合する度合いに基づくパターン間距離を採用することができる。
即ち、更新重み決定部43は、記憶部4に記憶された聴覚SOMを参照し、聴覚SOMのノードそれぞれと、勝者ノード決定部42からのノードラベルが表す勝者ノードとの結合関係に基づくパターン間距離を求め、そのパターン間距離に基づいて、聴覚SOMのノードそれぞれの更新重みを決定する。
あるいは、更新重み決定部43は、記憶部4に記憶された聴覚SOMを参照し、聴覚SOMのノードそれぞれについて、ノードが、特徴抽出部2からの新たな音響パラメータ系列に適合する度合いとして、例えば、スコア計算部41が求めるのと同様のスコアを求める。さらに、更新重み決定部43は、聴覚SOMのノードそれぞれについて、ノードのスコアに基づく順位(適合順位)に対応する値を、新たな音響パラメータ系列に適合する度合いに基づくパターン間距離として求め、そのパターン間距離に基づいて、聴覚SOMのノードそれぞれの更新重みを決定する。
なお、ノードのスコアは、更新重み決定部43で求めても良いが、スコア計算部41から更新重み決定部43に供給するようにしても良い。
学習データ更新部44は、記憶部4に記憶された聴覚SOMの各ノードが有する学習データ記憶部22(図5)に記憶された学習データを更新する。
即ち、学習データ更新部44は、ノードが有する学習データ記憶部22に既に記憶されている学習データと、特徴抽出部2からの新たな音響パラメータ系列とを、更新重み決定部43からの、対応するノードの更新重みにしたがって混合し、その混合結果を、新たな学習データとして、学習データ記憶部22に記憶させることで、その学習データ記憶部22の記憶内容を更新する。
学習データ更新部44は、以上のように、学習データ記憶部22(図5)に記憶された学習データを、更新重みにしたがって更新すると、その更新が終了した旨の終了通知を、モデル学習部45に供給する。
モデル学習部45は、学習データ更新部44から終了通知を受けると、その学習データ更新部44による更新後の学習データ記憶部22(図5)に記憶された学習データを用いて、記憶部4に記憶された聴覚SOMの各ノードが有する時系列パターンモデル21の学習を行うことにより、その時系列パターンモデル21を更新する。
従って、モデル学習部45による、ノードが有する時系列パターンモデル21の更新は、そのノードが有する学習データ記憶部22(図5)に記憶されていた学習データ(の一部)と、特徴抽出部2から供給された新たな音響パラメータ系列とに基づいて行われる。なお、学習データ記憶部22の記憶内容は、更新重みにしたがって更新されるから、モデル学習部45による、時系列パターンモデル21の更新は、更新重みに基づいて行われるということもできる。
次に、図9は、図8の更新重み決定部43において更新重みを決定する決定方法を示している。
更新重み決定部43は、例えば、図9に示すような、勝者ノードとのパターン間距離dの増加に対して更新重みαが減少する関係を表す曲線(以下、距離/重み曲線という)にしたがって、ノードに対する更新重み(ノードの更新重み)を決定する。距離/重み曲線によれば、勝者ノードとのパターン間距離dが近いノードほど、大きな更新重みαが決定され、パターン間距離dが遠いノードほど、小さな更新重みαが決定される。
図9の距離/重み曲線において、横軸(左から右方向)は、更新重みαを示しており、縦軸(上から下方向)は、パターン間距離dを示している。
図9では、パターン間距離dとして、例えば、ノードとの結合関係に基づくパターン間距離、即ち、勝者ノードからの距離が採用されており、縦軸に沿って、聴覚SOMを構成する6つのノードN1乃至N6が、各ノードNiと勝者ノードとの距離に対応する位置(縦軸の位置)に記載されている。
図9では、聴覚SOMを構成する6つのノードN1乃至N6が、その順で、勝者ノードとの距離が近くなっている。聴覚SOMを構成する6つのノードN1乃至N6のうち、勝者ノードとの距離が最も近いノード、即ち、勝者ノードとの距離が0のノードであるノードN1は、勝者ノード(となっているノード)である。
ここで、聴覚SOMが、例えば、図6に示したような2次元的な配置構造を有し、勝者ノードが、例えば、ノードN6であった場合には、勝者ノードN6とノードN6との距離は最も(1番)近い0であり、ノードN6と勝者ノードN6とのパターン間距離dも0となる。また、勝者ノードN6と、ノードN3,N5、またはN9それぞれとの距離は2番目に近い1であり、ノードN3,N5、またはN9それぞれと勝者ノードN6とのパターン間距離dも1となる。さらに、勝者ノードN6と、ノードN2,N4、またはN8それぞれとの距離は3番目に近い2であり、ノードN2,N4、またはN8それぞれと勝者ノードN6とのパターン間距離dも2となる。また、勝者ノードN6と、ノードN1またはN7それぞれとの距離は最も遠い(4番目に近い)3であり、ノードN1またはN7それぞれと勝者ノードN6とのパターン間距離dも3となる。
一方、ノードがリンクを有しない、例えば、図7に示した聴覚SOMについては、ノードが新たな時系列データとしての音響パラメータ系列に適合する度合いに基づくパターン間距離、即ち、ノードが新たな音響パラメータ系列に適合する度合いに基づく順位(適合順位)に対応する値が、そのノードと勝者ノードとのパターン間距離dとして求められる。即ち、この場合、スコアが最も高い(一番目に高い)ノード(勝者ノード)と勝者ノードとのパターン間距離dは0とされ、スコアが2番目に高いノードと勝者ノードとのパターン間距離dは1とされる。以下、同様に、スコアがk番目に高いノードと勝者ノードとのパターン間距離dはk-1とされる。
なお、以上のような、聴覚SOMの各ノードと勝者ノードとのパターン間距離dの与え方は、コホーネン(T.Kohonen)のSOMやNeural-Gas algorithmで利用されている距離の与え方と同様の方法である。
次に、更新重みαとパターン間距離dとの関係を表す、例えば、図9に示したような距離/重み曲線は、例えば、式(1)によって与えられる。
Figure 0004843987
・・・(1)
なお、式(1)において、定数Gは、勝者ノードの更新重みを表す定数であり、γは、減衰係数で、0<γ<1の範囲の定数である。また、変数Δは、聴覚SOMを更新する更新方法として、SMA(soft-max adaptation)を採用した場合の、勝者ノードの近傍のノード(勝者ノードとのパターン間距離dが近いノード)の更新重みαを調整するための変数である。
ここで、SMAとは、複数の要素(例えば、複数のノード)からなる更新の対象(例えば、聴覚SOM)を、新たな入力に基づいて更新する場合に、新たな入力に最も距離が近い要素(スコアが最も高い要素)だけでなく、その要素との、ある距離が近い要素も更新する方法であり、新たな入力に最も距離が近い要素だけを更新する方法であるWTA(winner-take-all)に比較して、局所解に陥る問題を改善することができることが知られている。
上述したように、勝者ノードとなっているノードのパターン間距離dとして、0が与えられ、以下、他のノードのパターン間距離dとして、勝者ノードとの距離、または適合順位にしたがって、1,2,・・・が与えられる場合、式(1)において、例えば、G=8,γ=0.5,Δ=1であれば、勝者ノードとなっているノードの更新重みαとして、8(=G)が求められる。以下、勝者ノードとの距離、または適合順位が大になるにしたがって、ノードの更新重みαとしては、4,2,1,・・・と小さくなる値が求められる。
ここで、式(1)における減衰係数Δが大きな値である場合には、パターン間距離dの変化に対する更新重みαの変化は緩やかになり、逆に、減衰係数Δが0に近い値である場合には、パターン間距離dの変化に対する更新重みαの変化は急峻になる。
従って、減衰係数Δを、例えば、上述した1から少しずつ0に近づけていくように調整すると、パターン間距離dの変化に対する更新重みαの変化は急峻になっていき、更新重みαは、パターン間距離dが大きくなるにしたがって、より小さい値となる。そして、減衰係数Δが0に近くなると、勝者ノード(となっているノード)以外のノードの更新重みαは、ほとんど0となり、この場合、聴覚SOMを更新する更新方法として、前述したWTAを採用した場合と(ほぼ)等価となる。
このように、減衰係数Δを調整することによって、聴覚SOMを更新する更新方法としてSMAを採用した場合の、勝者ノードの近傍のノードの更新重みαを調整することができる。
減衰係数△は、例えば、聴覚SOMの更新(学習)の開始時は大きな値にし、時間の経過とともに、即ち、更新の回数が増加するにしたがって小さな値になるようにすることができる。この場合、聴覚SOMの更新の開始時は、パターン間距離dの変化に対する更新重みαの変化が緩やかな距離/重み曲線にしたがって、聴覚SOMの各ノードの更新重みαが決定され、更新(学習)が進む(進行する)につれ、パターン間距離dの変化に対する更新重みαの変化が急峻になっていく距離/重み曲線にしたがって、聴覚SOMの各ノードの更新重みαが決定される。
即ち、この場合、勝者ノードの更新は、学習(更新)の進行にかかわらず、特徴抽出部2からの新たな時系列データとしての音響パラメータ系列の影響を強く受けるように行われる。一方、勝者ノード以外のノードの更新は、学習の開始時は、比較的広い範囲のノード(勝者ノードとのパターン間距離dが小のノードから、ある程度大のノード)に亘って、新たな音響パラメータ系列の影響を受けるように行われる。そして、学習が進行するにつれ、勝者ノード以外のノードの更新は、徐々に狭い範囲のノードについてのみ、新たな音響パラメータ系列の影響を受けるように行われる。
図8の更新重み決定部43は、以上のようにして、聴覚SOMの各ノードの更新重みαを決定し、学習データ更新部44では、各ノードが有する学習データ記憶部22に記憶される学習データが、そのノードの更新重みαに基づいて更新される。
次に、図10を参照して、ノードが有する学習データ記憶部22に記憶される学習データを更新する更新方法について説明する。
いま、あるノードNiが有する学習データ記憶部22には、学習データが既に記憶されており、ノードNiの時系列パターンモデル21は、学習データ記憶部22に既に記憶されている学習データを用いて学習が行われたものであるとする。
学習データ更新部44は、上述したように、ノードNiが有する学習データ記憶部22に既に記憶されている学習データ(以下、適宜、旧学習データという)と、特徴抽出部2からの新たな時系列データとしての音響パラメータ系列とを、更新重み決定部43からのノードNiの更新重みαにしたがって混合し、その混合結果を、新たな学習データとして、学習データ記憶部22に記憶させることで、その学習データ記憶部22の記憶内容を、新たな学習データに更新する。
即ち、学習データ更新部44は、旧学習データに対して、新たな時系列データとしての音響パラメータ系列を追加することで、旧学習データと新たな音響パラメータ系列とを混合した新たな学習データとするが、旧学習データに対する新たな音響パラメータ系列の追加(旧学習データと新たな音響パラメータ系列との混合)は、ノードNiの更新重みαに対応する比にしたがって行われる。
ここで、新たな音響パラメータ系列と旧学習データとを、1:0の比率で混合すると、その混合によって得られる新たな学習データは、新たな音響パラメータ系列だけとなる。逆に、新たな音響パラメータ系列と旧学習データとを、0:1の比率で混合すると、その混合によって得られる新たな学習データは、旧学習データだけとなる。ノードNiの時系列パターンモデル21(図5)の更新は、新たな学習データを用いた学習によって行われるため、新たな音響パラメータ系列と旧学習データとを混合する比率を変えることによって、更新により時系列パターンモデル21が受ける新たな音響パラメータ系列の影響の度合い(強さ)を変えることができる。
ノードNiにおいて、新たな音響パラメータ系列と旧学習データとを混合する比率としては、ノードNiの更新重みαに対応した値が採用され、例えば、更新重みαが大であるほど、新たな音響パラメータ系列の比率が大となる(旧学習データの比率が小となる)ような値とされる。
具体的には、ノードNiの学習データ記憶部22には、一定の数の時系列データである音響パラメータ系列(学習データ)が記憶されるものとし、その一定の数をHとする。この場合、ノードNiの時系列パターンモデル21の学習は、常に、H個の学習データ(時系列データである音響パラメータ系列)を用いて行われる。
学習データ記憶部22に、常に、一定の数Hの学習データが記憶される場合、新たな音響パラメータ系列と旧学習データとの混合によって得られる新たな学習データの個数は、H個である必要があり、そのような、新たな音響パラメータ系列と旧学習データとの混合を、ノードNiの更新重みαに対応した比率で行う方法としては、新たな音響パラメータ系列と旧学習データとを、比率α:H-αで混合する方法がある。
新たな音響パラメータ系列と旧学習データとを、比率α:H-αで混合する具体的な方法としては、図10に示すように、H個の旧学習データのうちのH-α個の旧学習データに対して、α個の新たな音響パラメータ系列を追加することにより、H個の新たな学習データを得る方法がある。
この場合、学習データ記憶部22に記憶される学習データとしての時系列データの数Hが、例えば、100であり、ノードNiの更新重みαが、例えば、8であれば、学習データ記憶部22の記憶内容は、100個の旧学習データのうちの92個の旧学習データに対して、8個の新たな音響パラメータ系列を追加することによって得られる100個の新たな学習データに更新される。
H個の旧学習データのうちのH-α個の旧学習データに対する、α個の新たな音響パラメータ系列の追加は、α個の新たな音響パラメータ系列が得られるのを待って行う方法があるが、この方法では、1個の新たな音響パラメータ系列が得られるごとに、学習データ記憶部22の記憶内容を更新することができない。
そこで、学習データ記憶部22の記憶内容の更新は、1個の新たな音響パラメータ系列(例えば、音声区間の音響パラメータ系列)が得られるごとに、その新たな音響パラメータ系列をα個だけ、H-α個の旧学習データに追加することにより行うことができる。即ち、1個の新たな音響パラメータ系列をコピーしてα個の新たな音響パラメータ系列とし、そのα個の新たな音響パラメータ系列を、H個の旧学習データから古い順にα個を除外して残ったH-α個の旧学習データに追加することにより、学習データ記憶部22の記憶内容の更新を行う。これにより、1個の新たな音響パラメータ系列が得られるごとに、学習データ記憶部22の記憶内容を更新することができる。
以上のように、学習データ記憶部22の記憶内容の更新を行うことにより、学習データ記憶部22には、常に、新しい順のH個の時系列データ(音響パラメータ系列)だけが、学習データとして保持されることになり、その学習データに占める新たな音響パラメータ系列の割合(比率)は、更新重みαによって調整されることになる。
次に、図11のフローチャートを参照して、図8の学習部3が行う、聴覚SOMを学習(更新)する学習処理について説明する。
学習部3は、特徴抽出部2から、新たな時系列データとしての音響パラメータ系列が供給されると、記憶部4に記憶された聴覚SOMを更新する学習処理を開始する。
即ち、学習部3(図8)では、ステップS1において、スコア計算部41が、記憶部4に記憶された聴覚SOMを構成する各ノードについて、そのノードが、特徴抽出部2からの新たな音響パラメータ系列に適合する度合いを表すスコアを求める。
具体的には、ノードが有する時系列パターンモデル21(図5)が、例えばHMMである場合には、そのHMMから、新たな音響パラメータ系列が観測される対数尤度が、スコアとして求められる。ここで、対数尤度の計算方法としては、例えば、ビタビアルゴリズム(Viterbi algorithm)を採用することができる。
スコア計算部41は、聴覚SOMが有するすべてのノードについて、新たな音響パラメータ系列に対するスコアを計算すると、その各ノードについてのスコアを、勝者ノード決定部42に供給して、ステップS1からステップS2に進む。
ステップS2では、勝者ノード決定部42は、聴覚SOMを構成するノードのうちの、スコア計算部41からのスコアが最も高いノードを求め、そのノードを勝者ノードとして決定する。そして、勝者ノード決定部42は、勝者ノードを表す情報としてのノードラベルを、更新重み決定部43に供給して、ステップS2からステップS3に進む。
ステップS3では、更新重み決定部43は、勝者ノード決定部42からのノードラベルが表す勝者ノードを、いわば基準として、聴覚SOMを構成する各ノードの更新重みを決定する。
即ち、更新重み決定部43は、図9で説明したように、聴覚SOMの更新(学習)が進むにつれ、パターン間距離dの変化に対する更新重みαの変化が急峻になっていく、式(1)で表される距離/重み曲線にしたがって、聴覚SOMの各ノードの更新重みαを決定し、学習データ更新部44に供給する。
そして、ステップS3からステップS4に進み、学習データ更新部44は、聴覚SOMの各ノードが有する学習データ記憶部22(図5)に記憶された学習データを、更新重み決定部43からの、対応するノードの更新重みにしたがって更新する。即ち、学習データ更新部44は、図10で説明したように、特徴抽出部2から供給された新たな音響パラメータ系列と、ノードの学習データ記憶部22に記憶されている旧学習データとを、そのノードの更新重みαに対応した比率α:H-αで混合することにより、H個の新たな学習データを得て、そのH個の新たな学習データによって、学習データ記憶部22の記憶内容を更新する。
学習データ更新部44は、聴覚SOMのノードすべての学習データ記憶部22(図5)の記憶内容を更新すると、その更新が終了した旨の終了通知を、モデル学習部45に供給する。
モデル学習部45は、学習データ更新部44から終了通知を受けると、ステップS4からステップS5に進み、聴覚SOMのパラメータ(聴覚SOMとしての時系列パターン記憶ネットワークのノードが有する時系列パターンモデル21(図5)のパラメータ(以下、適宜、モデルパラメータともいう))を更新して、学習処理を終了する。
即ち、モデル学習部45は、聴覚SOMの各ノードについて、学習データ更新部44による更新後の学習データ記憶部22に記憶された新たな学習データを用いて、時系列パターンモデル21の学習を行うことにより、その時系列パターンモデル21を更新する。
具体的には、ノードが有する時系列パターンモデル21が、例えばHMMである場合には、そのノードが有する学習データ記憶部22に記憶された新たな学習データを用いて、HMMの学習が行われる。この学習では、例えば、HMMの現在の状態遷移確率と出力確率密度関数を初期値とし、新たな学習データを用いて、Baum-Welch法により、新たな状態遷移確率と出力確率密度関数がそれぞれ求められる。そして、その新たな状態遷移確率と出力確率密度関数によって、聴覚SOMのモデルパラメータとしてのHMMの状態遷移確率と出力確率密度関数(を定義する、例えば、平均ベクトルや共分散行列)がそれぞれ更新される。
図11の学習処理によれば、1個の新たな時系列データとしての音響パラメータ系列が得られると、その新たな音響パラメータ系列に対して、聴覚SOMを構成するノードの中から、勝者ノードが決定される。さらに、その勝者ノードを基準として、聴覚SOMを構成する各ノードの更新重みが決定される。そして、更新重みに基づいて、聴覚SOMを構成する各ノードが有する時系列パターンモデル21(図5)のモデルパラメータ(ここでは、例えば、HMMの状態遷移確率と出力確率密度関数)が更新される。
即ち、図11の学習処理では、1個の新たな音響パラメータ系列に対して、聴覚SOMを構成するノードのモデルパラメータの更新が1回行われ、以下、同様に、新たな音響パラメータ系列が得られるたびに、ノードのモデルパラメータの更新が繰り返されることにより、自己組織的に学習が行われる。
そして、学習が十分に行われることにより、聴覚SOMの各ノードが有する時系列パターンモデル21は、ある時系列パターンを学習(獲得)する。聴覚SOM全体において学習される時系列パターンの数(種類)は、聴覚SOMが有するノードの数と一致する。従って、聴覚SOMが有するノードの数が、例えば100である場合は、100種類の時系列パターンが学習されることになる。
次に、図12は、図1の認識部5の構成例を示している。
認識部5には、図1で説明したように、特徴抽出部2から、新たな時系列データとしての音響パラメータ系列が供給され、この新たな音響パラメータ系列は、スコア計算部51に供給される。
スコア計算部51は、学習部3(図8)のスコア計算部41と同様に、記憶部4に記憶された聴覚SOMを構成する各ノードについて、そのノードが、特徴抽出部2からの新たな音響パラメータ系列に適合する度合いを表すスコアを求め、勝者ノード決定部52に供給する。即ち、ノードが有する時系列パターンモデル21が、例えば、図5に示したようにHMMである場合には、スコア計算部51は、ノードが有する時系列パターンモデル21としてのHMMから、特徴抽出部2からの新たな音響パラメータ系列が観測される対数尤度を求め、そのノードのスコアとして、勝者ノード決定部52に供給する。
勝者ノード決定部52は、学習部3(図8)の勝者ノード決定部42と同様に、記憶部4に記憶された聴覚SOMにおいて、特徴抽出部2からの新たな音響パラメータ系列に最も適合するノードを求め、そのノードを、勝者ノードとして決定する。
即ち、勝者ノード決定部52は、記憶部4に記憶された聴覚SOMを構成するノードのうちの、スコア計算部51からのスコアが最も高いノードを勝者ノードとして決定する。そして、勝者ノード決定部52は、勝者ノードを表す情報としてのノードラベルを、特徴抽出部2からの新たな音響パラメータ系列、ひいては、その新たな音響パラメータ系列が抽出された、観測部1で観測された音声の認識結果として出力する。
なお、認識部5のスコア計算部51と、学習部3(図8)のスコア計算部41とは、いずれか一方のスコア計算部で兼用することが可能である。認識部5の勝者ノード決定部52と、学習部3(図8)の勝者ノード決定部42についても、同様である。従って、学習部3のスコア計算部41を、認識部5のスコア計算部51と兼用とするとともに、勝者ノード決定部42を、認識部51の勝者ノード決定部52と兼用することにより、認識部5は、学習部3の一部(スコア計算部41および勝者ノード決定部42)として構成することができる。
次に、図13のフローチャートを参照して、図12の認識部5が行う、特徴抽出部2からの新たな音響パラメータ系列が抽出された音声を認識する認識処理について説明する。
認識部5は、特徴抽出部2から、新たな時系列データとしての音響パラメータ系列が供給されると、記憶部4に記憶された聴覚SOMを用い、その新たな音響パラメータ系列が抽出された音声(観測部1で観測された音声)を認識する認識処理を開始する。
即ち、認識部5(図13)では、ステップS21において、スコア計算部51が、記憶部4に記憶された聴覚SOMを構成する各ノードについて、そのノードが、特徴抽出部2からの新たな音響パラメータ系列に適合する度合いを表すスコアを求める。
具体的には、ノードが有する時系列パターンモデル21(図5)が、上述したように、例えばHMMである場合には、そのHMMから、新たな音響パラメータ系列が観測される対数尤度が、スコアとして求められる。
スコア計算部51は、聴覚SOMが有するすべてのノードについて、新たな音響パラメータ系列に対するスコアを計算すると、その各ノードについてのスコアを、勝者ノード決定部52に供給して、ステップS21からステップS22に進む。
ステップS22では、勝者ノード決定部52は、聴覚SOMを構成するノードのうちの、スコア計算部51からのスコアが最も高いノードを求め、そのノードを勝者ノードとして決定する。そして、勝者ノード決定部52は、ステップS22からステップS23に進み、勝者ノードを表す情報としてのノードラベルを、音声の認識結果として、生成部6に供給して、認識処理を終了する。
以上のような、聴覚SOMを用いた認識処理によれば、その聴覚SOMのノードの数に応じた細かさの認識結果を得ることができる。
次に、図14は、図1の生成部6の構成例を示している。
生成部6には、認識部5から、記憶部4に記憶された聴覚SOMのノードのうちの勝者ノードを表す情報としてのノードラベルが、音声の認識結果として供給され、このノードラベルは、生成ノード決定部61に供給される。
生成ノード決定部61は、記憶部4に記憶された結合ネットワークを参照し、認識部5からのノードラベルが表す、聴覚SOMの勝者ノードとの結合の度合いが最も高いノード、即ち、その勝者ノードとの結合重みが最大のノードを探索する。そして、生成ノード決定部61は、認識部5からのノードラベルが表す聴覚SOMの勝者ノードとの結合重みが最大の調音SOMのノードを、調音パラメータの生成に用いる生成ノードとして決定し、その生成ノードを表すノードラベルを、モデルパラメータ変更部62に供給する。
モデルパラメータ変更部62は、記憶部4に記憶された調音SOMのノードのうちの、生成ノード決定部61からのノードラベルが表す生成ノードを認識し、その生成ノードから生成される調音パラメータ系列を変更させる変更制御処理を行う。
即ち、調音SOMのノードは、図5で説明したように、時系列パターンモデル21を有し、調音SOMのノードが有する時系列パターンモデル21の学習(更新)は、後述するように、学習部7によって、駆動部8を駆動する調音パラメータ系列を用いて行われるため、調音SOMのノードが有する時系列パターンモデル21は、調音パラメータ系列を生成することができる。
具体的には、時系列パターンモデル21が、例えば、HMMである場合には、HMMにおいて調音パラメータ系列が観測される尤度を表す出力確率を最大にする調音パラメータ系列を生成することができる。
ここで、HMMを用いて、調音パラメータ系列を含む時系列データを生成する生成方法としては、動的特徴量を利用することで滑らかに変化する時系列データを生成する方法がある。このような時系列データの生成方法は、例えば、K. Tokuda, T. Yoshimura, T. Masuko, T. Kobayashi, T. Kitamura, "SPEECH PARAMETER GENERATION ALGORITHMS FOR HMM-BASED SPEECH SYNTHESIS", Proc. of ICASSP 2000, vol.3, pp.1315-1318, June 2000に記載されている。
また、HMMを用いて時系列データを生成する生成方法としては、その他、例えば、HMMのパラメータを用いた確率的試行に基づく時系列データの生成を繰り返し行い、その平均をとることで、HMMから時系列データを生成する方法などがある。このような時系列データの生成方法は、例えば、稲邑哲也、谷江博昭、中村仁彦、「連続分布型隠れマルコフモデルを用いた時系列データのキーフレーム抽出とその復元」、日本機械学会ロボティクス・メカトロニクス講演会2003講演論文集、2P1-3F-C6,2003に記載されている。
時系列パターンモデル21が、例えばHMMである場合には、そのモデルパラメータは、HMMの状態遷移確率と出力確率密度関数(を規定する、例えば平均ベクトルと共分散行列)である。そして、このモデルパラメータとしての状態遷移確率や出力確率密度関数を変更すれば、HMMを用いて生成される時系列データを変更することができる。
そこで、モデルパラメータ変更部62は、調音SOMの生成ノードのモデルパラメータを変更し、その変更後のモデルパラメータを用いて時系列データ、つまり、調音パラメータ系列を生成するように、後段の時系列生成部63を制御する変更制御処理を行う。即ち、モデルパラメータ変更部62は、モデルパラメータが変更された生成ノード(の、変更後のモデルパラメータ)を、時系列生成部63に供給し、その生成ノードを用いて調音パラメータ系列を生成するように、時系列生成部63を制御する。この変更制御処理により、時系列生成部63は、変更後の生成ノード(モデルパラメータが変更された生成ノード)を用いて、調音パラメータを生成するので、生成ノードから生成される調音パラメータ系列が変更されることになる。
なお、モデルパラメータ変更部62は、制御部10の制御にしたがって、調音SOMの生成ノードのモデルパラメータを変更する。
時系列生成部63は、モデルパラメータ変更部62から供給される生成ノード(が有する時系列パターンモデル21(図5))から、上述したようにして調音パラメータ系列を生成し、学習部7(図1)と駆動部8に供給する。
次に、図15のフローチャートを参照して、図14の生成部6が行う、調音パラメータ系列を生成する生成処理について説明する。
生成部6は、認識部5から認識結果としての、聴覚SOMの勝者ノードを表すノードラベルが供給されると、生成処理を開始する。
即ち、生成部6(図14)では、ステップS31において、生成ノード決定部61が、記憶部4に記憶された聴覚SOMを構成するノードのうちの、認識部5からのノードラベルが表す勝者ノードとの結合重みが最大のノードを、記憶部4に記憶された調音SOMのノードから探索して、そのノードを生成ノードとして決定する。さらに、生成ノード決定部61は、生成ノードを表すノードラベルを、モデルパラメータ変更部62に供給して、ステップS31からS32に進む。
ステップS32では、モデルパラメータ変更部62は、記憶部4に記憶された調音SOMのノードのうちの、生成ノード決定部61からのノードラベルが表す生成ノードを認識し、その生成ノード(が有する時系列パターンモデル21(図5)のモデルパラメータ)を、記憶部4から読み出す。さらに、モデルパラメータ変更部62は、制御部10(図1)からの制御にしたがい、生成ノード(が有する時系列パターンモデル21のモデルパラメータ)を変更し、または変更せずにそのまま、時系列生成部63に供給して、ステップS32からステップS33に進む。
ステップS33では、時系列生成部63は、モデルパラメータ変更部62から供給される生成ノード(が有する時系列パターンモデル21のモデルパラメータ)から、調音パラメータ系列を生成し、学習部7(図1)と駆動部8に供給して、生成処理を終了する。
次に、図16は、図1の学習部7の構成例を示している。
学習部7には、生成部6(図1)から、時系列データとしての調音パラメータ系列が供給される。学習部7は、制御部10(図1)の制御にしたがい、記憶部4に記憶された結合ネットワークを構成する調音SOMとしての時系列パターン記憶ネットワークを、生成部6から供給される新たな調音パラメータ系列に基づいて、自己組織的に更新する。
即ち、スコア計算部71は、記憶部4に記憶された時系列パターン記憶ネットワークである調音SOMを構成する各ノードについて、そのノードが、生成部6から供給される新たな時系列データとしての調音パラメータ系列に適合する度合いとしてのスコアを、図8のスコア計算部41と同様にして求め、勝者ノード決定部72に供給する。従って、調音SOMのノードが有する時系列パターンモデル21が、例えば、図5に示したようにHMMである場合には、スコア計算部71は、ノードが有する時系列パターンモデル21としてのHMMから、生成部6から供給された新たな調音パラメータ系列が観測される尤度を求め、そのノードのスコアとして、勝者ノード決定部72と自己学習用結合重み更新部76に供給する。
勝者ノード決定部72は、記憶部4に記憶された時系列パターン記憶ネットワークとしての調音SOMにおいて、生成部6からの新たな調音パラメータ系列に最も適合するノードを求め、そのノードを、勝者ノードとして決定する。
即ち、勝者ノード決定部72は、記憶部4に記憶された調音SOMを構成するノードのうちの、スコア計算部71からのスコアが最も高いノードを勝者ノードとして決定する。そして、勝者ノード決定部72は、勝者ノードを表すノードラベルを、更新重み決定部73に供給する。
更新重み決定部73は、勝者ノード決定部72から供給されるノードラベルが表す勝者ノードに基づき、記憶部4に記憶された調音SOMを構成する各ノードについて、図8の更新重み決定部43と同様にして、更新重みを決定し、学習データ更新部74に供給する。
即ち、更新重み決定部73は、記憶部4に記憶された調音SOMを構成する各ノード(勝者ノードを含む)の更新重みを、そのノードと、勝者ノードとのパターン間距離に基づいて決定し、学習データ更新部74に供給する。
なお、調音SOMのノードのスコアは、更新重み決定部73で求めても良いが、スコア計算部71から更新重み決定部73に供給するようにしても良い。
学習データ更新部74は、記憶部4に記憶された調音SOMの各ノードが有する学習データ記憶部22(図5)に記憶された学習データを、図8の学習データ更新部44と同様にして更新する。
即ち、学習データ更新部74は、調音SOMのノードが有する学習データ記憶部22に既に記憶されている学習データと、生成部6から供給される新たな調音パラメータ系列とを、更新重み決定部73からの、対応するノードの更新重みにしたがって混合し、その混合結果を、新たな学習データとして、学習データ記憶部22に記憶させることで、その学習データ記憶部22の記憶内容を更新する。
また、学習データ更新部74は、学習データ記憶部22(図5)に記憶された学習データを、更新重みにしたがって更新すると、その更新が終了した旨の終了通知を、モデル学習部75に供給する。
モデル学習部75は、学習データ更新部74から終了通知を受けると、その学習データ更新部74による更新後の学習データ記憶部22(図5)に記憶された学習データを用いて、記憶部4に記憶された調音SOMの各ノードが有する時系列パターンモデル21の学習を行うことにより、その時系列パターンモデル21(のモデルパラメータ)を更新する。
従って、モデル学習部75による、調音SOMのノードが有する時系列パターンモデル21の更新は、そのノードが有する学習データ記憶部22(図5)に記憶されていた学習データ(の一部)と、生成部6から供給された新たな調音パラメータ系列とに基づいて行われる。
自己学習用結合重み更新部76は、報酬取得部9(図1)から報酬が供給されてこなかった場合、スコア計算部71から供給される調音SOMの各ノードの、生成部6から供給された新たな調音パラメータ系列に対するスコアに基づいて、記憶部4に記憶された結合ネットワークの結合重み(聴覚SOMのノードと調音SOMのノードとの結合の度合い)を更新する。これに対して、自己学習用結合重み更新部76は、報酬取得部9から報酬が供給されてきた場合、その更新の処理を禁止する。
教示学習用結合重み更新部77は、報酬取得部9から報酬が供給されてきた場合、その報酬を教師信号として、その教師信号に基づいて、記憶部4に記憶された結合ネットワークの結合重み(聴覚SOMのノードと調音SOMのノードとの結合の度合い)を更新する。これに対して、教示学習用結合重み更新部77は、報酬取得部9から報酬が供給されてきこなかった場合、その更新の処理を禁止する。
次に、図17のフローチャートを参照して、図16の学習部7が、調音SOMの学習(更新)と、結合重みの更新とを行う学習処理について説明する。
学習部7は、生成部6から、新たな時系列データとしての調音パラメータ系列が供給され、制御部10から、その新たな調音パラメータ系列を用いた学習の指示があると、記憶部4に記憶された調音SOMと結合重みを更新する学習処理を開始する。
即ち、学習部7(図16)では、ステップS41において、スコア計算部71が、記憶部4に記憶された調音SOMを構成する各ノードについて、そのノードが、生成部6からの新たな調音パラメータ系列に適合する度合いを表すスコアを求める。
具体的には、調音SOMのノードが有する時系列パターンモデル21(図5)が、例えばHMMである場合には、そのHMMから、新たな調音パラメータ系列が観測される対数尤度が、例えば、ビタビアルゴリズムにより計算され、調音SOMを構成するノードの、生成部6からの新たな調音パラメータ系列に対するスコアとして求められる。
スコア計算部71は、調音SOMが有するすべてのノードについて、新たな調音パラメータ系列に対するスコアを計算すると、その各ノードについてのスコアを、勝者ノード決定部72と自己学習用結合重み更新部76に供給して、ステップS41からステップS42に進む。
ステップS42では、勝者ノード決定部72は、調音SOMを構成するノードのうちの、スコア計算部71からのスコアが最も高いノードを求め、そのノードを勝者ノードとして決定する。そして、勝者ノード決定部72は、勝者ノードを表すノードラベルを、更新重み決定部73に供給して、ステップS42からステップS43に進む。
ステップS43では、更新重み決定部73は、勝者ノード決定部72からのノードラベルが表す勝者ノードを、いわば基準として、調音SOMを構成する各ノードの更新重みを決定する。
即ち、更新重み決定部73は、図9で説明したように、調音SOMの更新(学習)が進むにつれ、パターン間距離dの変化に対する更新重みαの変化が急峻になっていく、式(1)で表される距離/重み曲線にしたがって、調音SOMの各ノードの更新重みαを決定し、学習データ更新部74に供給する。
そして、ステップS43からステップS44に進み、学習データ更新部74は、調音SOMの各ノードが有する学習データ記憶部22(図5)に記憶された学習データを、更新重み決定部73からの、対応するノードの更新重みにしたがって更新する。即ち、学習データ更新部74は、図10で説明したように、生成部6から供給された新たな調音パラメータ系列と、調音SOMのノードの学習データ記憶部22に記憶されている旧学習データとを、そのノードの更新重みαに対応した比率α:H-αで混合することにより、H個の新たな学習データを得て、そのH個の新たな学習データによって、学習データ記憶部22の記憶内容を更新する。
学習データ更新部74は、調音SOMのノードすべての学習データ記憶部22(図5)の記憶内容を更新すると、その更新が終了した旨の終了通知を、モデル学習部75に供給する。
モデル学習部75は、学習データ更新部74から終了通知を受けると、ステップS44からステップS45に進み、調音SOMのモデルパラメータを更新する。
即ち、モデル学習部75は、調音SOMの各ノードについて、学習データ更新部74による更新後の学習データ記憶部22に記憶された新たな学習データを用いて、時系列パターンモデル21の学習を行うことにより、その時系列パターンモデル21のモデルパラメータを更新する。
具体的には、調音SOMのノードが有する時系列パターンモデル21が、例えばHMMである場合には、そのノードが有する学習データ記憶部22に記憶された新たな学習データを用いて、HMMの学習が行われる。この学習では、例えば、HMMの現在のモデルパラメータとしての状態遷移確率と出力確率密度関数を初期値とし、新たな学習データを用いて、Baum-Welch法により、新たなモデルパラメータとしての状態遷移確率と出力確率密度関数がそれぞれ求められる。そして、その新たな状態遷移確率と出力確率密度関数によって、調音SOMのモデルパラメータとしてのHMMの状態遷移確率と出力確率密度関数(を定義する、例えば、平均ベクトルや共分散行列)がそれぞれ更新される。
その後、ステップS45からS46に進み、自己学習用結合重み更新部76と教示学習用結合重み更新部77とは、報酬取得部9から報酬が与えられたか否かを判定する。
ステップS46において報酬が与えられなかったと判定された場合、処理はステップS47に進み、自己学習用結合重み更新部76は、ステップS41の処理でスコア計算部71から供給された調音SOMの各ノードの、生成部6から供給された新たな調音パラメータ系列に対するスコアに基づいて、記憶部4に記憶された結合ネットワークの結合重みを更新し(以下、このような更新の処理を、自己学習用結合重みの更新と称する)、学習処理を終了する。
これに対して、ステップS46において報酬が与えられたと判定された場合、処理はステップS48に進み、教示学習用結合重み更新部77は、ステップS46の処理で報酬取得部9から供給された報酬に基づいて(その報酬を教師信号として)、記憶部4に記憶された結合ネットワークの結合重みを更新し(以下、このような更新の処理を、教示学習用結合重みの更新と称する)、学習処理を終了する。
次に、図18のフローチャートを参照して、図1の情報処理装置の動作について説明する。なお、以下では、聴覚SOMおよび調音SOMのノードが有する時系列パターンモデル21(図5)が、例えば、HMMであるとする。
まず最初に、ステップS101において、制御部10は、記憶部4に記憶された結合ネットワークを初期化して、ステップS102に進む。
即ち、制御部10は、記憶部4に記憶された結合ネットワークを構成する聴覚SOMおよび調音SOMのノードが有するHMMのモデルパラメータとして、適当な(例えば、ランダムな)値を与えるとともに、聴覚SOMのノードと調音SOMのノードとの結合重みとして、適当な(例えば、ランダムな)値を与える。
ステップS102では、観測部1において、例えば、ユーザの発話を待って、音声区間の検出が行われ、その音声区間の音声データが、特徴抽出部2に供給されて、ステップS102からS103に進む。
ステップS103では、特徴抽出部2が、観測部1からの音声データから音響パラメータを抽出し、時系列の音響パラメータ、即ち、音響パラメータ系列を、学習部3と認識部5に供給して、ステップS104に進む。
ステップS104では、認識部5が、特徴抽出部2からの音響パラメータ系列、即ち、ユーザの発話の音響パラメータ系列を用いて、図13で説明した認識処理を行い、ユーザの発話の認識結果としての、聴覚SOMの勝者ノードを表すノードラベルを、生成部6と制御部10に供給して、ステップS105に進む。
ここで、ユーザの発話に対して得られる聴覚SOMの勝者ノードを、以下、適宜、発話勝者ノードという。
ステップS105では、学習部3が、特徴抽出部2からの音響パラメータ系列、即ち、ユーザの発話の音響パラメータ系列を用いて、図11で説明した学習処理を行い、これにより、記憶部4に記憶された聴覚SOMを更新して、ステップS106に進む。
ステップS106乃至ステップS109では、生成部6が、図15で説明した生成処理を行う。
即ち、ステップS106では、生成部6(図14)の生成ノード決定部61が、図15のステップS31で説明したように、記憶部4に記憶された聴覚SOMを構成するノードのうちの、認識部5が直前のステップS104において供給するノードラベルが表す発話勝者ノードとの結合重みが最大のノードを、記憶部4に記憶された調音SOMのノードから探索して、生成ノードとして決定する。そして、生成ノード決定部61は、生成ノードを表すノードラベルを、モデルパラメータ変更部62に供給して、ステップS106からS107に進む。
ステップS107では、生成部6(図14)のモデルパラメータ変更部62が、図15のステップS32で説明したように、記憶部4に記憶された調音SOMのノードのうちの、生成ノード決定部61からのノードラベルが表す生成ノードを認識し、その生成ノード(が有する時系列パターンモデル21(図5)のモデルパラメータ)を、記憶部4から読み出す。
そして、ステップS107からステップS108に進み、モデルパラメータ変更部62は、図15のステップS32で説明したように、制御部10からの制御にしたがい、記憶部4から読み出した生成ノードが有する時系列パターンモデル21のモデルパラメータ(以下、適宜、単に、生成ノードのモデルパラメータともいう)を変更し、または変更せずにそのまま、時系列生成部63に供給して、ステップS109に進む。
ここで、ステップS108乃至S114の処理は、ユーザの発話によって得られる1の音声区間の音声データについて、1回以上行われるループ処理であり、制御部10は、例えば、ユーザの発話によって得られる1の音声区間の音声データについて最初に行われる(1回目の)ステップS108の処理では、生成ノードのモデルパラメータを変更せずにそのまま時系列生成部63に供給するように、モデルパラメータ変更部62を制御し、2回目以降のステップS108の処理では、生成ノードのモデルパラメータを変更して時系列生成部63に供給するように、モデルパラメータ変更部62を制御する。
ステップS109では、生成部6(図14)の時系列生成部63が、図15のステップS33で説明したように、モデルパラメータ変更部62から供給される生成ノードのモデルパラメータ(で定義される時系列パターンモデル21としてのHMM)から、調音パラメータ系列を生成し、学習部7と駆動部8に供給して、ステップS110に進む。
ここで、時系列生成部63は、上述したように、モデルパラメータ変更部62から供給される生成ノードのモデルパラメータから、調音パラメータ系列を生成する。従って、モデルパラメータ変更部62から時系列生成部63に供給される生成ノードのモデルパラメータが、ステップS108で変更されている場合、ステップS109において、そのモデルパラメータから生成される調音パラメータ系列も変更されることになる。
ステップS110では、駆動部8が、生成部6から供給される調音パラメータ系列にしたがって駆動し、即ち、生成部6から供給される調音パラメータ系列を用いて音声合成を行う。これにより、駆動部8は、合成音を生成して出力し、ステップS110からステップS111に進む。
駆動部8が直前のステップS110で出力した合成音は、観測部1において観測される。ステップS111において、観測部1は、その観測値に基づき、合成音の音声区間を検出し、その音声区間の音声データを、特徴抽出部2に供給して、ステップS112に進む。
ステップS112では、特徴抽出部2が、ステップS103における場合と同様に、観測部1からの音声データから音響パラメータを抽出し、時系列の音響パラメータ、即ち、音響パラメータ系列を、認識部5に供給して、ステップS113に進む。
ステップS113では、認識部5が、ステップS104における場合と同様に、特徴抽出部2からの音響パラメータ系列、即ち、駆動部8が出力した合成音の音響パラメータ系列を用いて、図13で説明した認識処理を行い、駆動部8が出力した合成音の認識結果としての、聴覚SOMの勝者ノードを表すノードラベルを、制御部10に供給して、ステップS114に進む。
ここで、駆動部8が出力した合成音に対して得られる聴覚SOMの勝者ノードを、以下、適宜、合成音勝者ノードという。
ステップS114では、制御部10が、例えば、ステップS104において認識部5から供給されたノードラベルが表す発話勝者ノードと、ステップS113において認識部5から供給されたノードラベルが表す合成音勝者ノードとに基づき、生成部6がステップS109で生成する調音パラメータ系列の変更、ひいては、ステップS108での生成ノードのモデルパラメータの変更を終了する終了条件が満たされるかどうかを判定する。
ここで、終了条件としては、例えば、聴覚SOMの、ユーザの発話の認識結果としての発話勝者ノードと、駆動部8が出力した合成音の認識結果としての合成音勝者ノードとが一致しているという条件を採用することができる。かかる終了条件が満たされる場合には、駆動部8が出力した合成音の認識結果(としての聴覚SOMの勝者ノード)が、ユーザの発話の認識結果(としての聴覚SOMの勝者ノード)に一致することになるから、駆動部8が出力した合成音は、聴覚SOMによって認識することができるレベルでは、ユーザの発話に一致することになる。なお、駆動部8が出力した合成音とユーザの発話とが、ユーザの聴覚レベルで実際に一致しているのか否かについては、ユーザからの報酬(正報酬または負報酬)として与えられることになる。従って、終了条件が一致したという判定とは、ユーザの聴覚レベルで実際に一致したか否かには特に依存せず、情報処理装置側(ロボット側)の自己評価で、駆動部8が出力した合成音とユーザの発話とが一致したと判定したことを意味している。
なお、終了条件としては、その他、例えば、聴覚SOMの、ユーザの発話の認識結果としての発話勝者ノードと、駆動部8が出力した合成音の認識結果としての合成音勝者ノードとのパターン間距離が、所定の閾値(例えば、1)以下であるという条件を採用することができる。
さらに、ステップS108乃至S114のループ処理において、2回目以降に行われるステップS114では、発話勝者ノードと合成音勝者ノードとのパターン間距離が、前回のパターン間距離以上であるという条件(発話勝者ノードと合成音勝者ノードとのパターン間距離が極小値となったという条件)を、終了条件として採用することができる。
ステップS114において、生成ノードのモデルパラメータの変更を終了する終了条件が満たされないと判定された場合、即ち、例えば、発話勝者ノードと合成音勝者ノードとのパターン間距離が所定の閾値よりも大であり、従って、駆動部8が出力した合成音が、ユーザの発話に似ていないと情報処理装置側で判断された場合、ステップS108に戻り、以下、同様の処理が繰り返される。
即ち、この場合、ステップS108の処理は、ユーザの発話によって得られる1の音声区間の音声データについて行われる2回目(以降)の処理であるから、制御部10は、生成ノードのモデルパラメータを変更して時系列生成部63に供給するように、モデルパラメータ変更部62を制御する。
従って、モデルパラメータ変更部62は、制御部10からの制御にしたがい、ステップS107で記憶部4から読み出した生成ノードのモデルパラメータを変更し、その変更後のモデルパラメータを、時系列生成部63に供給する。
ここで、生成ノードのモデルパラメータ、即ち、例えば、生成ノードが有するHMMのモデルパラメータの変更の方法としては、例えば、第1乃至第3の変更方法がある。
第1の変更方法では、調音SOMのノードのうちの例えば、発話勝者ノードとの結合重みが2番目に大きい調音SOMのノードが有するHMMのモデルパラメータと、生成ノードが有するHMMのモデルパラメータとの内分点が求められ、その内分点によって表されるHMMのモデルパラメータが、変更後の生成ノードのモデルパラメータとされる。なお、HMMのモデルパラメータどうしの内分点を求める方法については、例えば、Tetsunari Inamura, Hiroaki Tanie and Yoshihiko Nakamura, "From Stochastic Motion Generation and Recognition to Geometric Symbol Development and Manipulation".In the Proc. of Int'l Conf. on Humanoid Robots (Humanoids 2003)、稲邑 哲也,谷江 博昭,中村 仁彦."隠れマルコフモデルによって抽象化された運動間の関係を記述する原始シンボル空間の構成"、日本機械学会ロボティクス・メカトロニクス講演会2003講演論文集,p. 2P2-3F-B2, 2003などに記載されている。
第2の変更方法では、調音SOMの生成ノード以外の任意のノードが有するHMMのモデルパラメータと、生成ノードが有するHMMのモデルパラメータとの外分点が求められ、その外分点によって表されるHMMのモデルパラメータが、変更後の生成ノードのモデルパラメータとされる。なお、HMMのモデルパラメータどうしの外分点は、内分点を求める場合と同様にして求めることができる。
第3の変更方法では、生成ノードが有するHMMのモデルパラメータがランダムに変更される。
なお、生成ノードが有するHMMのモデルパラメータの変更の方法は、上述した第1乃至第3の変更方法に限定されるものではない。また、生成ノードが有するHMMのモデルパラメータの変更の方法は、第1乃至第3の変更方法のうちのいずれか1つに固定しなければならないわけではない。即ち、生成ノードが有するHMMのモデルパラメータは、場合によって、第1乃至第3の変更方法のいずれかを選択して変更することができる。
具体的には、例えば、直前のステップS113において(駆動部8が出力した)合成音の認識結果としての合成音勝者ノードと、発話勝者ノードとのパターン間距離がある程度短い場合(あまりに長い場合でない場合)には、第1の変更方法によってモデルパラメータを変更し、パターン間距離があまりに長い場合には、第2または第3の変更方法によってモデルパラメータを変更することができる。
ステップS108において、モデルパラメータ変更部62が、上述のように、生成ノードのモデルパラメータを変更し、その変更後のモデルパラメータを、時系列生成部63に供給すると、ステップS109に進み、生成部6(図14)の時系列生成部63が、モデルパラメータ変更部62から供給される生成ノードのモデルパラメータ(で定義される時系列パターンモデル21としてのHMM)から、調音パラメータ系列を生成し、学習部7と駆動部8に供給して、ステップS110に進む。ステップS110では、駆動部8が、生成部6から供給された調音パラメータ系列を用いた音声合成により合成音を生成して出力し、ステップS110からステップS111に進む。
ここで、いまの場合、モデルパラメータ変更部62から時系列生成部63に供給される生成ノードのモデルパラメータは、ステップS108で変更されているので、今回のステップS109において、そのモデルパラメータから生成される調音パラメータ系列は、前回のステップS109で生成されたものから変更されている。従って、今回のステップS110において、その調音パラメータ系列から生成される合成音も、前回のステップS110で生成されたものとは異なっている。
以下、ステップS111乃至S113に順次進み、上述した場合と同様の処理が行われ、直前のステップS110で生成された合成音に対して図13の認識処理が行われることにより得られる、その合成音の認識結果としての、聴覚SOMの勝者ノードを表すノードラベルが、認識部5から制御部10に供給され、ステップS114に進む。
そして、ステップS114において、生成ノードのモデルパラメータの変更を終了する終了条件が満たされると判定された場合、即ち、例えば、ステップS108乃至S114のループ処理が何度か繰り返され、ステップS108で変更されたモデルパラメータのHMMから生成される調音パラメータ系列によって生成される合成音の認識結果としての合成音勝者ノードが発話勝者ノードに一致し、あるいは、合成音勝者ノードと発話勝者ノードとのパターン間距離が所定の閾値以下になり、従って、駆動部8が出力した合成音が、ユーザの発話に似ていると情報処理装置側で判断された場合、ステップS115に進み、制御部10は、学習部7を制御して、記憶部4に記憶された結合ネットワークの調音SOMと結合重みを更新させ、ステップS102に戻り、ユーザの次の発話を待って、以下、同様の処理が繰り返される。
即ち、この場合、報酬が与えられていないときには(図17のステップS46でNOであると判定されたときには)、学習部7は、制御部10の制御にしたがい、自己学習用結合重みの更新を行う(図17のステップS47の処理を実行する)。即ち、学習部7は、直前のステップS109で生成部6から供給された調音パラメータ系列、つまり、終了条件が満たされた場合の調音パラメータ系列に基づき、記憶部4に記憶された結合ネットワークの調音SOMの更新(学習)と結合重みの更新を、図17で説明したようにして行う。
これに対して、報酬が与えられているときには(図17のステップS46でYESであると判定されたときには)、学習部7は、制御部10の制御にしたがい、教示学習用結合重みの更新を行う(図17のステップS48の処理を実行する)。即ち、学習部7は、直前のステップS109で生成部6から供給された調音パラメータ系列、つまり、終了条件が満たされた場合の調音パラメータ系列に基づき、記憶部4に記憶された結合ネットワークの調音SOMの更新(学習)とともに、直前のステップS110で駆動部8から発声された音韻に対する報酬に基づき(この報酬を教師信号として)、記憶部4に記憶された結合ネットワークの結合重みの更新を、図17で説明したようにして行う。
以下、自己学習用結合重みの更新と、教示学習用結合重みの更新とのそれぞれの詳細について、その順番に個別に説明する。
はじめに、自己学習用結合重みの更新の詳細について説明する。
即ち、学習部7(図16)では、図17のステップS41で説明したように、スコア計算部71が、記憶部4に記憶された調音SOMを構成する各ノードについて、そのノードが、直前のステップS109で生成部6から供給された新たな調音パラメータ系列に適合する度合いを表すスコアを求め、勝者ノード決定部72と自己学習用結合重み更新部76に供給する。
勝者ノード決定部72は、図17のステップS42で説明したように、調音SOMを構成するノードのうちの、スコア計算部71からのスコアが最も高いノードを求め、そのノードを勝者ノードとして決定して、勝者ノードを表すノードラベルを、更新重み決定部73に供給する。更新重み決定部73は、図17のステップS43で説明したように、調音SOMの各ノードについて、勝者ノード決定部72からのノードラベルが表す勝者ノードとのパターン間距離に応じて、更新重みを決定し、学習データ更新部74に供給する。
学習データ更新部74は、図17のステップS44で説明したように、生成部6から供給された新たな調音パラメータ系列と、調音SOMのノードの学習データ記憶部22に記憶されている旧学習データとを、そのノードの更新重みに対応した比率で混合することにより、新たな学習データを得て、その新たな学習データによって、学習データ記憶部22の記憶内容を更新する。
そして、モデル学習部75は、図17のステップS45で説明したように、調音SOMの各ノードについて、学習データ更新部74による更新後の学習データ記憶部22に記憶された新たな学習データを用いて、時系列パターンモデル21(ここでは、HMM)の学習を行うことにより、その時系列パターンモデル21のモデルパラメータを更新する。
その後、自己学習用結合重み更新部76は、図17のステップS46とS47で説明したように、報酬が与えられていないときには、スコア計算部71から供給された調音SOMの各ノードの、生成部6から供給された新たな調音パラメータ系列に対するスコアに基づいて、記憶部4に記憶された結合ネットワークの結合重みを更新する。
即ち、自己学習用結合重み更新部76は、例えば、調音SOMにおいて、終了条件が満たされた場合の調音パラメータ系列(直前のステップS109で生成部6から供給された調音パラメータ系列)が観測される尤度が最も高いノード、つまり、スコア計算部71からのスコアが最も高いノードである勝者ノードと、聴覚SOMの各ノードとの結合重みを、聴覚SOMの発話勝者ノードとの結合重みが最も増大するように(強めるように)更新する。
具体的には、自己学習用結合重み更新部76は、例えば、次式にしたがって、結合重みを更新する。
cwnew(W,j)=cwold(W,j)+βscore_in(j)score_out(W)
・・・(2)
但し、式(2)において、Wは、調音SOMにおいて、終了条件が満たされた場合の調音パラメータ系列が観測される尤度が最も高いノード(スコア計算部71からのスコアが最も高いノードである勝者ノード)を表すインデックスであり、jは、聴覚SOMを構成する各ノードを表すインデックスである。例えば、聴覚SOMを構成するノードの総数がN個であるとすると、インデックスjは、1,2,・・・,Nの値をとる。
また、いま、調音SOMのインデックスWで表されるノード(終了条件が満たされた場合の調音パラメータ系列が観測される尤度が最も高いノード)を、ノード#Wと表すとともに、聴覚SOMのインデックスjで表されるノードを、ノード#jと表すこととすると、式(2)において、cwnew(W,j)は、調音SOMのノード#Wと、聴覚SOMのノード#jとの更新後の結合重みを表し、cwold(W,j)は、調音SOMのノード#Wと、聴覚SOMのノード#jとの、更新直前の更新重みを表す。
さらに、式(2)において、βは所定の定数であり、score_in(j)は、ユーザの発話に対して求められた聴覚SOMのノード#jのスコアを表す。また、score_out(W)は、終了条件が満たされた場合の調音パラメータ系列に対して求められた調音SOMのノード#Wのスコア、つまり、終了条件が満たされた場合の調音パラメータ系列に対して勝者ノードとなった調音SOMのノード#Wのスコアを表す。
ここで、自己学習用結合重み更新部76は、調音SOMのノード#Wのスコアscore_out(W)を、スコア計算部71から供給されるスコアの中から取得して、式(2)を計算する。また、自己学習用結合重み更新部76は、聴覚SOMの各ノード#jのスコアscore_in(j)を、制御部10から取得して、式(2)を計算する。即ち、制御部10は、ユーザの発話に対して求められる聴覚SOMの各ノード#jのスコアscore_in(j)を、認識部5から取得し、自己学習用結合重み更新部76に供給するようになっており、自己学習用結合重み更新部76は、このようにして制御部5から供給されるスコアscore_in(j)を用いて、式(2)を計算する。
なお、自己学習用結合重み更新部76では、ステップS115において、その他、例えば、次のようにして、記憶部4に記憶された結合ネットワークの結合重みを更新することができる。
即ち、自己学習用結合重み更新部76では、例えば、調音SOMにおいて、終了条件が満たされた場合の調音パラメータ系列(直前のステップS109で生成部6から供給された調音パラメータ系列)が観測される尤度が最も高いノード、つまり、スコア計算部71からのスコアが最も高いノードである勝者ノードと、その勝者ノードから生成される調音パラメータにしたがって駆動部8が駆動した場合に観測部1において観測される観測値としての合成音に対して決定される聴覚SOMの勝者ノードとの結合重みが最も増大するように(強めるように)、スコア計算部71からのスコアが最も高い調音SOMのノードである勝者ノードと、聴覚SOMの各ノードとの結合重みを更新する。
具体的には、自己学習用結合重み更新部76は、例えば、次式にしたがって、結合重みを更新する。
cwnew(W,j)=cwold(W,j)+βscore_in'(j)score_out(W)
・・・(3)
式(3)において、W,j,cwnew(W,j),cwold(W,j),β,score_out(W)は、式(2)における場合と同様である。また、式(3)において、score_in'(j)は、調音SOMのノード#Wから生成される調音パラメータ系列にしたがって駆動部8が駆動することにより生成される合成音に対して求められる聴覚SOMのノード#jのスコアを表す。
ここで、式(3)にしたがって結合重みを更新する場合には、調音SOMのノード#Wから生成される調音パラメータ系列にしたがって駆動部8が駆動することにより生成される合成音に対して求められる聴覚SOMのノード#jのスコアscore_in'(j)が必要である。
そのため、制御部10は、生成部6を制御して、学習部7によって更新された調音SOMのノード#Wから調音パラメータ系列を生成させる。この場合、生成部6(図14)では、制御部10の制御にしたがい、モデルパラメータ変更部62が、記憶部4に記憶された調音SOMのノード#Wのモデルパラメータを読み出し、そのまま、時系列生成部63に供給する。
そして、時系列生成部63は、モデルパラメータ変更部62からのノード#Wのモデルパラメータ(で定義される時系列パターンモデル21としてのHMM)から、調音パラメータ系列を生成し、駆動部8に供給する。
さらに、制御部10は、駆動部8を制御し、生成部6から供給される調音パラメータ系列を用いて、合成音を生成させる。駆動部8が生成した合成音は、観測部1において観測される。観測部1は、その観測値に基づき、合成音の音声区間を検出し、その音声区間の音声データを、特徴抽出部2に供給する。特徴抽出部2では、観測部1からの音声データから音響パラメータが抽出され、時系列の音響パラメータ、即ち、音響パラメータ系列が、学習部3と認識部5に供給される。認識部5では、特徴抽出部2からの音響パラメータ系列、即ち、駆動部8が出力した合成音の音響パラメータ系列を用いて、図13で説明した認識処理が行われる。
そして、制御部10は、認識部5を制御することにより、合成音の音響パラメータ系列を用いて行われた認識処理において得られた、その合成音の音響パラメータ系列に対する聴覚SOMの各ノード#jのスコアscore_in'(j)を取得し、自己学習用結合重み更新部76に供給する。自己学習用結合重み更新部76は、このようにして制御部5から供給されるスコアscore_in'(j)を用いて、式(3)を計算する。
なお、ステップS115において、式(3)を計算することによって、結合重みを更新する場合には、その結合重みの更新後、図18に点線で示すステップS116に進み、制御部10が、学習部3を制御することにより、調音SOMのノード#Wから生成された調音パラメータ系列にしたがって駆動部8が駆動することにより生成された合成音の音響パラメータ系列を用いて、記憶部4に記憶された聴覚SOMを更新させる。
即ち、上述したように、駆動部8が調音SOMのノード#Wから生成された調音パラメータ系列にしたがって駆動することにより生成した合成音の音響パラメータ系列が、特徴抽出部2から学習部3と認識部5に供給されるので、学習部3は、制御部10の制御にしたがい、その合成音の音響パラメータ系列を用い、図11で説明した学習処理を行って、記憶部4に記憶された聴覚SOMを更新する。
以上、自己学習用結合重みの更新の詳細について説明した。
次に、教示学習用結合重みの更新の詳細について説明する。
即ち、教示学習用結合重み更新部77は、例えば、調音SOMにおいて、終了条件が満たされた場合の調音パラメータ系列(直前のステップS109で生成部6から供給された調音パラメータ系列)が観測される尤度が最も高いノード、つまり、スコア計算部71からのスコアが最も高いノードである勝者ノードと、聴覚SOMの各ノードとの結合重みを、正報酬が与えられたときには、聴覚SOMの発話勝者ノードとの結合重みが最も増大するように(強めるように)更新する一方、負報酬が与えられたときには、聴覚SOMの発話勝者ノードとの結合重みが最も減少するように(弱めるように)更新する。
具体的には、教示学習用結合重み更新部77は、正報酬が与えられたときには、例えば、次式にしたがって、結合重みを更新する。
cwnew(W,j)=(1+Ge)cwold(W,j)
・・・(4)
また、教示学習用結合重み更新部77は、負報酬が与えられたときには、例えば、次式にしたがって、結合重みを更新する。
cwnew(W,j)=(1−Ge)cwold(W,j)
・・・(5)
但し、式(4),(5)において、Geは、結合重みcwold(W,j)に対するゲイン項であり、
このゲイン項Geは、0から1までを範囲とする可変値である。このゲイン項Geの値が大きいほど、更新の強化または弱化の度合いが強くなる。
ゲインGeの値の決定手法は、特に限定されず、例えば次のような決定手法を採用することができる。即ち、終了条件が満たされた場合の調音パラメータ系列(直前のステップS109で生成部6から供給された調音パラメータ系列)が観測される尤度が最も高いノード、つまり、スコア計算部71からのスコアが最も高いノードである勝者ノードと、ステップS106における聴覚SOMの勝者ノードとが一番強く学習され、かつ、調音SOMのノードと聴覚SOMのノードとのパターン間距離に応じてその影響度が低くなっていくような関数によって、その値が決定されるという決定手法を、ゲインGeの値の決定手法として採用することができる。
具体的には例えば、HMM+SOMの学習のときにおける更新重みの決定手法として、上述した図9の例ではガウシアンのカーブ(それが示す関数)に応じて更新重みを決定する手法が採用されているが、この手法と同様の手法を、ゲインGeの値の決定手法として採用することができる。即ち、ガウシアンのカーブ(それが示す関数)に応じてゲインGeの値を決定するという決定手法を、ゲインGeの値の決定手法として採用することができる。この決定手法が採用された場合には、調音SOMのノードと聴覚SOMのノードとのパターン間距離が長くなるに連れ、ゲインGeの値が徐々に小さくなっていく(0に近づいていく)ことになる。
さらに、これらの決定手法に加えて、報酬に基づく教示による学習(教示学習用結合重みの更新)の影響の度合いを考慮した手法、具体的には例えば図19に示される手法を、ゲインGeの値の決定手法として採用することもできる。即ち、図19は、教示による学習の影響度合いを考慮したゲインGeの値の決定手法の一例を説明する図である。以下、この図19の例のゲインGeの値の決定手法について説明する。
即ち、教示学習用結合重みの更新は、上述したように、報酬といった外界からの評価によって正解が与えられる。従って、聴覚SOMと調音SOMが収束している状態で、その更新の強化または弱化の度合いが強くなるように学習(更新)していくことで、より一段と早く正確な写像関係(聴覚SOMの各ノードと調音SOMの各ノードとの各結合重みの関係)を得ることができる。
なお、ここで言う収束とは、聴覚SOMと調音SOMとのそれぞれにおいて(それぞれの自己組織化マップにおいて)、とある部分は特定の音韻を表し、別のとある部分は別の音韻を表現するような構造ができあがることをいう。
一方、教示学習用結合重みの更新(学習)の初期段階では、聴覚SOMと調音SOMとのそれぞれはまだ収束していない。このような収束していない状態で、教示学習用結合重みの更新(学習)の強化または弱化の度合いを強めるようにその学習を進めていくと、聴覚SOM上のノードと調音SOM上のノードとは、その学習が進むに連れて、違うカテゴリを表現するようになってしまう場合もでてくる。そうなってしまった場合に、聴覚SOM上のノードと調音SOM上のノードとの結合が強まっていると、返って正確な学習ができなくなる場合がでてくるという問題が発生してしまう。
そこで、この問題を解決すべく、図19の例のゲインGeの値の決定手法では、上述した式(4)と式(5)におけるゲイン項Geを例えば次の式(6)のように定義し、教示学習用結合重みの更新(学習)の回数(以下、結合重み更新回数)がn回目までの初期段階では、図19に示されるように、式(6)の右辺の値gを0で固定しおき、結合重み更新回数がn+1回目を超えてからその値gを所定の値(例えば1.0等)に変化させるようにしている。
Ge = g * C
・・・(6)
但し、式(6)において、gは、上述したように、結合重み更新回数により決定される値である。また、Cは、教示学習用結合重み更新部77によりコントロールされる可変値であって、調音SOMのノードと聴覚SOMのノードとのパターン間距離や、必要に応じてその他の情報に応じた値を取る。
これにより、結合重み更新回数がn回目までの初期段階では、即ち、聴覚SOMと調音SOMとのそれぞれがまだ収束していない状態では、上述した式(4),(5)に示されるように、たとえ報酬(教示)が与えられたとしても、教示学習用結合重みの更新が実質上行われないことになる。即ち、報酬(教示)の影響を受けないことになる。
そして、その後、結合重み更新回数がn+1回目を超えると、即ち、聴覚SOMと調音SOMとのそれぞれがある程度収束してくると、教示学習用結合重みの更新が実質上開始される。即ち、結合重み更新回数がn+1回目以降では、報酬(教示)の影響を受けることになる。この場合、教示学習用結合重み更新部77は、式(6)の値Cを適切に変動して、その強化または弱化の度合いを適切に変更していくことで、報酬(教示)の影響の度合いを適切に調整することもできる。具体的には例えば、結合重み更新回数がn+1回目を超えた時点が実質上の学習の開始となるので、その学習の初期段階(結合重み更新回数がn+1回に近い段階)では、その強化または弱化の度合いが小さくなるようにし、学習が進むに従って(結合重み更新回数がn+1回よりも多くなるに従って)、即ち、聴覚SOMと調音SOMとのそれぞれ(それぞれの自己組織化マップ)が収束するに従って、その強化または弱化の度合いを大きくしていくように、教示学習用結合重み更新部77は式(6)の右辺の値Cをコントロールしていけばよい。なお、その強化または弱化の度合いを大きくしていくとは、結局、正報酬が与えられたときにはcwnew(W,j)の値を大きくしていき、負報酬が与えられたときにはcwnew(W,j)の値を小さくしていくことに他ならない。このようにすることで、写像関係(聴覚SOMの各ノードと調音SOMの各ノードとの各結合重みの関係)の学習を、より早くかつより正確にできるようなる。
なお、結合重み更新回数は、上述した例では、教示学習用結合重みの更新の回数とされたが、教示学習用結合重みの更新と自己評価用結合重みの更新とのそれぞれ回数の総計回数としてもよい。
以上、自己学習用結合重みの更新の詳細について説明し、引き続き、教示学習用結合重みの更新の詳細について説明した。
なお、ユーザからの報酬(教示)の影響をより一段と高めたい場合には、教示学習用結合重みの更新による強化(または弱化)の度合いを、自己学習用結合重みの更新による強化の度合いに比較して大きくなるようにすればよい。
また、教示学習用結合重みの更新の処理タイミングは、図18の例では、ステップS114の処理でYESであると判定された後のステップS115の時点とされたが、図18の例に限定されず、ステップS114の判定処理の結果によらず報酬が与えられた時点であれば任意の時点でよい。
以上のように、図1の情報処理装置では、ユーザの発話の音響パラメータ系列に基づき、聴覚SOMの学習(更新)を行う一方、聴覚SOMにおいて、ユーザの発話の音響パラメータに対するスコアが最も高いノードである勝者ノードを決定し、調音SOMにおいて、聴覚SOMの勝者ノードとの結合重みが最大のノードである生成ノードを探索する。さらに、図1の情報処理装置では、生成ノードのモデルパラメータを変更することによって、その生成ノードから生成される調音パラメータ系列を変更し、その調音パラメータ系列にしたがって合成音を生成する。そして、図1の情報処理装置では、その合成音に対して決定される聴覚SOMの勝者ノード(合成音勝者ノード)と、ユーザの発話に対して決定された聴覚SOMの勝者ノード(発話勝者ノード)とに基づき、終了条件が満たされるかどうかを判定し、終了条件が満たされた場合に、結合重みを更新するとともに、終了条件が満たされた場合の調音パラメータ系列に基づき、調音SOMの学習(更新)を行う。
従って、図1の情報処理装置が適用されたロボットなどでは、自己の行動を能動的に変更し、その行動を自己評価して、自己の行動を、他から与えられる刺激に適応させることができる。即ち、例えば、自己の行動としての発話(合成音)を能動的に変更し、その合成音を自己評価して、自己の合成音を、他から与えられる刺激としてのユーザの発話に適応させることができる。
つまり、図1の情報処理装置(以下、それが適用されたロボットとして説明する)は、ユーザとの間で、図20に示されるプロトコルP201に従って、その処理を実行することができる。
具体的には、プロトコルP201は、次のステップS201−1,S202−2からなる。
即ち、ステップS201−1において、ユーザは、自身の発話(社会に存在する音)、即ち、お手本となる音韻をロボットに与える。すると、ロボットは、ユーザの発話を聴覚SOMによって認識し、その発話を真似た合成音を出力するために、調音SOMから得られる調音パラメータを変更し、その変更後の調音パラメータにしたがって音声合成を行うことにより、実際に、合成音を出力する。
さらに、ステップS201−2において、ロボットは、ユーザの発話のまねによる探索と自己評価を行う。即ち、ロボットは、自身から出力した合成音を、聴覚SOMによって認識し、その合成音がユーザの発話に近いかどうかを、終了条件を満たすかどうかを判定することによって自己評価する。そして、合成音がユーザの発話に近くなったという自己評価結果が得られた場合(終了条件を満たす場合)に、調音SOMと聴覚SOMのノードどうしのマッピングをとることで、つまり、ユーザの発話に近い合成音を生成することができる調音SOMのノードと、その合成音またはユーザの発話の認識結果としての聴覚SOMのノードとの結合を強めることで、調音SOMと聴覚SOMのノードどうしの適切な結合(写像)を、教師なし学習で獲得する。
かかるメカニズムによれば、ユーザが発話すると、ロボット(図1の情報処理装置)では、その発話と同様の発話としての合成音の生成を行う調音パラメータ(系列)を得るという目標(調音目標)を達成すべく、調音SOMのノードが有する時系列パターンモデル21(図5)のモデルパラメータを変更することにより、調音パラメータが変更される。さらに、図1の情報処理装置では、駆動部8が、変更後の調音パラメータにしたがって駆動、つまり合成音を生成し、その合成音を、聴覚SOMを用いて認識することにより、ユーザの発話に近づいたかどうかを、終了条件を判定することにより自己評価する。そして、図1の情報処理装置では、ユーザの発話に近い合成音を生成することができる調音SOMのノードと、その合成音、またはユーザの発話の認識結果としての聴覚SOMのノードとの結合を強めるように、調音SOMと聴覚SOMとのマッピング(結合重み)を更新する。
従って、図1の情報処理装置を、例えば上述したように、ロボットに適用することにより、ユーザが発話すると、合成音の出力を繰り返し、ユーザの発話(の音韻)の真似をする、いわゆるオウム返しのような聞き真似を行うロボットを実現することができる。
なお、ユーザの発話のオウム返しを行う方法としては、例えば、ユーザの発話を、辞書を用いて音声認識し、その音声認識結果にしたがって合成音を生成する第1の方法や、ユーザの発話を録音して再生する第2の方法がある。
第1の方法では、音声認識が辞書を用いて行われるため、辞書に登録されていない単語を音声認識することはできず、その結果、そのような単語の合成音を生成することもできない。即ち、第1の方法では、辞書に登録されている単語の範囲でしか、オウム返しを行うことができない。
また、第2の方法では、ユーザの発話を録音して再生するだけなので、再生(出力)される音(音声)に個性がなく、面白みにかける。なお、第2の方法については、ユーザの発話の再生時に、フィルタをかけることで、再生時の音声を変換(音声変換)し、これにより、ユーザの発話とは周波数成分が異なる音(音声)を出力する方法がある。
ここで、オウム返しをする方法、さらには、オウム返しに適用することができる音声変換を行う方法については、例えば、特開平11-9847号公報や、特許第1758551号、特表2001-522471号公報、特開平09-179572、特開2000-122699号公報などに記載されている。
第1や第2の方法をロボットに適用した場合、第1や第2の方法のいずれを適用した場合であっても、ロボットがするオウム返しは、変化がない固定のオウム返しであり、オウム返しをすることができなかったロボットが、オウム返しをすることができるようになるような成長を、ユーザに感じさせることはできない。
一方、図1の情報処理装置をロボットに適用した場合には、ユーザが、ロボットに教えるように発話をすることにより、その発話を徐々に真似してオウム返しをするロボットを実現することができる。さらに、ロボットにおいて生成される合成音は、調音器官としての調音SOMによる制約(例えば、調音SOMのノードの総数や、ノードの配置構造、調音パラメータとして採用するパラメータ、時系列パターンモデル21(図5)として採用するモデルなど)を受ける。従って、ロボットが、ユーザの発話を真似するのには限界があり、ロボットは、その限界の範囲内において、ユーザの発話を最大限真似した合成音を出力する。このため、ロボットでは、個性があるオウム返しが可能になる。さらに、最初は稚拙なオウム返ししか出来ないが、学習を追うごとに上手になっていく様子を、ユーザは観察することが出来る。
以上のように、図1の情報処理装置によれば、聴覚SOMと調音SOMとの間の写像(聴覚SOMと調音SOMとのノードどうしの結合重み)を、自己評価により、教師なしで獲得することができ、その結果、ユーザの発話(音声)を認識し、その発話を真似た合成音を生成することができるようになる。
また、図1の情報処理装置によれば、聴覚SOMの学習(更新)によって、自己組織的に音韻の区別をすることが出来るようになるので、どのような音韻でも獲得(認識)することが可能となる。すなわち、あらかじめ定義されたある特有の音韻の辞書なしで、任意の音韻の特徴のまとまり(パターン)を真似することができるようになる。つまり、ユーザの発話に応じた音韻を獲得し、その真似をすることができる。
さらに、図1の情報処理装置によれば、ユーザの発話がされると、合成音を実際に出力(することを繰り返)し、ユーザの発話により近い合成音を(出力しようと)探索するので、結果として、ユーザには、そのユーザの発話を真似しているように見える。そして、結合ネットワーク、即ち、聴覚SOMおよび調音SOM、並びに結合重みの学習(更新)が進むほど、ユーザには、上手に真似をすることが出来るようになるように見える。
また、図1の情報処理装置によれば、合成音の生成は、基本的には、ランダムではなく、ユーザの発話に音に近づけようとするように行われるので、ユーザが、外界から観察したときに意味づけができる。即ち、ユーザの発話を真似しようとしていることを、ユーザに感じさせることができる。
さらに、図1の情報処理装置によれば、結合ネットワークの学習(更新)の過程が、ユーザにとっては、オウム返し(聞きまね)をするゲームをしているように見えるので、ユーザが楽しむことができる。
また、図1の情報処理装置によれば、調音器官としての調音SOMによる制約の範囲内において、ユーザの発話を最大限真似した合成音を出力するので、ユーザの発話を録音して再生する場合のような個性がないオウム返しではなく、情報処理装置固有の個性があるオウム返しを行うことができる。
さらに、図1の情報処理装置によれば、ユーザの発話があるごとに、結合ネットワークの学習(更新)を行う、いわゆるオンライン学習が行われるので、ユーザは、オウム返しが徐々に上手になっていく様子を観察することができる。
ただし、[発明が解決しようとする課題]で上述したように、聴覚SOMと調音SOMとの間の写像(聴覚SOMと調音SOMとのノードどうしの結合重み)が、図1の情報処理装置の自己評価だけで獲得されても、即ち、いわゆる教師なし学習だけで獲得されても、その自己評価が仮に間違っていた場合には、獲得された写像もまた間違った写像となってしまうという問題が発生してしまう。
即ち、「ロボットの調音パラメータから発声された音韻が人の社会に存在する音韻ではあるが、ユーザと同じ音韻とマッピングされていない」という第1の間違い、または、「ロボットの調音パラメータから発声された音韻が人の社会に存在せず、その音韻と人の持つ音韻がマッピングされてしまっている」という第2の間違いが生じてしまうという問題が発生してしまう。
そこで、この問題を解決すべく、上述したように、図1の情報処理装置では、さらに、ユーザからの報酬を受け、これを外界からの教師信号として使用することで、より一段と正確な写像を生成するようにしている。具体的には例えば、図1の情報処理装置(以下、それが適用されたロボットとして説明する)は、ユーザとの間で、図21に示されるプロトコルP202や図22に示されるプロトコルP203に従って、この問題を解決可能な処理を実行することができる。
より具体的には例えば、大人(人間)が子供(人間)に音韻を教える一般的な手順と同様に、はじめに、ユーザ(大人に相当)は、プロトコルP202に従った処理をロボット(子供に相当)に実行させる。即ち、ユーザは、お手本となる様々な音韻をロボットに与えることで、聴覚SOMと調音SOMとの間の写像(聴覚SOMと調音SOMとのノードどうしの結合重み)の関係をロボットに学習させていく。その後、ロボットが写像の関係をある程度習熟してきた段階で、ユーザは、プロトコルP203に従った処理をロボットに実行させる。即ち、ユーザは、ロボットにランダムに発声させて(ランダムに合成音を出力させて)、ランダムに出力された合成音(音韻)に対して報酬を与えていくことで、その合成音に対応する写像の関係をさらにロボットに学習させていく。これにより、より一段と正確な写像の獲得が可能になる。
以下、かかるプロトコルP202,P203のそれぞれについて、その順番に個別に説明していく。
はじめに、図21を参照して、プロトコルP202について説明する。
このプロトコルP202は、ステップS202−1,S202−2,S202−3からなる。
ただし、ステップS202−1,S202−2のそれぞれは、上述した図20のプロトコルP201のステップS201−1,S201−2のそれぞれと基本的に同様の処理であるので、それらの説明については省略する。そこで、以下、ステップS202−3についてのみ説明する。
例えば、ユーザは、ステップS202−2の処理の結果としてロボットが発声した音韻が、ステップS202−1の処理でのお手本となる音韻(ユーザが発声した音声)と同じカテゴリの音であると評価した場合、ステップS202−3において、正報酬を与えることになる。すると、ロボットは、ステップS202−1の処理でのお手本となる音韻を認識した聴覚SOM上のHMMのノードと、ステップS202の処理の結果としてロボット自身が発声した音韻に対応する調音SOM上のHMMのノードとの結合重みに対して、正報酬を受けたときの学習を行う。即ち、ロボットは、その結合重みを強化するように更新する。
これに対して例えば、ユーザは、ステップS202−2の処理の結果としてロボットが発声した音韻が、ステップS202−1の処理でのお手本となる音韻(ユーザが発声した音声)とは異なるカテゴリの音であると評価した場合、ステップS202−3において、負報酬を与えることになる。すると、ロボットは、ステップS202−1の処理でのお手本となる音韻を認識した聴覚SOM上のHMMのノードと、ステップS202の処理の結果としてロボット自身が発声した音韻に対応する調音SOM上のHMMのノードとの結合重みに対して、負報酬を受けたときの学習を行う。即ち、ロボットは、その結合重みを弱化するように更新する。その結果、ステップS202−2の処理の結果としてロボットより発声されたその音韻は、それ以降、だんだんと発声されないようになっていく。
次に、図22を参照して、プロトコルP203について説明する。
ロボットは、自由なタイミングで、上述したように、自身の発声器官(図1の情報処理装置)を利用して調音SOM上のHMMのノードから調音パラメータ(調音パラメータ系列)を生成し、それに対応する合成音(音韻)を発声することが可能である。このようなロボットの自発的な発声に対しても、ユーザは報酬を与えることが可能であり、そのことを実現するプロトコルの一例が図22のプロトコルP203とされている。
プロトコルP203は、次のステップS203−1,S203−2からなる。
即ち、ステップS203−1において、ロボットは、上述したように、ランダムに調音SOM上のノードから発生する。
例えば、ステップS203−1の処理でロボットが発声した合成音が、ユーザも通常に発声可能である場合、即ち社会に存在する音声である場合、ステップS203−2において、ユーザは、正報酬を与えることになる。すると、ロボットは、ステップS203−1の処理で自身が発声した合成音(音韻)を聴覚SOM上で認識したときのその聴覚SOM上のノードを、聴覚SOMの発話勝者ノードとして決定する。また、ロボットは、ステップS203−1の処理で自身が発声した音韻の出力元となる調音SOM上のノードを、調音SOMの勝者ノードとして決定する。そして、ロボットは、この調音SOMの勝者ノードと、聴覚SOMの各ノードとの結合重みを、聴覚SOMの発話勝者ノードとの結合重みが最も増大するように(強めるように)更新する。
これに対して、例えば、ステップS203−1の処理でロボットが発声した合成音が、ユーザにとって発声が困難である場合、すなわち社会に存在しない音声である場合、ステップS203−2において、ユーザは、負報酬を与えることになる。すると、ロボットは、ステップS203−1の処理で自身が発声した合成音(音韻)を聴覚SOM上で認識したときのその聴覚SOM上のノードを、聴覚SOMの発話勝者ノードとして決定する。また、ロボットは、ステップS203−1の処理で自身が発声した音韻の出力元となる調音SOM上のノードを、調音SOMの勝者ノードとして決定する。そして、ロボットは、この調音SOMの勝者ノードと、聴覚SOMの各ノードとの結合重みを、この聴覚SOMの発話勝者ノードとの結合重みが最も減少するように(弱めるように)更新する。その結果、ステップS203−1の処理でロボットにより発声された音韻は、それ以降、だんだんと発声されないようになっていく。
なお、図21のプロトコルP202と図22のプロトコルP203とのそれぞれは、上述した例では組み合わされて用いられたが、それぞれ単独で用いることもできる。
特に、図22のプロトコルP203を単独で用いることで、ロボットが発生し得る音韻の中から、社会に存在しない音韻を的確に排除することが可能になる。
以上、聴覚SOMと調音SOMとの間の写像(聴覚SOMと調音SOMとのノードどうしの結合重み)の関係の学習のためのプロトコルの一例として、図21のプロトコル202と図22のプロトコル203とについて説明した。
なお、プロトコルP202,P203におけるユーザの報酬の与え方の手法は、特に限定されないが、プロトコルP202,P203の例では図1の情報処理装置がロボットに適用されているので、例えば、次の第1の手法や第2の手法を採用することが可能である。
即ち、報酬の与え方の第1の手法とは、ユーザが、正報酬を与える場合には、ロボットの頭部に供えられているタッチセンサ(図示せず)をなでる(いわゆる頭をなでている)という信号を、また、負報酬を与える場合には、そのタッチセンサをたたく(いわゆる頭をたたく)という信号を、それぞれロボットに与える、といった手法である。
また、報酬の与え方の第2の手法とは、ユーザが、正報酬を与える場合には、ロボットの発声をやさしくまねる(低い音圧でまねる)行動を取り、また、負報酬を与える場合には、そのロボットの発声を無視する(フィードバックを何も返さない)行動を取る、といった手法である。ただし、この第2の手法が適用される場合、報酬取得部9は、それ自体で音声入力機能を有する構成とするか、或いは、観測部(音声入力部)1内に設けられて、その観測部1の音声入力機能を利用するようにすると良い。
以上説明したように、図1の情報処理装置は、聴覚SOMと調音SOMとの間の写像(聴覚SOMと調音SOMとのノードどうしの結合重み)の関係の学習として、図20のプロトコルP201のような自己評価による学習(即ち、上述した自己学習用結合重みの更新)に加えてさらに、図21のプロトコルP202や図22のプロトコルP203のような報酬(正/負)による教示に基づく学習(即ち、上述した教示学習用結合重みの更新)を実行することができる。その結果、より一段と正確な写像の関係を得ることが可能になる。また、図1の情報処理装置が社会には存在しない音韻(合成音)を出力した場合であっても、教示に基づく学習により、その音韻に対応する写像の関係は段々と弱められていくので、その結果、社会には存在しない音韻の発声頻度も段々と下がっていき、最終的には(理想的には)、その発声自体が無くなるようにすることができる。
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
そこで、図23は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク105やROM103に予め記録しておくことができる。
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体111に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体111は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体111からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部108で受信し、内蔵するハードディスク105にインストールすることができる。
コンピュータは、CPU(Central Processing Unit)102を内蔵している。CPU102には、バス101を介して、入出力インタフェース110が接続されており、CPU102は、入出力インタフェース110を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部107が操作等されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)103に格納されているプログラムを実行する。あるいは、また、CPU102は、ハードディスク105に格納されているプログラム、衛星若しくはネットワークから転送され、通信部108で受信されてハードディスク105にインストールされたプログラム、またはドライブ109に装着されたリムーバブル記録媒体111から読み出されてハードディスク105にインストールされたプログラムを、RAM(Random Access Memory)104にロードして実行する。これにより、CPU102は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU102は、その処理結果を、必要に応じて、例えば、入出力インタフェース110を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部106から出力、あるいは、通信部108から送信、さらには、ハードディスク105に記録等させる。
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
なお、図1の情報処理装置は、実際のロボットの他、例えば、仮想的なロボット、即ち、例えば、ディスプレイ上に表示されるキャラクタなどにも適用することができる。
また、本実施の形態では、聴覚SOMおよび調音SOMのノードが有する時系列パターンモデル21(図5)として、状態遷移確率モデルの1つであるHMMを採用することとしたが、時系列パターンモデル21としては、他の状態遷移確率モデルを採用することが可能である。
時系列パターンモデル21として採用することができる他の状態遷移確率モデルとしては、例えば、ベイジアンネットワークがある。
ベイジアンネットワークでは、変数間の依存関係をグラフ構造で表し、各ノードに条件付き確率を割り当てることでモデル化が行われるが、特に、時間軸に沿った状態遷移モデルを構築することで、時系列データをモデル化することが可能となる。
なお、ベイジアンネットワークのグラフ構造の決定は、例えば、学習データの尤度とグラフ構造の複雑さとを考慮したモデルを選択することにより行われ、条件付き確率の推定には、例えば、最尤推定法やEM(Expectation Maximaization)アルゴリズムなどが利用される。ここで、ベイジアンネットワークの詳細については、例えば、本村陽一、「不確実性モデリングのための情報表現:ベイジアンネット」、2001年、ベイジアンネットチュートリアルなどに記載されている。
さらに、時系列パターンモデル21(図5)としては、上述のように、HMMやベイジアンネットワークなどのような状態遷移確率モデルを採用することができる他、関数を近似するモデル(以下、適宜、関数近似モデルという)を採用することもできる。
関数近似モデルは、時系列パターンを、関数f()を用い、例えば、微分方程式{x(t)}'=f(x(t))や、差分方程式x(t+1)=f(x(t))などで表現するモデルで、関数f()が、時系列パターンを特徴づける。なお、tは時間(時刻)(サンプル点)を表し、x(t)は、時刻tの時系列データのサンプル値、または時刻(0から)tまでに観測された時系列データを表す。また、{x(t)}'は、時系列データx(t)の時間tに関する1次微分を表す。
学習データ(時系列データ)から、ある時系列パターンを表す(に対応する)関数f()を求めることを、関数近似と呼ぶと、関数近似の方法としては、例えば、多項式などを用いて関数 f() を表現し、その多項式の係数を、学習データから決定する方法や、ニューラルネットワークによって関数 f() を表現し、そのニューラルネットワークのパラメータを、学習データから決定する方法などがある。
多項式で表現された関数f()の関数近似において、その多項式の係数の決定(推定)は、例えば、最急降下法などによって行うことができる。また、ニューラルネットワークによって表現された関数f()の関数近似において、そのニューラルネットワークのパラメータの決定は、例えば、バックプロパゲーション法によって行うことができる。ここで、バックプロパゲーション法では、ニューラルネットワークに入力と出力のデータを与え、その入力と出力のデータの関係を満たすように、ニューラルネットワークのパラメータの学習が行われる。
例えば、時系列パターンモデル21として、関数f()を用いた差分方程式x(t+1)=f(x(t))で時系列パターンを表現する関数近似モデルを採用する場合、入力層x(t)と出力層x(t+1)をつなぐ重み(中間層)が、ニューラルネットワークのパラメータであり、このパラメータが、学習データ(時系列データ)を用いて学習される。ニューラルネットワークのパラメータの学習は、初期値を適当に与えて、バックプロパゲーション法により行われる。なお、ニューラルネットワークとしては、例えば、リカレントニューラルネットワークを採用することができる。
関数f()がニューラルネットワークによって表現される時系列パターンモデル21を有するノードで構成される聴覚SOMおよび調音SOMの学習等でも、上述のHMMを時系列パターンモデル21として採用した場合と同様に、勝者ノードを決定する必要があり、勝者ノードの決定のためには、聴覚SOMまたは調音SOMの各ノードの、新たな時系列データとしての音響パラメータ系列または調音パラメータ系列に対するスコアを計算する必要がある。
このスコアとしては、例えば、新たな時系列データの観測値(実際の値)と、関数f()がニューラルネットワークによって表現される時系列パターンモデル21から求められる、新たな時系列データの理論値との差の二乗和などを採用することができる。この場合、スコアの値が最も小さいノードが、新たな時系列データに最も適合するノードである勝者ノードとして決定される。
勝者ノードの決定後は、各ノードの更新重みを決定し、以下、上述のHMMを時系列パターンモデル21として採用した場合と同様の手順で、各ノード(が有するニューラルネットワーク)のパラメータを更新することができる。
なお、聴覚SOMと調音SOMのノードそれぞれは、必ずしも、同一の時系列パターンモデル21を有していなければならないわけではない。即ち、聴覚SOMのノードが有する時系列パターンモデル21としては、例えば、HMMを採用し、調音SOMのノードが有する時系列パターンモデル21としては、例えば、ニューラルネットワークを採用することができる。
また、本実施の形態では、聴覚SOMのノードを、図5で説明したように、時系列パターンを表現する時系列パターンモデル21と、その時系列パターンモデル21の学習に用いる時系列データである学習データを記憶する学習データ記憶部22とから構成するようにしたが、聴覚SOMのノードは、必ずしも、時系列パターンモデル21と学習データ記憶部22で構成する必要はない。即ち、聴覚SOMのノードは、前述の非特許文献1等に記載されている、従来の自己組織化マップと同様に、単に、パラメータ(音響パラメータ)を有するものであっても良い。但し、聴覚SOMのノードを、時系列パターンモデル21で構成する場合には、時系列データの入力に対して勝者ノードを決定(時系列データを認識)すること、およびノードラベルの入力に対して時系列データを生成することができるが、聴覚SOMのノードが、従来の自己組織化マップと同様に、単に、パラメータ(音響パラメータ)を有するだけである場合には、その聴覚SOMによれば、長さが固定長のデータの入力に対して勝者ノードを決定すること、および長さが固定のデータを生成することしかできず、従って、長さが可変の時系列データの入力に対して勝者ノードを決定すること、および長さが可変の時系列データを生成することは、困難となる。調音SOMについても同様である。
さらに、本実施の形態では、音声(合成音)の認識に用いる聴覚SOMと、合成音の生成に用いる調音SOMとを用意し、ユーザの発話を聴覚SOMを用いて認識する一方、調音SOMを用いて合成音を生成し、その合成音を聴覚SOMを用いて認識することで、聴覚SOMを用いて認識したユーザの発話を真似した合成音を聴覚SOMを用いて生成することができるように、聴覚SOMおよび調音SOMのノードどうしの結合重みの更新、即ち、聴覚SOMと調音SOMとのマッピングを行うようにしたが、その他の複数の自己組織化マップどうしのマッピングを行うことも可能である。
具体的には、例えば、アクチュエータを駆動することによって動くことができるロボットにおいて、画像の認識に用いる自己組織化マップ(以下、適宜、視覚SOMという)と、アクチュエータを駆動する(パラメータを生成する)のに用いる自己組織化マップ(以下、適宜、運動SOMという)とを用意し、ユーザの動きを視覚SOMを用いて認識する一方、運動SOMを用いてアクチュエータを駆動し、その結果動くロボットの動きを視覚SOMを用いて認識することで、視覚SOMを用いて認識したユーザの動きを真似した動きをするアクチュエータの駆動を運動SOMを用いてすることができるように、視覚SOMと運動SOMとのマッピングを行うことができる。なお、ロボットの動きは、例えば、鏡を配置しておき、その鏡に映るロボットの姿を観測することにより、ロボット自身が、視覚SOMを用いて認識することができる。
また、例えば、アクチュエータを駆動することによって動くことができるロボットにおいて、聴覚SOMと運動SOMとを用意し、ユーザが楽器を演奏することにより奏でたメロディを聴覚SOMを用いて認識する一方、運動SOMを用いてアクチュエータを駆動し、その結果動くロボットによる楽器の演奏により奏でられるメロディを聴覚SOMを用いて認識することで、聴覚SOMを用いて認識したユーザが奏でるメロディを真似したメロディを奏でる動きをするアクチュエータの駆動を運動SOMを用いてすることができるように、聴覚SOMと運動SOMとのマッピングを行うことができる。
さらに、この場合、聴覚SOMと運動SOMの他に、視覚SOMも用意し、ユーザが楽器を演奏する動きを視覚SOMを用いて認識する一方、運動SOMを用いてアクチュエータを駆動し、その結果動くロボットの動きを視覚SOMを用いて認識することで、視覚SOMを用いて認識したユーザの演奏の動きを真似した動きをするアクチュエータの駆動を運動SOMを用いてすることができるように、視覚SOMと運動SOMとのマッピングをも行うようにすることができる。なお、この場合、聴覚SOMの勝者ノードとの結合重みが最大の運動SOMのノードと、視覚SOMの勝者ノードとの結合重みが最大の運動SOMのノードとが一致するとは限らないため、運動SOMのいずれのノードを、アクチュエータの駆動に用いるパラメータ(第2のパラメータ)の生成に用いる生成ノードとするかが問題となるが、例えば、運動SOMのノードのうちの、聴覚SOMの勝者ノードとの結合重みと、視覚SOMの勝者ノードとの結合重みとの和が最大のノードを生成ノードとすることができる。
本発明を適用した情報処理装置の一実施の形態の構成例を示すブロック図である。 結合ネットワークの構成例を示す図である。 聴覚SOMを構成する各ノードが、調音SOMを構成するノードのすべてと結合されている様子を示す図である。 聴覚SOM(調音SOM)の第1の構成例を示す図である。 ノードの構成例を示す図である。 聴覚SOM(調音SOM)の第2の構成例を示す図である。 聴覚SOM(調音SOM)の第3の構成例を示す図である。 学習部3の構成例を示すブロック図である。 更新重みを決定する決定方法を説明するための図である。 学習データ記憶部22に記憶させる学習データを更新する更新方法を説明するための図である。 学習部3による学習処理を説明するフローチャートである。 認識部5の構成例を示すブロック図である。 認識部5による認識処理を説明するフローチャートである。 生成部6の構成例を示すブロック図である。 生成部6による生成処理を説明するフローチャートである。 学習部7の構成例を示すブロック図である。 学習部7による学習処理を説明するフローチャートである。 情報処理装置の動作を説明するフローチャートである。 学習部7による、報酬に基づく教示を利用した結合重みの学習の手法の一例を説明する図である。 学習部7による、自己評価による結合重みの学習を行うためのプロトコルの一例を説明する図である。 学習部7による、報酬に基づく教示を利用した結合重みの学習を行うためのプロトコルの一例を説明する図である。 学習部7による、報酬に基づく教示を利用した結合重みの学習を行うためのプロトコルの他の例を説明する図である。 本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
符号の説明
1 観測部, 2 特徴抽出部, 3 学習部, 4 記憶部, 5 認識部, 6 生成部, 7 学習部, 8 駆動部, 9 報酬取得部, 10 制御部, 21 時系列パターンモデル, 22 学習データ記憶部, 41 スコア計算部, 42 勝者ノード決定部, 43 更新重み決定部, 44 学習データ更新部, 45 モデル学習部, 51 スコア計算部, 52 勝者ノード決定部, 61 生成ノード決定部, 62 モデルパラメータ変更部, 63 時系列生成部, 71 スコア計算部, 72 勝者ノード決定部, 73 更新重み決定部, 74 学習データ更新部, 75 モデル学習部, 76 自己学習用結合重み更新部, 77 教示学習用結合重み更新部, 101 バス, 102 CPU, 103 ROM, 104 RAM, 105 ハードディスク, 106 出力部, 107 入力部, 108 通信部, 109 ドライブ, 110 入出力インタフェース, 111 リムーバブル記録媒体

Claims (6)

  1. 複数のノードで構成される第1および第2の自己組織化マップ、並びに前記第1の自己組織化マップのノードと前記第2の自己組織化マップのノードとの結合の度合いを表す結合重みからなる結合ネットワークを記憶する結合ネットワーク記憶手段と、
    外部を観測し、観測値を出力する観測手段が出力する観測値から抽出される第1のパラメータに基づき、前記第1の自己組織化マップの学習を行う第1の学習手段と、
    前記第1の自己組織化マップにおいて、前記第1のパラメータが観測される尤度が最も高いノードである勝者ノードを決定する勝者ノード決定手段と、
    前記第2の自己組織化マップにおいて、前記勝者ノードとの結合の度合いが最も高いノードである生成ノードを探索する探索手段と、
    前記生成ノードから、第2のパラメータを生成するパラメータ生成手段と、
    前記生成ノードから生成される第2のパラメータを変更させる変更手段と、
    前記第2のパラメータにしたがって駆動する駆動手段が、前記第2のパラメータにしたがって駆動した場合に前記観測手段において観測される観測値に対して決定される前記勝者ノードに基づき、前記第2のパラメータの変更を終了する終了条件が満たされるかどうかを判定する判定手段と、
    前記終了条件が満たされた場合に、前記結合重みを更新する第1の結合重み更新手段と、
    前記駆動手段の駆動の結果に対するユーザの評価が前記ユーザから報酬として与えられた場合に、前記結合重みを更新する第2の結合重み更新手段と、
    前記終了条件が満たされた場合の前記第2のパラメータに基づき、前記第2の自己組織化マップの学習を行う第2の学習手段と
    を備えることを特徴とする情報処理装置。
  2. 前記報酬には、正報酬と負報酬とが存在し、
    前記第2の結合重み更新手段は、前記正報酬が前記ユーザから与えられた場合には、前記結合重みを強化するように更新し、前記負報酬が前記ユーザから与えられた場合には、前記結合重みを弱化するように更新する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記第2の結合重み更新手段は、前記結合重みの強化または弱化の度合いを、前記第1の結合重み更新手段による前記結合重みの強化または弱化の度合いに比較して大きくするように、前記結合重みを更新する
    ことを特徴とする請求項2に記載の情報処理装置。
  4. 前記第2の結合重み更新手段は、前記結合重みの強化または弱化の度合いをその更新回数に応じて可変させて、前記結合重みを更新する
    ことを特徴とする請求項2に記載の情報処理装置。
  5. 第1および第2の学習手段、勝者ノード決定手段、探索手段、パラメータ生成手段、変更手段、判定手段、第1の結合重み更新手段、並びに、第2の結合重み更新手段とを備える情報処理装置の、
    前記第1の学習手段が、外部を観測し、観測値を出力する観測手段が出力する観測値から抽出される第1のパラメータに基づき、複数のノードで構成される第1および第2の自己組織化マップ、並びに前記第1の自己組織化マップのノードと前記第2の自己組織化マップのノードとの結合の度合いを表す結合重みからなる結合ネットワークを記憶する結合ネットワーク記憶手段に記憶された前記第1の自己組織化マップの学習を行う第1の学習ステップと、
    前記勝者ノード決定手段が、前記第1の自己組織化マップにおいて、前記第1のパラメータが観測される尤度が最も高いノードである勝者ノードを決定する勝者ノード決定ステップと、
    前記探索手段が、前記第2の自己組織化マップにおいて、前記勝者ノードとの結合の度合いが最も高いノードである生成ノードを探索する探索ステップと、
    前記パラメータ生成手段が、前記生成ノードから、第2のパラメータを生成するパラメータ生成ステップと、
    前記変更手段が、前記生成ノードから生成される第2のパラメータを変更させる変更ステップと、
    前記判定手段が、前記第2のパラメータにしたがって駆動する駆動手段が、前記第2のパラメータにしたがって駆動した場合に前記観測手段において観測される観測値に対して決定される前記勝者ノードに基づき、前記第2のパラメータの変更を終了する終了条件が満たされるかどうかを判定する判定ステップと、
    前記第1の結合重み更新手段が、前記終了条件が満たされた場合に、前記結合重みを更新する第1の結合重み更新ステップと、
    前記第2の結合重み更新手段が、前記駆動手段の駆動の結果に対するユーザの評価が前記ユーザから報酬として与えられた場合に、前記結合重みを更新する第2の結合重み更新ステップと、
    前記第2の学習手段が、前記終了条件が満たされた場合の前記第2のパラメータに基づき、前記第2の自己組織化マップの学習を行う第2の学習ステップと
    を含むことを特徴とする情報処理方法。
  6. コンピュータに
    外部を観測し、観測値を出力する観測手段が出力する観測値から抽出される第1のパラメータに基づき、複数のノードで構成される第1および第2の自己組織化マップ、並びに前記第1の自己組織化マップのノードと前記第2の自己組織化マップのノードとの結合の度合いを表す結合重みからなる結合ネットワークを記憶する結合ネットワーク記憶手段に記憶された前記第1の自己組織化マップの学習を行う第1の学習ステップと、
    前記第1の自己組織化マップにおいて、前記第1のパラメータが観測される尤度が最も高いノードである勝者ノードを決定する勝者ノード決定ステップと、
    前記第2の自己組織化マップにおいて、前記勝者ノードとの結合の度合いが最も高いノードである生成ノードを探索する探索ステップと、
    前記生成ノードから、第2のパラメータを生成するパラメータ生成ステップと、
    前記生成ノードから生成される第2のパラメータを変更させる変更ステップと、
    前記第2のパラメータにしたがって駆動する駆動手段が、前記第2のパラメータにしたがって駆動した場合に前記観測手段において観測される観測値に対して決定される前記勝者ノードに基づき、前記第2のパラメータの変更を終了する終了条件が満たされるかどうかを判定する判定ステップと、
    前記終了条件が満たされた場合に、前記結合重みを更新する第1の結合重み更新ステップと、
    前記終了条件が満たされた場合に、前記結合重みを更新する第2の結合重み更新ステップと、
    前記終了条件が満たされた場合の前記第2のパラメータに基づき、前記第2の自己組織化マップの学習を行う第2の学習ステップと
    を含む処理を実行させるプログラム。
JP2005108185A 2005-04-05 2005-04-05 情報処理装置、情報処理方法、およびプログラム Expired - Fee Related JP4843987B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2005108185A JP4843987B2 (ja) 2005-04-05 2005-04-05 情報処理装置、情報処理方法、およびプログラム
US11/397,299 US7499892B2 (en) 2005-04-05 2006-04-04 Information processing apparatus, information processing method, and program
KR1020060030847A KR20060107329A (ko) 2005-04-05 2006-04-05 정보 처리 장치, 정보 처리 방법, 및 프로그램
CN2006100898570A CN1855224B (zh) 2005-04-05 2006-04-05 信息处理装置、信息处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005108185A JP4843987B2 (ja) 2005-04-05 2005-04-05 情報処理装置、情報処理方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2006285882A JP2006285882A (ja) 2006-10-19
JP4843987B2 true JP4843987B2 (ja) 2011-12-21

Family

ID=37084341

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005108185A Expired - Fee Related JP4843987B2 (ja) 2005-04-05 2005-04-05 情報処理装置、情報処理方法、およびプログラム

Country Status (4)

Country Link
US (1) US7499892B2 (ja)
JP (1) JP4843987B2 (ja)
KR (1) KR20060107329A (ja)
CN (1) CN1855224B (ja)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
WO2005089236A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing intelligent pre-staging of data in a compute environment
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
US8271980B2 (en) 2004-11-08 2012-09-18 Adaptive Computing Enterprises, Inc. System and method of providing system jobs within a compute environment
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
ES2614751T3 (es) 2005-04-07 2017-06-01 Iii Holdings 12, Llc Acceso bajo demanda a recursos informáticos
JP2008032834A (ja) * 2006-07-26 2008-02-14 Toshiba Corp 音声翻訳装置及びその方法
CN101136106B (zh) * 2006-08-30 2010-07-07 国际商业机器公司 基于双曲几何显示加权树的方法和计算机***
JP4188989B2 (ja) * 2006-09-15 2008-12-03 本田技研工業株式会社 音声認識装置、音声認識方法、及び音声認識プログラム
US8301449B2 (en) * 2006-10-16 2012-10-30 Microsoft Corporation Minimum classification error training with growth transformation optimization
US7877343B2 (en) * 2007-04-02 2011-01-25 University Of Washington Through Its Center For Commercialization Open information extraction from the Web
US7987484B2 (en) 2007-06-24 2011-07-26 Microsoft Corporation Managing media content with a self-organizing map
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
JP2010157890A (ja) * 2008-12-26 2010-07-15 Fuji Xerox Co Ltd 情報処理装置及び情報処理プログラム
JP2011033680A (ja) * 2009-07-30 2011-02-17 Sony Corp 音声処理装置及び方法、並びにプログラム
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
JP5633734B2 (ja) * 2009-11-11 2014-12-03 ソニー株式会社 情報処理装置、情報処理方法、及び、プログラム
US20110224982A1 (en) * 2010-03-12 2011-09-15 c/o Microsoft Corporation Automatic speech recognition based upon information retrieval methods
US9015093B1 (en) 2010-10-26 2015-04-21 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US8775341B1 (en) 2010-10-26 2014-07-08 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US20130257877A1 (en) * 2012-03-30 2013-10-03 Videx, Inc. Systems and Methods for Generating an Interactive Avatar Model
US9764468B2 (en) 2013-03-15 2017-09-19 Brain Corporation Adaptive predictor apparatus and methods
PL403724A1 (pl) * 2013-05-01 2014-11-10 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie System rozpoznawania mowy i sposób wykorzystania dynamicznych modeli i sieci Bayesa
US9242372B2 (en) 2013-05-31 2016-01-26 Brain Corporation Adaptive robotic interface apparatus and methods
US9792546B2 (en) * 2013-06-14 2017-10-17 Brain Corporation Hierarchical robotic controller apparatus and methods
US9314924B1 (en) 2013-06-14 2016-04-19 Brain Corporation Predictive robotic controller apparatus and methods
US9786296B2 (en) * 2013-07-08 2017-10-10 Qualcomm Incorporated Method and apparatus for assigning keyword model to voice operated function
US9183830B2 (en) * 2013-11-01 2015-11-10 Google Inc. Method and system for non-parametric voice conversion
US9597797B2 (en) 2013-11-01 2017-03-21 Brain Corporation Apparatus and methods for haptic training of robots
US9177549B2 (en) * 2013-11-01 2015-11-03 Google Inc. Method and system for cross-lingual voice conversion
US9311430B2 (en) * 2013-12-16 2016-04-12 Mitsubishi Electric Research Laboratories, Inc. Log-linear dialog manager that determines expected rewards and uses hidden states and actions
US9358685B2 (en) 2014-02-03 2016-06-07 Brain Corporation Apparatus and methods for control of robot actions based on corrective user inputs
US9630318B2 (en) 2014-10-02 2017-04-25 Brain Corporation Feature detection apparatus and methods for training of robotic navigation
US9542927B2 (en) 2014-11-13 2017-01-10 Google Inc. Method and system for building text-to-speech voice from diverse recordings
US10917788B2 (en) * 2014-11-19 2021-02-09 Imprivata, Inc. Inference-based detection of proximity changes
US9717387B1 (en) 2015-02-26 2017-08-01 Brain Corporation Apparatus and methods for programming and training of robotic household appliances
US9984154B2 (en) * 2015-05-01 2018-05-29 Morpho Detection, Llc Systems and methods for analyzing time series data based on event transitions
JP2017027145A (ja) * 2015-07-16 2017-02-02 ソニー株式会社 表示制御装置、表示制御方法、及び、プログラム
CN106940998B (zh) * 2015-12-31 2021-04-16 阿里巴巴集团控股有限公司 一种设定操作的执行方法及装置
US10541817B2 (en) * 2016-03-14 2020-01-21 Ricoh Company, Ltd. Data generation apparatus, data recording system, and program product
US9928408B2 (en) * 2016-06-17 2018-03-27 International Business Machines Corporation Signal processing
CN107833572A (zh) * 2017-11-06 2018-03-23 芋头科技(杭州)有限公司 一种模拟用户说话的语音合成方法及***
JP7353747B2 (ja) * 2018-01-12 2023-10-02 キヤノン株式会社 情報処理装置、システム、方法、およびプログラム
US11992930B2 (en) 2018-03-20 2024-05-28 Sony Corporation Information processing apparatus and information processing method, and robot apparatus
US10810993B2 (en) * 2018-10-26 2020-10-20 Deepmind Technologies Limited Sample-efficient adaptive text-to-speech
JPWO2022244047A1 (ja) * 2021-05-17 2022-11-24

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3312149B2 (ja) * 1993-12-27 2002-08-05 シャープ株式会社 文字や音声の認識装置における認識評価閾値の作成方法
US5729662A (en) * 1995-06-07 1998-03-17 Rozmus; J. Michael Neural network for classification of patterns with improved method and apparatus for ordering vectors
US6456991B1 (en) * 1999-09-01 2002-09-24 Hrl Laboratories, Llc Classification method and apparatus based on boosting and pruning of multiple classifiers
IL153856A0 (en) * 2000-07-18 2003-07-31 Correlogic Systems Inc A process for discriminating between biological states based on hidden patterns from biological data
JP2002239952A (ja) * 2001-02-21 2002-08-28 Sony Corp ロボット装置、ロボット装置の行動制御方法、プログラム及び記録媒体
JP2003099089A (ja) * 2001-09-20 2003-04-04 Sharp Corp 音声認識・合成装置および方法
DE10216117A1 (de) * 2002-04-12 2003-10-23 Philips Intellectual Property Verfahren und System zur Spracherkennung von Symbolfolgen
JP2004030628A (ja) * 2002-05-10 2004-01-29 Sony Corp 情報処理装置および方法、プログラム格納媒体、並びにプログラム
US7197503B2 (en) * 2002-11-26 2007-03-27 Honeywell International Inc. Intelligent retrieval and classification of information from a product manual
CN1217290C (zh) * 2003-07-07 2005-08-31 西安理工大学 二维条码身份证件防伪***自动识读方法
JP4639784B2 (ja) * 2004-12-06 2011-02-23 ソニー株式会社 学習装置および学習方法、並びにプログラム

Also Published As

Publication number Publication date
CN1855224B (zh) 2010-06-16
US20060230140A1 (en) 2006-10-12
US7499892B2 (en) 2009-03-03
KR20060107329A (ko) 2006-10-13
JP2006285882A (ja) 2006-10-19
CN1855224A (zh) 2006-11-01

Similar Documents

Publication Publication Date Title
JP4843987B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP4639784B2 (ja) 学習装置および学習方法、並びにプログラム
JP4150198B2 (ja) 音声合成方法、音声合成装置、プログラム及び記録媒体、並びにロボット装置
JP4201012B2 (ja) データ処理装置、データ処理方法、およびプログラム
Moore PRESENCE: A human-inspired architecture for speech-based human-machine interaction
JP2006285899A (ja) 学習装置および学習方法、生成装置および生成方法、並びにプログラム
US7228276B2 (en) Sound processing registering a word in a dictionary
KR100814569B1 (ko) 로봇 제어 장치
JP2004090109A (ja) ロボット装置およびロボット装置の対話方法
JP4534769B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US7313524B1 (en) Voice recognition based on a growth state of a robot
Cederborg et al. From language to motor gavagai: unified imitation learning of multiple linguistic and nonlinguistic sensorimotor skills
Taniguchi et al. Unsupervised multimodal word discovery based on double articulation analysis with co-occurrence cues
Komatsu et al. Automatic spoken language acquisition based on observation and dialogue
Tanaka et al. Pronunciation adaptive self speaking agent using wavegrad
JP2003271172A (ja) 音声合成方法、音声合成装置、プログラム及び記録媒体、並びにロボット装置
JP2007280057A (ja) データ処理装置、データ処理方法、およびプログラム
Hornstein et al. A unified approach to speech production and recognition based on articulatory motor representations
JP2007280007A (ja) データ処理装置、データ処理方法、およびプログラム
JP2004309523A (ja) ロボット装置の動作パターン共有システム、ロボット装置の動作パターン共有方法、及びロボット装置
JP2007280009A (ja) データ処理装置、データ処理方法、およびプログラム
JP2009043122A (ja) データ処理装置、データ処理方法、及びプログラム
Gustafson et al. Voice creation for conversational fairy-tale characters
Philippsen et al. Hyperarticulation aids learning of new vowels in a developmental speech acquisition model
JP2007280008A (ja) データ処理装置、データ処理方法、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080306

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110812

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: 20110913

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110926

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141021

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141021

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees