JP2009223443A - Learning device, learning method, and program - Google Patents
Learning device, learning method, and program Download PDFInfo
- Publication number
- JP2009223443A JP2009223443A JP2008064993A JP2008064993A JP2009223443A JP 2009223443 A JP2009223443 A JP 2009223443A JP 2008064993 A JP2008064993 A JP 2008064993A JP 2008064993 A JP2008064993 A JP 2008064993A JP 2009223443 A JP2009223443 A JP 2009223443A
- Authority
- JP
- Japan
- Prior art keywords
- state
- hmm
- learning
- state transition
- series data
- 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.)
- Granted
Links
Images
Abstract
Description
本発明は、学習装置、学習方法、及び、プログラムに関し、特に、例えば、複雑な対象を適切にモデル化する状態遷移モデルを得ることができるようにする学習装置、学習方法、及び、プログラムに関する。 The present invention relates to a learning apparatus, a learning method, and a program, and more particularly, to a learning apparatus, a learning method, and a program that can obtain, for example, a state transition model that appropriately models a complex object.
モデル化の対象(以下、モデル化対象ともいう)から観測されるセンサ信号、すなわち、例えば、モデル化対象をセンシングし、そのセンシングの結果得られるセンサ信号に基づき、モデル化対象の状態を構成する学習方法としては、例えば、K-平均法(K-means clustering method)や、SOM(self-organization map)が提案されている。 A sensor signal observed from the modeling target (hereinafter also referred to as modeling target), that is, for example, the modeling target is sensed, and the state of the modeling target is configured based on the sensor signal obtained as a result of the sensing As learning methods, for example, K-means clustering method and SOM (self-organization map) have been proposed.
K-平均法やSOMでは、状態は、観測されるセンサ信号の信号空間上に、代表的なベクトル(代表ベクトル)として配置される。 In the K-means method or SOM, the state is arranged as a representative vector (representative vector) on the signal space of the observed sensor signal.
K-平均法では、初期化として、信号空間上に適当に代表ベクトルが配置される。そして、センサ信号の各時刻のベクトルを、最も距離の近い代表ベクトルに割り当て、各代表ベクトルに割り当てられたベクトルの平均ベクトルによって代表ベクトルを更新することが繰り返される。 In the K-means method, representative vectors are appropriately arranged on the signal space as initialization. Then, the vector at each time of the sensor signal is assigned to the representative vector having the closest distance, and the representative vector is updated by the average vector of the vectors assigned to each representative vector.
SOMでは、代表ベクトルの学習に、競合近傍学習が利用される(例えば、非特許文献1を参照)。 In the SOM, competitive neighborhood learning is used for representative vector learning (see, for example, Non-Patent Document 1).
SOMと関連する研究は非常に多く、状態(ここでは、代表ベクトル)を逐次的に増やしながら学習するGrowing Gridと呼ばれる学習手法なども提案されている(例えば、非特許文献2を参照)。
There are many studies related to SOM, and a learning method called Growing Grid that learns while sequentially increasing states (here, representative vectors) has been proposed (see Non-Patent
K-平均法やSOMでは、信号空間上に、状態(代表ベクトル)が配置されるが、どのように状態が遷移するかの情報は学習されない。 In the K-means method or SOM, a state (representative vector) is arranged on the signal space, but information on how the state transitions is not learned.
このため、K-平均法やSOMでは、パーセプチャルエイリアシング(perceptual aliasing)と呼ばれる問題に対処することが困難である。 For this reason, it is difficult to cope with a problem called perceptual aliasing by the K-means method or SOM.
ここで、パーセプチャルエイリアシングとは、モデル化対象の状態が異なるにもかかわらず、モデル化対象から観測されるセンサ信号が同じ場合に、これを区別することができないという問題である。例えば、カメラを備えた移動型ロボットが、カメラを通して風景画像をセンサ信号として観測する場合、同じ風景画像が観測される場所が環境中に複数個所あると、それらを区別することはできないという問題が発生する。 Here, perceptual aliasing is a problem that even if the states of the modeling target are different, they cannot be distinguished when the sensor signals observed from the modeling target are the same. For example, when a mobile robot equipped with a camera observes a landscape image as a sensor signal through the camera, if there are multiple locations in the environment where the same landscape image is observed, there is a problem that they cannot be distinguished. appear.
一方、観測されるセンサ信号を時系列データとして扱い、状態および状態遷移を合わせ持つ確率モデルとして学習する方法として、HMM(Hidden Markov Model)の利用が提案されている。 On the other hand, the use of an HMM (Hidden Markov Model) has been proposed as a method of learning an observed sensor signal as time-series data and learning it as a probabilistic model having both states and state transitions.
HMMは、音声認識に広く利用されるモデルの一つであり、状態が遷移する確率を表す状態遷移確率や、各状態において、状態が遷移するときに、ある観測値が観測される確率密度を表す出力確率密度関数等で定義される状態遷移モデルである(例えば、非特許文献3を参照)。 HMM is one of the models widely used for speech recognition. It represents the state transition probability that represents the probability of state transition, and the probability density at which a certain observed value is observed when the state transitions in each state. It is a state transition model defined by an output probability density function or the like to be expressed (for example, see Non-Patent Document 3).
HMMのパラメータ、すなわち、状態遷移確率や出力密度関数等は、尤度を最大化するように推定される。HMMのパラメータの推定方法としては、Baum-Welchの再推定法(Baum-Welch algorithm)が広く利用されている。 The parameters of the HMM, that is, the state transition probability, the power density function, etc. are estimated so as to maximize the likelihood. A Baum-Welch re-estimation method (Baum-Welch algorithm) is widely used as an HMM parameter estimation method.
HMMは、各状態から状態遷移確率を介して別の状態へ遷移することができる状態遷移モデルであり、HMMによれば、モデル化対象(から観測されるセンサ信号)が、状態が遷移する過程として、モデル化される。 The HMM is a state transition model that can transition from each state to another state through the state transition probability. According to the HMM, the model transition process (the sensor signal observed from) As a model.
但し、HMMでは、通常、観測されるセンサ信号がどの状態に対応するのかについては、確率的にしか決定されない。そこで、観測されるセンサ信号に基づいて、最も尤度が高くなる状態遷移過程、つまり、尤度を最大化する状態の系列(以下、最尤パスともいう)を決定する方法として、ビタビ法(Viterbi Algorithm)が広く利用されている。 However, in the HMM, the state corresponding to the observed sensor signal is usually determined only probabilistically. Therefore, as a method for determining a state transition process with the highest likelihood based on the observed sensor signal, that is, a sequence of states that maximizes the likelihood (hereinafter also referred to as the maximum likelihood path), the Viterbi method ( Viterbi Algorithm) is widely used.
ビタビ法によれば、各時刻のセンサ信号に応じた状態を、最尤パスに沿って、一意に確定することが可能である。 According to the Viterbi method, the state corresponding to the sensor signal at each time can be uniquely determined along the maximum likelihood path.
HMMによれば、モデル化対象から観測されるセンサ信号が、異なる状況(状態)で同じになったとしても、そのときの時刻の前後におけるセンサ信号の時間変化の過程の違いに応じて、同じセンサ信号を、異なる状態遷移過程として扱うことができる。 According to the HMM, even if the sensor signal observed from the modeled object is the same in different situations (states), it is the same depending on the difference in the time change process of the sensor signal before and after the current time. Sensor signals can be treated as different state transition processes.
なお、HMMでは、パーセプチャルエイリアシングの問題を完全に解決することができるわけではないが、同じセンサ信号に対して異なる状態を割り当てることが可能であり、SOMなどに比べると、モデル化対象を、より詳細にモデル化することが可能である。 Note that HMM cannot completely solve the problem of perceptual aliasing, but it is possible to assign different states to the same sensor signal. It is possible to model in more detail.
ところで、HMMの学習では、状態の数、及び状態遷移の数が多くなると、パラメータを、適切に(正しく)推定することが困難となる。 By the way, in the HMM learning, when the number of states and the number of state transitions increase, it becomes difficult to appropriately (correctly) estimate the parameters.
特に、Baum-Welchの再推定法は、最適なパラメータを決定することを、必ずしも保証する方法ではないため、パラメータの数が多くなると、適切なパラメータを推定するのが極めて困難となる。 In particular, the Baum-Welch re-estimation method is not always a method for guaranteeing that an optimum parameter is determined. Therefore, when the number of parameters increases, it is extremely difficult to estimate an appropriate parameter.
また、モデル化対象が、未知の対象である場合、HMMの構造やパラメータの初期値を適切に設定することは難しく、これも、適切なパラメータの推定を困難にする原因となる。 Also, when the modeling target is an unknown target, it is difficult to set the initial values of the HMM structure and parameters appropriately, and this also makes it difficult to estimate appropriate parameters.
音声認識においてHMMが有効に利用されているのは、扱うセンサ信号が音声信号に限定されていること、音声に関する数多くの知見が利用可能であること、音声を適切にモデル化するHMMの構造に関しては、left-to-right型の構造が有効であること、等が長年に渡る膨大な研究成果の結果として得られていること等が大きな要因である。 HMMs are effectively used in speech recognition because sensor signals handled are limited to speech signals, a lot of knowledge about speech is available, and the structure of HMMs that properly model speech The major factor is that the left-to-right structure is effective, and that the results of many years of research have been obtained.
したがって、モデル化対象が、未知の対象であり、HMMの構造や初期値をあらかじめ決定するための情報が与えられない場合に、大規模なHMMを、実用的なモデルとして機能させることは非常に難しい問題である。 Therefore, if the modeling target is an unknown target and information for predetermining the structure and initial values of the HMM is not given, it is very difficult to make a large-scale HMM function as a practical model. It is a difficult problem.
なお、HMMの構造をあらかじめ与えるのではなく、HMMの構造そのものを決定する方法が提案されている(例えば、非特許文献4を参照)。 A method for determining the structure of the HMM itself instead of giving the structure of the HMM in advance has been proposed (see, for example, Non-Patent Document 4).
非特許文献4に記載の方法では、HMMの状態の数や、状態遷移の数を1つずつ増やしていき、そのつどパラメータの推定を行い、赤池情報量基準(AICと呼ばれる)と呼ばれる評価基準を用いて、HMMを評価するということを繰り返しながら、HMMの構造が決定される。
In the method described in
非特許文献4に記載の方法は、音素モデルのような小規模なHMMに応用されている。
The method described in Non-Patent
しかしながら、非特許文献4に記載の方法は、大規模なHMMのパラメータの推定を行うことを考慮した方法ではないため、複雑なモデル化対象を適切にモデル化することは困難である。
However, since the method described in Non-Patent
すなわち、一般に、HMMの構造に関して、1つずつ状態と状態遷移を追加する修正を行うだけでは、評価基準が単調に改善されることは、必ずしも保証されない。 That is, in general, it is not always guaranteed that the evaluation criterion is monotonously improved only by making corrections that add states and state transitions one by one with respect to the structure of the HMM.
したがって、大規模なHMMで表現される複雑なモデル化対象について、非特許文献4に記載の方法を用いても、適切なHMMの構造が決定されるとは限らない。
Therefore, even if the method described in Non-Patent
従来においては、上述したように、例えば、大規模なHMM等で表現される(であろう)複雑なモデル化対象を適切にモデル化する状態遷移モデルを得ることが困難であった。 Conventionally, as described above, for example, it has been difficult to obtain a state transition model that appropriately models a complicated modeling target expressed by a large-scale HMM or the like.
本発明は、このような状況に鑑みてなされたものであり、複雑なモデル化対象であっても、そのモデル化対象を適切にモデル化する状態遷移モデルを得ることができるようにするものである。 The present invention has been made in view of such a situation, and enables a state transition model to appropriately model a modeling target even if it is a complicated modeling target. is there.
本発明の第1の側面の学習装置、又は、プログラムは、時系列のデータである時系列データを用いて学習が行われる、状態と状態遷移とを有する状態遷移モデルの構造を、スパースな構造に初期化する初期構造設定手段と、前記学習の進行に応じて、前記学習に用いられる前記時系列データを調整し、調整後の時系列データを出力するデータ調整手段と、前記調整後の時系列データを用い、前記状態遷移モデルのパラメータを推定するパラメータ推定手段と、前記状態遷移モデルの構造を調整する構造調整手段とを備える学習装置、又は、学習装置として、コンピュータを機能させるプログラムである。 The learning device or the program according to the first aspect of the present invention provides a sparse structure of a state transition model having a state and a state transition, in which learning is performed using time-series data that is time-series data. Initial structure setting means for initializing, data adjusting means for adjusting the time series data used for the learning and outputting adjusted time series data according to the progress of the learning, and the time after the adjustment It is a learning apparatus comprising parameter estimation means for estimating parameters of the state transition model and sequence adjustment means for adjusting the structure of the state transition model using series data, or a program that causes a computer to function as a learning apparatus. .
本発明の第1の側面の学習方法は、時系列のデータである時系列データを用い、状態と状態遷移とを有する状態遷移モデルの学習を行う学習装置が、前記状態遷移モデルの構造を、スパースな構造に初期化し、前記学習の進行に応じて、前記学習に用いられる前記時系列データを調整し、調整後の時系列データを出力し、前記調整後の時系列データを用い、前記状態遷移モデルのパラメータを推定し、前記状態遷移モデルの構造を調整することを繰り返すステップを含む学習方法である。 The learning method according to the first aspect of the present invention uses a time-series data that is time-series data, and a learning device that learns a state transition model having a state and a state transition has a structure of the state transition model, Initializing to a sparse structure, adjusting the time-series data used for the learning according to the progress of the learning, outputting the adjusted time-series data, using the adjusted time-series data, the state The learning method includes a step of repeatedly estimating a parameter of a transition model and adjusting a structure of the state transition model.
本発明の第1の側面においては、前記状態遷移モデルの構造が、スパースな構造に初期化され、前記学習の進行に応じて、前記学習に用いられる前記時系列データが調整されて、調整後の時系列データが出力される。そして、前記調整後の時系列データを用い、前記状態遷移モデルのパラメータが推定され、前記状態遷移モデルの構造が調整される。 In the first aspect of the present invention, the structure of the state transition model is initialized to a sparse structure, and the time-series data used for the learning is adjusted according to the progress of the learning, and after the adjustment Is output. Then, using the adjusted time-series data, the parameters of the state transition model are estimated, and the structure of the state transition model is adjusted.
本発明の第2の側面の学習装置は、時系列のデータである時系列データを用いて学習が行われる、状態と状態遷移とを有する状態遷移モデルの構造を初期化する初期構造設定手段と、前記学習の進行に応じて、前記学習に用いられる前記時系列データを調整し、調整後の時系列データを出力するデータ調整手段と、前記調整後の時系列データを用い、前記状態遷移モデルのパラメータを推定するパラメータ推定手段と、前記状態遷移モデルの構造を調整する構造調整手段とを備える学習装置である。 The learning device according to the second aspect of the present invention includes initial structure setting means for initializing the structure of a state transition model having states and state transitions, which is learned using time-series data that is time-series data. The state transition model using the data adjustment means for adjusting the time series data used for the learning and outputting the adjusted time series data according to the progress of the learning, and using the adjusted time series data This is a learning device comprising parameter estimation means for estimating the parameters of the above and structure adjustment means for adjusting the structure of the state transition model.
本発明の第2の側面においては、前記状態遷移モデルの構造が初期化され、前記学習の進行に応じて、前記学習に用いられる前記時系列データが調整されて、調整後の時系列データが出力される。そして、前記調整後の時系列データを用い、前記状態遷移モデルのパラメータが推定され、前記状態遷移モデルの構造が調整される。 In the second aspect of the present invention, the structure of the state transition model is initialized, and the time series data used for the learning is adjusted according to the progress of the learning, and the adjusted time series data is Is output. Then, using the adjusted time-series data, the parameters of the state transition model are estimated, and the structure of the state transition model is adjusted.
本発明の第3の側面の学習装置は、時系列のデータである時系列データを用いて学習が行われる、状態と状態遷移とを有する状態遷移モデルの構造を、スパースな構造に初期化する初期構造設定手段と、前記時系列データを用い、前記状態遷移モデルのパラメータを推定するパラメータ推定手段と、前記状態遷移モデルの構造を調整する構造調整手段とを備え、前記パラメータ推定手段が、前記状態遷移モデルの前記パラメータの推定を行い、前記構造調整手段が、推定後の前記パラメータで定義される前記状態遷移モデルの構造の調整を行うことを繰り返す学習装置である。 A learning device according to a third aspect of the present invention initializes a state transition model structure having states and state transitions, which is learned using time-series data, which is time-series data, to a sparse structure. Initial structure setting means, using the time series data, parameter estimation means for estimating parameters of the state transition model, and structure adjustment means for adjusting the structure of the state transition model, the parameter estimation means, The learning apparatus performs estimation of the parameter of the state transition model, and the structure adjusting unit repeatedly adjusts the structure of the state transition model defined by the estimated parameter.
本発明の第3の側面においては、前記状態遷移モデルの構造が、スパースな構造に初期化される。そして、前記時系列データを用い、前記状態遷移モデルのパラメータが推定され、前記状態遷移モデルの構造が調整される。前記状態遷移モデルの前記パラメータの推定と、推定後の前記パラメータで定義される前記状態遷移モデルの構造の調整とは、繰り返される。 In the third aspect of the present invention, the structure of the state transition model is initialized to a sparse structure. Then, using the time series data, the parameters of the state transition model are estimated, and the structure of the state transition model is adjusted. The estimation of the parameters of the state transition model and the adjustment of the structure of the state transition model defined by the parameters after estimation are repeated.
本発明の第4の側面の学習装置は、時系列のデータである時系列データを用いて学習が行われる、状態と状態遷移とを有する状態遷移モデルの構造を初期化する初期構造設定手段と、前記時系列データを用い、前記状態遷移モデルのパラメータを推定するパラメータ推定手段と、前記状態遷移モデルの構造を調整する構造調整手段とを備え、前記構造調整手段は、前記状態遷移モデルの状態の分割、状態のマージ、状態の追加、状態遷移の追加、状態の削除、及び、状態遷移の削除を行うことで、前記状態遷移モデルの構造を調整する学習装置である。 A learning device according to a fourth aspect of the present invention includes initial structure setting means for initializing a structure of a state transition model having states and state transitions, which is learned using time-series data that is time-series data. , Using the time series data, parameter estimation means for estimating the parameters of the state transition model, and structure adjustment means for adjusting the structure of the state transition model, the structure adjustment means, the state of the state transition model The learning apparatus adjusts the structure of the state transition model by dividing the state, adding the state, adding the state, adding the state transition, deleting the state, and deleting the state transition.
本発明の第4の側面においては、前記状態遷移モデルの構造が初期化される。そして、前記時系列データを用い、前記状態遷移モデルのパラメータが推定され、前記状態遷移モデルの構造が調整される。前記状態遷移モデルの構造の調整としては、前記状態遷移モデルの状態の分割、状態のマージ、状態の追加、状態遷移の追加、状態の削除、及び、状態遷移の削除が行われる。 In the fourth aspect of the present invention, the structure of the state transition model is initialized. Then, using the time series data, the parameters of the state transition model are estimated, and the structure of the state transition model is adjusted. As the adjustment of the structure of the state transition model, the state of the state transition model is divided, the state is merged, the state is added, the state transition is added, the state is deleted, and the state transition is deleted.
なお、学習装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。 Note that the learning device may be an independent device or an internal block constituting one device.
また、プログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。 The program can be provided by being transmitted via a transmission medium or by being recorded on a recording medium.
本発明の第1ないし第4の側面によれば、状態遷移モデルを得ることができ、特に、複雑なモデル化対象を適切にモデル化する状態遷移モデルを得ることができる。 According to the first to fourth aspects of the present invention, it is possible to obtain a state transition model, and in particular, it is possible to obtain a state transition model that appropriately models a complicated modeling target.
初めに、図1,2を参照して、本発明が適用される処理の概要を説明する。 First, an outline of processing to which the present invention is applied will be described with reference to FIGS.
本発明の目的のひとつは次の通りである。即ち、対象とするシステムまたはエージェントが、観測するセンサ信号(以下、観測信号と称する)と、自ら取ったアクション信号に基づいて、外環境のモデルを自動的に構築することが目的のひとつである。また、当該目的を実現するとともに、内部知覚されたモデル上の任意の状態を実現するための知的な行動を自在に生成することも目的のひとつである。 One of the objects of the present invention is as follows. That is, one of the purposes is to automatically build a model of the external environment based on the sensor signal (hereinafter referred to as an observation signal) to be observed by the target system or agent and the action signal taken by itself. . In addition to realizing the object, one of the objects is to freely generate an intelligent behavior for realizing an arbitrary state on the internally perceived model.
なお、「エージェント」とは、一般に、環境の状態を知覚(例えば、センシング)し、その知覚した内容に基づいて、行動を選択することができる自律的主体のことを指す。ただし、以下の動作主体としては、エージェントではなく、システムを用いて説明する。 Note that an “agent” generally refers to an autonomous entity that can perceive (for example, sense) an environmental state and select an action based on the perceived content. However, the following operation subject will be described using a system, not an agent.
また、外環境のモデル化自体は特に限定されない。ただし、本実施の形態では、外環境のモデル化として、隠れマルコフモデル(Hidden Markov Model。以下、HMMと称する)を採用することにする。 Also, the modeling of the external environment itself is not particularly limited. However, in the present embodiment, a hidden Markov model (hereinafter referred to as HMM) is adopted as modeling of the external environment.
例えば、図1Aに示されるように、観測信号からアクション信号を得るモデルをつくるとする。 For example, as shown in FIG. 1A, a model for obtaining an action signal from an observation signal is created.
この場合、図1Bに示されるように、先ず、システムは、観測信号だけからHMMを構築する。 In this case, as shown in FIG. 1B, first, the system constructs an HMM from only the observation signal.
次に、図2Aに示されるように、システムは、構築されたHMMの各状態遷移(以下、遷移と適宜略称する)と、自身が取った行動(アクション信号)との関係を解析する。これにより、各遷移に必要なセンサ信号とアクション信号との関係がコントローラとして学習される。 Next, as shown in FIG. 2A, the system analyzes the relationship between each state transition of the constructed HMM (hereinafter abbreviated as a transition as appropriate) and the action taken by itself (action signal). Thereby, the relationship between the sensor signal and the action signal necessary for each transition is learned as a controller.
そして、図2Bに示されるように、目標状態(図2Bの例では状態F)が与えられたときには、システムは、現状態(図2Bの例では状態A)から目標状態までの遷移系列(図2Bの例では太線矢印の遷移系列)を求める。なお、かかる遷移系列を、以下、経路と適宜称する。また、このような経路を求めることを、以下、プランニングすると称する。プランニング後、システムは、経路に含まれる各遷移に必要なコントローラを呼び出すことで、任意の状態を実現することが可能になる。 As shown in FIG. 2B, when a target state (state F in the example of FIG. 2B) is given, the system transitions from the current state (state A in the example of FIG. 2B) to the target state (see FIG. 2B). In the example of 2B, a transition sequence of thick arrows) is obtained. Hereinafter, such a transition sequence is appropriately referred to as a route. Further, obtaining such a route is hereinafter referred to as planning. After planning, the system can realize an arbitrary state by calling a controller necessary for each transition included in the route.
以上、本発明が適用される処理の概要について説明した。次に、本発明の実施の形態について説明する。 The outline of the process to which the present invention is applied has been described above. Next, an embodiment of the present invention will be described.
図3は、本発明が適用される情報処理システム(以下、単に、図3のシステムと称する)の一実施の形態の機能的構成例を示す機能ブロック図である。 FIG. 3 is a functional block diagram showing a functional configuration example of an embodiment of an information processing system to which the present invention is applied (hereinafter simply referred to as the system of FIG. 3).
図3のシステムは、センサ部21、モデル化部22、生得コントローラ23、行動制御部24、およびアクション部25から構成されている。
The system of FIG. 3 includes a
センサ部21は、エージェントがおかれている環境の所定の物理量を観測し、その観測結果を観測信号としてモデル化部22に提供する。
The
モデル化部22は、学習部31、HMM格納部32、認識部33、およびプランニング部34から構成されている。
The
学習部31は、センサ部21の観測信号を利用してHMMを構築し(図1B参照)、HMM格納部32に格納する。
The
認識部33は、後述するアクション部25が行動する時、HMM格納部32に格納されたHMMと、センサ部21の観測信号系列とを用いて、現在の状態(現状)までの各遷移を推定する。認識部33の推定結果は、行動制御部24に提供される。
The
プランニング部34は、HMM格納部32に格納されたHMMを用いて、現在の状態から目標の状態に向かっての最適な経路をプランニング(算出)し、行動制御部24に提供する(図2B参照)。なお、目標の状態とは、行動制御部24に目標として与えられた状態を言い、行動制御部24からモデル化部22に提供される。
The
生得コントローラ23は、後述する行動制御部24の学習部41の学習用に、所定の生得ルールに基づいて各種コマンドを発行し、学習部41とアクション部25に提供する。
The
行動制御部24は、学習部41、コントローラテーブル格納部42、コントローラ格納部43、および実行管理部44から構成されている。
The behavior control unit 24 includes a
学習部41は、生得コントローラ23からのコマンドに従ったアクション部25の行動結果に基づいて認識部33により認識された各遷移と、生得コントローラ23からのコマンドとを用いて、遷移毎にコントローラを学習する(図2A参照)。そして、学習部41は、各コントローラをコントローラ格納部43に格納する。また、学習部41は、各コントローラと遷移との関係をコントローラテーブル格納部42に格納する。なお、コントローラの詳細については、後述する。
The
実行管理部44は、プランニング部34から提供された経路に沿ってアクション部25が行動するように、即ち、経路内の各遷移を実現するように、アクション部25に対するコマンドを生成し、アクション部25に提供する。このコマンドは、コントローラテーブル格納部42とコントローラ格納部43とに格納されている情報に基づいて逆生成される。なお、実行管理部44の処理の詳細については、後述する。
The
以下、図3のシステムのさらなる詳細について、タスクとして単振子タスクが与えられた場合を例として用いて説明していく。 Hereinafter, further details of the system of FIG. 3 will be described using a case where a simple pendulum task is given as a task as an example.
即ち、図3のシステムの目的として、例えば図4に示されるように、単振子51の観測角度θを観測信号として取り込み、発生トルクτを制御信号(アクション信号)として単振子51を自在に制御する、という目的を採用する。ただし、単振子51の質量や摩擦係数など物理的なパラメータはわからないとする。このような課題設定がなされた単振子タスクは、強化学習の課題として良く採用されている。
That is, for the purpose of the system of FIG. 3, for example, as shown in FIG. 4, the observation angle θ of the
なお、従来の単振子タスクにおける課題設定では、システムの状態をユニークに記述できるように、角度θに加えて、さらに角速度ωの2つの変数が観測信号として与えられる。また、目的として、単振り子51が振り上がること、即ち角度θが180°になることが与えられる。さらにまた、その目的を達成するための目的関数、例えば、角度θが180°になったら報酬をあたえるとか、角度θが180°に近づくほど高い値を出すなどの目的関数が設計されて与えられる。
In the task setting in the conventional simple pendulum task, two variables of the angular velocity ω are given as observation signals in addition to the angle θ so that the system state can be uniquely described. Further, as an object, it is given that the
これに対して、図3のシステムの目的のひとつは、この単振子タスクに因らず様々なタスクを自律的に解決できるエージェントを実現することである。よって、図3のシステムに対して、状態の一部である角度θしか観測できないという制限を敢えて課しているのである。また、図3のシステムの目的のひとつは、目的関数を与えるのではなく、任意の内部状態を実現することである。よって、図3のシステムは、振り上げというタスクに依存する目的関数は必要としない。 On the other hand, one of the purposes of the system shown in FIG. 3 is to realize an agent that can autonomously solve various tasks regardless of the simple pendulum task. Therefore, the system of FIG. 3 is imposed with a restriction that only the angle θ that is a part of the state can be observed. Also, one of the purposes of the system of FIG. 3 is not to provide an objective function but to realize an arbitrary internal state. Thus, the system of FIG. 3 does not require an objective function that depends on the task of swinging up.
図5は、図3のシステムが単振子タスクを達成するための処理(以下、単振子タスクの制御処理と適宜称する)の一例を説明するフローチャートである。 FIG. 5 is a flowchart for explaining an example of processing for achieving the simple pendulum task by the system shown in FIG. 3 (hereinafter referred to as simple pendulum task control processing).
ステップS1において、図3のシステムは、HMMの学習処理を実行する。 In step S1, the system of FIG. 3 executes an HMM learning process.
ステップS2において、図3のシステムは、認識処理を実行する。 In step S2, the system of FIG. 3 performs a recognition process.
ステップS3において、図3のシステムは、コントローラ学習処理を実行する。 In step S3, the system of FIG. 3 executes a controller learning process.
ステップS4において、図3のシステムは、プランニング処理を実行する。 In step S4, the system of FIG. 3 executes a planning process.
ステップS5において、図3のシステムは、行動制御処理を実行する。 In step S5, the system of FIG. 3 executes a behavior control process.
以下、これらのステップS1乃至S5の各処理の詳細について、その順番で個別に説明していく。 Hereinafter, details of each processing of these steps S1 to S5 will be individually described in the order.
はじめに、ステップS1におけるHMMの学習処理について説明する。 First, the HMM learning process in step S1 will be described.
初期状態では、アクション部25は、ランダムに生成された制御信号τ、または、予め生得的に埋め込まれたパターンに適度な摂動が加えられた制御信号τを出力していく。なお、かかる制御信号τは、例えば生得コントローラ23により与えられるコマンドに基づいてアクション部25により生成される。
In the initial state, the
この間にセンサ部21から出力される観測信号θの時系列(以下、時系列観測信号と称する)が、学習部31の図示せぬメモリ上に蓄えられる。例えば図6の信号52が、時系列観測信号の一例である。ある程度の時系列観測信号がメモリに蓄えられたタイミングで、学習部31は、これらの観測時系列信号を学習することでHMMを構築し、HMM格納部32に格納する。
During this time, a time series of observation signals θ output from the sensor unit 21 (hereinafter referred to as time series observation signals) is stored in a memory (not shown) of the
以上の一連の処理がHMMの学習処理である。 The series of processes described above is the HMM learning process.
HMMの学習処理では、一般的に、Baum-Welchアルゴリズムが用いられる。かかるアルゴルズムに適用可能なHMMの一例が、図7乃至図10に示されている。 In the HMM learning process, the Baum-Welch algorithm is generally used. An example of an HMM applicable to such an algorithm is shown in FIGS.
ただし、何の制約もなく、図7に示されるような全結合型のHMMを学習させると、パラメータの初期値によってはローカルミニマムに収束してしまい、HMMの学習が困難になるという問題点がある。 However, there is a problem that if a fully coupled HMM as shown in FIG. 7 is learned without any restrictions, depending on the initial value of the parameter, it converges to a local minimum, making it difficult to learn the HMM. is there.
そこで、本実施の形態では、自然界の現象の殆どはスモールワールドネットワークのようなスパースな結合によって表現可能であるという仮説を採用する。即ち、本実施の形態では、スパースな結合に制約したBaum-Welchアルゴリズムを採用することにする。具体的には、本実施の形態では、スパースな結合のHMMの一例である図9と図10のHMMのうちの何れかのHMMを採用するとする。ここで、図9A,BのHMMとは、2次元近傍拘束HMMである。図10AのHMMとは、3次元グリッド制約によるHMMである。図10BのHMMとは、2次元ランダム配置制約によるHMMである。図10CのHMMとは、スモールワールドネットワークによるHMMである。 Therefore, in the present embodiment, a hypothesis is adopted that most of the phenomena in the natural world can be expressed by sparse connection like a small world network. That is, in this embodiment, the Baum-Welch algorithm restricted to sparse coupling is adopted. Specifically, in this embodiment, it is assumed that any one of the HMMs in FIGS. 9 and 10 which is an example of a sparsely coupled HMM is employed. Here, the HMM in FIGS. 9A and 9B is a two-dimensional neighborhood constraint HMM. The HMM in FIG. 10A is an HMM due to a three-dimensional grid constraint. The HMM in FIG. 10B is an HMM due to a two-dimensional random arrangement constraint. The HMM in FIG. 10C is an HMM by a small world network.
上述した単振子タスクにおいて、484ノードの2次元近傍構造HMMを初期構造として与えて、時系列観測信を学習させた結果の表示例が図11に示されている。 FIG. 11 shows a display example of the result of learning the time series observation signal by giving the 484-node two-dimensional neighborhood structure HMM as the initial structure in the simple pendulum task described above.
図11の横軸は、観測信号である単振子51の角度θを示している。図11の縦軸は、単振子51の角速度ωを示している。また、図11において、丸印がノード(状態)を示し、2つの丸印の間の実線が2ノード間の結合(遷移)を表している。即ち、図11の表示例では、図3のシステム(エージェント)が知覚したノードの時の環境の真実の状態(θ,ω)の平均値をもとに、(θ,ω)空間上に各ノードが丸印としてプロットされ、それらのノード間の結合のうち、遷移確率が0.01以上の結合だけが実線として表示されている。
The horizontal axis in FIG. 11 indicates the angle θ of the
図11の表示例より、各ノードは近傍の数個のノードとしか接続していないことがわかる。このことは、図3のシステムが、(θ,ω)空間において連続的に変化していることに相当していることを意味している。そして、このような場合には、スパースな結合により、図3のシステムの挙動を記述できることを意味している。 From the display example of FIG. 11, it can be seen that each node is connected to only a few nearby nodes. This means that the system of FIG. 3 corresponds to a continuous change in the (θ, ω) space. In such a case, it means that the behavior of the system of FIG. 3 can be described by sparse coupling.
なお、唯一の例外として、単振子51が1回転した時にθ=-πからπへの変化が不連続になっている。この不連続の変化についての学習がなされていることは、図11の表示例において、図11中左右の端と端のノードが結合されていることからもわかる。
The only exception is that the change from θ = −π to π is discontinuous when the
また、図11の表示例からは、観測信号は角度θしか観測されていないにも関わらず、同じ角度θに関しても異なるノードが割り当てられていることがわかる。このことは、角速度ωによって、同じ角度θでも図3のシステムの挙動が変わることを表現できていることを示している。 Further, from the display example of FIG. 11, it can be seen that different nodes are assigned for the same angle θ even though only the angle θ is observed in the observation signal. This indicates that the behavior of the system in FIG. 3 can be expressed by the angular velocity ω even at the same angle θ.
以上、ステップS1におけるHMMの学習処理について説明した。次に、ステップS2における認識処理について説明する。 The HMM learning process in step S1 has been described above. Next, the recognition process in step S2 will be described.
認識処理とは、ステップS1におけるHMMの学習処理によって構築されたHMMを用いて、図3のシステムの現在の状態を推定する処理である。この認識処理は、認識部33によって実行される。
The recognition process is a process of estimating the current state of the system in FIG. 3 using the HMM constructed by the HMM learning process in step S1. This recognition process is executed by the
認識処理の結果は、後述するステップS3のコントローラ学習処理に利用される。また、ステップS2の処理とは別個に、後述するステップS5の行動制御処理の一処理として、認識処理が実行される(図14のステップS61参照)。 The result of the recognition process is used for a controller learning process in step S3 described later. In addition to the process of step S2, a recognition process is executed as one process of an action control process of step S5 described later (see step S61 in FIG. 14).
この認識処理で鍵となる情報が、過去から現在までの観測信号列である。また、HMMの状態推定にはViterbi Algorithmが広く用いられている。そこで、本実施の形態では、50ステップ前の状態を不定とする。即ち各ノードの確率が等しいとする。次に、この50ステップ前の状態を初期状態とし、50ステップ分の観測結果が与えられたものとする。そして、Viterbi Algorithmにより各ステップでの状態を確定していくことで、最後の50ステップ目の状態、即ち現在の状態を推定する、といった認識処理が実行されるとする。 The key information in this recognition process is the observation signal sequence from the past to the present. Viterbi algorithm is widely used for HMM state estimation. Therefore, in this embodiment, the state before 50 steps is undefined. That is, it is assumed that the probability of each node is equal. Next, assume that the state before 50 steps is the initial state, and observation results for 50 steps are given. Then, it is assumed that recognition processing such as estimating the state of the last 50 steps, that is, the current state is executed by determining the state at each step by the Viterbi Algorithm.
具体的には例えば本実施の形態では、図12のフローチャートに従って、認識処理が実行されるとする。 Specifically, for example, in this embodiment, it is assumed that the recognition process is executed according to the flowchart of FIG.
なお、以下、ノードiからノードjへの遷移確率を、aijまたはAijと記述する。初期状態確率をπiと記述する。時刻tの観測値(観測信号のレベル)をo(t)と記述する。ノードiでの観測値o(t)の尤度を、観測尤度と称し、また、bi(o(t))と記述する。また、現在時刻をTと記述する。 Hereinafter, the transition probability from the node i to the node j is described as aij or Aij. The initial state probability is described as πi. The observed value (observed signal level) at time t is described as o (t). The likelihood of the observation value o (t) at the node i is referred to as observation likelihood and is described as bi (o (t)). The current time is described as T.
ステップS21において、認識部33は、時刻t=0にセットする。
In step S21, the
ステップS22において、認識部33は、初期状態確率πiに観測尤度b(O(0))を掛けて各ノードに設定する。
In step S22, the recognizing
ステップS23において、認識部33は、時刻tの状態確率に遷移確率Aijと観測尤度b(O(t+1))を掛けて、遷移先のノードjにおいて最大となる確率をノードjの状態確率に更新する。
In step S23, the recognizing
ステップS24において、認識部33は、その時の遷移元のノードiを記憶テーブルに記憶する。なお、記憶テーブルの構築場所は特に限定されない。本実施の形態では例えば、認識部33内部に記憶テーブルが構築されるとする。
In step S24, the recognizing
ステップS25において、認識部33は、時刻t=t+1とする。
In step S25, the
ステップS26において、認識部33は、時刻tが現在時刻Tとなったか否かを判定する。
In step S <b> 26, the recognizing
時刻tが現在時刻Tの前の時刻である場合、ステップS26においてNOであると判定されて、処理はステップS23に戻されそれ以降の処理が繰り返される。 When the time t is a time before the current time T, it is determined as NO in Step S26, and the process returns to Step S23, and the subsequent processes are repeated.
即ち、時刻t=0乃至Tのそれぞれについて、ステップS23乃至S26のループ処理が繰り返される。そして、時刻tが現在時刻Tになると、ステップS26においてYESであると判定されて、処理はステップS27に進む。 That is, the loop process of steps S23 to S26 is repeated for each of times t = 0 to T. Then, when the time t becomes the current time T, it is determined as YES in Step S26, and the process proceeds to Step S27.
ステップS27において、認識部33は、時刻tの状態確率の中で最大のノードを選択し、時刻tの確定ノードとする。即ち、ステップS26の処理でYESであると判定された直後のステップS27の処理では、時刻t=Tであるので、現在時刻Tの確定ノードが得られることになる。
In step S <b> 27, the recognizing
ステップS28において、認識部33は、ステップS27の処理で選択したノードjの遷移元となったノードiを記憶テーブルから出して、時刻t-1のノードとする。
In step S28, the recognizing
ステップS29において、認識部33は、時刻t=t-1とする。
In step S29, the
ステップS30において、認識部33は、時刻t=0であるか否かを判定する。
In step S30, the recognizing
時刻tが0よりも後の時刻である場合、ステップS30においてNOであると判定されて、処理はステップS27に戻されそれ以降の処理が繰り返される。 When the time t is a time later than 0, it is determined as NO in step S30, and the process returns to step S27, and the subsequent processes are repeated.
即ち、時刻t=T乃至0のそれぞれについて、ステップS27乃至S30のループ処理が繰り返される。そして、時刻tが0になると、ステップS30においてYESであると判定されて、認識処理は終了となる。 That is, the loop process of steps S27 to S30 is repeated for each of the times t = T to 0. Then, when the time t becomes 0, it is determined as YES in Step S30, and the recognition process is ended.
以上、ステップS2における認識処理について説明した。次に、ステップS3におけるコントローラ学習処理について説明する。 The recognition process in step S2 has been described above. Next, the controller learning process in step S3 will be described.
ステップS2における認識処理が実行されると、各時刻における状態を示すノードiが決定されるとともに、そのノードiから次時刻の状態を示すノードjへの遷移確率Aijが決定される。なお、以下、遷移確率Aijを、遷移エッジAijと適宜称する。なお、認識処理の説明では遷移確率aijといったように小文字のaを使用していたのに対して、ここでは遷移確率Aij(遷移エッジAij)といったように大文字のAを使用している点留意する。この点は、後述するアクションa(t)における小文字のaとの混同を防止するためである。 When the recognition process in step S2 is executed, the node i indicating the state at each time is determined, and the transition probability Aij from the node i to the node j indicating the state at the next time is determined. Hereinafter, the transition probability Aij is appropriately referred to as a transition edge Aij. Note that in the description of the recognition process, a lowercase letter a is used such as a transition probability aij, but here a capital letter A is used such as a transition probability Aij (transition edge Aij). . This is to prevent confusion with a lowercase letter a in action a (t) described later.
図3のシステムは、ステップS1のHMMの学習処理時には、上述の如く、何らかのランダムもしくは生得行動を取っている。そこで、その生得行動の間のうちの状態iに図3のシステムが取った行動をアクションa(t)と称する。ただし、アクションa(t)はアクションaと適宜略記する。この場合、アクションaによって遷移エッジAijが発生するという因果モデルが成立する。 The system of FIG. 3 takes some random or innate behavior as described above during the learning process of the HMM in step S1. Therefore, the action taken by the system of FIG. 3 in the state i during the innate action is referred to as action a (t). However, action a (t) is abbreviated as appropriate as action a. In this case, a causal model in which the transition edge Aij is generated by the action a is established.
そこで、行動制御部24の学習部41は、発生した各遷移エッジAijに対してその時の観測値o(t)(以下、観測値oと略記する)とアクションaとをサンプルする。この場合、時系列観測信号が長時間の信号であれば、その間、遷移エッジAijが何度も発生することになる。そこで、学習部41は、サンプルされた観測値oとアクションaとを用いて、1つの遷移エッジAijに対して、a=Fij(o)という写像を学習する。この関数写像Fij( )の学習手法としては、例えばニューラルネットワークのようなものを採用することができる。最もシンプルな例として、関数写像Fij( )を、観測値oに因らずにアクションaの平均値を出力するようなものとする、といった学習手法を採用することもできる。
Therefore, the
このような関数写像Fij( )が、アクション部25に実行させるコントローラとして、コントローラ格納部43に格納される。
Such a function mapping Fij () is stored in the
そして、コントローラの学習結果、即ち、各遷移エッジAij毎に、対応するコントローラ(関数写像Fij( ))が何であるのかを示す情報がテーブル形式でコントローラテーブル格納部42に格納される。なお、以下、かかるテーブルを、コントローラテーブルと称する。
Then, the controller learning result, that is, information indicating what the corresponding controller (function mapping Fij ()) is stored for each transition edge Aij is stored in the controller
ここで、本実施の形態では、各コントローラ(関数写像Fij( ))に対して、それを一意に特定する識別子(ID)が付与されているとする。この場合、所定遷移エッジAijに対応付けられたコントローラ(関数写像Fij( ))が何であるのかを示す情報として、そのコントローラのIDを採用することできる。そこで、本実施の形態では、各遷移エッジAij毎に、対応するコントローラ(関数写像Fij( ))のIDがコントローラテーブル42に格納されるとする。また、コントローラ格納部43においては、各コントローラ(関数写像Fij( ))が、そのIDと紐づけられて格納されているとする。なお、IDの使用方法の一例については、図14のステップS70の説明内で言及することにする。
Here, in the present embodiment, it is assumed that an identifier (ID) that uniquely identifies each controller (function mapping Fij ()) is assigned. In this case, the ID of the controller can be used as information indicating what the controller (function mapping Fij ()) associated with the predetermined transition edge Aij is. Therefore, in the present embodiment, it is assumed that the ID of the corresponding controller (function mapping Fij ()) is stored in the controller table 42 for each transition edge Aij. In the
以上、ステップS3におけるコントローラ学習処理として、状態の遷移毎に、アクションを出力するコントローラをそれぞれ割り当てるための学習を行う処理を例に説明した。ただし、本発明が適用されるコントローラ学習処理として、上述の例の他、例えば次のような処理も採用できる。即ち、遷移先状態毎に、アクションを出力するコントローラをそれぞれ割り当てるための学習を行う処理を例も採用できる。 As described above, the controller learning process in step S3 has been described by taking as an example the process of performing learning for assigning each controller that outputs an action for each state transition. However, as the controller learning processing to which the present invention is applied, for example, the following processing can be adopted in addition to the above-described example. That is, for example, a process of performing learning for assigning each controller that outputs an action for each transition destination state can be employed.
次に、ステップS4におけるプランニング処理について説明する。 Next, the planning process in step S4 will be described.
ステップS3におけるコントローラ学習処理が終了した段階で、図3のシステムは、学習を終えて、自身がHMMにより形成した内部状態において任意の目標を設定して、その目標達成を実現するための行動を取ることができるようになる。 When the controller learning process in step S3 is completed, the system shown in FIG. 3 finishes learning, sets an arbitrary target in the internal state formed by the HMM, and performs an action to achieve the target. Will be able to take.
そこで、プランニング部34は、目標達成を実現するための計画(プランニング)を立てる。このような計画を立てる処理が、ステップS4におけるプランニング処理である。
Therefore, the
即ち、プランニング部34は、外部から指定されるかもしくは内発的に得られる目標を、ゴールとして設定する。なお、図3のシステムでは、目標は、実行管理部44から提供される。なお、以下、ゴールの状態を示すノードをゴールノードgと称する。この場合、プランニング部34は、ゴールノードgと、現在の状態を示すノードi(以下、現在状態ノードiと称する)が分かった時点で、この2つのノードを結ぶ経路をHMM上で探索する。このような現在状態ノードiからゴールノードgまでの経路を探索する処理が、ステップS4におけるプランニング処理である。
That is, the
ここで、経路探索のアルゴリズムは様々存在し、何れのアルゴリズムも採用してもよい。ただし、本実施の形態では、図13のフローチャートに示されるように、Viterbi Algorithmを応用したアルゴリズムが採用されているとする。即ち、図13は、プランニング処理の一例を説明するフローチャートである。 Here, various route search algorithms exist, and any algorithm may be adopted. However, in this embodiment, it is assumed that an algorithm applying the Viterbi Algorithm is adopted as shown in the flowchart of FIG. That is, FIG. 13 is a flowchart for explaining an example of the planning process.
ステップS41において、プランニング部34は、現在状態ノードiの状態確率を1.0として、それ以外のノードの状態確率を0にする。また、プランニング部34は、時刻t=0にセットする。
In step S41, the
ステップS42において、プランニング部34は、遷移確率Aijのうち、閾値(ここでは0.01)以上のものを0.9として、その他のものを0とする。
In step S42, the
ステップS43において、プランニング部34は、時刻tの状態確率に遷移確率Aijを掛けて、遷移先のノードjにおいて最大となる確率をノードjの状態確率に更新する。
In step S43, the
ステップS44において、プランニング部34は、その時の遷移元のノードiを記憶テーブルに記憶する。なお、記憶テーブルの構築場所は特に限定されない。本実施の形態では例えば、プランニング部34内部に記憶テーブルが構築されるとする。
In step S44, the
ステップS45において、プラニング部34は、目標となるゴールノードgの状態確率が0を超えたか否かを判定する。
In step S45, the
目標となるゴールノードgの状態確率が0の場合、目標にまだ到達していないとして、ステップS45においてNOであると判定されて、処理はステップS46に進む。 When the state probability of the target goal node g is 0, it is determined that the target has not been reached yet, NO is determined in step S45, and the process proceeds to step S46.
ステップS46において、プラニング部34は、ステップS43乃至S47のループ処理をN回繰り返したか否かを判定する。
In step S46, the
N回繰り返した場合とは、N回繰り返しても目標にいまだ到達していない場合を意味する。よって、そのような場合、即ち、ステップS46においてYESであると判定された場合、プランニング部34がプランニングをあきらめたとして、プランニング処理は終了となる。
The case of repeating N times means a case where the target has not yet been reached after repeating N times. Therefore, in such a case, that is, in the case where it is determined as YES in step S46, the planning process is ended because the
これに対して、まだN回繰り返されていない場合、ステップS46においてNOであると判定されて、処理はステップS47に進む。ステップS47において、プランニング部34は、時刻t=t+1とする。その後、処理はステップS43に戻され、それ以降の処理が繰り返される。
On the other hand, if it has not been repeated N times yet, it is determined as NO in Step S46, and the process proceeds to Step S47. In step S47, the
このようにして、ステップS43乃至S47のループ処理が何回か繰り返された結果、目標となるゴールノードgの状態確率が0を超えた場合、目標に到達したとして、ステップS45においてYESであると判定されて、処理はステップS48に進む。 In this way, if the state probability of the target goal node g exceeds 0 as a result of repeating the loop process of steps S43 to S47 several times, it is determined that the target has been reached and YES in step S45. As a result, the process proceeds to step S48.
プランニング部34は、ステップS48において、ゴールノードgを選択し、ステップS49において、g=jとする。
The
ステップS50において、プランニング部34は、選択したノードjの遷移元となったノードiを記憶テーブルから出して時刻t-1のノードとする。
In step S50, the
ステップS51において、プランニング部34は、時刻t=t-1とする。
In step S51, the
ステップS52において、プランニング部34は、時刻t=0であるか否かを判定する。
In step S52, the
時刻tが0よりも後の時刻である場合、ステップS52においてNOであると判定されて、処理はステップS53に進む。ステップS53において、プランニング部34は、j=iとする。その後、処理はステップS50に戻されそれ以降の処理が繰り返される。
When the time t is later than 0, it is determined as NO in Step S52, and the process proceeds to Step S53. In step S53, the
即ち、時刻t=0にまるまで、ステップS50乃至S53のループ処理が繰り返される。そして、時刻tが0になると、ステップS52においてYESであると判定されて、プランニング処理は終了となる。このときにできたノード列、即ち、現在状態ノードiからゴールノードgまでのノード列が経路として確定される。 That is, the loop process of steps S50 to S53 is repeated until time t = 0. Then, when the time t becomes 0, it is determined as YES in Step S52, and the planning process ends. A node string formed at this time, that is, a node string from the current state node i to the goal node g is determined as a route.
以上、ステップS4におけるプランニング処理について説明した。次に、ステップS5における行動制御処理について説明する。 The planning process in step S4 has been described above. Next, the behavior control process in step S5 will be described.
図14は、行動制御部24による行動制御処理の一例、即ち、ステップS4の処理で算出された経路(ノード列)に基づいて行動制御部24が行動制御を行う場合の処理の一例を説明するフローチャートである。 FIG. 14 illustrates an example of behavior control processing by the behavior control unit 24, that is, an example of processing when the behavior control unit 24 performs behavior control based on the route (node sequence) calculated in the process of step S4. It is a flowchart.
ステップS61において、行動制御部24の実行管理部44は、HMMの認識処理を行い、全体ノードの中で最も状態確率が高いノードを、ノードi_maxに選ぶ。
In step S61, the
なお、HMMの認識処理として、本実施の形態では、上述した図12の例のフローチャートに従った処理が実行されるとする。また、HMMの認識処理の動作主体は、ここでは説明の便宜上実行管理部44としたが、実際には認識部33である。即ち、正確には、認識部33がHMMの認識処理を行い、実行管理部44が、その処理結果に基づいてノードi_maxを選ぶ。
In the present embodiment, as the HMM recognition process, it is assumed that the process according to the flowchart of the example of FIG. 12 described above is executed. In addition, although the operation subject of the recognition processing of the HMM is the
ステップS62において、実行管理部44は、経路上のノードのうち、前回のノードi_pathmaxからゴールノードの間で最も状態確率が高いものを、今回のノードi_pathmaxに選ぶ。
In step S62, the
ステップS63において、実行管理部44は、状態確率P(i_max)とP(i_pathmax)との割合が閾値以下(例えば0.7以下)であるか否かを判定する。ここで、状態確率P(i_max)とは、ノードi_maxの状態確率を示す。また、状態確率P(i_pathmax)とは、ノードi_pathmax の状態確率を示す。
In step S63, the
状態確率P(i_max)とP(i_pathmax)との割合が閾値以下の場合、現在の図3のシステムの行動が経路から外れているとして、ステップS63においてYESであると判定されて、行動制御処理は終了となる。 If the ratio between the state probabilities P (i_max) and P (i_pathmax) is equal to or smaller than the threshold, it is determined that the current behavior of the system in FIG. Ends.
これに対して、状態確率P(i_max)とP(i_pathmax)との割合が閾値を超えている場合、現在の図3のシステムの行動はまだ経路自体から外れていないとして、ステップS63においてNOであると判定されて、処理はステップS64に進む。 On the other hand, if the ratio between the state probabilities P (i_max) and P (i_pathmax) exceeds the threshold, the current behavior of the system in FIG. If it is determined that there is, the process proceeds to step S64.
ステップS64において、実行管理部44は、同じノードi_pathmaxに止まっているか否か、即ち、今回のステップS62の処理で選択されたノードi_pathmaxと、前回のステップS62の処理で選択されたノードi_pathmaxとが同一であるか否かを判定する。
In step S64, the
同じノードi_pathmaxに止まっていない場合、経路に沿って移動しているとみなされるので、ステップS64においてNOであると判定されて、処理はステップS68に進む。なお、ステップS68以降の処理については後述する。 If it is not stopped at the same node i_pathmax, it is considered that the robot has moved along the route. Therefore, it is determined as NO in Step S64, and the process proceeds to Step S68. The processing after step S68 will be described later.
これに対して、同じノードi_pathmaxに止まっている場合、経路に沿って移動していない可能性があるので、ステップS64においてYESであると判定されて、処理はステップS65に進む。 On the other hand, if it remains at the same node i_pathmax, there is a possibility that it has not moved along the route. Therefore, it is determined as YES in Step S64, and the process proceeds to Step S65.
ステップS65において、実行管理部44は、経路上の次のノードi_nextの状態確率が、前回の状態確率より上昇しているか否かを判定する。
In step S65, the
上昇していなければ、経路に沿って遷移していないとして、実行管理部44は、ステップS65においてNOであると判定し、ステップS66において、ノードi_pathmaxをノードi_nextにする。その後、処理はステップS68に進む。なお、ステップS68以降の処理については後述する。
If it has not risen, the
これに対して、上昇している場合、ステップS65においてYESであると判定され、処理はステップS67に進む。 On the other hand, when it has risen, it determines with it being YES in step S65, and a process progresses to step S67.
ステップS67において、実行管理部44は、同じノードにN回(例えば,50回)以上止まっているか否かを判定する。
In step S67, the
同じノードにN回以上止まっていない場合、ステップS67において、NOであると判定されて、処理はステップS68に進む。なお、ステップS68以降の処理については後述する。 If the same node has not stopped more than N times, it is determined as NO in step S67, and the process proceeds to step S68. The processing after step S68 will be described later.
これに対して、同じノードにN回以上止まっている場合、実行管理部44は、ステップS67においてYESであると判定し、ステップS66において、ノードi_pathmaxをノードi_nextにする。即ち、同じノードにN回以上止まっている場合、強制的に経路が進んだとみなすのである。その後、処理はステップS68に進む。
On the other hand, if the same node is stopped N times or more, the
ステップS68において、実行管理部44は、既にゴールノード上にあるか否かを判定する。
In step S68, the
既にゴールノード上にあると認識されている場合、ステップS68においてYESであると判定され、目標にたどり着いたとして、行動制御処理が終了となる。 If it is already recognized that it is on the goal node, it is determined as YES in step S68, and the behavior control process is terminated assuming that the target is reached.
これに対して、まだゴールノード上にないと認識されている場合、ステップS68においてNOであると判定され、処理はステップS69に進む。 On the other hand, when it is recognized that it is not yet on the goal node, it is determined as NO in Step S68, and the process proceeds to Step S69.
ステップS69において、実行管理部44は、経路上の次のノードへ遷移するための遷移エッジAijを定める。
In step S69, the
ステップS70において、実行管理部44は、遷移エッジAijに割り当てられたコントローラ(関数写像Fij( ))を呼び出し、アクション部25は、現在の観測値oをコントローラに与えることで、取るべきアクションaを求める。
In step S70, the
なお、より正確にいえば、本実施の形態では、遷移エッジAijに割り当てられたコントローラ(関数写像Fij( ))のIDがコントローラテーブル格納部42から読み出される。また、そのIDで特定されるコントローラ(関数写像Fij( ))が、コントローラ格納部43から読み出される。そして、このコントローラである関数写像Fij( )に対して、現在の観測値oが入力された結果得られる出力が、アクションaとなる。
More precisely, in the present embodiment, the ID of the controller (function mapping Fij ()) assigned to the transition edge Aij is read from the controller
このアクションaは、コマンドとしてアクション部25に提供される。そこで、ステップS71において、アクション部25は、コマンドaを実行する。
This action a is provided to the
その後、処理はステップS61に戻され、それ以降の処理が繰り返される。 Thereafter, the process returns to step S61, and the subsequent processes are repeated.
なお、ステップS68の処理でYESであると判定されて、行動制御処理が終了した場合、実行管理部44は、そのときのノードi_maxが本当にゴールノードであるのか否かを再度判定してもよい。この再判定の結果が、ゴールノードであるという結果の場合、図5の単振子タスクの制御処理全体を終了とする。これに対して、再判定の結果が、ゴールノードではないという結果の場合、図3のシステムは、処理をステップS4に戻し、同一のゴールノードで再度プランニング処理を実行して新経路を作成した後で、ステップS5の行動制御処理をやり直す。
When it is determined as YES in the process of step S68 and the behavior control process ends, the
以上、単振子タスクを達成可能な図3のシステムについて説明した。ただし、図3のシステムでは、後述するマルチモーダルタスクを達成できない。これに対して、マルチモーダルタスクの達成が可能なシステムの機能的構成例が図15に示されている。即ち、図15は、本発明が適用される情報処理システム(以下、単に、図15のシステムと称する)の一実施の形態であって、図3のシステムとは異なるの機能的構成例を示す機能ブロック図である。 The system of FIG. 3 that can achieve the simple pendulum task has been described above. However, the system of FIG. 3 cannot achieve the multimodal task described later. In contrast, FIG. 15 shows a functional configuration example of a system capable of achieving a multimodal task. 15 is an embodiment of an information processing system to which the present invention is applied (hereinafter simply referred to as the system of FIG. 15), and shows a functional configuration example different from the system of FIG. It is a functional block diagram.
図15のシステムは、センサ部61、3種類のモデル化部62A乃至62C、因果部63、行動制御部64、およびアクション部65から構成されている。
The system in FIG. 15 includes a
センサ部61は、いわゆるマルチモーダルセンサとして構成されている。
The
ここで、マルチモーダルセンサについて、簡単に説明する。 Here, the multimodal sensor will be briefly described.
従来のヒューマンインタフェースをより発展させた概念のひとつとして、マルチモーダルインタフェースという概念が存在する。マルチモーダルインタフェースの類語として、例えばマルチメディアインタフェースという言葉が存在する。マルチメディアインタフェースは、単に複数のメディア(音、映像、触覚など)を用いたインタフェースを表わすのに対し、それぞれのメディアがいろいろな形態で使われ、情報伝達を行っている場合に、マルチモーダルインタフェースと称される。 One of the concepts developed from the conventional human interface is a multimodal interface. As a synonym for the multimodal interface, for example, the term multimedia interface exists. A multimedia interface simply represents an interface using a plurality of media (sound, video, touch, etc.), whereas when each media is used in various forms to transmit information, a multimodal interface is used. It is called.
例えば、マルチモーダルインタフェースの例として、発声、動作、あるいは視線といった事象をモーダルとし、これらのモーダルを協調させたり、同時に使ったり、複数種類のメッセージを組み合わせて、人間が本来伝えようとしている、あるいは自然に伝わるメッセージを理解しようというインタフェースが存在する。 For example, as an example of a multimodal interface, an event such as utterance, action, or line of sight is made modal, and these modals are coordinated, used simultaneously, or by combining multiple types of messages, human beings are trying to convey it, or There is an interface for trying to understand messages that are transmitted naturally.
即ち、マルチモーダルセンサとは、このようなマルチモーダルインタフェースを実現するためのセンサであって、複数のモーダル(事象)のそれぞれについて、対応する物理量を検知可能なセンサをいう。 That is, the multimodal sensor is a sensor for realizing such a multimodal interface, and can detect a physical quantity corresponding to each of a plurality of modals (events).
例えば図15の例では、センサ部61は、3つのモーダル毎に、エージェントがおかれている環境の所定物理量、即ち、当該モーダルに対応する物理量を観測し、その観測結果を観測信号としてモデル化部62A,62B,62Cに提供する。
For example, in the example of FIG. 15, the
モデル化部62A,62B,62Cの各単体は、図3のモデル化部22と基本的に同様の機能と構成を有している。即ち、モデル化部62Aについていえば、学習部71A乃至プランニング部74Aのそれぞれは、図3の学習部31乃至プランニング部34のそれぞれと基本的に同様の機能と構成を有している。なお、図示はしないが、モデル化部62Bには、図3の学習部31乃至プランニング部34のそれぞれと基本的に同様の機能と構成を有している学習部71B乃至プランニング部74Bが設けられている。また、モデル化部62Cには、図3の学習部31乃至プランニング部34のそれぞれと基本的に同様の機能と構成を有している学習部71C乃至プランニング部74Cが設けられている。
Each of the
よって、センサ61の3つのモーダル毎の観測信号をそれぞれ用いて学習された結果構築される各HMM、即ち、3つのモーダルのHMMが、HMM格納部72A乃至72Cにそれぞれ格納されることになる。ここで、モデル化部62A乃至62Cのそれぞれの対象とするモーダルを、モーダルA乃至Cと称することにする。この場合、HMM格納部72A乃至72Cのそれぞれには、モーダルA乃至Cの各HMMが格納されることになる。
Therefore, each HMM constructed as a result of learning using the observation signals for each of the three modals of the
なお、当然ながら、モーダルは3つに限定されず、2つ以上であればよい。ただし、その場合、モデル化部62Aに対応するモデル化部がモーダルの個数分だけ存在する。 Of course, the number of modals is not limited to three and may be two or more. However, in that case, there are as many modeling units as the number of modals corresponding to the modeling unit 62A.
因果部63は、因果学習部75、因果テーブル格納部76、および因果推定部77から構成されている
The
因果学習部75は、モーダルK(KはA乃至Cのうちの何れか)のHMMの構造に基づいて認識部73Kで認識されたノード遷移と、別モーダルL(Lは、K以外のA乃至Cのうちの何れか)のHMMの状態の関係とを学習する。その学習結果は、因果テーブル格納部76に格納される。なお、因果学習部75の処理の詳細は後述する。
The
行動制御部64は、実行管理部78およびコントローラ部79から構成されている。コントローラ部79は、コントローラテーブル格納部80とコントローラ格納部81とから構成されている。コントローラテーブル格納部80とコントローラ格納部81は、図3のコントローラテーブル格納部42とコントローラ格納部43と基本的に同様の機能と構成を有している。
The
実行管理部78は、目標が与えられると、その目標に該当するモーダルKを判断し、モデル化部62Kに提供する。モデル化部62Kのプランニング部74Kは、この目標に従って経路をプランニングし、実行管理部78に提供する。そこで、実行管理部78は、この経路に沿って図15のシステム(エージェント)が行動するように、アクション部65を制御する。即ち、実行管理部78は、先ず、経路を実現するために遷移の原因となっている原因ノードを因果推定部77に問い合わせる。因果推定部77は、その原因ノードと原因モーダルを推定して、実行管理部78に提供する。なお、原因ノードや原因モーダルについては後述する。実行管理部78は、原因モーダルがコントローラであれば、コントローラ部79に問い合わせて、そのコントローラに対応するコマンドを出力する。また、実行管理部78は、原因ノードが別のモーダルLのHMM上のノードであれば、それを目標としてプランニング部74Lに経路を問い合わせることを再帰的に行う。なお、以上の実行管理部78の一連の処理の詳細については、後述する。
When a goal is given, the
アクション部65は、行動制御部64からのコマンドに従って、所定の行動を取る。
The
以下、図15のシステムについて、タスクとしてマルチモーダルタスクが与えられた場合を例として、さらに詳細な説明を行っていく。 In the following, the system of FIG. 15 will be described in further detail, taking as an example the case where a multimodal task is given as a task.
具体的には例えば、次のようなマルチモーダルタスクが与えられているとする。即ち、図16に示されるように、丸い形状の移動型のロボット85が、壁86で囲まれた領域内を自由に移動することができるようにすることを目的とする。なお、点87は、そこに光源があることを示している。
Specifically, for example, the following multimodal task is given. That is, as shown in FIG. 16, an object is to allow a
本出願人は、このような図16に示される移動ロボット85の移動を、シミュレータによる実験として行った。即ち、図16は、シミュレータの外観を示す図である。なお、今回採用された図16のシミュレータの原型は、「Olivier Michel. Khepera Simulator Package version 2.0: Freeware mobile robot simulator written at the University of Nice Sophia--Antipolis by Olivier Michel. Downloadable from the World Wide Web at http://wwwi3s.unice.fr/~om/khep-sim.html」という文献に開示されている。
The present applicant conducted the movement of the
ここで、原型と記載した理由は、今回採用されたシミュレータとは、上述の文献に開示されたシミュレータそのものではなく、それに対して、図17に示されるような観測信号とアクションを組み込んだシミュレータであるからである。 Here, the reason why the prototype is described is that the simulator adopted this time is not the simulator itself disclosed in the above-mentioned document, but a simulator incorporating an observation signal and an action as shown in FIG. Because there is.
即ち、ロボット85には、センサ部61として、図16や図17に示されるように、壁86までの距離を検知する距離センサ61A、および光の明るさを検知する光センサ61Bに加えて、エネルギーセンサ61Cも搭載されている。また、ロボット85は、左右の車輪を駆動することで移動することができるとされている。
That is, the
なお、距離センサ61A、光センサ61B、およびエネルギーセンサ61Cの図16における配置位置は、実施の配置位置とは必ずしも一致しない点留意すべきである。
It should be noted that the arrangement positions of the
図17に示されるように、距離センサ61Aは、ロボット85の周囲の24方向に取り付けられたものとして、24方向毎に壁86までの距離に応じた各値を観測信号として出力する。即ち、図17において、1乃至24の各番号の棒グラフが、24方向の観測信号の信号強度(瞬間値)をそれぞれ表している。
As shown in FIG. 17, the
光センサ61Bは、ロボット85の周囲24方向(距離センサ61Aと同一方向)に取り付けられたものとして、24方向毎に光の明るさに応じた各値を観測信号として出力する。ただし、光は拡散するという特徴がある点を考慮して、観測信号の各値は、1つの方向の値だけではなく、周辺のセンサからの影響も及ぶような値となるようになされている。即ち、図17において、25乃至48の各番号の棒グラフが、24方向の観測信号の信号強度(瞬間値)をそれぞれ表している。
The
エネルギーセンサ61Cは、次のように定義されたエネルギーを観測し、その観測値を観測信号として出力する。即ち、エネルギーとは、移動量に比例して消費され、光を浴びた量に比例して補充されるものをいう。図17において、49の番号の棒グラフが、観測信号の信号強度(瞬間値)を表している。
The energy sensor 61C observes energy defined as follows and outputs the observed value as an observation signal. That is, the energy is consumed in proportion to the amount of movement and replenished in proportion to the amount of light. In FIG. 17, a bar graph with the
アクション(行動)としては、即ち、アクション部65に与えるコマンドとしては、移動量のコマンドが採用されている。具体的には、図16のシミュレータ上の横軸と縦軸に沿って移動するための(Δx, Δy)というコマンド(以下、移動コマンドと称する)が採用されている。ここで、△xとは、x軸(図16中水平方向)の移動コマンドである。また、△yとは、y軸(図16中垂直方向)の移動コマンドである。
As an action (behavior), that is, as a command given to the
以上の内容をまとめると、ロボット85は、24次元の距離センサ61A、24次元の光センサ61B、1次元のエネルギーセンサ61Cを用いた検知機能を有しており、また、2次元の移動コマンドの入出力機能を有している。そして、ロボット85は、図15のシステムにより制御されるエージェントである。よって、ロボット85は、これらの各機能を発揮することで、内部状態を自己組織化し、内部状態を任意に制御できることを目標とする。
In summary, the
以上説明したようなマルチモーダルタスクを達成するための図15のシステムの処理の流れの概略は、図5の単振子タスクの制御処理と類似している。そこで、以下、図5の単振子タスクの制御処理とは異なる点についてのみ説明していく。 The outline of the process flow of the system of FIG. 15 for achieving the multimodal task as described above is similar to the control process of the simple pendulum task of FIG. Therefore, only the points different from the control processing of the simple pendulum task in FIG. 5 will be described below.
まず、図15のシステムは、図5の単振子タスクの制御処理のステップS1の処理と同様に、HMMの学習処理を実行する。ただし、図15のシステムが実行するHMMの学習処理は、図5の学習処理とは異なり、次のような処理となる。 First, the system shown in FIG. 15 executes an HMM learning process in the same manner as the process in step S1 of the simple pendulum task control process shown in FIG. However, the HMM learning process executed by the system of FIG. 15 differs from the learning process of FIG. 5 as follows.
即ち、図15のシステム(ロボット85たるエージェント)は、ランダムもしくは単純な生得ルール(例えば、ある方向に進んで、壁86にぶつかったら方向を変えるなどのルール)に基づいて行動を取る。なお、生得ルールに基づく行動を行う場合、図15のシステムにも、図3の生得コントローラ23が設けられるとする。
That is, the system of FIG. 15 (the
図5の単振子タスクの制御処理では、時系列観測信号(角度θの時系列信号)が唯一の観測情報としてHMMの学習が処理行われた。 In the control processing of the simple pendulum task in FIG. 5, learning of the HMM is performed with the time series observation signal (time series signal of angle θ) as the only observation information.
これに対して、図15のシステムにおいては、センサ部61のモダリティーが既知である。即ち、ロボット85は、24次元の距離センサ61A、24次元の光センサ61B、1次元のエネルギーセンサ61Cからなる検知機能を有している。そこで、距離センサ61Aの観測信号(距離)、光センサ61Bの観測信号(光)、エネルギーセンサ61Cの観測信号(エネルギー)という3種類の観測信号毎に、それぞれHMMの学習処理が行われる。なお、1つの観測信号についてのHMMの学習処理単体は、図5の単振子タスクの制御処理におけるHMMの学習処理と基本的に同様である。
On the other hand, in the system of FIG. 15, the modality of the
即ち、図15の例では、モデル化部62Aが、距離のHMMを構築してHMM格納部72Aに格納する。モデル化部62Bが、光のHMMを構築してHMM格納部72Bに格納する。モデル化部62Cが、エネルギーのHMMを構築してHMM格納部72Cに格納する。
That is, in the example of FIG. 15, the modeling unit 62A constructs a distance HMM and stores it in the HMM
モデル化部62AによるHMMの学習処理結果の表示例、即ち、400ノードの2次元近傍構造HMMを初期構造として与えて、距離センサ61Aの観測信号(距離)の時系列を学習させた結果の表示例が図18Aに示されている。
Example of display of HMM learning processing result by modeling unit 62A, that is, a table of results of learning time series of observation signal (distance) of
モデル化部62BによるHMMの学習処理結果の表示例、即ち、100ノードの2次元近傍構造HMMを初期構造として与えて、距離センサ61Bの観測信号(光)の時系列を学習させた結果の表示例が図18Bに示されている。
Example of display of HMM learning processing result by
モデル化部62Cの学習結果の表示例、即ち、100ノードの2次元近傍構造HMMを初期構造として与えて、距離センサ61Cの観測信号(エネルギー)の時系列を学習させた結果の表示例が図18Cに示されている。
A display example of the learning result of the
図18Aにおいては、各ノードが認識された時のロボット85の存在した平均位置に、ノード(白抜き丸印)がプロットされている。ただし、横軸が水平方向xの距離を示し、縦軸が垂直方向yの距離を示している。
In FIG. 18A, nodes (open circles) are plotted at the average position where the
図18Bにおいては、各ノードが認識された時のロボット85の存在した平均位置に、ノード(白抜き丸印)がプロットされている。ただし、横軸が水平方向xの距離を示し、縦軸が垂直方向yの距離を示している。また、中心位置、即ち、座標(0,0)が、光源である点87の位置を示している。ただし、座標(0,0)とは、特定の1つの点87の位置を意味するのではなく、図16の3つの点87のうちの何れかの位置という意味である。
In FIG. 18B, nodes (open circles) are plotted at the average position where the
図18Cについては、エネルギーの値(縦軸)と、ロボット87の存在した平均位置に最も近い光(光源である点87)までの距離(横軸)との空間上に、ノード(白抜き丸印)がプロットされている。
As for FIG. 18C, a node (open circle) is on a space between the energy value (vertical axis) and the distance (horizontal axis) to the light (
図18Aの距離のHMMは、距離センサ61Aは壁86をセンシングしていることから、迷路の構成のトポロジカルネットワークとして表現されていることが分かる。
The distance HMM in FIG. 18A is expressed as a topological network having a maze configuration because the
図18Bの光のHMMについては、光源(各点87)を中心に放射状にネットワークが形成されていることがわかる。 As for the light HMM in FIG. 18B, it can be seen that a radial network is formed around the light source (each point 87).
図18CのエネルギーのHMMについては、エネルギーが上下するだけなので、一本の鎖のようなネットワークになっていることがわかる。そして、図18のプロットの仕方が、光までの距離(各点87までの距離)を横軸とするプロットの仕方であることから、光に近いときはエネルギーが上昇する方向に状態遷移が形成されている一方、光から遠い時にはエネルギーが減少するほうに状態遷移の方向が決まっているようなネットワーク、即ち、いわゆるハシゴ型ネットワークのようなものが形成されていることがわかる。 As for the HMM of energy in FIG. 18C, since the energy only rises and falls, it can be seen that the network is like a single chain. The plotting method in FIG. 18 is a plotting method using the distance to the light (distance to each point 87) as the horizontal axis, so that a state transition is formed in the direction in which the energy increases when it is close to the light. On the other hand, it can be seen that a network in which the direction of state transition is determined as the energy decreases when it is far from the light, that is, a so-called ladder-type network is formed.
なお、対象となっているマルチモーダルタスクを、距離のHMMとアクション(コマンド)だけで考え、任意の状態に制御することを行うと、図19に示されるようになる。即ち、単振子タスクと同じ考え方で行動制御処理が実現できることになる。換言すると、この場合、図15のシステムは、図5のステップS2乃至S5を実行すればよい。 If the target multimodal task is considered only by the distance HMM and action (command) and is controlled to an arbitrary state, the result is as shown in FIG. That is, the behavior control process can be realized in the same way as the simple pendulum task. In other words, in this case, the system of FIG. 15 may perform steps S2 to S5 of FIG.
ただし、マルチモーダルタスクの課題設定では、図18A乃至Cの各HMMの状態遷移とアクション(行動)との間に直接的な相関があるとは限らない。このために状態遷移を起こした時のアクション(行動)をそのまま学習するだけでは、このようなマルチモーダルタスクの課題を解くことができない。 However, in the task setting of the multimodal task, there is not always a direct correlation between the state transition and action (action) of each HMM in FIGS. For this reason, it is not possible to solve such a multimodal task problem simply by learning the action (behavior) when the state transition occurs.
例えば、図18CのエネルギーのHMMの遷移は、図16のシミュレータ上での光源(各点87)とロボット85との距離関係で決まってくる。よって、図18CのエネルギーのHMMの遷移は、ロボット85がある瞬間にどの方向へ移動したのかという移動アクションとは全く関係がない。ところが、図18Cの距離のHMMが表現する迷路内での位置のような内部状態は、ロボット85の移動アクションと、遷移するノードとの間に高い関連性が存在する。
For example, the transition of the HMM of energy in FIG. 18C is determined by the distance relationship between the light source (each point 87) and the
そこで、図15のシステムには、このような場合でもエージェント(ロボット85)が自律的に内部状態と行動の関係を見出して制御できるような機能を実現すべく、因果部63が設けられているのである。
Therefore, the
即ち、因果部63は、このマルチモーダルタスクの目標を到達すべく、図5のステップS2,S3の代わりに、次のような処理を実行できる。
That is, the
即ち、各時間ステップにおいて、図18A乃至Cの各HMMにおける認識結果によって、現在認識されているノードがひとつ確定される。なお、単体のHMMにおける認識結果としては、例えば、単体のHMMについての図12の認識処理の結果を採用できる。 That is, at each time step, one currently recognized node is determined by the recognition result in each HMM in FIGS. 18A to 18C. As a recognition result in a single HMM, for example, the result of the recognition process in FIG. 12 for a single HMM can be adopted.
この確定されたノードに加えて、その時刻に取ったアクション(行動)も離散化することで、ひとつのモーダルとして取り扱うことができる。以下、かかるモーダルを、アクションモーダルと称する。また、アクションモーダルの状態を、アクション状態と称する。 In addition to the determined node, the action taken at that time is also discretized so that it can be handled as one modal. Hereinafter, such a modal is referred to as an action modal. The action modal state is referred to as an action state.
ここで、アクション状態を含めた時刻tのHMMの状態を、Sk,i(t)と記述する。kは、モーダル番号を示しており、k=0がアクションモーダルを示ている。また、iがモーダル内の状態を表すインデックスであるとする。 Here, the state of the HMM at time t including the action state is described as S k, i (t). k indicates a modal number, and k = 0 indicates an action modal. Further, i is an index representing a state in a modal.
また、式(1)に示されるような確率的因果モデルを仮定する。 In addition, a stochastic causal model as shown in Equation (1) is assumed.
式(1)は、とあるモーダルの次状態は、現状態と、とある他のモーダルの状態Sm,lとに依存すること示している。 Equation (1) shows that the next state of a certain modal depends on the current state and the state S m, l of some other modal.
ここで、この「とあるモーダル」を原因モーダルと称し、原因モーダルにおける現在状態ノードを原因ノードと称するとする。すると、式(1)は、原因モーダルがアクションモーダルそのものであった場合、時刻tに取った行動(アクション)に応じて現在状態ノード(原因ノード)から遷移するノードが変わるという単純な行動結果モデルを示していることになる。 Here, this “a certain modal” is referred to as a cause modal, and the current state node in the cause modal is referred to as a cause node. Then, when the cause modal is the action modal itself, the expression (1) is a simple behavior result model in which the node that transitions from the current state node (cause node) changes according to the action (action) taken at time t. Will be shown.
また、以下、各モーダルのノード遷移について、原因モーダルと原因ノードを発見することを因果推定と称する。因果推定の詳細な説明は後述するため、ここでは因果推定の概略を述べるに留める。 Hereinafter, finding a cause modal and a cause node for each modal node transition is referred to as causal estimation. Since the detailed explanation of the causal estimation will be described later, only the outline of the causal estimation will be described here.
即ち、因果推定とは、とあるモードにおいて遷移が発生した時に、その時に認識されていた他のモーダルの状態をカウントし、高い頻度でその遷移と同時に生起している状態を割り出すことをいう。これにより、各遷移に対して、対応する原因モーダルと原因ノードとを発見することが可能になる。即ち、因果学習部75は、このような因果推定を各遷移毎に行うことで、遷移毎に対応する原因モーダルと原因ノードとを発見していく。遷移毎の原因モーダルと原因ノードとは、因果テーブル格納部76にテーブルとして格納されていく。なお、以下、かかるテーブルを因果テーブルと称する。
That is, causal estimation means that when a transition occurs in a certain mode, the state of other modals recognized at that time is counted, and a state occurring simultaneously with the transition is determined with high frequency. This makes it possible to find the corresponding cause modal and cause node for each transition. That is, the
図20と図21を参照して、因果推定の概略についてさらに述べる。 The outline of causal estimation will be further described with reference to FIGS.
図20は、図16のシミュレータにおける移動ロボット85の移動をタスクとした場合であって、距離のみの1モーダルの場合における図15のシステムの処理を示している。なお、説明の便宜上、図20(後述する図21、および図24)においては、ロボット85(エージェント)のアクション(行動)は、E(東)、W(西)、S(南)、およびN(北)の4方向への移動アクションのみが採用されているとする。
FIG. 20 shows the processing of the system of FIG. 15 in the case where the movement of the
この場合、図15のシステムは、次のようなステップS81A乃至S84Aを実行する。即ち、ステップS81Aとは、距離のHMMの構造学習による内部状態の自己組織化という処理である。ステップS82Aとは、各状態遷移を起こすアクションを推定する、即ち、カウントするという処理である。ステップS83Aは、経路を生成するという処理である。ステップS84Aは、アクションの実行処理である。 In this case, the system of FIG. 15 performs the following steps S81A to S84A. That is, step S81A is a process of self-organization of the internal state by distance HMM structure learning. Step S82A is a process of estimating, that is, counting, an action that causes each state transition. Step S83A is a process of generating a route. Step S84A is an action execution process.
これに対して、図21は、図20と同一タスクであるが、モーダルとしては、距離に加えてエネルギーも存在する場合における図15のシステムの処理を示している。即ち、上述したように、図15のシステムは、ステップS81Bにおいて、各モーダル独立にHMMを獲得する。図21の例では、距離のHMMと、エネルギーのHMMが獲得される。次に、図15のシステムは、ステップS82Bにおいて、図21に示されるような「(拡張)原因状態−結果遷移モデル」を生成する。即ち、図15のシステムは、アクションも状態のひとつとして(アクション状態として)、各モーダルの遷移を起こす原因状態を探す(カウントする)。例えば、図21に示されるように、距離のHMM上における特定の遷移では、いつも北(N)のアクション状態であった場合、そのアクション状態がカウントされる。また、例えば、エネルギーのHMMにおいて、エネルギーが増えるのはいつもfoodのある場所であった場合、距離のHMMにおけるfoodの状態がカウントされる。 On the other hand, FIG. 21 shows the same task as FIG. 20, but the modal shows the processing of the system of FIG. 15 when energy is present in addition to distance. That is, as described above, the system of FIG. 15 acquires the HMM independently in each modal in step S81B. In the example of FIG. 21, a distance HMM and an energy HMM are acquired. Next, in step S82B, the system of FIG. 15 generates a “(extended) cause state-result transition model” as shown in FIG. That is, the system of FIG. 15 searches for (causes counting) a cause state that causes each modal transition, with an action as one of the states (as an action state). For example, as shown in FIG. 21, in a specific transition on the distance HMM, if the action state is always north (N), the action state is counted. Also, for example, in the energy HMM, when the energy always increases at a place where food is present, the state of food in the distance HMM is counted.
このようにして、因果テーブルが因果テーブル格納部76に格納されると、その段階で、図15のシステムは、学習を終えて、自身が形成した内部状態において任意の目標を設定して、その目標達成を実現するための行動を取ることができるようになる。
In this way, when the causal table is stored in the causal
そこで、図15のシステムは、目標達成を実現するための計画(プランニング)を立てる。このような計画を立てる処理がプランニング処理である。ただし、ここでいうプランニング処理は、図5の単振子タスクの制御処理のステップS4において実行されるプランニング処理とは異なる。そこで、以下、マルチモーダルタスクで行われるプランニング処理を、特に、多段プランニング処理と称する。 Therefore, the system of FIG. 15 makes a plan (planning) for realizing the achievement of the target. A process for making such a plan is a planning process. However, the planning process here is different from the planning process executed in step S4 of the control process of the simple pendulum task in FIG. Therefore, hereinafter, the planning process performed in the multimodal task is particularly referred to as a multistage planning process.
そして、図15のシステムは、多段プランニング処理の結果に従って、行動制御処理を実行する。ただし、ここでいう行動制御処理は、図5の単振子タスクの制御処理のステップS5において実行される行動制御処理とは異なる。そこで、以下、マルチモーダルタスクで行われる行動制御処理を、特に、多段行動制御処理と称する。 Then, the system of FIG. 15 executes the action control process according to the result of the multistage planning process. However, the action control process here is different from the action control process executed in step S5 of the control process of the simple pendulum task in FIG. Therefore, hereinafter, the action control process performed in the multimodal task is particularly referred to as a multistage action control process.
以下、マルチモーダルのHMMに関しても、任意の状態を目標として制御できること、即ち多段行動制御処理ができることを示す。 Hereinafter, it is shown that multi-modal HMMs can be controlled with an arbitrary state as a target, that is, multistage action control processing can be performed.
多段プランニング処理では、モデル化部62K(KはA乃至Cのうちのいずれか)のプランニング部74Kが、単振子タスクの場合と同様に、外部から指定されるかもしくは内発的に得られる目標を、ゴールとして設定する。ただし、ゴールとしては、所定モーダルにおける所定状態(ノード)が設定される。即ち、ゴールモーダルと、ゴール状態が設定される。 In the multi-stage planning process, the planning unit 74K of the modeling unit 62K (K is one of A to C) is designated from the outside or is obtained internally as in the case of the simple pendulum task. Is set as the goal. However, a predetermined state (node) in a predetermined modal is set as the goal. That is, the goal modal and the goal state are set.
その後、モデル化部62Kは、例えば図13のフローチャートに従ったプランニング処理を実行する。これにより、モーダルK内の現在状態ノード(開始ノード)からゴールノードまでの経路が生成される。 Thereafter, the modeling unit 62K executes a planning process according to the flowchart of FIG. 13, for example. As a result, a route from the current state node (start node) in the modal K to the goal node is generated.
例えば、エネルギーのモーダルCについてプランニング部74Cがプランニング処理を実行した場合、図22の右側の図のような経路が設定される。 For example, when the planning unit 74C executes the planning process for the energy modal C, a route such as that on the right side of FIG. 22 is set.
これにより、行動制御部64は、次のような多段行動制御処理を実行することができるようになる。
Thereby, the
即ち、行動制御部64の実行管理部78は、開始ノードからゴールノードまでの経路上の各遷移に割り当てられた原因モーダルと原因ノードとを、因果部63の因果推定部77から取得する。即ち、因果推定部77は、実行管理部78から所定遷移の通知を受けると、その所定遷移に割り当てられた原因モーダルと原因ノードとを因果テーブル格納部76から検索して抽出し、実行管理部78に提供する。
That is, the
ここで、取得された原因モーダルがアクションモーダルである場合は、実行管理部78は、原因ノードに対応するコマンドをコントローラ部79から取得してアクション部65に提供することができる。よって、この場合、実行管理部78は、図14のフローチャートに従った行動制御処理を実行すればよい。
Here, when the acquired cause modal is an action modal, the
これに対して、原因モーダルがアクションモーダルでない場合、その原因モーダルの現在状態を原因ノードまで遷移させることが必要になる。例えば図22の例では、原因モーダルは光のモーダルBとされており、図22の左側の図に示されるように、現在状態を現在状態ノードから原因ノードまで遷移させることが必要になる。そこで、原因モーダルがモーダルL(LはA乃至Cのうちのいずれか)の場合には、実行管理部78は、その原因モーダルLのモデル化部62Lに対してプランニング処理を依頼する。モデル化部62Lのプランニング部74Lは、現在状態ノードから原因ノードまでのプランニング処理を実行し、その実行結果、即ち、経路を実行管理部78に通知する。例えば図22の例では、光のモーダルBのモデル化部62Bのプランニング部74Bは、図22の左側の図に示されるように、現在状態ノードから原因ノードまでのプランニング処理を実行し、その実行結果、即ち、経路を実行管理部78に通知する。
On the other hand, when the cause modal is not an action modal, it is necessary to change the current state of the cause modal to the cause node. For example, in the example of FIG. 22, the cause modal is the light modal B, and it is necessary to transition the current state from the current state node to the cause node as shown in the diagram on the left side of FIG. 22. Therefore, when the cause modal is modal L (L is any one of A to C), the
実行管理部78は、通知された経路上の各遷移に割り当てられた原因モーダルと原因ノードとを、因果部63の因果推定部77から取得する。
The
実行管理部78は、このようにして、原因モーダルと原因ノードとを再帰的に呼び出していく。そして、実行管理部78は、エージェントが直接出力できるアクションモーダルに辿り着いた段階で、その時刻でのアクション(コマンド)を決定して、アクション部65に提供する。
In this way, the
その後、実行管理部78は、このような行動制御処理の手順を経て、原因ノードに辿り着いた段階で、もとのモーダルに戻りそのモーダルで行動制御処理を実行する。つまり、図22の例では、図22の左側の図の原因ノード、即ち、原因モーダルである光のモーダルBのHMM上の原因ノードに辿り着いた段階で、点線に示されるように、図22の右側の図のエネルギーのモーダルCに戻り、そのHMM上の現在状態ノードの遷移が発生する。そして、最終的に最初に与えたゴールノード(図22の例では、右側の図のエネルギーのHMM上のゴールノード)まで到達することができた段階で、目標達成となる。
After that, the
なお、原因モーダルや原因ノードが1つではなく、多くの実世界の問題のように複数存在するケースがある。例えば、図16の例では、迷路上に複数の光源(3つの点87)が存在するので、そのうちのどの光源が原因となっても構わない。また、光周辺であれば、エネルギーは十分に得られるので、その近傍のノードならどれが原因となっても構わない。このような場合、原因ノードに対してプランを立てるときに最初に辿り着く経路を選択することで、妥当な原因ノードと、その経路を選ぶことができる。具体的には、図15のシステムは、まず原因モーダルを1つ選ぶ。次に、図15のシステムは、その原因モーダルの中で、候補となる原因ノード全てをゴールノードとして、現在状態ノードからの経路をプランニングする。このプランニングは、基本的に図13のプランニング処理の実行により実現される。ただし、ステップS45のゴールノードの到着判定処理では、全てのゴールノードに対して判定が行われる。この手法によれば、最初に到着したゴールノードとその経路の選択が可能になる。 In addition, there are cases where there are not a single cause modal and cause node, and there are a plurality of problems such as many real world problems. For example, in the example of FIG. 16, since there are a plurality of light sources (three points 87) on the maze, any one of them may be the cause. Further, since sufficient energy can be obtained in the vicinity of light, any node in the vicinity thereof may be the cause. In such a case, an appropriate cause node and its route can be selected by selecting a route that is first reached when a plan is established for the cause node. Specifically, the system of FIG. 15 first selects one cause modal. Next, the system of FIG. 15 plans a route from the current state node with all of the candidate cause nodes as goal nodes in the cause modal. This planning is basically realized by executing the planning process of FIG. However, in the goal node arrival determination process in step S45, determination is performed for all goal nodes. According to this method, it is possible to select a goal node that arrives first and its route.
さらに、具体的なタスク例を交えて詳しく説明する。 Furthermore, it will be described in detail with specific task examples.
まず、図19に示されるように、距離のHMM上のある状態をゴールノードとして指定した場合には、このエージェント(図15のシステム)にとっては図16のシミュレータ上の特定の場所に行くことを意味している可能性が高い。その場合、場所の変化はエージェントのアクションを原因としている可能性がかなり高い。従って、図19に示されるような経路のもと、各遷移が、ノードの方向に対応した移動アクションと対応づけられる。即ち、遷移の因果をアクションに帰着させることができる。 First, as shown in FIG. 19, when a certain state on the distance HMM is designated as a goal node, this agent (the system in FIG. 15) has to go to a specific place on the simulator in FIG. Most likely it means. In that case, the change in location is very likely due to the action of the agent. Accordingly, each transition is associated with a moving action corresponding to the direction of the node under the route shown in FIG. That is, the cause and effect of the transition can be attributed to the action.
次に、図23に示されるように、光のHMM上の、とある光源(図16の例では点87)の近くの状態をゴールとした場合に、図15のシステムが、経路探索(プランニング処理)を行うと、現在状態ノードが光の近くで明るさが感知されていれば、どの方向に行けば光の明るさが変わるか分かるので周囲のノードへの遷移は、距離のHMMと同様にアクションと結びついている。しかし、現在位置が光の見えない状態だとすると、エージェントであるロボット85にとって、どの方向に移動すれば光が見えるのかは分からない。
Next, as shown in FIG. 23, when the goal is a state near a certain light source (
仮に、光のHMM上で経路が作成されたところ、光のS(南)側からアプローチして光に近づいくような経路ができたとする。図16のシミュレータ上には3つの光源(点87)がおいてあるために、ロボット85にとって見えない場所から光のS(南)側に来れらる場所としては、3カ所の場所が可能性として存在することになる。因果推定がうまく行われていれば、光のHMM上で、ロボット85にとって見えないノードから、光源(図16の例では3つの点87のうちの何れか)のS(南)端側のノードへの遷移は、距離のHMM上における3つの光源(図16の例では3つの点87)の南端のノードのそれぞれと高い相関を持っている。そこで、図15のシステムは、上述のように原因ノードとしてこれらの各南端側のノードをそれぞれ設定して、距離のHMMについてプランニング処理を実行し、制御処理を実行することで、光のHMMにおいて遷移が発生する。なお、このようにゴールノードが複数存在する場合にプランニング処理を実行する場合、図15のシステムは、図13のステップS45において、複数のゴールノードについて到達条件を調べるだけで、最初に到達できる経路を算出することができる。
Suppose that a route is created on the light HMM, and a route that approaches the light by approaching from the S (south) side of the light is created. Since there are three light sources (points 87) on the simulator shown in FIG. 16, there are three possible locations where the light can come to the S (south) side of the light from a place that cannot be seen by the
これにより、エージェントたるロボット85は、まず距離のHMM上で光の外縁までの経路を求めて最も近くの光源(図16の例では点87)に向けて移動し、さらにその光源の放射内に入ったときには、光のHMM内の遷移で目標とする光との相対位置へ移動することができるようになる。
As a result, the
次に、エネルギーのHMMの状態を任意に制御することを考える。エネルギーのHMMについては、どの遷移に関してもアクションと直接関係しない。因果推定がうまくいっているとすると、エネルギーが上昇する方向の遷移は、光のHMMの表現する光源(図16の例では点87)の近傍ノードと、距離のHMMにおいて表現されている光源(図16の例では点87)の位置の近傍のノードとの因果が高い。さらに光源は3つあるので、距離のHMM上では因果が3つに分散するのに対して、光のHMMではどの光に対しても同じ表現になっているので、光HMM上のノードに対して因果が高い。
Next, let us consider controlling the state of the HMM of energy arbitrarily. For energy HMMs, there is no direct relationship with action for any transition. Assuming that the causal estimation is successful, the transition in the direction in which the energy rises indicates that the light source represented by the HMM of the distance (the
従って、例えば上述した図21の因果推定がなされている場合、図24に示されるような処理が実行可能である。即ち、ステップS81Cにおいて、エネルギーを上げるような目標が与えられる。すると、図15のシステムは、ステップS82Cにおいて、まずエネルギーのHMMでエネルギーが順次上昇していく経路を生成する。 Therefore, for example, when the above-described causal estimation of FIG. 21 is performed, the processing as shown in FIG. 24 can be executed. That is, in step S81C, a target for increasing energy is given. Then, in step S82C, the system of FIG. 15 first generates a path in which the energy sequentially increases with the energy HMM.
図15のシステムは、このエネルギーのHMM上での遷移の因果に基づいて、光のHMM上で光源(図16の例では点87)に近づく経路を生成する。必要であれば、図15のシステムは、エージェントたるロボット85にとって光源(図16の例では点87)の見えない所でも、距離のHMMの表現を使って最寄りの光源(図16の例では点87)に近づくような経路を生成する。換言すると、次のようなステップS83C,S84Cの処理が実行される。即ち、ステップS83Cとは、(遷移を起こすために)原因状態を実現する処理である。ステップS84Cとは、経路を作成するという処理でる。
The system of FIG. 15 generates a path approaching the light source (
図15のシステムは、この経路に基づいて、遠くから光に近づいて、エネルギーが目標の状態になるまで、そこにとどまるという行動をすることができる。換言すると、次のようなステップS85C,S86Cの処理が実行される。即ち、ステップS85Cとは、原因状態を実現する処理である。ステップS86Cとは、即実行可能という準備処理である。なお、反対に、どうようにエネルギーを下げるかという課題が設定された場合、光源(図16の例では点87)から離れてそこに止まるような行動を出せばよい。
Based on this path, the system of FIG. 15 can act to approach the light from a distance and stay there until the energy is in the target state. In other words, the following processes of steps S85C and S86C are executed. That is, step S85C is processing for realizing the cause state. Step S86C is a preparation process that can be executed immediately. On the other hand, when the task of how to reduce the energy is set, it is only necessary to take an action that leaves the light source (
以上説明したように、図15のシステムは、独立するモーダル(事象)毎の状態遷移とその経路制御という問題に落とし込み、かつモーダル間の因果関係を割り出し、再帰的に制御することができる。その結果、複雑な行動制御の問題をタスクに対する前提知識に頼らずに取り扱うことができるようになる。 As described above, the system of FIG. 15 can be recursively controlled by reducing the problem of state transition for each independent modal (event) and its path control, and determining the causal relationship between modals. As a result, it becomes possible to handle complicated behavior control problems without relying on prerequisite knowledge for tasks.
ところで、上述した一連の処理は、ハードウエアにより実行させることもできるが、ソフトウエアにより実行させることができる。 By the way, the series of processes described above can be executed by hardware, but can also be executed by software.
この場合、上述したシステムの少なくとも一部として、例えば、図25に示されるパーソナルコンピュータを用いて構成してもよい。 In this case, for example, a personal computer shown in FIG. 25 may be used as at least a part of the system described above.
図25において、CPU(Central Processing Unit)91は、ROM(Read Only Memory92に記録されているプログラム、または記憶部98からRAM(Random Access Memory)93にロードされたプログラムに従って各種の処理を実行する。RAM93にはまた、CPU91が各種の処理を実行する上において必要なデータなども適宜記憶される。
25, a CPU (Central Processing Unit) 91 executes various processes according to a program recorded in a ROM (Read Only Memory 92) or a program loaded from a
CPU91、ROM92、およびRAM93は、バス94を介して相互に接続されている。このバス94にはまた、入出力インタフェース95も接続されている。
The
入出力インタフェース95には、キーボード、マウスなどよりなる入力部96、ディスプレイなどよりなる出力部97、ハードディスクなどより構成される記憶部98、および、モデム、ターミナルアダプタなどより構成される通信部99が接続されている。通信部99は、インターネットを含むネットワークを介して他の装置(図示せず)との間で行う通信を制御する。
The input /
入出力インタフェース95にはまた、必要に応じてドライブ100が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどよりなるリムーバブルメディア101が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部98にインストールされる。
A
一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。 When a series of processing is executed by software, a program constituting the software executes various functions by installing a computer incorporated in dedicated hardware or various programs. For example, a general-purpose personal computer is installed from a network or a recording medium.
このようなプログラムを含む記録媒体は、図25に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク(フロッピディスクを含む)、光ディスク(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク(MD(Mini-Disk)を含む)、もしくは半導体メモリなどよりなるリムーバブルメディア(パッケージメディア)101により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM92や、記憶部98に含まれるハードディスクなどで構成される。
As shown in FIG. 25, the recording medium including such a program is distributed to provide a program to the user separately from the apparatus main body, and a magnetic disk (including a floppy disk) on which the program is recorded. , Removable media (package media) consisting of optical disks (including CD-ROM (compact disk-read only memory), DVD (digital versatile disk)), magneto-optical disks (including MD (mini-disk)), or semiconductor memory ) 101 as well as a
図26は、本発明を適用したデータ処理装置の一実施の形態の構成例の概要を説明する図である。 FIG. 26 is a diagram illustrating an outline of a configuration example of an embodiment of a data processing device to which the present invention has been applied.
図26において、データ処理装置は、状態と状態遷移とを有する状態遷移モデルを記憶している。データ処理装置は、状態遷移モデルによって、モデル化対象をモデル化するための学習を行う学習装置、すなわち、モデル化対象から観測されるセンサ信号に基づき、モデル化対象の確率統計的な動特性を与える状態遷移モデルを学習する学習装置の1種であり、上述の学習部31に適用することができる。
In FIG. 26, the data processing apparatus stores a state transition model having a state and a state transition. The data processing device is a learning device that performs learning for modeling the modeling target by the state transition model, that is, based on the sensor signal observed from the modeling target, the probability statistical dynamic characteristic of the modeling target is determined. It is a kind of learning device that learns a given state transition model, and can be applied to the
モデル化対象からは、そのモデル化対象をセンシングすることにより得られるセンサ信号が、例えば、時系列に観測される。 From the modeling target, a sensor signal obtained by sensing the modeling target is observed in time series, for example.
データ処理装置は、モデル化対象から観測されるセンサ信号を用い、状態遷移モデルの学習、すなわち、ここでは、状態遷移モデルのパラメータの推定と、構造の決定とを行う。 The data processing apparatus learns the state transition model, that is, here, estimates the parameters of the state transition model and determines the structure using the sensor signal observed from the modeling target.
ここで、状態遷移モデルとしては、例えば、HMMや、ベイジアンネットワーク、POMDP(Partially Observable Markov Decision Process)等を採用することができる。以下では、状態遷移モデルとして、例えば、HMMを採用することとする。 Here, as the state transition model, for example, HMM, Bayesian network, POMDP (Partially Observable Markov Decision Process) or the like can be adopted. Hereinafter, for example, an HMM is adopted as the state transition model.
図27は、HMMの例を示している。 FIG. 27 shows an example of an HMM.
HMMは、状態と状態間遷移とを有する状態遷移モデルである。 The HMM is a state transition model having a state and a transition between states.
図27は、3状態のHMMの例を示している。 FIG. 27 shows an example of a three-state HMM.
図27において(以降の図においても同様)、丸印は、状態を表し、矢印は、状態遷移を表す。 In FIG. 27 (the same applies to the following drawings), a circle represents a state, and an arrow represents a state transition.
また、図27において、si(図27では、i=1,2,3)は、状態を表し、aijは、状態siから状態sjへの状態遷移確率を表す。さらに、bj(x)は、状態sjへの状態遷移時に、観測値xが観測される出力確率密度関数を表し、πiは、状態siが初期状態である初期確率を表す。 In FIG. 27, s i (i = 1, 2, 3 in FIG. 27) represents a state, and a ij represents a state transition probability from the state s i to the state s j . Further, b j (x) represents an output probability density function in which the observation value x is observed at the time of state transition to the state s j , and π i represents an initial probability that the state s i is an initial state.
なお、出力確率密度関数bj(x)としては、例えば、混合正規確率分布等が用いられる。 As the output probability density function b j (x), for example, a mixed normal probability distribution is used.
ここで、HMM(連続HMM)は、状態遷移確率aij、出力確率密度関数bj(x)、及び初期確率πiによって定義される。これらの状態遷移確率aij、出力確率密度関数bj(x)、及び初期確率πiを、HMMのパラメータλ={aij,bj(x),πi,i=1,2,・・・,N,j=1,2,・・・,N}という。Nは、HMMの状態数を表す。 Here, the HMM (continuous HMM) is defined by the state transition probability a ij , the output probability density function b j (x), and the initial probability π i . These state transition probabilities a ij , output probability density function b j (x), and initial probability π i , HMM parameters λ = {a ij , b j (x), π i , i = 1,2,.・ ・ N, j = 1,2, ..., N}. N represents the number of states of the HMM.
HMMのパラメータλを推定する方法としては、前述したように、Baum-Welchの再推定法が広く利用されている。Baum-Welchの再推定法は、EMアルゴリズム(EM(Expectation-Maximization) algorithm)に基づくパラメータの推定方法である。 As described above, the Baum-Welch re-estimation method is widely used as a method for estimating the HMM parameter λ. The Baum-Welch re-estimation method is a parameter estimation method based on an EM algorithm (EM (Expectation-Maximization) algorithm).
Baum-Welchの再推定法によれば、観測される時系列データx=x1,x2,・・・,xTに基づき、その時系列データが観測(生起)される確率である生起確率から求まる尤度を最大化するように、HMMのパラメータλの推定が行われる。 According to Baum-Welch's re-estimation method, based on the observed time series data x = x 1 , x 2 , ..., x T , the occurrence probability is the probability that the time series data will be observed (occurred). The HMM parameter λ is estimated so as to maximize the likelihood to be obtained.
ここで、xtは、時刻tに観測される信号(サンプル値)を表し、Tは、時系列データの長さ(サンプル数)を表す。 Here, x t represents a signal (sample value) observed at time t, and T represents the length (number of samples) of time-series data.
なお、Baum-Welchの再推定法は、尤度最大化に基づくパラメータ推定方法ではあるが、最適性を保証するものではなく、HMMの構造やパラメータλの初期値によっては、局所解に収束することがある。HMMやBaum-Welchの再推定法の詳細については、例えば、Laurence Rabiner, Biing-Hwang Juang 共著、「音声認識の基礎(上・下)」、NTTアドバンステクノロジ株式会社(以下、文献Aともいう)等に記載されている。 The Baum-Welch re-estimation method is a parameter estimation method based on likelihood maximization, but it does not guarantee optimality, and it converges to a local solution depending on the structure of the HMM and the initial value of the parameter λ. Sometimes. For details of HMM and Baum-Welch re-estimation methods, see, for example, Laurence Rabiner and Biing-Hwang Juang, “Basics of Speech Recognition (Up / Down)”, NTT Advanced Technology Co., Ltd. (hereinafter also referred to as Document A) Etc. are described.
HMMは、音声認識で広く利用されているが、音声認識で利用されるHMMでは、状態の数や状態遷移の仕方等は、一般に、あらかじめ決定される。 HMMs are widely used in speech recognition, but in the HMMs used in speech recognition, the number of states, the state transition method, and the like are generally determined in advance.
図28は、音声認識で利用されるHMMの例を示している。 FIG. 28 shows an example of an HMM used for speech recognition.
図28のHMMは、left-to-right型と呼ばれる。 The HMM in FIG. 28 is called a left-to-right type.
図28では、状態数は3になっており、状態遷移は、自己遷移(状態siから状態siへの状態遷移)と、左から右隣の状態への状態遷移とのみを許す構造に制約されている。 In Figure 28, the number of states has become a 3, state transition, a self-transition (the state transition from the state s i to the state s i), the structure allows only the state transition from the left to the right state It is constrained.
図28のHMMのように、状態遷移に制約があるHMMに対して、図27に示した、状態遷移に制約がないHMM、すなわち、任意の状態siから任意の状態sjへの状態遷移が可能なHMMは、エルゴディック(Ergodic)HMMと呼ばれる。 FIG. 27 shows an HMM with no state transition restrictions, that is, a state transition from an arbitrary state s i to an arbitrary state s j as compared to the HMM with a state transition restriction like the HMM in FIG. An HMM that can do this is called an Ergodic HMM.
エルゴディックHMMは、構造としては最も自由度の高いHMMであるが、状態数が多くなると、パラメータλの推定が困難となる。 The ergodic HMM is an HMM having the highest degree of freedom as a structure. However, as the number of states increases, it is difficult to estimate the parameter λ.
例えば、エルゴディックHMMの状態数が、1000である場合、状態遷移の数は、100万(=1000×1000)となる。 For example, when the number of states of the ergodic HMM is 1000, the number of state transitions is 1 million (= 1000 × 1000).
したがって、この場合、パラメータλのうちの、例えば、状態遷移確率aijについては、100万個の状態遷移確率aijを推定することが必要となる。 Therefore, in this case, for example, regarding the state transition probability a ij in the parameter λ, it is necessary to estimate one million state transition probabilities a ij .
モデル化対象によっては、必要となる状態遷移は、限られた状態遷移で十分であるかもしれないが、どのように状態遷移に対して制約をかければ良いかが事前に分からない場合には、このような膨大な数のパラメータλを適切に推定することは非常に難しい。また、適切な状態数も事前に分からず、HMMの構造を決定するための情報も事前に分からない場合には、適切なパラメータλを求めることは、さらに難しくなる。 Depending on the modeling target, limited state transitions may be sufficient for the required state transitions, but if you do not know in advance how to constrain the state transitions, It is very difficult to appropriately estimate such a large number of parameters λ. In addition, when the appropriate number of states is not known in advance and the information for determining the structure of the HMM is not known in advance, it is more difficult to obtain the appropriate parameter λ.
図26のデータ処理装置は、HMMの構造、すなわち、HMMの状態の数、及び状態遷移に関して、制約を事前に与えなくても、モデル化対象に適切なHMMの構造を決定するとともに、そのHMMのパラメータλを推定する学習を行う。 The data processing apparatus of FIG. 26 determines the structure of the HMM appropriate for the modeling target without giving constraints in advance on the structure of the HMM, that is, the number of states of the HMM and the state transition, and the HMM. Learning is performed to estimate the parameter λ.
図29は、図26のデータ処理装置の構成例を示すブロック図である。 FIG. 29 is a block diagram illustrating a configuration example of the data processing apparatus of FIG.
図29において、データ処理装置は、時系列データ入力部111、データ調整部112、パラメータ推定部113、評価部114、モデル記憶部115、初期構造設定部116、及び、構造調整部117を有する。
29, the data processing apparatus includes a time-series
時系列データ入力部111には、モデル化対象から観測されるセンサ信号が入力される。時系列データ入力部111は、モデル化対象から観測されるセンサ信号に基づき、モデル化対象から観測される時系列データ(以下、観測時系列データともいう)x=x1,x2,・・・,xTを、データ調整部112に出力する。
The time-series
すなわち、時系列データ入力部111は、例えば、モデル化対象から観測される、時系列のセンサ信号を、そのまま、観測時系列データxとして、データ調整部112に供給する。
That is, the time series
なお、時系列データ入力部111は、評価部114からの要求にも応じて、観測時系列データxを、データ調整部112に供給する。
The time series
データ調整部112は、後述するモデル記憶部115に記憶されたHMMの学習の進行に応じて、HMMの学習に用いられる時系列データ、つまり、時系列データ入力部111から供給される観測時系列データxを調整し、調整後の時系列データ(以下、調整後時系列データともいう)x'=x1',x2',・・・,xT''を出力する。
The
すなわち、データ調整部112は、時系列データ入力部111からの観測時系列データx=x1,x2,・・・,xTに対して、例えば、ダウンサンプリングの処理(ダウンサンプリング処理)を施し、そのダウンサンプリング処理によって得られる調整後時系列データx'=x1',x2',・・・,xT''を出力する。
That is, the
例えば、観測時系列データxが1000Hzでサンプリングされた時系列データである場合に、データ調整部112は、ダウンサンプリング処理によって、1000Hzでサンプリングされた観測時系列データxを、100Hzでサンプリングされた調整後時系列データx'に変換する。
For example, when the observation time series data x is time series data sampled at 1000 Hz, the
ここで、ダウンサンプリング処理によれば、観測時系列データxに含まれる高周波成分が取り除かれ、調整後時系列データx'は、観測時系列データxのマクロな特徴、つまり、観測時系列データxの低周波成分のみを含む時系列データとなる。 Here, according to the downsampling process, the high-frequency component included in the observation time series data x is removed, and the adjusted time series data x ′ is a macro feature of the observation time series data x, that is, the observation time series data x It becomes time series data including only the low frequency component.
このような、観測時系列データxのマクロな特徴のみを含む調整後時系列データx'を用いて、モデル記憶部115に記憶された状態遷移モデルであるHMMの学習を行うことにより、HMMでは、観測時系列データxのマクロな特徴が獲得される。
By learning the HMM that is the state transition model stored in the
データ調整部112において、観測時系列データxを、どのように調整するか、すなわち、いまの場合には、観測時系列データxを、どのようなサンプリング周波数の調整後時系列データx'に変換するかは、観測時系列データxの特徴を適切に獲得する学習を行う上で、重要な問題となる。
How to adjust the observation time series data x in the
上述したように、データ調整部112は、HMMの学習の進行に応じて、観測時系列データxを調整するが、その調整は、HMMの学習が進行するにつれて、調整後時系列データx'が、観測時系列データxのマクロな特徴のみを含む時系列データから、ミクロな特徴、つまり、観測時系列データxの高周波成分をも含む時系列データになるように行われる。
As described above, the
例えば、データ調整部112は、HMMの学習が進行するにつれて、調整後時系列データx'のサンプリング周波数を、小さい値から、徐々に大に変更していく。
For example, as the HMM learning progresses, the
具体的には、例えば、データ調整部112は、学習の初期では、調整後時系列データx'のサンプリング周波数を10Hzとし、その後、学習が進行するにつれて、調整後時系列データx'のサンプリング周波数を、50Hz, 100Hz, 500Hz, 1000Hzに、順次変更する。
Specifically, for example, the
この場合、HMMは、学習の初期には、観測時系列データxのマクロな特徴を獲得し、その後、学習が進行するにつれて、観測時系列データxのミクロな特徴をも獲得していく。 In this case, the HMM acquires macro features of the observation time series data x in the initial stage of learning, and then acquires micro features of the observation time series data x as learning progresses.
なお、データ調整部112に対しては、評価部114から、学習の進行の状況を表す進行状況情報が供給される。データ調整部112は、評価部114からの進行状況情報に基づき、学習の進行の状況を認識し、調整後時系列データx'のサンプリング周波数を変更する。
Note that progress information representing the progress of learning is supplied from the
また、データ調整部112において、学習の進行に応じて、観測時系列データxを、そのマクロな特徴を含む調整後時系列データx'から、ミクロな特徴を含む調整後時系列データx'に調整していく処理としては、ダウンサンプリング処理(観測時系列データxを、時間方向に間引く処理)の他、フィルタバンク処理を採用することができる。
Further, in the
データ調整部112において、フィルタバンク処理を採用する場合においては、観測時系列データxが、所定の分割数のフィルタバンクを用いてフィルタリングされることで、その所定の分割数の周波数成分に分割される。そして、その所定の分割数の周波数成分が、調整後時系列データx'として出力される。
In the case of adopting filter bank processing in the
この場合、データ調整部112では、学習が進行するにつれて、フィルタバンクの分割数が、徐々に大に変更される。
In this case, in the
なお、データ調整部112は、上述のように、観測時系列データxを調整し、調整後時系列データx'=x1',x2',・・・,xT''を出力するが、T'は、調整後時系列データx'の長さを表す。
As described above, the
データ調整部112が観測時系列データxを調整して出力する調整後時系列データx'は、パラメータ推定部113、及び、構造調整部117に供給される。
The adjusted time series data x ′ that the
パラメータ推定部113は、データ調整部112からの調整後時系列データx'を用い、モデル記憶部115に記憶されたHMMのパラメータλを推定する。
The
すなわち、パラメータ推定部113は、データ調整部112からの調整後時系列データx'を用い、例えば、Baum-Welchの再推定法によって、モデル記憶部115に記憶されたHMMのパラメータλの推定を行う。
That is, the
パラメータ推定部113は、HMMのパラメータλの推定によって得られる新たなパラメータλを、モデル記憶部115に供給し、上書きの形で記憶させる。
The
なお、パラメータ推定部113は、HMMのパラメータλの推定にあたり、パラメータλの初期値として、モデル記憶部115に記憶された値を用いる。
Note that the
ここで、パラメータ推定部113において、新たなパラメータλを推定する処理を行うことを、学習回数の1回とカウントすることとする。
Here, it is assumed that the process of estimating a new parameter λ in the
パラメータ推定部113は、新たなパラメータλを推定する処理を行うたびに、学習回数を1だけインクリメントし、その学習回数を、評価部114に供給する。
Each time the
さらに、パラメータ推定部113は、新たなパラメータλによって定義されるHMMから、データ調整部112からの調整後時系列データx'が観測される尤度を求め、評価部114に供給する。
Further, the
なお、パラメータ推定部113が評価部114に供給する尤度は、調整後時系列データx'ではなく、観測時系列データxを用いて求めることもできる。
Note that the likelihood that the
評価部114は、パラメータ推定部113からの尤度、及び学習回数に基づき、学習が行われたHMM、つまり、パラメータ推定部113でパラメータλが推定されたHMMを評価し、そのHMMの評価の結果に基づいて、HMMの学習を終了するか否かを判定する。
The
すなわち、評価部114は、例えば、パラメータ推定部113からの学習回数が所定の回数に到達するまでは、HMMによる観測時系列データxの特徴(時系列パターン)の獲得が不十分であると評価し、HMMの学習を続行すると判定する。
That is, for example, the
そして、評価部114は、パラメータ推定部113からの学習回数が所定の回数に到達した場合には、HMMによる観測時系列データxの特徴の獲得が十分であると評価し、HMMの学習を終了すると判定する。
Then, when the number of learning times from the
また、評価部114は、例えば、パラメータ推定部113からの尤度が所定の値に到達するまでは、HMMによる観測時系列データxの特徴(時系列パターン)の獲得が不十分であると評価し、HMMの学習を続行すると判定する。
In addition, the
そして、評価部114は、パラメータ推定部113からの尤度が所定の値に到達した場合には、HMMによる観測時系列データxの特徴の獲得が十分であると評価し、HMMの学習を終了すると判定する。
Then, when the likelihood from the
評価部114は、HMMの学習を続行すると判定した場合、時系列データ入力部111、データ調整部112、及び、構造調整部117に対して、所定の処理を行うことを要求する。
When the
すなわち、評価部114は、時系列データ入力部111に対して、観測時系列データの供給を行うことを要求する。
That is, the
さらに、評価部114は、データ調整部112に対して、学習回数や尤度を、学習の進行の状況を表す進行状況情報として供給することで、学習の進行に応じたダウンサンプリング処理を行うことを要求する。
Furthermore, the
また、評価部114は、学習の進行に応じて、モデル記憶部115に記憶されたHMMの構造の調整を、構造調整部117に要求する。
In addition, the
モデル記憶部115は、状態遷移モデルである、例えば、HMMを記憶する。
The
すなわち、モデル記憶部115は、パラメータ推定部113からHMMの新たなパラメータが供給されると、その新たなパラメータによって、記憶値(記憶しているHMMのパラメータ)を更新する(上書きする)。
That is, when a new parameter of the HMM is supplied from the
また、モデル記憶部115は、HMMの学習が開始される前に、初期構造設定部116によって初期化されるHMMの構造(初期構造)、すなわち、HMMの状態数と状態遷移に関する制約に基づいて決定されるHMMのパラメータの初期値を記憶する。
In addition, the
ここで、パラメータ推定部113によるHMMのパラメータの推定は、初期構造設定部116で決定される初期値から行われる。
Here, the estimation of the parameters of the HMM by the
また、モデル記憶部115に記憶されたHMMの構造は、学習の進行に応じて、構造調整部117によって調整されるが、モデル記憶部115の記憶値の更新は、構造調整部117によるHMMの構造の調整によって得られるHMMのパラメータによっても行われる。
Further, the structure of the HMM stored in the
初期構造設定部116は、HMMの学習が開始される前に、HMMの構造を初期化し、その初期化された構造(初期構造)のHMMのパラメータ(初期パラメータ)を設定する。
The initial
すなわち、初期構造設定部116は、HMMの初期構造、つまり、HMMの状態数と状態遷移を設定する。
That is, the initial
ここで、初期構造としてのHMMの状態数と状態遷移には、所定の制約をかけることができる。 Here, predetermined restrictions can be imposed on the number of states and state transition of the HMM as the initial structure.
例えば、初期構造設定部116は、所定の制約としての所定の数以下に、HMMの状態数を設定する。
For example, the initial
具体的には、例えば、初期構造設定部116は、HMMの状態数を、16や100等の、それほど多くない数に設定する。
Specifically, for example, the initial
さらに、初期構造設定部116は、初期構造として設定した状態数の状態を、1次元以上のL次元空間に(Lは、正の整数)、適当に配置する。
Furthermore, the initial
例えば、初期構造として設定した状態数が16であり、その16個の状態を、2次元空間に配置する場合には、初期構造設定部116は、16個の状態を、2次元空間に、例えば、格子状に配置する。
For example, when the number of states set as the initial structure is 16, and the 16 states are arranged in the two-dimensional space, the initial
その後、初期構造設定部116は、2次元空間に配置した16個の状態に対して、状態遷移、すなわち、自己遷移と、他の状態への状態遷移とを設定する。
Thereafter, the initial
状態に対して設定する状態遷移には、例えば、スパース(Sparse)な構造であること等の所定の制約をかけることができる。 Predetermined constraints such as a sparse structure can be applied to the state transition set for the state.
ここで、スパースな構造とは、任意の状態から任意の状態への状態遷移が可能なエルゴディックHMMのような密な状態遷移ではなく、ある状態から状態遷移することができる状態が非常に限定されている構造である。 Here, a sparse structure is not a dense state transition such as an ergodic HMM that can make a state transition from an arbitrary state to an arbitrary state, but the state that can make a state transition from a certain state is very limited It is a structure that has been.
なお、ここでは、スパースな構造であっても、他の状態への状態遷移は、少なくとも1つ存在し、また、自己遷移は存在することとする。 Note that here, even in a sparse structure, at least one state transition to another state exists, and a self-transition exists.
初期構造設定部116は、例えば、上述したように、所定の制約をかけることで、HMMの構造を、スパースな構造に初期化すること等によって、初期構造を得ると、その初期構造のHMMに、初期パラメータ、つまり、状態遷移確率aij、出力確率密度関数bj(x)、及び、初期確率πiの初期値を設定する。
When the initial
すなわち、初期構造設定部116は、例えば、各状態に対して、その状態から可能な(有効な)状態遷移の状態遷移確率aijを一様な値(可能な状態遷移の数がM個であるとすると、1/M)に設定し、できない状態遷移、つまり、スパースな状態遷移として設定された状態遷移以外の状態遷移の状態遷移確率aijを0に設定する。
That is, for example, the initial
また、出力確率密度関数bj(x)として、例えば、正規分布を利用する場合には、初期構造設定部116は、時系列データ入力部111で得られる観測時系列データx=x1,x2,・・・,xTの平均値μと分散σ2を、次式に従って求め、その平均値μと分散σ2で定義される正規分布を、各状態sjの出力確率密度関数bj(x)に設定する。
Further, for example, when a normal distribution is used as the output probability density function b j (x), the initial
μ=(1/T)Σxt
σ2=(1/T)Σ(xt-μ)2
μ = (1 / T) Σx t
σ 2 = (1 / T) Σ (x t -μ) 2
ここで、上述の式において、Σは、時刻tを、1から、観測時系列データxの長さTに代えてのサメーション(総和)を意味する。 Here, in the above equation, Σ means summation in which time t is changed from 1 to the length T of the observation time series data x.
さらに、初期構造設定部116は、各状態siの初期確率πiを一様な値に設定する。すなわち、初期構造のHMMの状態数をN個とすると、初期構造設定部116は、そのN個の状態siそれぞれの初期確率πiを、1/Nに設定する。
Furthermore, the initial
初期構造設定部116において、初期構造と初期パラメータλ={aij,bj(x),πi,i=1,2,・・・,N,j=1,2,・・・,N}が設定されたHMMは、モデル記憶部115に供給されて記憶される。モデル記憶部115に記憶されたHMMの(初期)構造と(初期)パラメータλは、学習によって更新されていく。
In the initial
構造調整部117は、評価部114からの要求に応じ、データ調整部112からの調整後時系列データx'を用いて、モデル記憶部115に記憶されたHMMの構造を調整する。なお、構造調整部117で行われるHMMの構造の調整には、その構造の調整に応じて必要となるHMMのパラメータの調整も含まれる。
The structure adjustment unit 117 adjusts the structure of the HMM stored in the
構造調整部117で行われるHMMの構造の調整の種類としては、状態の分割、状態のマージ、状態の追加、状態遷移の追加、状態の削除、及び、状態遷移の削除の6種類があり、その詳細については後述する。 There are six types of HMM structure adjustment performed by the structure adjustment unit 117: state division, state merging, state addition, state transition addition, state deletion, and state transition deletion. Details thereof will be described later.
次に、図30を参照して、図29の初期構造設定部116の処理について、さらに説明する。
Next, the processing of the initial
初期構造設定部116では、HMMの初期構造として、エルゴディックな構造を設定することもできるし、所定の制約をかけることで、スパースな構造を設定することもできる。
In the initial
図30は、スパースな初期構造(状態遷移)のHMMを示している。 FIG. 30 shows an HMM having a sparse initial structure (state transition).
ここで、図30では(以降の図でも同様)、丸印は、状態を表し、矢印は、状態遷移を表す。さらに、図30(以降の図でも同様)において、2つの状態を結ぶ双方向の矢印は、その2つの状態の一方から他方への状態遷移と、他方から一方への状態遷移とを表す。また、図30(以降の図でも同様)において、各状態は、自己遷移が可能であり、その自己遷移を表す矢印の図示は、省略されている。 Here, in FIG. 30 (the same applies to the following drawings), a circle represents a state, and an arrow represents a state transition. Further, in FIG. 30 (the same applies to the following drawings), a bidirectional arrow connecting two states represents a state transition from one of the two states to the other and a state transition from the other to the other. Further, in FIG. 30 (the same applies to the following drawings), each state can perform self-transition, and an arrow indicating the self-transition is not shown.
図30では、16個の状態が、2次元空間上に格子状に配置されている。すなわち、図30では、横方向に、4個の状態が配置され、縦方向にも、4個の状態が配置されている。 In FIG. 30, 16 states are arranged in a lattice pattern on a two-dimensional space. That is, in FIG. 30, four states are arranged in the horizontal direction, and four states are arranged also in the vertical direction.
いま、横方向に隣接する状態どうしの距離、及び、縦方向に隣接する状態どうしの距離を、いずれも1とすると、図30Aは、距離が1以下の状態への状態遷移は可能とし、他の状態への状態遷移はできないという制約をかけた構造のHMMを示している。 Now, assuming that the distance between the adjacent states in the horizontal direction and the distance between the adjacent states in the vertical direction are both 1, the state transition to a state where the distance is 1 or less is possible. This shows an HMM with a structure in which the state transition to the state cannot be made.
また、図30Bは、距離が√2以下の状態への状態遷移は可能とし、他の状態への状態遷移はできないという制約をかけた構造のHMMを示している。 FIG. 30B shows an HMM having a structure in which a state transition to a state having a distance of √2 or less is possible and a state transition to another state is not possible.
なお、スパースな初期構造の設定の方法は、以上のように、L次元空間上に配置された状態に対して、状態どうしの距離に応じて、近傍に位置する状態への状態遷移(自己遷移を含む)のみを可能とする制約をかける方法に限定されるものではない。 As described above, the method for setting a sparse initial structure is as follows. For a state arranged in the L-dimensional space, a state transition to a nearby state (self-transition) according to the distance between the states. It is not limited to the method of applying a restriction that enables only
すなわち、スパースな初期構造の設定の方法としては、その他、例えば、ある状態に注目したときに、その状態について、すべての状態の中から、ランダムな数だけの状態を、ランダムに選択し、そのランダムに選択された状態への状態遷移(自己遷移を含む)だけに、状態遷移を制約する方法等を採用することが可能である。 In other words, as a method of setting a sparse initial structure, for example, when a certain state is focused, a random number of states are randomly selected from all states, and the state is selected. It is possible to adopt a method of restricting state transitions only for state transitions (including self-transitions) to randomly selected states.
また、スパースな初期構造の設定の方法として、図10に示されるようなHMMの構造を採用することも可能である。図10AのHMMは、3次元グリッド制約によるHMMを示している。図10BのHMMは、2次元ランダム配置制約によるHMMを示している。図10CのHMMは、スモールワールドネットワークによるHMMを示している。 Further, as a method of setting a sparse initial structure, it is possible to adopt an HMM structure as shown in FIG. The HMM in FIG. 10A shows an HMM due to a three-dimensional grid constraint. The HMM in FIG. 10B shows an HMM due to a two-dimensional random arrangement constraint. The HMM in FIG. 10C represents an HMM by a small world network.
次に、図31を参照して、構造調整部117がHMMの構造の調整として行う状態の分割について説明する。 Next, with reference to FIG. 31, the division of the state performed by the structure adjustment unit 117 as adjustment of the structure of the HMM will be described.
なお、上述したように、図中、丸印は、状態を表すが、以下では、数字iが付された丸印を、状態siと記載する。 As described above, in the drawing, a circle represents a state, but in the following, a circle with a number i is referred to as a state s i .
図31Aは、状態の分割が行われる前のHMMを示している。 FIG. 31A shows the HMM before the state is divided.
図31Aでは、HMMは、6個の状態s1,s2,s3,s4,s5,s6を有し、状態s1とs2との間、状態s1とs4との間、状態s2とs3との間、状態s2とs5との間、状態s3とs6との間、状態s4とs5との間、及び、状態s5とs6との間のそれぞれの双方向の状態遷移と、自己遷移とが可能となっている。 In FIG. 31A, the HMM has six states s 1 , s 2 , s 3 , s 4 , s 5 , s 6 , between states s 1 and s 2, and between states s 1 and s 4 . Between states s 2 and s 3 , between states s 2 and s 5 , between states s 3 and s 6 , between states s 4 and s 5 , and states s 5 and s 6 Both state transitions and self-transitions are possible.
図31Bは、図31AのHMMを対象として、状態の分割が行われた後のHMMを示している。 FIG. 31B illustrates the HMM after the state is divided for the HMM of FIG. 31A.
状態の分割は、HMMの規模を拡大するために行われる。 The division of the state is performed in order to increase the scale of the HMM.
図31Bでは、図31AのHMMの状態s1ないしs6のうちの、例えば、状態s5が分割されている。 In FIG. 31B, among the states s 1 to s 6 of the HMM in FIG. 31A, for example, the state s 5 is divided.
状態s5の分割は、分割の対象の状態s5と同一の状態遷移が可能で、かつ、状態s5との間でも双方向の状態遷移が可能な新たな状態s7を追加することによって行われる。 Division of a state s 5 is capable of the same state transition and state s 5 of the subject of the split, and, by adding a new state s 7 can provide two-way state transitions in between the state s 5 Done.
図31Aでは、状態s5は、状態s2,s4,s6のそれぞれとの間の状態遷移、及び、自己遷移が可能であるから、構造調整部117は、新たな状態s7について、状態s5と同様に、状態s2,s4,s6のそれぞれとの間の状態遷移、及び、自己遷移を、有効な(可能な)状態遷移として設定する。 In FIG. 31A, since the state s 5 can undergo state transition and self-transition with each of the states s 2 , s 4 , and s 6 , the structure adjusting unit 117 performs the following for the new state s 7 . Similarly to the state s 5 , state transitions and self-transitions between the states s 2 , s 4 , and s 6 are set as valid (possible) state transitions.
さらに、構造調整部117は、新たな状態s7について、状態s5との間の状態遷移も、有効な状態遷移として設定する。 Furthermore, the structure adjustment unit 117 sets a state transition between the state s 5 and the new state s 7 as an effective state transition.
また、構造調整部117は、状態の分割では、例えば、分割の対象の状態s5のパラメータを、いわば引き継ぐ形で、新たな状態s7のパラメータを設定する。 In addition, in the state division, the structure adjustment unit 117 sets a new state s 7 parameter, for example, by taking over the parameter of the state s 5 to be divided.
すなわち、構造調整部117は、新たな状態s7の初期確率π7を、分割の対象の状態s5の初期確率π5に設定するとともに(π7=π5)、新たな状態s7の出力確率密度関数b7(x)を、分割の対象の状態s5の出力確率密度関数b5(x)に設定する(b7(x)=b5(x))。 That is, the structural adjustment unit 117, the initial probability [pi 7 of the new state s 7, and sets the initial probability [pi 5 of the subject's condition s 5 split (π 7 = π 5), the new state s 7 The output probability density function b 7 (x) is set to the output probability density function b 5 (x) of the state s 5 to be divided (b 7 (x) = b 5 (x)).
さらに、構造調整部117は、状態si(図31では、i=1,2,3,4,6)から新たな状態s7への状態遷移の状態遷移確率ai7を、状態siから分割の対象の状態s5への状態遷移確率ai5に設定する(ai7=ai5)。 Furthermore, the structure adjustment unit 117 changes the state transition probability a i7 of the state transition from the state s i (in FIG. 31, i = 1, 2, 3, 4, 6) to the new state s 7 from the state s i. The state transition probability a i5 to state s 5 to be divided is set to a i5 (a i7 = a i5 ).
また、構造調整部117は、新たな状態s7から状態siへの状態遷移の状態遷移確率a7iを、分割の対象の状態s5から状態siへの状態遷移確率a5iに設定する(a7i=a5i)。 Further, the structure adjustment unit 117 sets the state transition probability a 7i of the state transition from the new state s 7 to the state s i as the state transition probability a 5i from the state s 5 to the state s i to be divided. (A 7i = a 5i ).
そして、構造調整部117は、分割の対象の状態s5から新たな状態s7への状態遷移の状態遷移確率a57と、新たな状態s7から分割の対象の状態s5への状態遷移の状態遷移確率a75とを、適当な値、すなわち、例えば、a57=a75=0.5等に設定する。 Then, the structure adjustment unit 117 changes the state transition probability a 57 of the state transition from the division target state s 5 to the new state s 7 and the state transition from the new state s 7 to the division target state s 5 . and a state transition probability a 75 of a suitable value, i.e., for example, set to a 57 = a 75 = 0.5 and the like.
さらに、構造調整部117は、状態の分割後のHMMの必要なパラメータについて、正規化処理を施し、状態の分割の処理を終了する。 Further, the structure adjustment unit 117 performs normalization processing on necessary parameters of the HMM after the state division, and ends the state division processing.
すなわち、構造調整部117は、状態の分割後のHMMの初期確率πiと、状態遷移確率aijとに、次式を満足するような正規化処理を施す。 That is, the structure adjustment unit 117 performs normalization processing satisfying the following expression on the initial probability π i of the HMM after the state division and the state transition probability a ij .
Σπj=1
Σaij=1 (i=1,2,・・・,N)
Σπ j = 1
Σa ij = 1 (i = 1,2, ..., N)
ここで、上述の式において、Σは、状態を表す変数jを、1から、状態の分割後のHMMの状態数Nに代えてのサメーションを意味する。図31では、状態の分割後のHMMの状態数Nは、7である。 Here, in the above formula, Σ means a summation in which the variable j representing the state is changed from 1 to the number N of states of the HMM after the state is divided. In FIG. 31, the state number N of the HMM after the state division is 7.
なお、上述の式を満足する正規化処理の方法としては、例えば、正規化処理前の初期確率πjの総和Σπj=π1+π2+・・・+πNで、正規化処理前の初期確率πjを除算する方法がある。状態遷移確率aijの正規化処理についても、同様である。 As a method for normalization process that satisfies the above formula, for example, the sum of the normalized pre-treatment of the initial probability π j Σπ j = π 1 + π 2 + ··· + π N, normalization pretreatment There is a method of dividing the initial probability π j of. The same applies to the normalization processing of the state transition probability a ij .
また、状態の分割において、分割の対象とする状態は、1つの状態に限定されるものではない。 In the state division, the state to be divided is not limited to one state.
すなわち、分割の対象とする状態としては、状態の分割前のHMMのN個の状態s1ないしsNの中から、例えば、ランダムに、1以上N個以下の所定数nの状態を選択することができる。 That is, as a state to be divided, for example, a predetermined number n of 1 to N is randomly selected from N states s 1 to s N of the HMM before the state is divided. be able to.
また、分割の対象とする状態としては、状態の分割前のHMMのN個の状態s1ないしsNの中から、例えば、出力確率密度関数bj(x)を定義する分散σ2が大きい上位n個の状態、つまり、状態から観測される観測値に、比較的大きなばらつきがある上位n個の状態を選択することができる。 In addition, as a state to be divided, for example, the variance σ 2 defining the output probability density function b j (x) is large from among the N states s 1 to s N of the HMM before the state is divided It is possible to select the top n states, that is, the top n states having relatively large variations in the observed values observed from the states.
ここで、分割の対象とする状態の数nは、ランダムに設定することもできるし、固定値に設定することもできる。いずれにしても、状態の分割によって、HMMの構造は、状態数が、分割前の状態数から、n個だけ増加した構造に更新される。 Here, the number n of states to be divided can be set randomly, or can be set to a fixed value. In any case, by dividing the state, the structure of the HMM is updated to a structure in which the number of states is increased by n from the number of states before the division.
次に、図32を参照して、構造調整部117がHMMの構造の調整として行う状態のマージについて説明する。 Next, with reference to FIG. 32, the merging of states performed by the structure adjustment unit 117 as adjustment of the structure of the HMM will be described.
図32Aは、状態のマージが行われる前のHMMを示しており、上述の図31Aの場合と同一のHMMである。 FIG. 32A shows the HMM before the state merging is performed, and is the same HMM as in FIG. 31A described above.
図32Bは、図32AのHMMを対象として、状態のマージが行われた後のHMMを示している。 FIG. 32B shows the HMM after the state merging is performed on the HMM of FIG. 32A.
状態のマージ(merge)は、冗長に割り当てられた状態を縮退させるために行われる。 A state merge is performed to degenerate a redundantly assigned state.
図32Bでは、図32AのHMMの状態s1ないしs6のうちの、例えば、状態s5を、マージ対象として、そのマージ対象の状態s5が、被マージ対象の状態s6にマージされている。 In FIG. 32B, for example, the state s 5 of the states s 1 to s 6 of the HMM in FIG. 32A is merged, and the merged state s 5 is merged with the merged state s 6. Yes.
状態s5の、状態s6へのマージは、マージ対象の状態s5と、被マージ対象の状態s6との間の状態遷移を削除するとともに、マージ対象の状態s5が、マージ対象の状態s5、及び、被マージ対象の状態s6を除く他の状態との間に有する状態遷移(以下、固有の状態遷移ともいう)を、被マージ対象の状態s6が、いわば引き継ぐ形で、マージ対象の状態s5を削除することによって行われる。 State s 5, merge to state s 6 is a state s 5 of merged, deletes the state transition between the states s 6 of the merged, the merged state s 5 is a merged The state transition between the state s 5 and the other states excluding the state s 6 to be merged (hereinafter also referred to as a unique state transition) is inherited by the state s 6 to be merged. It is done by deleting the state s 5 of merged.
したがって、構造調整部117は、マージ対象の状態s5と、被マージ対象の状態s6との間の状態遷移を削除する(無効にする)。 Therefore, the structure adjustment unit 117 deletes (invalidates) the state transition between the merged state s 5 and the merged state s 6 .
さらに、図32Aでは、状態s5が有する固有の状態遷移は、状態s2,s4のそれぞれとの間の状態遷移であるから、構造調整部117は、被マージ対象の状態s6と、状態s2,s4のそれぞれとの間の状態遷移を、有効な状態遷移として追加(設定)する。 Furthermore, in FIG. 32A, since the unique state transition of the state s 5 is a state transition between the states s 2 and s 4 , the structure adjustment unit 117 includes the state s 6 to be merged, A state transition between each of the states s 2 and s 4 is added (set) as an effective state transition.
そして、構造調整部117は、マージ対象の状態s5を削除する。 The restructuring unit 117 deletes the state s 5 of merged.
さらに、構造調整部117は、状態のマージでは、例えば、被マージ対象の状態s6の状態遷移のうちの、マージ対象の状態s5から引き継いだ状態遷移については、マージ対象の状態s5の状態遷移確率ai5及びa5jを引き継ぐ形で、状態遷移確率ai6及びa6jを設定する。 Furthermore, the structure adjusting unit 117, the merging state, for example, among the state transitions of the state s 6 of the merged, for inherited state transition from the state s 5 of merged, the merged state s 5 State transition probabilities a i6 and a 6j are set so as to take over the state transition probabilities a i5 and a 5j .
すなわち、図32では、被マージ対象の状態s6がマージ対象の状態s5から引き継いだ状態遷移は、状態s2,s4のそれぞれとの間の状態遷移であるから、構造調整部117は、被マージ対象の状態s6から状態s2への状態遷移の状態遷移確率a62を、マージ対象の状態s5から状態s2への状態遷移の状態遷移確率a52に設定する(a62=a52)。 That is, in FIG. 32, since the state s 6 to be merged is inherited from the state s 5 to be merged, it is a state transition between the states s 2 and s 4. Then, the state transition probability a 62 of the state transition from the merged target state s 6 to the state s 2 is set to the state transition probability a 52 of the state transition from the target state s 5 to the state s 2 (a 62 = a 52 ).
さらに、構造調整部117は、状態s2から被マージ対象の状態s6への状態遷移の状態遷移確率a26を、状態s2からマージ対象の状態s5への状態遷移の状態遷移確率a25に設定する(a26=a25)。 Furthermore, the structure adjustment unit 117 sets the state transition probability a 26 of the state transition from the state s 2 to the merged state s 6 and the state transition probability a of the state transition from the state s 2 to the merged state s 5 . Set to 25 (a 26 = a 25 ).
同様に、構造調整部117は、被マージ対象の状態s6から状態s4への状態遷移の状態遷移確率a64を、マージ対象の状態s5から状態s4への状態遷移の状態遷移確率a54に設定する(a64=a54)。 Similarly, the structure adjustment unit 117 uses the state transition probability a 64 of the state transition from the merged target state s 6 to the state s 4 as the state transition probability of the state transition from the merge target state s 5 to the state s 4 . Set to a 54 (a 64 = a 54 ).
さらに、構造調整部117は、状態s4から被マージ対象の状態s6への状態遷移の状態遷移確率a46を、状態s4からマージ対象の状態s5への状態遷移の状態遷移確率a45に設定する(a46=a45)。 Furthermore, the structure adjustment unit 117 sets the state transition probability a 46 of the state transition from the state s 4 to the merged state s 6 and the state transition probability a of the state transition from the state s 4 to the merged state s 5 . Set to 45 (a 46 = a 45 ).
そして、構造調整部117は、状態のマージ後のHMMの必要なパラメータについて、正規化処理を施し、状態のマージの処理を終了する。 Then, the structure adjustment unit 117 performs normalization processing on necessary parameters of the HMM after the state merging, and ends the state merging processing.
すなわち、構造調整部117は、状態のマージ後のHMMの初期確率πi、及び、状態遷移確率aijに、状態の分割の場合と同様の正規化処理を施す。 That is, the structure adjustment unit 117 performs normalization processing similar to that in the case of state division on the initial probability π i and state transition probability a ij of the HMM after state merging.
なお、状態のマージにおいて、マージ対象とする状態と、被マージ対象とする状態とのセット(以下、マージセットともいう)は、1セットに限定されるものではない。 In the state merging, a set of a state to be merged and a state to be merged (hereinafter also referred to as a merge set) is not limited to one set.
すなわち、マージセットとする状態の組(ペア)としては、状態のマージ前のHMMのN個の状態s1ないしsNにおける、双方向の状態遷移が可能な状態の組の中から、例えば、状態どうしの相関が大きい上位n(nは、1以上の値)個の状態の組を選択することができる。 That is, as a set of states (pairs) to be merged, from among a set of states capable of bidirectional state transition in the N states s 1 to s N of the HMM before merging of states, for example, It is possible to select the top n (n is a value of 1 or more) states having a large correlation between the states.
なお、マージセットとする状態の組の数nは、ランダムに設定することもできるし、固定値に設定することもできる。いずれにしても、状態のマージによって、HMMの構造は、状態数が、マージ前の状態数から、n個だけ減少した構造に更新される。 Note that the number n of sets in a merge set can be set randomly or can be set to a fixed value. In any case, by merging states, the structure of the HMM is updated to a structure in which the number of states is reduced by n from the number of states before merging.
ここで、マージセットとする状態の組を選択するときに用いられる状態どうしの相関について説明する。 Here, the correlation between states used when selecting a set of states to be a merge set will be described.
状態どうしの相関とは、他の状態への状態遷移(自己遷移を含む)、及び、他の状態からの状態遷移、並びに、状態から観測される観測値が似ている程度を表し、例えば、以下のようにして求められる。 The correlation between states represents the degree of similarity between state transitions to other states (including self-transitions), state transitions from other states, and observations observed from the states, for example, It is obtained as follows.
すなわち、図29で説明したように、構造調整部117には、パラメータ推定部113でのHMMのパラメータの推定に用いられる調整後時系列データx'が、データ調整部112から供給される。
That is, as described with reference to FIG. 29, the adjusted time series data x ′ used for estimating the parameters of the HMM in the
構造調整部117は、データ調整部112からの調整後時系列データx'を用いて、モデル記憶部115に記憶されたHMMの状態どうしの相関を求める。
The structure adjustment unit 117 uses the adjusted time series data x ′ from the
すなわち、構造調整部117は、モデル記憶部115に記憶されたHMMに対して、フォワードバックワードアルゴリズム(Forward-Backward algorithm)を適用し、データ調整部112からの調整後時系列データx'=x1',x2',・・・,xT''の各時刻tに、状態siにいる確率(時刻tのときの状態が、状態siである確率)である前向き後ろ向き確率pi(t)を求める。
That is, the structure adjustment unit 117 applies a forward-backward algorithm to the HMM stored in the
ここで、フォワードバックワードアルゴリズムとは、各状態siに至る確率を、時間方向に前向きに伝搬することで求められる前向き確率αi(t)と、後ろ向きに伝搬することで求められる後ろ向き確率βi(t)とを統合した確率値を計算するアルゴリズムである。 Here, the forward backward algorithm is a forward probability α i (t) obtained by propagating the probability of reaching each state s i in the time direction and a backward probability β obtained by propagating backward. This is an algorithm for calculating a probability value integrated with i (t).
フォワードバックワードアルゴリズムについては、上述の文献Aに記載されている。 The forward backward algorithm is described in Document A above.
構造調整部117は、モデル記憶部115に記憶されたHMMについて、調整後時系列データx'のうちのデータx1',x2',・・・,xt'を観測して、時刻tに、状態siにいる前向き確率αi(t)を求める。また、構造調整部117は、モデル記憶部115に記憶されたHMMについて、時刻tに、状態siにいて、その後、調整後時系列データx'のうちのデータxt',xt+1',・・・,xT''を観測する(時刻t以降に、データxt',xt+1',・・・,xT''が観測される場合に、時刻tに、状態siにいる)後ろ向き確率βi(t)を求める。
The structure adjustment unit 117 observes the data x 1 ′, x 2 ′,..., X t ′ of the adjusted time series data x ′ with respect to the HMM stored in the
そして、構造調整部117は、前向き確率αi(t)と後ろ向き確率βi(t)とを用いて、時刻tに、状態siにいる前向き後ろ向き確率pi(t)を求める。 The restructuring unit 117, forward probability alpha i (t) and by using the backward probability beta i (t), at time t, determining the forward backward probability being in a state s i p i (t).
構造調整部117は、調整後時系列データx'の時刻t=1,2,・・・,T'のそれぞれにおいて、各状態siにいる前向き後ろ向き確率pi(t)を求める。 The structure adjustment unit 117 calculates a forward / backward probability p i (t) in each state s i at each time t = 1, 2,..., T ′ of the adjusted time-series data x ′.
ここで、ある状態siの前向き後ろ向き確率pi(1),pi(2),・・・,pi(T')は、長さがT'の時系列データであり、この時系列データを、pi(=pi(1),pi(2),・・・,pi(T'))とも表す。 Here, the forward and backward probabilities p i (1), p i (2),..., P i (T ′) of a state s i are time series data having a length T ′, and this time series The data is also expressed as p i (= p i (1), p i (2),..., P i (T ′)).
いま、ある状態siと、他の状態sjの相関を、pi*pjと表すこととすると、構造調整部117は、ある状態siと他の状態sjとの相関pi*pjを、例えば、状態siの前向き後ろ向き確率pi=pi(1),pi(2),・・・,pi(T')と、状態sjの前向き後ろ向き確率pj=pj(1),pj(2),・・・,pj(T')とを用い、次式に従って求める。 Now, assuming that the correlation between a certain state s i and another state s j is represented as p i * p j , the structure adjustment unit 117 has a correlation p i * between the certain state s i and another state s j . the p j, for example, forward and backward probability p i = p i (1) of the state s i, p i (2) , ···, and p i (T '), forward backward probability of the state s j p j = Using p j (1), p j (2),..., p j (T ′), the following equation is used.
pi*pj=Σpi(t)pj(t) p i * p j = Σp i (t) p j (t)
ここで、上述の式において、Σは、時刻tを、1から、調整後時系列データx'の長さT'に代えてのサメーションを意味する。 Here, in the above formula, Σ means a summation in which the time t is changed from 1 to the length T ′ of the adjusted time-series data x ′.
状態siとsjとの相関pi*pjは、状態siの前向き後ろ向き確率piと、状態sjの前向き後ろ向き確率pjとの時間変化のパターンが類似している場合、つまり、状態siとsjのうちの一方の他に、他方が存在することが冗長である場合に高くなる。 Correlation p i * p j in the state s i and s j, if forward and backward probabilities p i of the state s i, a pattern of temporal changes in the forward backward probabilities p j state s j are similar, i.e. , Higher if one of the states s i and s j is redundant in addition to the other.
この場合、状態siとsjとの間に、双方向の状態遷移が存在すると、状態siとsjとの組は、マージセットとして選択される。そして、冗長な状態si及びsjのうちの一方をマージ対象とするとともに、他方を被マージ対象として、マージ対象の状態が、被マージ対象の状態にマージされる。 In this case, between the state s i and s j, the bidirectional state transition is present, the set of the state s i and s j are chosen as the merge set. Then, one of the redundant states s i and s j is set as a merge target, and the other is set as a merge target, and the merge target state is merged with the merge target state.
なお、構造調整部117では、モデル記憶部115に記憶されたHMMの状態どうしの相関を、調整後時系列データx'ではなく、観測時系列データxを用いて求めることも可能である。
The structure adjustment unit 117 can also obtain the correlation between the states of the HMM stored in the
また、マージセットとして選択される2つの状態のうちのいずれを、マージ対象、又は被マージ対象とするかは、例えば、ランダムに選択することができる。 Further, which of the two states selected as the merge set is to be merged or merged can be selected at random, for example.
次に、図33を参照して、構造調整部117がHMMの構造の調整として行う状態の追加について説明する。 Next, with reference to FIG. 33, the addition of a state performed by the structure adjustment unit 117 as adjustment of the structure of the HMM will be described.
図33Aは、状態の追加が行われる前のHMMを示しており、上述の図31Aの場合と同一のHMMである。 FIG. 33A shows an HMM before a state is added, and is the same HMM as in FIG. 31A described above.
図33Bは、図33AのHMMを対象として、状態の追加が行われた後のHMMを示している。 FIG. 33B shows the HMM after the state is added to the HMM of FIG. 33A.
状態の追加は、図31で説明した状態の分割と同様に、HMMの規模を拡大するために行われる。 The addition of the state is performed in order to increase the scale of the HMM, as in the state division described with reference to FIG.
図33Bでは、図33AのHMMの状態s1ないしs6のうちの、例えば、状態s5を、状態を追加する対象として、その状態s5に対して、新たな状態s7が追加されている。 In FIG. 33B, for example, the state s 5 of the states s 1 to s 6 of the HMM of FIG. 33A is added, and a new state s 7 is added to the state s 5 . Yes.
状態の追加は、自己遷移と、状態を追加する対象の状態s5との間での双方向の状態遷移とが可能な新たな状態s7を追加することによって行われる。 Additional states are done by adding the self-transition, the two-way state transition and the new state s 7 possible between the state s 5 for which to add a condition.
したがって、構造調整部117は、新たな状態s7について、自己遷移、及び、状態s5との間の状態遷移を、有効な状態遷移として設定する。 Therefore, the structure adjustment unit 117 sets the self-transition and the state transition between the state s 5 as a valid state transition for the new state s 7 .
また、構造調整部117は、状態の追加では、例えば、状態を追加する対象の状態s5のパラメータを、いわば引き継ぐ形で、新たな状態s7のパラメータを設定する。 In addition, in the addition of the state, the structure adjustment unit 117 sets the parameter of the new state s 7 in a manner that, for example, takes over the parameter of the state s 5 to which the state is to be added.
すなわち、構造調整部117は、新たな状態s7の初期確率π7を、追加の対象の状態s5の初期確率π5に設定するとともに(π7=π5)、新たな状態s7の出力確率密度関数b7(x)を、追加の対象の状態s5の出力確率密度関数b5(x)に設定する(b7(x)=b5(x))。 That is, the structural adjustment unit 117, the initial probability [pi 7 of new state s 7, additional and sets the initial probability [pi 5 of the target state s 5 (π 7 = π 5 ), the new state s 7 The output probability density function b 7 (x) is set to the output probability density function b 5 (x) of the additional target state s 5 (b 7 (x) = b 5 (x)).
さらに、構造調整部117は、状態を追加する対象の状態s5から新たな状態s7への状態遷移の状態遷移確率a57と、新たな状態s7から状態を追加する対象の状態s5への状態遷移の状態遷移確率a75とを、適当な値、すなわち、例えば、a57=a75=0.5等に設定する。 Furthermore, the structure adjusting unit 117, the state s 5 of the subject to be added with the state transition probability a 57 of state transition from the state s 5 of the subject to a new state s 7, a state from the new state s 7 to add state The state transition probability a 75 of the state transition to is set to an appropriate value, for example, a 57 = a 75 = 0.5 or the like.
さらに、構造調整部117は、状態の追加後のHMMの必要なパラメータについて、正規化処理を施し、状態の追加の処理を終了する。 Furthermore, the structure adjustment unit 117 performs normalization processing on the necessary parameters of the HMM after the state addition, and ends the state addition processing.
すなわち、構造調整部117は、状態の追加後のHMMの初期確率πi、及び、状態遷移確率aijに、状態の分割の場合と同様の正規化処理を施す。 That is, the structure adjustment unit 117 performs normalization processing similar to that in the case of state division on the initial probability π i and state transition probability a ij of the HMM after the state is added.
なお、状態の追加において、状態を追加する対象とする状態は、1つの状態に限定されるものではない。 In addition, in the addition of a state, a state to which a state is added is not limited to one state.
すなわち、状態を追加する対象とする状態としては、状態の追加前のHMMのN個の状態s1ないしsNの中から、例えば、ランダムに、1以上N個以下の任意の数nの状態を選択することができる。 In other words, the states to be added as states are, for example, an arbitrary number n of 1 to N in a random manner from among the N states s 1 to s N of the HMM before the addition of the states. Can be selected.
また、状態を追加する対象とする状態としては、状態の追加前のHMMのN個の状態s1ないしsNの中から、例えば、出力確率密度関数bj(x)を定義する分散σ2が大きい上位n個の状態、つまり、状態から観測される観測値に、比較的大きなばらつきがある上位n個の状態を選択することができる。 In addition, as a state to which a state is to be added, for example, a variance σ 2 defining an output probability density function b j (x) from among the N states s 1 to s N of the HMM before the addition of the state The top n states with a large value, that is, the top n states with relatively large variations in observed values observed from the states can be selected.
ここで、状態を追加する対象とする状態の数nは、ランダムに設定することもできるし、固定値に設定することもできる。いずれにしても、状態の追加によって、HMMの構造は、状態数が、追加前の状態数から、n個だけ増加した構造に更新される。 Here, the number n of states to which a state is to be added can be set at random or can be set to a fixed value. In any case, the addition of the state updates the structure of the HMM to a structure in which the number of states is increased by n from the number of states before the addition.
なお、状態の追加と、図31で説明した状態の分割とは、HMMの状態数が増加する点で共通する。但し、状態の追加は、新たな状態が、状態を追加する対象の状態の状態遷移を引き継がない点で、新たな状態が、分割の対象の状態の状態遷移を引き継ぐ状態の分割と相違する。 Note that the addition of states and the division of states described in FIG. 31 are common in that the number of states of the HMM increases. However, the addition of the state is different from the division of the state in which the new state takes over the state transition of the state to be divided, in that the new state does not take over the state transition of the state to which the state is added.
したがって、状態遷移については、図31の状態の分割後のHMMでは、新たな状態は、分割の対象の状態との間の状態遷移の他、分割の対象の状態が有するその他の状態遷移による影響を、直接的に受けるが、状態の追加後のHMMでは、新たな状態は、状態を追加する対象の状態との間の状態遷移だけによる影響を、直接的に受ける。 Therefore, regarding the state transition, in the HMM after the division of the state of FIG. 31, the new state is not only the state transition between the state to be divided but also the influence of other state transitions of the state to be divided. However, in the HMM after the state is added, the new state is directly affected only by the state transition between the state to which the state is added.
その結果、状態の追加では、新たな状態の独立性が、状態の分割の場合に比較して高くなる。 As a result, in the addition of the state, the independence of the new state becomes higher than in the case of the division of the state.
次に、図34を参照して、構造調整部117がHMMの構造の調整として行う状態遷移の追加について説明する。 Next, with reference to FIG. 34, description will be given of addition of state transition performed by the structure adjustment unit 117 as adjustment of the structure of the HMM.
図34Aは、状態遷移の追加が行われる前のHMMを示しており、上述の図31Aの場合と同一のHMMである。 FIG. 34A shows an HMM before a state transition is added, and is the same HMM as in FIG. 31A described above.
図34Bは、図34AのHMMを対象として、状態遷移の追加が行われた後のHMMを示している。 FIG. 34B shows the HMM after the state transition is added for the HMM in FIG. 34A.
状態遷移の追加は、モデル記憶部115に記憶されたHMMの構造において、モデル化対象を適切に表現するのに、状態遷移が足りない問題を解消するために行われる。特に、初期構造設定部116において、HMMの初期構造として、スパースな状態遷移が設定される場合には、モデル化対象の適切な表現に必要な状態遷移を追加することが重要となる。
The addition of the state transition is performed in order to solve the problem that the state transition is insufficient to appropriately represent the modeling target in the structure of the HMM stored in the
図34Bでは、図34AのHMMの状態s1ないしs6のうちの、例えば、状態s4及びs6を、状態遷移の追加対象として、その状態遷移の追加対象である状態s4とs6との間に、双方向の状態遷移が追加されている。 In Figure 34B, of the s 6 to the absence s 1 of the HMM of FIG. 34A, for example, the state s 4 and s 6, as an additional subject of the state transition, the state s 4 is an additional object of the state transition s 6 A bidirectional state transition is added between the two.
状態遷移の追加では、構造調整部117は、状態遷移の追加対象である状態s4とs6との間に、有効な状態遷移を設定する。さらに、構造調整部117は、状態遷移の追加対象である状態s4及びs6のうちの一方である、例えば、状態s4から、他方である、例えば、状態s6への状態遷移確率a46と、他方の状態s6から一方の状態s4への状態遷移確率a64とを、適当な値、すなわち、例えば、a46=a64=0.5等に設定する。 In the addition of the state transition, the structure adjustment unit 117 sets an effective state transition between the states s 4 and s 6 to which the state transition is added. Furthermore, the structure adjustment unit 117 is one of the states s 4 and s 6 to which state transition is added, for example, the state transition probability a from the state s 4 to the other, for example, the state s 6 46 and the state transition probability a 64 from the other state s 6 to the one state s 4 are set to appropriate values, for example, a 46 = a 64 = 0.5.
そして、構造調整部117は、状態遷移の追加後のHMMの必要なパラメータについて、正規化処理を施し、状態遷移の追加の処理を終了する。 Then, the structure adjustment unit 117 performs normalization processing on the necessary parameters of the HMM after the addition of the state transition, and ends the state transition addition processing.
すなわち、構造調整部117は、状態遷移の追加後のHMMの状態遷移確率aijに、状態の分割の場合と同様の正規化処理を施す。 That is, the structure adjustment unit 117 performs normalization processing similar to that in the case of state division on the state transition probability a ij of the HMM after the state transition is added.
なお、状態遷移の追加において、状態遷移の追加対象とする2つの状態のセット(以下、追加対象セットともいう)は、1セットに限定されるものではない。 In addition, in the addition of a state transition, a set of two states to be added as a state transition (hereinafter also referred to as an addition target set) is not limited to one set.
すなわち、追加対象セットとする状態の組としては、状態遷移の追加前のHMMのN個の状態s1ないしsNにおける、双方向の状態遷移が可能でない状態の組の中から、例えば、状態どうしの相関が大きい上位n(nは、1以上の値)個の状態の組を選択することができる。 That is, as a set of states to be added set, for example, from among a set of states where bidirectional state transition is not possible in the N states s 1 to s N of the HMM before the addition of the state transition, the state It is possible to select the top n (n is a value of 1 or more) states having a large correlation between them.
以上のように、双方向の状態遷移が可能でない状態のうちの、相関が大きい状態の組を、追加対象セットとして選択する場合には、例えば、状態遷移がない(直接的な状態遷移ができない)2つの状態のうちの、一方が、他方にとって冗長な存在となったときに、その2つの状態が、状態遷移によって、有機的に接続されることになる。 As described above, when a pair having a high correlation among the states where bidirectional state transition is not possible is selected as the addition target set, for example, there is no state transition (direct state transition is not possible). ) When one of the two states becomes redundant to the other, the two states are organically connected by the state transition.
なお、追加対象セットとする状態の組の数nは、ランダムに設定することもできるし、固定値に設定することもできる。いずれにしても、状態遷移の追加によって、HMMの構造は、状態数は変化しないが、状態遷移がn個だけ増加した、少し複雑な構造に更新される。 Note that the number n of sets in the state to be added can be set randomly or can be set to a fixed value. In any case, with the addition of the state transition, the structure of the HMM is updated to a slightly complicated structure with the number of state transitions increased by n, although the number of states does not change.
次に、図35を参照して、構造調整部117がHMMの構造の調整として行う状態の削除について説明する。 Next, with reference to FIG. 35, deletion of a state performed by the structure adjustment unit 117 as adjustment of the structure of the HMM will be described.
図35Aは、状態の削除が行われる前のHMMを示している。 FIG. 35A shows the HMM before the state is deleted.
図35Aでは、HMMは、9個の状態s1,s2,s3,s4,s5,s6,s7,s8,s9を有し、状態s1とs2との間、状態s1とs4との間、状態s2とs3との間、状態s2とs5との間、状態s3とs6との間、状態s4とs5との間、状態s4とs7との間、状態s5とs6との間、状態s5とs8との間、状態s6とs9との間、状態s7とs8との間、及び、状態s8とs9との間のそれぞれの双方向の状態遷移と、自己遷移とが可能となっている。 In FIG. 35A, the HMM has nine states s 1 , s 2 , s 3 , s 4 , s 5 , s 6 , s 7 , s 8 , s 9 , and between states s 1 and s 2. , Between states s 1 and s 4 , between states s 2 and s 3 , between states s 2 and s 5 , between states s 3 and s 6 , between states s 4 and s 5 , Between states s 4 and s 7 , between states s 5 and s 6 , between states s 5 and s 8 , between states s 6 and s 9, and between states s 7 and s 8. And bi-directional state transition between states s 8 and s 9 and self-transition are possible.
図35Bは、図35AのHMMを対象として、状態の削除が行われた後のHMMを示している。 FIG. 35B shows the HMM after the state is deleted for the HMM in FIG. 35A.
状態の削除は、HMMにおいて、モデル化対象を適切に表現するのに不要な状態を削除するために行われる。 The deletion of the state is performed in the HMM in order to delete a state unnecessary for appropriately expressing the modeling target.
図35Bでは、図35AのHMMの状態s1ないしs9のうちの、例えば、状態s5が削除されている。 In FIG. 35B, for example, the state s 5 is deleted from the states s 1 to s 9 of the HMM in FIG. 35A.
状態の削除は、削除の対象の状態s5と、その状態s5から可能な状態遷移(状態s5への状態遷移を含む)とを削除することによって行われる。 Delete state, the state s 5 of deletion is done by deleting the possible state transitions from the state s 5 (including a state transition to state s 5).
図35Aでは、状態s5は、状態s2,s4,s6,s8のそれぞれとの間の状態遷移、及び、自己遷移が可能であるから、構造調整部117は、削除の対象の状態s5について、その状態s5、並びに、その状態s5と、状態s2,s4,s6,s5のそれぞれとの間の状態遷移、及び、状態s5の自己遷移を削除する。
In FIG. 35A, since the state s 5 can undergo state transitions and self-transitions between the states s 2 , s 4 , s 6 , and s 8 , the structure adjustment unit 117 is subject to deletion. the state s 5, the state s 5, and deletes its state s 5, the state transitions between the respective states s 2, s 4, s 6 ,
さらに、構造調整部117は、状態の削除後のHMMの必要なパラメータについて、正規化処理を施し、状態の削除の処理を終了する。 Furthermore, the structure adjustment unit 117 performs normalization processing on the necessary parameters of the HMM after the state deletion, and ends the state deletion processing.
すなわち、構造調整部117は、状態の削除後のHMMの初期確率πiと、状態遷移確率aijとに、状態の分割の場合と同様の正規化処理を施す。 That is, the structure adjustment unit 117 performs normalization processing similar to that in the case of state division on the initial probability π i of the HMM after state deletion and the state transition probability a ij .
なお、構造調整部117は、削除の対象とする状態を、例えば、次のように選択する。 The structure adjustment unit 117 selects a state to be deleted as follows, for example.
すなわち、図29で説明したように、構造調整部117には、パラメータ推定部113でのHMMのパラメータの推定に用いられる調整後時系列データx'が、データ調整部112から供給される。
That is, as described with reference to FIG. 29, the adjusted time series data x ′ used for the estimation of the HMM parameters in the
構造調整部117は、モデル記憶部115に記憶されたHMMに対して、ビタビ法を適用し、データ調整部112からの調整後時系列データx'=x1',x2',・・・,xT''が観測される尤度を最も大にする状態遷移の過程(状態の系列)(パス)(以下、最尤パスともいう)を求める。
The structure adjustment unit 117 applies the Viterbi method to the HMM stored in the
ここで、ビタビ法とは、各状態siを始点とする状態遷移のパスの中で、時刻tに、状態siから状態sjに状態遷移する状態遷移確率aijと、その状態遷移において、調整後時系列データx'=x1',x2',・・・,xT''のうちの時刻tのサンプル値x'tが観測される確率(出力確率密度関数bj(x)から求められる出力確率)とを、調整後時系列データx'の長さT'に亘って累積した値(生起確率)を最大にするパス(最尤パス)を決定するアルゴリズムである。 Here, the Viterbi method is the state transition probability a ij that makes a state transition from state s i to state s j at time t in the state transition path starting from each state s i , and the state transition , The probability that the sample value x ′ t at time t of the adjusted time series data x ′ = x 1 ′, x 2 ′,..., X T ′ ′ is observed (output probability density function b j (x ) Is an algorithm that determines a path (maximum likelihood path) that maximizes the value (occurrence probability) accumulated over the length T ′ of the adjusted time-series data x ′.
ビタビ法については、上述の文献Aに記載されている。 The Viterbi method is described in Document A described above.
構造調整部117は、調整後時系列データx'について、最尤パスとしての状態の系列s1',s2',・・・,sT''を決定すると、HMMの状態の中で、最尤パスを構成しない状態(最尤パスに含まれない状態)を検出する。 When the structure adjustment unit 117 determines the state sequence s 1 ′, s 2 ′,..., S T ′ ′ as the maximum likelihood path for the adjusted time series data x ′, A state that does not constitute the maximum likelihood path (a state that is not included in the maximum likelihood path) is detected.
最尤パスを構成しない状態は、調整後時系列データx'=x1',x2',・・・,xT''の特徴(時系列パターン)を表現するのに、必ずしも必要ではない状態とみなすことができるので、構造調整部117は、最尤パスを構成しない状態を、削除の対象とする状態として選択する。 The state that does not constitute the maximum likelihood path is not always necessary to express the characteristics (time-series pattern) of the adjusted time-series data x '= x 1 ', x 2 ', ..., x T' ' Since it can be regarded as a state, the structure adjustment unit 117 selects a state that does not constitute the maximum likelihood path as a state to be deleted.
例えば、図35Aの、状態s1ないしs9を有するHMMにおいて、長さT'が16の調整後時系列データx'について、状態の系列s1,s2,s3,s6,s9,s8,s7,s4,s1,s4,s7,s8,s9,s6,s3,s2,s1が、最尤パスとして決定された場合には、構造調整部117は、HMMを構成する状態s1ないしs9のうちの、最尤パスを構成しない状態s5を、削除の対象とする状態として選択する。 For example, in the HMM having the states s 1 to s 9 in FIG. 35A, the state series s 1 , s 2 , s 3 , s 6 , s 9 for the adjusted time series data x ′ having a length T ′ of 16 is shown. , s 8 , s 7 , s 4 , s 1 , s 4 , s 7 , s 8 , s 9 , s 6 , s 3 , s 2 , s 1 are determined as the maximum likelihood path, the structure The adjustment unit 117 selects the state s 5 that does not constitute the maximum likelihood path among the states s 1 to s 9 that constitute the HMM as a state to be deleted.
そして、上述したように、構造調整部117は、削除の対象として選択した状態s5の削除を行い、これにより、図35Aに示したHMMが図35Bに示したHMMとされる構造の調整が行われる。 Then, as described above, the structure adjustment unit 117 deletes the state s 5 selected as the deletion target, thereby adjusting the structure in which the HMM shown in FIG. 35A becomes the HMM shown in FIG. 35B. Done.
なお、構造調整部117では、図31ないし図35で説明した状態の分割、状態のマージ、状態の追加、状態遷移の追加、及び、状態の削除の他、状態遷移の削除も、HMMの構造の調整として行われる。 In addition, the structure adjustment unit 117 performs not only the state division, state merging, state addition, state addition, state transition addition, and state deletion described in FIGS. 31 to 35 but also the state transition deletion. Made as an adjustment.
状態遷移の削除は、状態の削除と同様に行われる。 The state transition is deleted in the same manner as the state deletion.
すなわち、構造調整部117は、上述したように、調整後時系列データx'について、最尤パスとしての状態の系列s1',s2',・・・,sT''を決定し、最尤パスを構成しない状態遷移を、削除の対象とする状態遷移として選択する。 That is, as described above, the structure adjustment unit 117 determines the state sequences s 1 ′, s 2 ′,..., S T ′ ′ as the maximum likelihood path for the adjusted time series data x ′, A state transition that does not constitute the maximum likelihood path is selected as a state transition to be deleted.
さらに、構造調整部117は、削除の対象とする状態遷移として選択した状態遷移を削除し、状態遷移の削除後のHMMの状態遷移確率aijに、状態の分割の場合と同様の正規化処理を施して、状態遷移の削除の処理を終了する。 Furthermore, the structure adjustment unit 117 deletes the state transition selected as the state transition to be deleted, and normalizes the state transition probability a ij of the HMM after the state transition is deleted as in the case of state division. To finish the state transition deletion process.
次に、図36は、図29のデータ処理装置の処理(学習処理)を説明するフローチャートである。 Next, FIG. 36 is a flowchart for explaining processing (learning processing) of the data processing apparatus of FIG.
時系列データ入力部111に対して、モデル化対象からのセンサ信号が供給されると、時系列データ入力部111は、例えば、モデル化対象から観測されるセンサ信号を、そのまま、観測時系列データxとする。
When the sensor signal from the modeling target is supplied to the time series
ここで、観測時系列データxは、上述したように、時系列データ入力部111から、データ調整部112に供給される他、初期構造設定部116にも供給され、初期構造設定部116において、上述したように、出力確率密度関数bj(x)の設定に用いられる。
Here, as described above, the observation time series data x is supplied from the time series
また、初期構造設定部116は、ステップS111において、HMMの初期化を行う。
The initial
すなわち、初期構造設定部116は、HMMの構造を、初期構造に初期化し、その初期構造のHMMのパラメータ(初期パラメータ)を設定する。
That is, the initial
具体的には、初期構造設定部116は、HMMの初期構造として、HMMの状態数を設定し、その状態数のHMMに、スパースな状態遷移を設定する。
Specifically, the initial
さらに、初期構造設定部116は、初期構造のHMMに、初期パラメータとしての状態遷移確率aij、出力確率密度関数bj(x)、及び、初期確率πiの初期値を設定する。
Furthermore, the initial
以上のように、初期構造設定部116において、初期構造と初期パラメータλ={aij,bj(x),πi,i=1,2,・・・,N,j=1,2,・・・,N}が設定されたHMMは、モデル記憶部115に供給されて記憶される。
As described above, in the initial
その後、処理は、ステップS111からステップS112に進み、時系列データ入力部111は、観測時系列データxを、データ調整部112に供給して、処理は、ステップS113に進む。
Thereafter, the process proceeds from step S111 to step S112, the time series
ステップS113では、データ調整部112が、時系列データ入力部111からの観測時系列データxの調整を、図29で説明したようにして行うことで、調整後時系列データx'を得て、パラメータ推定部113に供給し、処理は、ステップS114に進む。
In step S113, the
なお、調整後時系列データx'は、データ調整部112からパラメータ推定部113に供給される他、構造調整部117にも供給される。
The adjusted time series data x ′ is supplied from the
ステップS114では、パラメータ推定部113が、モデル記憶部115に記憶されたHMMのパラメータを初期値とし、データ調整部112からの調整後時系列データx'を用いて、HMMの新たなパラメータを、Baum-Welchの再推定法によって推定する。
In step S114, the
さらに、パラメータ推定部113は、HMMの新たなパラメータを、モデル記憶部115に供給し、上書きの形で記憶させる。
Further, the
また、パラメータ推定部113は、図36の学習処理の開始時に0にリセットされる学習回数を1だけインクリメントし、その学習回数を、評価部114に供給する。
In addition, the
さらに、パラメータ推定部113は、新たなパラメータλによって定義されるHMMから、調整後時系列データx'が観測される尤度を求め、評価部114に供給し、処理は、ステップS114からステップS115に進む。
Further, the
ステップS115では、評価部114は、パラメータ推定部113からの尤度や学習回数に基づき、学習が行われたHMM、つまり、パラメータ推定部113でパラメータλが推定されたHMMを評価し、そのHMMの評価の結果に基づいて、HMMの学習を終了するか否かを判定する。
In step S115, the
ステップS115において、HMMの学習を終了しないと判定された場合、評価部114は、所定の処理を行うことを、時系列データ入力部111、データ調整部112、及び、構造調整部117に要求して、処理は、ステップS116に進む。
If it is determined in step S115 that the learning of the HMM is not terminated, the
ステップS116では、構造調整部117が、評価部114からの要求に応じ、データ調整部112からの調整後時系列データx'を用いて、モデル記憶部115に記憶されたHMMの構造を調整する処理を行い、処理は、ステップS112に戻る。
In step S116, the structure adjustment unit 117 adjusts the structure of the HMM stored in the
ステップS112では、時系列データ入力部111は、評価部114からの要求に応じ、観測時系列データxを、データ調整部112に供給して、処理は、ステップS113に進む。
In step S112, the time series
ステップS113では、データ調整部112が、評価部114からの要求に応じ、時系列データ入力部111からの観測時系列データxの調整を、図29で説明したようにして行うことで、調整後時系列データx'を得て、以下、上述した処理が繰り返される。
In step S113, the
すなわち、パラメータ推定部113が、HMMのパラメータの推定を行い、構造調整部117が、その推定後のパラメータで定義されるHMMの構造の調整を行うことが繰り返される。
That is, it is repeated that the
また、データ調整部112では、例えば、図29で説明したように、観測時系列データxを対象としたダウンサンプリング処理を行うことで、調整後時系列データx'を得る。そして、ダウンサンプリング処理では、HMMの学習が進行するにつれて、調整後時系列データx'のサンプリング周波数が、小さい値から、徐々に大に変更される。
In addition, the
一方、ステップS115において、HMMの学習を終了すると判定された場合、学習処理は終了する。 On the other hand, if it is determined in step S115 that learning of the HMM is to be terminated, the learning process is terminated.
以上のように、図29のデータ処理装置では、HMMの構造を、スパースな構造に初期化し、その後、学習の進行に応じて、学習に用いられる観測時系列データxを調整して、調整後時系列データx'を出力し、調整後時系列データx'を用い、HMMのパラメータを推定し、HMMの構造を調整することが繰り返される。 As described above, the data processing apparatus of FIG. 29 initializes the structure of the HMM to a sparse structure, and then adjusts the observation time series data x used for learning according to the progress of learning, and after adjustment The time series data x ′ is output, the adjusted time series data x ′ is used, the HMM parameters are estimated, and the HMM structure is adjusted.
その結果、複雑なモデル化対象であっても、そのモデル化対象を適切にモデル化するHMMを得ることができる。 As a result, it is possible to obtain an HMM that appropriately models the modeling target even if it is a complicated modeling target.
すなわち、複雑なモデル化対象のモデル化には、一般に、状態数、及び状態遷移の数が多いHMMが必要となるが、状態数、及び状態遷移の数が多い大規模なHMMを、最初から用いて、そのHMMのパラメータを正しく推定することは難しい。 That is, for modeling a complex modeling target, an HMM with a large number of states and state transitions is generally required, but a large-scale HMM with a large number of states and state transitions is required from the beginning. It is difficult to correctly estimate the parameters of the HMM.
図29のデータ処理装置では、HMMの構造を、スパースな構造に初期化すること、学習の進行に応じて、観測時系列データxを調整すること、及び、HMMの構造を調整することによって、複雑なモデル化対象を適切に表現するHMMが、大規模なHMMであっても、そのような大規模なHMMのパラメータを正しく推定する(正しいと推測されるパラメータを推定する)ことができる。 In the data processing device of FIG. 29, by initializing the structure of the HMM to a sparse structure, adjusting the observation time-series data x according to the progress of learning, and adjusting the structure of the HMM, Even if an HMM that appropriately represents a complicated modeling target is a large-scale HMM, parameters of such a large-scale HMM can be correctly estimated (parameters estimated to be correct).
さらに、図29のデータ処理装置では、モデル化対象が未知の対象であり、HMMの初期構造や、パラメータの初期値(初期パラメータ)をあらかじめ決定(予測)することができない場合であっても、そのモデル化対象を適切に表現するHMM(適切な構造であり、かつ、適切なパラメータのHMM)を求めることができる。 Furthermore, in the data processing device of FIG. 29, even if the modeling target is an unknown target and the initial structure of the HMM and the initial value (initial parameter) of the parameter cannot be determined (predicted) in advance, An HMM that appropriately represents the modeling target (an HMM having an appropriate structure and appropriate parameters) can be obtained.
次に、図37は、図36のステップS116において、構造調整部117が行う処理の詳細を説明するフローチャートである。 Next, FIG. 37 is a flowchart for explaining details of processing performed by the structure adjustment unit 117 in step S116 of FIG.
構造調整部117は、ステップS121において、モデル記憶部115に記憶されたHMMに対して、図31で説明した状態の分割を行い、処理は、ステップS122に進む。
In step S121, the structure adjustment unit 117 divides the HMM stored in the
ステップS122では、構造調整部117は、データ調整部112から供給される調整後時系列データx'を用い、状態の分割後のHMMを構成する状態どうしの相関を求めて、処理は、ステップS123に進む。
In step S122, the structure adjustment unit 117 uses the adjusted time-series data x ′ supplied from the
ステップS123では、構造調整部117は、ステップS122で求めた相関に基づき、状態の分割後のHMMに対して、図32で説明した状態のマージを行い、処理は、ステップS124に進む。 In step S123, the structure adjustment unit 117 performs the state merging described in FIG. 32 on the HMM after the state division based on the correlation obtained in step S122, and the process proceeds to step S124.
ステップS124では、構造調整部117は、ステップS122で求めた相関に基づき、状態のマージ後のHMMに対して、図34で説明した状態遷移の追加を行い、処理は、ステップS125に進む。 In step S124, the structure adjustment unit 117 adds the state transition described in FIG. 34 to the HMM after the state merging based on the correlation obtained in step S122, and the process proceeds to step S125.
ステップS125では、構造調整部117は、状態遷移の追加後のHMMに対して、図33で説明した状態の追加を行い、処理は、ステップS126に進む。 In step S125, the structure adjustment unit 117 adds the state described in FIG. 33 to the HMM after the addition of the state transition, and the process proceeds to step S126.
ステップS126では、構造調整部117は、状態の追加後のHMMを用い、データ調整部112からの調整後時系列データx'について、最尤パスを求めて、処理は、ステップS127に進む。
In step S126, the structure adjustment unit 117 obtains the maximum likelihood path for the adjusted time-series data x ′ from the
ステップS127では、構造調整部117は、最尤パスを構成しない状態、及び、状態遷移を検出する。さらに、ステップS127では、構造調整部117は、図35で説明したように、最尤パスを構成しない状態、及び状態遷移の削除を行う。 In step S127, the structure adjustment unit 117 detects a state that does not constitute the maximum likelihood path and a state transition. Further, in step S127, the structure adjustment unit 117 deletes the state that does not constitute the maximum likelihood path and the state transition as described with reference to FIG.
そして、構造調整部117は、状態、及び状態遷移の削除後のHMMのパラメータによって、モデル記憶部115の記憶値を更新し、処理はリターンする。
Then, the structure adjustment unit 117 updates the stored value of the
以上のように、構造調整部117では、モデル記憶部115に記憶されたHMMについて、状態の分割、状態のマージ、状態の追加、状態遷移の追加、状態の削除、及び、状態遷移の削除という6種類の構造の調整を行う。
As described above, the structure adjustment unit 117 refers to state division, state merge, state addition, state transition addition, state deletion, and state transition deletion for the HMM stored in the
ここで、図36及び図37では、評価部114は、学習回数が1回増加するごとに、構造調整部117に対して、構造の調整を要求する。
Here, in FIG. 36 and FIG. 37, the
したがって、構造調整部117では、学習回数が1回増加するごとに、HMMの構造の調整が行われるが、HMMの構造の調整は、学習回数の1回の増加以外の学習の進行に応じて行うことが可能である。 Therefore, the structure adjustment unit 117 adjusts the structure of the HMM every time the number of learnings is increased by one, but the adjustment of the structure of the HMM is performed according to the progress of learning other than the one increase in the number of learnings. Is possible.
すなわち、評価部114は、学習回数や尤度を、学習の進行の状況を表す進行状況情報として、データ調整部112に供給するが、この進行状況情報は、構造調整部117にも供給することができる。
That is, the
この場合、構造調整部117は、評価部114からの進行状況情報に応じて、HMMの構造の調整を行う。
In this case, the structure adjustment unit 117 adjusts the structure of the HMM according to the progress status information from the
すなわち、構造調整部117には、例えば、進行状況情報としての学習回数が、前回の構造の調整時の回数から、所定の複数回数だけ増加した値になったときに、構造の調整を行わせることができる。 That is, for example, the structure adjustment unit 117 adjusts the structure when the number of times of learning as the progress status information becomes a value increased by a predetermined number of times from the number of times of adjustment of the previous structure. be able to.
また、構造調整部117には、例えば、進行状況情報としての尤度が、前回の構造の調整時の値から低下したときや、尤度が増加する割合が、所定値以下になったとき等に、構造の調整を行わせることができる。 In addition, the structure adjustment unit 117, for example, when the likelihood as the progress status information has decreased from the value at the time of previous adjustment of the structure, or when the rate of increase in the likelihood is below a predetermined value, etc. The structure can be adjusted.
なお、構造調整部117によるHMMの構造の調整は、HMMの構造が、モデル化対象を表現する最適な構造に収束することを保証するものではない。 Note that adjustment of the structure of the HMM by the structure adjustment unit 117 does not guarantee that the structure of the HMM converges to an optimal structure that represents the modeling target.
しかしながら、構造調整部117によるHMMの構造の調整によれば、モデル化対象を表現するのにあった方が適切であると推測される状態や、状態遷移が追加される一方で、モデル化対象を表現するのに必要ないと推測される状態や、状態遷移が削除されることで、複雑なモデル化対象であっても、そのモデル化対象を適切にモデル化する大規模なHMMを得ることができる。 However, according to the adjustment of the structure of the HMM by the structure adjustment unit 117, a state estimated to be appropriate for expressing the modeling target and a state transition are added, while the modeling target is added. By removing the states that are assumed to be unnecessary to express the state and state transitions, even for complex modeling targets, obtain a large-scale HMM that appropriately models the modeling target Can do.
なお、図37では、状態の分割、状態のマージ、状態遷移の追加、状態の追加、状態の削除、状態遷移の削除の順番で、構造の調整を行うこととしたが、構造の調整を行う順番は、これに限定されるものではない。 In FIG. 37, the structure is adjusted in the order of state division, state merging, state transition addition, state addition, state deletion, and state transition deletion. However, the structure adjustment is performed. The order is not limited to this.
次に、図38ないし図40を参照して、図29のデータ処理装置について行ったシミュレーションについて説明する。 Next, with reference to FIGS. 38 to 40, the simulation performed for the data processing apparatus of FIG. 29 will be described.
なお、シミュレーションでは、観測時系列データxとして、2次元空間をランダムに移動するロボットの移動軌跡の座標(x,y)のシーケンスを用いた。 In the simulation, a sequence of coordinates (x, y) of the movement trajectory of the robot moving randomly in the two-dimensional space was used as the observation time series data x.
また、ロボットが移動可能な2次元空間の座標(x,y)の範囲は、式-100<x<+100、及び、式-100<y<+100で表される範囲のうちの、次式の範囲で示される4つのブロック#1,#2,#3、及び#4の領域を除く範囲とした。
In addition, the range of coordinates (x, y) in the two-dimensional space in which the robot can move is the following among the ranges represented by the expression -100 <x <+100 and the expression -100 <y <+100. A range excluding the areas of the four
ブロック#1:-70<x<-20,-70<y<-20
ブロック#2:-70<x<-20,+20<y<+70
ブロック#3:+20<x<+70,-70<y<-20
ブロック#4:+20<x<+70,+20<y<+70
Block # 1: -70 <x <-20, -70 <y <-20
Block # 2: -70 <x <-20, +20 <y <+70
Block # 3: +20 <x <+70, -70 <y <-20
Block # 4: +20 <x <+70, +20 <y <+70
ロボットは、原点(0,0)をスタートの位置とし、ランダムに微小な移動量(Δx,Δy)を逐次決定しながら、移動可能な範囲で、10000ステップ(回)だけ移動させた。 The robot was moved by 10,000 steps (times) within a movable range while sequentially determining a small amount of movement (Δx, Δy) with the origin (0,0) as the start position.
図38は、ロボットの移動軌跡を示している。 FIG. 38 shows the movement trajectory of the robot.
すなわち、図38Aは、スタートの位置(原点)から、200ステップだけ移動するまでの移動軌跡を示しており、図38Bは、スタートの位置から、10000ステップだけ移動するまでの移動軌跡を示している。 That is, FIG. 38A shows a movement trajectory from the start position (origin) to movement by 200 steps, and FIG. 38B shows a movement trajectory from the start position to movement by 10000 steps. .
図38では、黒丸が、微小な移動量(Δx,Δy)だけ移動した後の座標を表している。また、図38では、その黒丸を、時刻順に、直線で結ぶことによって、移動軌跡が示されている。 In FIG. 38, the black circles represent the coordinates after moving by a minute movement amount (Δx, Δy). Moreover, in FIG. 38, the movement locus is shown by connecting the black circles with straight lines in time order.
図38によれば、ロボットが、移動可能な範囲の全体を、ランダムに移動していることが分かる。 According to FIG. 38, it can be seen that the robot is moving randomly throughout the entire movable range.
シミュレーションでは、以上のような10000ステップ分の座標(x,y)のシーケンスを、観測時系列データxとして用いたが、ロボットが移動可能な範囲、及び、観測時系列データxが2次元空間の座標(x,y)であることは、未知とした。 In the simulation, the sequence of coordinates (x, y) for 10,000 steps as described above was used as the observation time series data x, but the range in which the robot can move and the observation time series data x are in the two-dimensional space. The coordinates (x, y) are unknown.
すなわち、シミュレーションでは、観測時系列データxである座標(x,y)(移動軌跡)が観測されるロボットに関する情報は、事前に与えられず、2次元の観測時系列データxが観測されることだけが、事前に分かっていることとした。 In other words, in the simulation, information about the robot where the coordinate (x, y) (movement trajectory) that is the observation time series data x is observed is not given in advance, and the two-dimensional observation time series data x is observed. Only that was known in advance.
また、シミュレーションでは、初期構造のHMMとして、図30Aに示した16状態を有するHMMを採用し、HMMの各状態sjの出力確率密度関数bj(x)としては、正規分布を採用した。 In the simulation, an HMM having the 16 states shown in FIG. 30A is used as the HMM having the initial structure, and a normal distribution is used as the output probability density function b j (x) of each state s j of the HMM.
なお、シミュレーションでは、学習回数が36回になった段階で、HMMの学習を終了した。 In the simulation, the learning of the HMM was completed when the number of learning was 36.
また、シミュレーションでは、上述したように、10000ステップ分の座標(x,y)のシーケンスである観測時系列データ、つまり、10000サンプルからなる観測時系列データを、学習に用いたが、36回の学習のうちの1回目の学習では、10000サンプルからなる観測時系列データに対して、サンプリング周波数が元の1/10になるように、ダウンサンプリング処理を行い、その結果得られる、1000サンプルからなる調整後時系列データを、HMMのパラメータの推定等に用いた。 In the simulation, as described above, observation time series data that is a sequence of coordinates (x, y) for 10000 steps, that is, observation time series data consisting of 10000 samples is used for learning. In the first learning, the downsampling process is performed on the observation time-series data consisting of 10000 samples so that the sampling frequency is 1/10 of the original, and the result is 1000 samples. The adjusted time series data was used for estimation of HMM parameters.
その後は、学習回数が3回だけ増加するごとに、サンプリング周波数が元の1/9,1/8,1/7,・・・,1/1となるように、調整後時系列データのサンプリング周波数を、徐々に大きくした。この場合、学習回数が28回目以上となると、調整後時系列データは、観測時系列データそのものとなる。 After that, every time the number of learning increases by 3 times, the adjusted time series data is sampled so that the sampling frequency becomes the original 1/9, 1/8, 1/7, ..., 1/1. The frequency was gradually increased. In this case, the adjusted time-series data becomes the observed time-series data itself when the number of learning times is 28th or more.
図39は、学習の結果得られたHMMを示している。 FIG. 39 shows an HMM obtained as a result of learning.
すなわち、図39Aは、学習が開始されてから間もない時点(学習初期)のHMMを示しており、図39Bは、学習がある程度進行した時点(学習中期)のHMMを示している。さらに、図39Cは、十分な学習回数の学習を行った後(学習終了後)のHMMを示している。 That is, FIG. 39A shows an HMM at a time point immediately after learning is started (early learning stage), and FIG. 39B shows an HMM at a time point when learning has progressed to some extent (mid learning period). Further, FIG. 39C shows the HMM after learning a sufficient number of times of learning (after completion of learning).
なお、図39において、黒丸は、HMMの状態sjの出力確率密度関数bj()の平均ベクトルが指す座標(x,y)を表し、状態sjに相当する。 In FIG. 39, black circles represent the coordinates (x, y) indicated by the average vector of the output probability density function b j () of the state s j of the HMM, and correspond to the state s j .
また、図39では、状態siから状態sjへの状態遷移の状態遷移確率aijが0より大である場合(状態siから状態sjへの状態遷移が有効な状態遷移である場合)、状態siに相当する黒丸と、状態sjに相当する黒丸とを、直線(線分)で結んである。したがって、図39において、黒丸どうしを接続する直線は、(有効な)状態遷移に相当する。 In FIG. 39, when the state transition probability a ij of the state transition from the state s i to the state s j is greater than 0 (when the state transition from the state s i to the state s j is an effective state transition). ), A black circle corresponding to the state s i and a black circle corresponding to the state s j are connected by a straight line (line segment). Therefore, in FIG. 39, the straight line connecting the black circles corresponds to a (valid) state transition.
なお、図39において、状態遷移の方向を表す矢印の図示は、省略してある。 In FIG. 39, an arrow indicating the direction of state transition is not shown.
図39では、状態が、移動可能な範囲において、万遍なく配置され、さらに、いわば、単一(一定)の移動の仕方で移動可能な2つの位置(座標)に相当する状態どうしの間に、状態遷移が存在する。したがって、2次元空間の移動可能な範囲を移動する移動の仕方の特性(特徴)を適切に表現するHMMを得ることができていることが分かる。 In FIG. 39, the states are uniformly arranged in a movable range, and moreover, between states corresponding to two positions (coordinates) that can be moved in a single (constant) manner of movement. There is a state transition. Therefore, it can be seen that an HMM that adequately expresses the characteristics (features) of the movement method for moving within the movable range of the two-dimensional space can be obtained.
図40は、学習の結果得られたHMMから、調整後時系列データについて求められた対数尤度(尤度の対数値)を示している。 FIG. 40 shows the log likelihood (logarithm value of likelihood) obtained for the adjusted time-series data from the HMM obtained as a result of learning.
図40によれば、学習回数が増加するにつれ、HMMから求められる対数尤度が向上していく傾向があることが分かる。 As can be seen from FIG. 40, as the number of times of learning increases, the log likelihood obtained from the HMM tends to improve.
すなわち、図40によれば、学習が進むにつれて、移動軌跡の特徴を適切に表現するHMMが得られることが分かる。 That is, according to FIG. 40, it can be seen that as learning progresses, an HMM that appropriately represents the characteristics of the movement trajectory is obtained.
以上のように、図29のデータ処理装置では、初期構造設定部116によって与えられるスパースな状態遷移によって構成される粗いHMMから学習を開始し、構造調整部117によって学習の進行に応じて徐々にHMMが詳細化される。これと平行して、データ調整部112によって、観測時系列データのマクロな特徴から学習を開始し、学習の進行に応じて徐々にミクロな特徴を含むような学習へと調整が行われる。
As described above, in the data processing device of FIG. 29, learning is started from the coarse HMM configured by the sparse state transition given by the initial
以上のような、初期構造設定部116によるHMMのスパースな初期構造の設定、構造調整部117によるHMMの構造の調整、及び、データ調整部112による観測時系列データの調整の機能が働くことで、従来は扱うことが困難であった大規模なHMMの構造の決定とパラメータの推定を行うことが可能となる。
The functions of setting the sparse initial structure of the HMM by the initial
なお、図29のデータ処理装置は、システム(システムとは、1つの装置、又は、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは問わない)の同定、制御、人工知能などに利用される状態遷移モデルの学習に適用することができる。特に、自律ロボット等の自律エージェントその他が、環境や、自身の状態を認知(認識)し、その認知の結果に対応した行動をとる認知行動を行うための学習等に適用することができる。また、図29のデータ処理装置は、交通、金融、情報などの社会システムや、物理現象や化学反応などを対象とした物理システム・化学システム、さらには、生物に関連する生物システムなどを対象としたネットワークの学習に適用することができる。 Note that the data processing device in FIG. 29 is a system (a system is a device or a logical collection of a plurality of devices, and whether or not each component device is in the same housing). It can be applied to learning of state transition models used for identification, control, artificial intelligence, etc. In particular, the present invention can be applied to learning or the like for an autonomous agent such as an autonomous robot to recognize (recognize) the environment and its state and to perform a cognitive action that takes an action corresponding to the recognition result. 29 is intended for social systems such as traffic, finance and information, physical systems and chemical systems for physical phenomena and chemical reactions, and biological systems related to living things. Can be applied to network learning.
また、上述の場合には、初期構造設定部116において、HMMの構造を、スパースな構造に初期化することとしたが、初期構造設定部116では、その他、例えば、HMMの構造を、エルゴディックな構造等に初期化すること等が可能である。
In the above case, the initial
さらに、上述の場合には、データ調整部112において、学習の進行に応じて、観測時系列データを調整することとしたが、観測時系列データの調整は、行わないようにすることができる。この場合、図29のデータ処理装置において、データ調整部112は、設ける必要がない。
Further, in the above-described case, the
また、構造調整部117による構造の調整は、例えば、尤度そのものや、尤度の変化の割り合いに応じて、行うか、又は行わないかを決定することが可能である。 In addition, it is possible to determine whether or not the structure adjustment by the structure adjustment unit 117 is performed or not according to the likelihood itself or the likelihood change ratio.
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。 Next, the series of processes described above can be performed by hardware or software. When a series of processing is performed by software, a program constituting the software is installed in a general-purpose computer or the like.
そこで、図41は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。 Therefore, FIG. 41 shows a configuration example of an embodiment of a computer in which a program for executing the series of processes described above is installed.
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク155やROM153に予め記録しておくことができる。
The program can be recorded in advance on a
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体161に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体161は、いわゆるパッケージソフトウエアとして提供することができる。
Alternatively, the program is stored temporarily on a
なお、プログラムは、上述したようなリムーバブル記録媒体161からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部158で受信し、内蔵するハードディスク155にインストールすることができる。
The program is installed on the computer from the
コンピュータは、CPU(Central Processing Unit)152を内蔵している。CPU152には、バス151を介して、入出力インタフェース160が接続されており、CPU152は、入出力インタフェース160を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部157が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)153に格納されているプログラムを実行する。あるいは、また、CPU152は、ハードディスク155に格納されているプログラム、衛星若しくはネットワークから転送され、通信部158で受信されてハードディスク155にインストールされたプログラム、またはドライブ159に装着されたリムーバブル記録媒体161から読み出されてハードディスク155にインストールされたプログラムを、RAM(Random Access Memory)154にロードして実行する。これにより、CPU152は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU152は、その処理結果を、必要に応じて、例えば、入出力インタフェース160を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部156から出力、あるいは、通信部158から送信、さらには、ハードディスク155に記録等させる。
The computer includes a CPU (Central Processing Unit) 152. An input /
図42は、情報処理装置の機能構成例を示す図である。 FIG. 42 is a diagram illustrating a functional configuration example of the information processing apparatus.
図42に示される情報処理装置には、因果知覚に関する構成と、因果関係に基づいてロボット(エージェント)の行動を決定する構成が含まれる。因果知覚に関する構成は図15の因果部63の構成に相当し、因果関係に基づいてロボットの行動を決定する構成は図15の行動制御部64の構成に相当する。
The information processing apparatus shown in FIG. 42 includes a configuration relating to causal perception and a configuration for determining the behavior of the robot (agent) based on the causal relationship. The configuration related to the causal perception corresponds to the configuration of the
図42に示されるように、情報処理装置は、因果学習処理部201、因果推定処理部202、因果候補リスト記憶部203、因果候補リスト整理処理部204、および行動決定部205から構成される。
As shown in FIG. 42, the information processing apparatus includes a causal
因果学習処理部201は、上述したようにして生成された距離HMM、光HMM、エネルギーHMMなどの複数のモーダルのHMMを取得し、因果学習を行う。因果学習処理部201は、因果学習を行うことによって得られたデータを因果推定処理部202に出力する。
The causal
HMMのノード(状態)は同一のHMM内では必ず1つだけが発火するため、その事象は互いに排反、かつ網羅的(MECE: Mutually Exclusive and Collectively Exhaustive)な事象の集合である。従って、あるHMMにおけるノード遷移を、単数または複数の別のHMMのノード発火に因果付けるということが可能になる。例えば、N種類のHMMのそれぞれの発火ノードの時間変化が記録されており、これが因果学習に用いられる。 Since only one HMM node (state) is always fired in the same HMM, the event is a set of mutually exclusive and collectively (MECE) events. Therefore, it is possible to cause a node transition in one HMM to be caused by node firing of one or more other HMMs. For example, the time change of each ignition node of N types of HMMs is recorded, and this is used for causal learning.
因果推定処理部202は、因果学習処理部201から供給されたデータを用いて因果推定を行う。因果推定処理部202は、因果推定を行うことによって得られた因果関係を表すリストを因果候補リスト記憶部203に記憶させる。
The causal
事象間の因果関係は後述するように条件付確率によって表されるが、その条件付確率を求めるために用いられるデータを取得することを因果学習という。また、因果学習によって取得されたデータを用いて条件付確率を求め、因果関係を推定することを因果推定という。因果知覚は、因果推定によって事象間の因果関係が知覚されている状態を表す。 The causal relationship between events is expressed by a conditional probability as will be described later, and acquiring data used to obtain the conditional probability is called causal learning. In addition, obtaining a conditional probability using data acquired by causal learning and estimating a causal relationship is called causal estimation. Causal perception represents a state in which a causal relationship between events is perceived by causal estimation.
因果候補リスト整理処理部204は、因果候補リスト記憶部203に記憶されている因果候補リストを適宜整理する。
The causal candidate list
行動決定部205は、目標値が与えられたとき、因果候補リスト記憶部203に記憶されている因果候補リストを参照して行動を決定する。行動決定部205により決定された行動を表すコマンドに基づいてロボットの行動が制御される。
When the target value is given, the
なお、因果推定処理部202においては、基本的に、次のようにして因果推定が行われる。それぞれの内容については後に詳述する。
The causal
すなわち、ある事象a1の因果推定をするにあたり、起こりうるすべての事象が、少なくともロボットの経験の範囲内で、事象a1を含む互いに排反かつ網羅的な事象a1,a2,a3,・・・よりなる集合Aと、それ以外の事象の集合である集合Bに分類される。 That is, in the causal estimation of an event a1, all possible events are within the range of the robot's experience, and they are mutually exclusive and exhaustive events a1, a2, a3, etc. including the event a1. And a set B that is a set of other events.
因果関係は、これまでに事象akと同時に生起したことがあるすべての事象bに対して求められる条件付確率P(T:ak→a1|ak,b)によって表される。T:ak→a1は事象akから事象a1への遷移を表す。以下、適宜、T:ak→a1を単にTと表す。 The causal relationship is represented by a conditional probability P (T: ak → a1 | ak, b) obtained for all the events b that have occurred simultaneously with the event ak. T: ak → a1 represents a transition from event ak to event a1. Hereinafter, T: ak → a1 is simply expressed as T as appropriate.
条件付確率P(T|ak,b)は下式によって表されるので、N(T,ak,b)とN(ak,b)の値から条件付確率が求められる。
P(T|ak,b)=P(T,ak,b)/P(ak,b)≒N(T,ak,b)/N(ak,b)
Since the conditional probability P (T | ak, b) is expressed by the following equation, the conditional probability is obtained from the values of N (T, ak, b) and N (ak, b).
P (T | ak, b) = P (T, ak, b) / P (ak, b) ≈N (T, ak, b) / N (ak, b)
N(T,ak,b)は、事象akと事象bが同時に生起し、次の時刻に、事象a1が生起した回数を表す。N(ak,b)は、事象akと事象bが同時に生起した回数を表す。 N (T, ak, b) represents the number of times event ak and event b occur simultaneously and event a1 occurs at the next time. N (ak, b) represents the number of times that event ak and event b occurred simultaneously.
このようにして求められた条件付確率には誤差があり、その大きさは√N(T,ak,b)に反比例すると期待される。よって、N(T,ak,b)を適切な範囲の値に保つように、粒度を変えるなどして事象bを制御すれば誤差を小さくすることができる。 There is an error in the conditional probability obtained in this way, and its magnitude is expected to be inversely proportional to √N (T, ak, b). Therefore, if the event b is controlled by changing the granularity so as to keep N (T, ak, b) within a suitable range, the error can be reduced.
具体的には、ロボットの経験数が少ない場合は、事象bの表現の仕方として例えば「明るいとき」などの大雑把な表現を用いる。また、経験数が増加するにつれて、「明るいとき」に含まれる、「照度が700から800ルクスのとき」、「明るい光が後方から差してきたとき」、「警告音とともに明るく照らし出されたとき」等の、より細かい粒度の表現を用いるようにすることで経験数に応じた誤差を小さく保ちながら、より細やかな制御や因果推定を行うことができる。 Specifically, when the number of experienced robots is small, a rough expression such as “when bright” is used as a method of expressing the event b. Also, as the number of experiences increases, it is included in “when bright”, “when illuminance is between 700 and 800 lux”, “when bright light comes from behind”, and “when illuminated with a warning sound” By using a finer granularity expression such as "", it is possible to perform finer control and causal estimation while keeping the error according to the number of experiences small.
因果関係が時間的に変動する場合、事象の同時生起回数N(T,ak,b)、N(ak,b)を時間減衰させることで、条件付確率を因果関係の時間的な変動に追従させることができる。 When the causal relationship varies with time, the conditional probability follows the temporal variation of the causal relationship by decaying the number of concurrent occurrences of the event N (T, ak, b) and N (ak, b). Can be made.
例えば、過去に1000回(N(ak,b)=1000)試行して500回(N(T,ak,b)=500)成功しており、P(T|ak,b)=500/1000=0.5だったとする。また、いま10回試行して8回成功したとする。時間減衰がない場合、いま試行した10回を含めるとP(T|ak,b)=508/1010=0.503なので、過去に試行した場合に較べて10回中8回という高い確率で成功したとしてもP(T|ak,b)の値にほとんど影響がない。 For example, in the past 1000 attempts (N (ak, b) = 1000) have been successful 500 times (N (T, ak, b) = 500) and P (T | ak, b) = 500/1000 Suppose = 0.5. Also, suppose we have tried 10 times and succeeded 8 times. If there is no time decay, including 10 trials now, P (T | ak, b) = 508/1010 = 0.503, so it is assumed that it succeeded with a high probability of 8 out of 10 compared to previous trials. Has little effect on the value of P (T | ak, b).
これに対し、時間減衰がある場合、分子・分母に減衰率がかけられて評価を受けることになるので、減衰率を0.1とすると、過去の試行によって求められたP(T|ak,b)はP(T|ak,b)=50/100=0.5の状態になる。この状態に対して最新の試行結果を反映させると、P(T|ak,b)=58/110=0.527になる。仮に、過去の試行がもっと古く、さらに減衰しているとすると例えばP(T|ak,b)=5/10=0.5の状態になり、この状態に対して最新の試行結果を反映させると、P(T|ak,b)=13/20=0.65になる。 On the other hand, if there is time decay, the numerator and denominator are multiplied by the decay rate, and the evaluation is received. Therefore, if the decay rate is 0.1, P (T | ak, b) obtained by past trials Becomes P (T | ak, b) = 50/100 = 0.5. When the latest trial result is reflected in this state, P (T | ak, b) = 58/110 = 0.527. For example, if the past trial is older and further attenuated, for example, P (T | ak, b) = 5/10 = 0.5, and if the latest trial result is reflected in this state, P (T | ak, b) = 13/20 = 0.65.
すなわち、P(T|ak,b)に対して、最近の試行結果への追従性を持たせることができる(P(T|ak,b)の値が最近の試行結果に大きな影響を受けるようにすることができる)。同時生起回数N(T,ak,b)、N(ak,b)を同じ減衰率で減衰させることにより、最近の試行結果が存在しない場合でも過去の経験に基づく確率推定値をそのまま利用可能である。また、前記推定誤差の計算に影響を与えるN(T,ak,b)の値が時間経過に伴い小さくなるため、その推定誤差は次第に大きくなり、過去の経験は最近の経験と比較して不確定であるという性質を自動的に表現することができる。 In other words, P (T | ak, b) can be made to follow the recent trial result (the value of P (T | ak, b) is greatly influenced by the recent trial result. Can be). By attenuating the number of simultaneous occurrences N (T, ak, b) and N (ak, b) at the same attenuation rate, the probability estimate based on past experience can be used as it is even if there is no recent trial result. is there. In addition, the value of N (T, ak, b), which affects the calculation of the estimation error, decreases with time, so the estimation error gradually increases, and past experience is less than that of recent experience. The property of being definite can be expressed automatically.
ところで、条件付確率P(T|ak,b)は、モデル当てはめの観点から見れば観測T:ak→a1(事象akから事象a1への遷移T)のもとで、「(ak,b)ならT:ak→a1が生起する」というモデルの尤度を与える式である。 By the way, the conditional probability P (T | ak, b) is calculated from the viewpoint of model fitting under the observation T: ak → a1 (transition T from event ak to event a1), “(ak, b) Is the expression that gives the likelihood of the model that T: ak → a1 occurs.
一方、これを事後確率として、(ak,b)が同時生起した場合に遷移T:ak→a1の生起する確率と見ることもでき、これにより、遷移Tを生起させるための制御に条件付確率P(T|ak,b)を利用することができる。具体的には、すべての事象bのうちで、P(T|ak,b)が最大となる事象bを事象akとともに達成できれば遷移Tが生起する確率が一番高くなるので、遷移Tを生起させるためには、そのような事象bを探して行動決定すればよいことになる。 On the other hand, this can be regarded as the probability that transition T: ak → a1 will occur when (ak, b) occur simultaneously with this posterior probability, and thus the conditional probability for the control to cause transition T P (T | ak, b) can be used. Specifically, among all the events b, if the event b with the maximum P (T | ak, b) can be achieved together with the event ak, the transition T is most likely to occur. In order to make it happen, it is only necessary to search for such an event b and determine an action.
この行動決定の方法の欠点は、経験のばらつきによる推定誤差の影響を受けやすいことである。例えば、10回中5回成功した事象と、1000回中501回成功した事象のどちらを実行すべきであるのかを考える。前者の事象は、本当は成功率が0.55なのに、たまたまこの10回の試行では5回しか成功しなかったため、成功率が0.5のように見えているだけかもしれない。あと1回試してみれば6/11=0.545になるかもしれないし、5/11=0.455になるかもしれない。このような状況下では、P(T|ak,b)が最大になるような事象bを単純に選ぶのではうまくいかず、この点に欠点があるといえる。その理由は、たまたま最初の方だけ運の悪かった選択肢が圧倒的に不利となり、二度と回復するチャンスがないからである。 A disadvantage of this behavior determination method is that it is susceptible to estimation errors due to variability in experience. For example, consider whether an event that succeeded 5 times out of 10 times or an event that succeeded 501 times out of 1000 times should be executed. The former event may only appear to have a success rate of 0.5 because the success rate was actually 0.55, but it happened to succeed only 5 times in this 10 trials. If you try one more time, it may be 6/11 = 0.545 or 5/11 = 0.455. Under such circumstances, simply selecting the event b that maximizes P (T | ak, b) does not work, and this point has a drawback. The reason is that the option that happened to be unlucky only by chance was overwhelmingly unfavorable and never had the chance to recover again.
そこで、このような欠点を解消するため、これまでの試行数、および、現時点での条件付確率を用いて誤差の期待値を求め、その期待値の分だけ楽観的に考えて、すなわち、期待値の分だけ条件付確率を上げて行動決定に用いるようにする。これは、上述した例でいえば、前者の事象において次の1回で成功したときに得られる成功率は6/11=0.545であり、後者の事象において次の1回で成功したときに得られる成功率の502/1001=0.501より高くなるので、前者を選択するという考え方に近い。この結果、前者の試行数が増え、推定誤差も小さくなるので行動決定の精度の改善にもつながる。 Therefore, in order to eliminate these disadvantages, the expected value of the error is calculated using the number of trials so far and the conditional probability at the present time, and only the expected value is considered optimistically. The conditional probability is increased by the value and used for action determination. In the above example, this means that the success rate obtained when succeeding in the first event in the former event is 6/11 = 0.545, and it is obtained when succeeding in the latter event in the next one. Since the success rate is higher than 502/1001 = 0.501, it is close to the idea of selecting the former. As a result, the number of trials of the former increases and the estimation error also decreases, leading to an improvement in the accuracy of action determination.
図43のフローチャートを参照して、図42の情報処理装置により行われる因果知覚に関する処理について説明する。 With reference to the flowchart of FIG. 43, the process regarding the causal perception performed by the information processing apparatus of FIG. 42 will be described.
ステップS201において、因果学習処理部201は、複数のモーダルのHMMを取得し、因果学習を行う。因果学習処理部201は、因果学習を行うことによって得られたデータを因果推定処理部202に出力する。
In step S201, the causal
ステップS202において、因果推定処理部202は、因果学習処理部201から供給されたデータを用いて因果推定を行う。因果推定処理部202は、因果推定を行うことによって得られた因果関係を表す因果候補リストを因果候補リスト記憶部203に記憶させる。
In step S <b> 202, the causal
ステップS203において、因果候補リスト整理処理部204は、因果候補リスト記憶部203に記憶されている因果候補リストを整理し、処理を終了させる。
In step S203, the causal candidate list
以下、各処理について順に説明する。 Hereinafter, each process is demonstrated in order.
以下においては、対象とするモーダルとして全部でM個のモーダルがあり、i(i=1,2,・・・,M)番目のモーダルはnm個の状態を持つものとする。また、適宜、i番目のモーダルの状態j(j=1,2,・・・,nm)をSi jと表記する。例えば、S2 5は2番目のモーダルが状態5であることを表す。時刻tにおけるシステム全体の状態は、M次元の状態ベクトルSt=(S1 j1,S2 j2,・・・,SM jM)によって表される。
In the following, it is assumed that there are a total of M modals as target modals, and the i (i = 1, 2,..., M) -th modal has n m states. In addition, the i-th modal state j (j = 1, 2,..., N m ) is denoted as S i j as appropriate. For example, S 2 5 indicates that the second modal is
状態ベクトル中、各次元の要素がどのモーダルの状態番号を示すのかが明らかな場合は、説明を簡単にするため、状態番号を要素とする状態ベクトルでシステムの状態を表す。例えば、モーダル1,2,3の状態がそれぞれ5,7,11である場合、モーダル1,2,3を含むシステム全体の状態ベクトルはS=(S1 5,S2 7,S3 11)=(5,7,11)で表される。また、例えばモーダル2と3に注目しているとき、状態ベクトルはS(2,3)=(S2 7,S3 11)=(7,11)で表される。
In the state vector, when it is clear which modal state number indicates the element of each dimension, the state of the system is represented by a state vector having the state number as an element for the sake of simplicity. For example, when the states of
図44はモーダルの例を示す図である。 FIG. 44 is a diagram showing an example of a modal.
図44の例においては、モーダル1乃至3の3つのモーダルが示されている。Mの値は3になる。例えば、モーダル1はエネルギーHMMに、モーダル2は光HMMに、モーダル3は距離HMMにそれぞれ相当する。Si jはそれぞれHMMのノードに相当する。
In the example of FIG. 44, three modals of
はじめに、因果学習処理部201により行われる因果学習について説明する。
First, causal learning performed by the causal
時刻t=0において、すべてのカウンタの値として0が設定され、初期化される。因果学習においては事象生起カウンタと遷移生起カウンタの2つのカウンタが用いられる。以下においてはt≧1とする。 At time t = 0, 0 is set as the value of all counters and is initialized. In causal learning, two counters, an event occurrence counter and a transition occurrence counter, are used. In the following, t ≧ 1.
また、すべてのカウンタの値は、所定の時間が経過する毎に、γ=0.999などのあらかじめ定められた減衰率γに従って減衰する。 Further, every time a predetermined time elapses, the values of all the counters are attenuated according to a predetermined attenuation rate γ such as γ = 0.999.
時刻tにおけるシステム全体の状態Stと1時刻前の時刻の状態St-1が比較され、状態の変化があったモーダルがリストアップされる。 Of the entire system at time t the state S t and one time before the time of the state S t-1 are compared, the change of state is a modal are listed.
L=1,2,・・・,min(M-1,MaxCombi)のそれぞれのLの値に注目して以下の処理が行われる。MaxCombiは、考慮するモーダルの組み合わせの複雑さを規定するパラメータであり、任意の自然数を設定することが可能である。min(M-1,MaxCombi)は、M-1とMaxCombiのうちの小さい方の値を表す。 The following processing is performed paying attention to each L value of L = 1, 2,..., Min (M−1, MaxCombi). MaxCombi is a parameter that defines the complexity of modal combinations to be considered, and an arbitrary natural number can be set. min (M-1, MaxCombi) represents the smaller value of M-1 and MaxCombi.
M個のモーダルの中からL+1個のモーダルを選び出したときのMCL+1通りのモーダルの組み合わせのうちの任意の1つの組み合わせをcM(L+1;)で表す。また、時刻t-1における、その任意の1つの組み合わせの各モーダルの状態を表す状態ベクトルをScM(L+1;) t-1で表す。 An arbitrary one of M C L + 1 modal combinations when L + 1 modals are selected from M modals is represented by cM (L + 1;). In addition, a state vector representing each modal state of any one combination at time t−1 is represented by ScM (L + 1;) t−1 .
それぞれの組み合わせのcM(L+1;)について、ScM(L+1;) t-1に対応する事象生起カウンタが1だけカウントアップされる。事象生起カウンタは、対応する状態ベクトルにより表される事象が生起した回数を数えるカウンタである。 For each combination of cM (L + 1;), the event occurrence counter corresponding to S cM (L + 1;) t−1 is incremented by one. The event occurrence counter is a counter that counts the number of times the event represented by the corresponding state vector has occurred.
状態が変化したモーダルをモーダルiとすると、それぞれのモーダルiに注目して以下の処理が行われる。 If the modal whose state has changed is assumed to be modal i, the following processing is performed while paying attention to each modal i.
モーダルi以外の、M-1個のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせをcM(L;i)で表す。また、時刻t-1における、その任意の1つの組み合わせの各モーダルの状態を表す状態ベクトルをScM(L;i) t-1で表す。 CM (L; i) represents any one of M-1 C L modal combinations when L modals are selected from M-1 modals other than modal i. . Further, a state vector representing each modal state of any one combination at time t−1 is represented by S cM (L; i) t−1 .
それぞれの組み合わせのcM(L;i)について、ScM(L;i) t-1と、モーダルiの状態遷移Ti t-1=(Si k(t-1)→Si k(t))との組である(ScM(L;i) t-1|Ti)に対応する遷移生起カウンタが1だけカウントアップされる。遷移生起カウンタは、対応する状態ベクトルにより表される事象が、因果関係を求めようとする状態遷移が生起した直前のタイミングで生起した回数を数えるカウンタである。 For each combination of cM (L; i), S cM (L; i) t-1 and modal i state transition T i t-1 = (S i k (t-1) → S i k (t )) ), The transition occurrence counter corresponding to (S cM (L; i) t-1 | T i ) is counted up by one. The transition occurrence counter is a counter that counts the number of times that an event represented by a corresponding state vector has occurred at a timing immediately before the occurrence of a state transition for which a causal relationship is to be obtained.
因果学習の具体例について説明する。 A specific example of causal learning will be described.
ここでは、図45に示されるように、モーダル1の状態数は状態1,2(S1 1,S1 2)の2であり、モーダル2の状態数は状態1,2,3,4(S2 1,S2 2,S2 3,S2 4)の4であり、モーダル3の状態数は状態1,2,3(S3 1,S3 2,S3 3)の3であるものとする。
Here, as shown in FIG. 45, the number of states of
また、システムの状態は、図46に示されるようにして時間変化したものとする。 Further, it is assumed that the state of the system changes with time as shown in FIG.
図46には、t=0乃至t=5の間に観測されたモーダル1乃至3のそれぞれの状態を表す状態ベクトルが示されている。t=0における状態を表す左端の状態ベクトルの上の1はモーダル1の状態が状態1であることを表し、中央の1はモーダル2の状態が状態1であることを表す。下の1はモーダル3の状態が状態1であることを表す。
FIG. 46 shows state vectors representing the states of
図47A乃至Dは、事象生起カウンタの例を示す図である。 47A to 47D are diagrams illustrating examples of event occurrence counters.
Lの値を1または2とすると、3個のモーダルの中からL+1個のモーダルを選び出したときのMCL+1通りのモーダルの組み合わせは、左側に示されるように{1,2}、{1,3}、{2,3}、{1,2,3}になる。{1,2}、{1,3}、{2,3}、{1,2,3}のそれぞれのモーダルの組み合わせが上述したcM(L+1;)に相当する。 If the value of L is 1 or 2, the combination of M C L + 1 modals when L + 1 modals are selected from the three modals, as shown on the left side, {1, 2, }, {1,3}, {2,3}, {1,2,3}. A modal combination of {1, 2}, {1, 3}, {2, 3}, {1, 2, 3} corresponds to the above-described cM (L + 1;).
{1,2}のモーダルの組み合わせに注目したとき、とりうる状態ベクトルの数は、注目する組み合わせに含まれないモーダル3の要素を「−」で表すと、図47Aに示されるように、[1 1 −]、[1 2 −]、[1 3 −]、[1 4 −]、[2 1 −]、[2 2 −]、[2 3 −]、[2 4 −]の8になる。ここでは、要素を横に並べて状態ベクトルを示している。 When attention is paid to the modal combination of {1, 2}, the number of state vectors that can be taken is represented by “−” for elements of modal 3 not included in the combination of interest, as shown in FIG. 1 1 −], [1 2 −], [1 3 −], [1 4 −], [2 1 −], [2 2 −], [2 3 −], and [2 4 −] are 8 . Here, the state vectors are shown side by side.
同様に、とりうる状態ベクトルの数は注目する組み合わせに含まれるモーダルの状態の数を乗算した数になるから、{1,3}のモーダルの組み合わせに注目したとき、とりうる状態ベクトルの数は図47Bに示されるように6になる。また、{2,3}のモーダルの組み合わせに注目したとき、とりうる状態ベクトルの数は図47Cに示されるように12になり、{1,2,3}のモーダルの組み合わせに注目したとき、とりうる状態ベクトルの数は図47Dに示されるように24になる。 Similarly, since the number of possible state vectors is a number obtained by multiplying the number of modal states included in the combination of interest, the number of possible state vectors when focusing on the modal combination of {1, 3} is It becomes 6 as shown in FIG. 47B. Further, when focusing on the modal combination of {2, 3}, the number of possible state vectors is 12, as shown in FIG. 47C, and when focusing on the modal combination of {1, 2, 3}, The number of possible state vectors is 24 as shown in FIG. 47D.
それぞれの状態ベクトルに対応して事象生起カウンタが用意されるから、この例の場合、合計50個の事象生起カウンタが用意されることになる。 Since event occurrence counters are prepared corresponding to the respective state vectors, in this case, a total of 50 event occurrence counters are prepared.
図48A乃至Cは、モーダル1のそれぞれの状態遷移に対応して用意される遷移生起カウンタの例を示す図である。 48A to 48C are diagrams showing examples of transition occurrence counters prepared corresponding to respective state transitions of the modal 1.
図48A乃至Cに示される遷移生起カウンタが、図49に示されるように、例えば、モーダル1の状態1と2間の双方向の状態遷移に対応して用意される。
The transition occurrence counters shown in FIGS. 48A to 48C are prepared corresponding to bidirectional state transitions between the
Lの値を1または2とすると、モーダル1以外のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせは、図48A乃至Cの左側に示されるように{2}、{3}、{2,3}になる。それぞれのモーダルの組み合わせが上述したcM(L;i)に相当する。 When the value of L is 1 or 2, any one of the M-1 C L modal combinations when L modals are selected from modals other than modal 1 is shown in FIGS. As shown on the left side of C, {2}, {3}, and {2, 3}. Each modal combination corresponds to the above-described cM (L; i).
{2}のモーダルの組み合わせに注目したとき、モーダルの組み合わせから除かれるモーダル1の要素を「*」、注目する組み合わせに含まれていないモーダル3の要素を「−」で表すと、とりうる状態ベクトルの数は、図48Aに示されるように、[* 1 −]、[* 2 −]、[* 3 −]、[* 4 −]の4になる。 When focusing on the modal combination of {2}, the possible states are expressed as “*” for the element of modal 1 that is excluded from the combination of modal, and “-” for the element of modal 3 that is not included in the combination of interest. As shown in FIG. 48A, the number of vectors is 4 of [* 1 −], [* 2 −], [* 3 −], and [* 4 −].
同様に、{3}のモーダルの組み合わせに注目したとき、とりうる状態ベクトルの数は図48Bに示されるように3になる。また、{2,3}のモーダルの組み合わせに注目したとき、とりうる状態ベクトルの数は図48Cに示されるように12になる。 Similarly, when attention is paid to the modal combination of {3}, the number of possible state vectors is 3, as shown in FIG. 48B. When attention is paid to the modal combination of {2, 3}, the number of possible state vectors is 12 as shown in FIG. 48C.
この例の場合、モーダル1のそれぞれの状態遷移に対応して、合計19個の遷移生起カウンタが用意されることになる。 In this example, a total of 19 transition occurrence counters are prepared corresponding to the respective state transitions of the modal 1.
図50A乃至Cは、モーダル2のそれぞれの状態遷移に対応して用意される遷移生起カウンタの例を示す図である。 50A to 50C are diagrams showing examples of transition occurrence counters prepared corresponding to the respective state transitions of the modal 2.
図50A乃至Cに示される遷移生起カウンタが、図51に示されるように、モーダル2の状態1と2間、状態2と3間、状態3と4間、状態4と1間、状態1と3間、状態2と4間の双方向の状態遷移に対応して用意される。
As shown in FIG. 51, the transition occurrence counters shown in FIGS. 50A to 50C are connected between
Lの値を1または2とすると、モーダル2以外のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせは、図50A乃至Cの左側に示されるように{1}、{3}、{1,3}になる。 Assuming that the value of L is 1 or 2, any one of the M-1 C L modal combinations when L modals are selected from modals other than modal 2 is shown in FIG. As shown on the left side of C, {1}, {3}, and {1, 3}.
{1}のモーダルの組み合わせに注目したとき、モーダルの組み合わせから除かれるモーダル2の要素を「*」、注目する組み合わせに含まれていないモーダル3の要素を「−」で表すと、とりうる状態ベクトルの数は、図50Aに示されるように、[1 * −]、[2 * −]の2になる。 When focusing on the modal combination of {1}, the modal 2 element that is excluded from the modal combination is represented by “*”, and the modal 3 element that is not included in the focused combination is represented by “-”. As shown in FIG. 50A, the number of vectors is 2 of [1 * −] and [2 * −].
同様に、{3}のモーダルの組み合わせに注目したとき、とりうる状態ベクトルの数は図50Bに示されるように3になる。また、{1,3}のモーダルの組み合わせに注目したとき、とりうる状態ベクトルの数は図50Cに示されるように6になる。 Similarly, when attention is paid to the modal combination of {3}, the number of possible state vectors is 3, as shown in FIG. 50B. When attention is paid to the modal combination of {1, 3}, the number of possible state vectors is 6, as shown in FIG. 50C.
この例の場合、モーダル2のそれぞれの状態遷移に対応して、合計11個の遷移生起カウンタが用意されることになる。 In this example, a total of 11 transition occurrence counters are prepared corresponding to the respective state transitions of the modal 2.
図52A乃至Cは、モーダル3のそれぞれの状態遷移に対応して用意される遷移生起カウンタの例を示す図である。 52A to 52C are diagrams showing examples of transition occurrence counters prepared corresponding to respective state transitions of the modal 3.
図52A乃至Cに示される遷移生起カウンタが、図53に示されるように、モーダル3の状態1と2間、状態2と3間、状態3と1間の双方向の状態遷移に対応して用意される。
The transition occurrence counters shown in FIGS. 52A to 52C correspond to bidirectional state transitions between the
Lの値を1または2とすると、モーダル3以外のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせは、図52A乃至Cの左側に示されるように{1}、{2}、{1,2}になる。 If the value of L is 1 or 2, any one of the M-1 C L modal combinations when L modals are selected from modals other than modal 3 is shown in FIGS. As shown on the left side of C, {1}, {2}, {1, 2}.
{1}のモーダルの組み合わせに注目したとき、モーダルの組み合わせから除かれるモーダル3の要素を「*」、注目する組み合わせに含まれていないモーダル2の要素を「−」で表すと、とりうる状態ベクトルの数は、図52Aに示されるように、[1 − *]、[2 − *]の2になる。 When focusing on the modal combination of {1}, the modal 3 elements that are excluded from the modal combination are represented by “*”, and the modal 2 elements that are not included in the focused combination are represented by “-”. The number of vectors is 2, as shown in FIG. 52A, [1− *] and [2− *].
同様に、{2}のモーダルの組み合わせに注目したとき、とりうる状態ベクトルの数は図52Bに示されるように4になる。また、{1,2}のモーダルの組み合わせに注目したとき、とりうる状態ベクトルの数は図52Cに示されるように8になる。 Similarly, when attention is paid to a modal combination of {2}, the number of possible state vectors is 4, as shown in FIG. 52B. When attention is paid to the modal combination of {1, 2}, the number of possible state vectors is 8, as shown in FIG. 52C.
この例の場合、モーダル3のそれぞれの状態遷移に対応して、合計14個の遷移生起カウンタが用意されることになる。 In this example, a total of 14 transition occurrence counters are prepared corresponding to the respective state transitions of the modal 3.
このように、遷移生起カウンタは、あるモーダルのそれぞれの状態遷移と、他のモーダルの状態の全ての組み合わせとを対応させる形で用意される。 In this way, the transition occurrence counter is prepared in a form that associates each state transition of a modal with all combinations of other modal states.
このような事象生起カウンタ、遷移生起カウンタが用意された状態で、t=1になり、システムの状態が図46に示されるように[1 1 1]から[1 2 1]に遷移したとき、t=1における状態と、直前の時刻であるt=0における状態が比較され、状態の変化があったモーダルであるモーダル2がリストアップされる。
When such event occurrence counter and transition occurrence counter are prepared, t = 1, and when the system state transitions from [1 1 1] to [1 2 1] as shown in FIG. The state at t = 1 is compared with the state at t = 0, which is the immediately preceding time, and
また、事象生起カウンタのカウントアップが行われる。 In addition, the event occurrence counter is counted up.
ここでは、MCL+1通りのモーダルの組み合わせのうちの任意の1つの組み合わせである{1,2}、{1,3}、{2,3}、{1,2,3}がそれぞれ注目され、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルに対応する事象生起カウンタが1だけカウントアップされる。注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルが、上述したScM(L+1;) t-1に相当する。 Here, any one of the M C L + 1 modal combinations {1, 2}, {1, 3}, {2, 3}, {1, 2, 3} The event occurrence counter corresponding to the state vector representing the state one hour before the modal included in the noted combination is counted up. A state vector representing a state one hour before the modal included in the combination of interest corresponds to S cM (L + 1;) t−1 described above.
{1,2}のモーダルの組み合わせに注目したとき、1時刻前のt=0におけるモーダル1,2の状態はそれぞれ1であるから、図47Aに示される8個の状態ベクトルのうちの[1 1 −]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2}, since the states of
{1,3}のモーダルの組み合わせに注目したとき、1時刻前のt=0におけるモーダル1,3の状態はそれぞれ1であるから、図47Bに示される6個の状態ベクトルのうちの[1 − 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 3}, since the states of
{2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=0におけるモーダル2,3の状態はそれぞれ1であるから、図47Cに示される12個の状態ベクトルのうちの[− 1 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {2, 3}, since the states of
{1,2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=0におけるモーダル1,2,3の状態はそれぞれ1であるから、図47Dに示される24個の状態ベクトルのうちの[1 1 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2, 3}, since the states of
このように、システムの状態が[1 1 1]から[1 2 1]に遷移したとき、図54Aに示されるように、[1 1 −]、[1 − 1]、[− 1 1]、[1 1 1]に対応する事象生起カウンタが1だけカウントアップされる。 Thus, when the state of the system transitions from [1 1 1] to [1 2 1], as shown in FIG. 54A, [1 1-], [1-1], [-1 1], The event occurrence counter corresponding to [1 1 1] is incremented by one.
さらに、遷移生起カウンタのカウントアップが行われる。 Further, the transition occurrence counter is counted up.
まず、状態が遷移したモーダル2以外のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせである{1}、{3}、{1,3}のそれぞれが注目され、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルと、モーダル2の状態遷移(1→2)との組が求められる。
First, {1}, {3} which is an arbitrary one of M-1 C L modal combinations when L modals are selected from modals other than modal 2 in which the state has changed. , {1, 3} are noticed, and a set of a state vector representing a state one hour before the modal included in the noted combination and a state transition (1 → 2) of
求められる組は、モーダル2の状態遷移(1→2)と対応付けられている、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルを表す。図50を参照して説明したように、モーダル2の各状態遷移に対しては、状態ベクトルが対応付けられている。この、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルが上述したScM(L;i) t-1に相当し、組が、(ScM(L;i) t-1|Ti)に相当する。 The obtained set represents a state vector that is associated with the state transition (1 → 2) of the modal 2 and represents the state one hour before the modal included in the combination of interest. As described with reference to FIG. 50, each state transition of the modal 2 is associated with a state vector. The state vector representing the state one hour before the modal included in the combination of interest corresponds to the above-described S cM (L; i) t−1 , and the set is (S cM (L; i) t−1. | T i ).
また、モーダル2の状態遷移(1→2)と対応付けられている、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルに対応する遷移生起カウンタ(図50A乃至C)が1だけカウントアップされる。
Further, the transition occurrence counter (FIGS. 50A to 50C) corresponding to the state vector representing the state one hour before the modal included in the combination of interest associated with the state transition (1 → 2) of
{1}のモーダルの組み合わせに注目したとき、1時刻前のt=0におけるモーダル1の状態は1であるから、図50Aに示される、モーダル2の状態遷移(1→2)と対応付けられている2個の遷移生起カウンタのうち、[1 * −]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1}, since the state of modal 1 at t = 0 one time before is 1, it is associated with the state transition (1 → 2) of
{3}のモーダルの組み合わせに注目したとき、1時刻前のt=0におけるモーダル3の状態は1であるから、図50Bに示される、モーダル2の状態遷移(1→2)と対応付けられている3個の遷移生起カウンタのうち、[− * 1]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {3}, since the state of modal 3 at t = 0 one time before is 1, it is associated with the state transition (1 → 2) of
{1,3}のモーダルの組み合わせに注目したとき、1時刻前のt=0におけるモーダル1,3の状態はそれぞれ1であるから、図50Cに示される、モーダル2の状態遷移(1→2)と対応付けられている6個の遷移生起カウンタのうち、[1 * 1]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 3}, since the states of
このように、システムの状態が[1 1 1]から[1 2 1]に遷移したとき、図54Bに示されるように、モーダル2の状態遷移(1→2)と対応付けられている、[1 * −]、[− * 1]、[1 * 1]に対応する遷移生起カウンタが1だけカウントアップされる。
Thus, when the state of the system transitions from [1 1 1] to [1 2 1], as shown in FIG. 54B, it is associated with the state transition (1 → 2) of
同様に、t=2になったとき、t=2における状態と、直前の時刻であるt=1における状態が比較され、状態に変化のあったモーダルがなかったものとして判断される。図46に示されるように、t=2におけるシステムの状態はt=1におけるシステムの状態と同じ[1 2 1]である。 Similarly, when t = 2, the state at t = 2 is compared with the state at t = 1, which is the previous time, and it is determined that there is no modal change in the state. As shown in FIG. 46, the state of the system at t = 2 is [1 2 1] which is the same as the state of the system at t = 1.
また、事象生起カウンタのカウントアップが行われる。 In addition, the event occurrence counter is counted up.
3個のモーダルの中からL+1個のモーダルを選び出したときのMCL+1通りのモーダルの組み合わせのうちの任意の1つの組み合わせである{1,2}、{1,3}、{2,3}、{1,2,3}のそれぞれが注目され、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルに対応する事象生起カウンタが1だけカウントアップされる。 {1,2}, {1,3}, which is an arbitrary combination of M C L + 1 modal combinations when L + 1 modals are selected from the three modals. Each of {2, 3} and {1, 2, 3} is noticed, and the event occurrence counter corresponding to the state vector representing the state one hour before the modal included in the noted combination is counted up by one.
{1,2}のモーダルの組み合わせに注目したとき、1時刻前のt=1におけるモーダル1の状態は1、モーダル2の状態は2であるから、図47Aに示される8個の状態ベクトルのうちの[1 2 −]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2}, since the state of
{1,3}のモーダルの組み合わせに注目したとき、1時刻前のt=1におけるモーダル1,3の状態はそれぞれ1であるから、図47Bに示される6個の状態ベクトルのうちの[1 − 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 3}, since the states of
{2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=1におけるモーダル2の状態は2、モーダル3の状態は1であるから、図47Cに示される12個の状態ベクトルのうちの[− 2 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {2, 3}, the state of
{1,2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=1におけるモーダル1の状態は1、モーダル2の状態は2、モーダル3の状態は1であるから、図47Dに示される24個の状態ベクトルのうちの[1 2 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2, 3}, the state of
このように、システムの状態が[1 2 1]のままであるとき、図55に示されるように、[1 2 −]、[1 − 1]、[− 2 1]、[1 2 1]の事象生起カウンタが1だけカウントアップされる。 Thus, when the system state remains [1 2 1], as shown in FIG. 55, [1 2-], [1-1], [-2 1], [1 2 1] The event occurrence counter is incremented by one.
t=3になり、システムの状態が図46に示されるように[1 2 1]から[2 2 1]に遷移したとき、t=3における状態と、直前の時刻であるt=2における状態が比較され、状態の変化があったモーダルであるモーダル1がリストアップされる。
When t = 3 and the system state transitions from [1 2 1] to [2 2 1] as shown in FIG. 46, the state at t = 3 and the state at t = 2 which is the previous time Are compared, and
また、事象生起カウンタのカウントアップが行われる。 In addition, the event occurrence counter is counted up.
3個のモーダルの中からL+1個のモーダルを選び出したときのMCL+1通りのモーダルの組み合わせのうちの任意の1つの組み合わせである{1,2}、{1,3}、{2,3}、{1,2,3}のそれぞれが注目され、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルに対応する事象生起カウンタが1だけカウントアップされる。 {1,2}, {1,3}, which is an arbitrary combination of M C L + 1 modal combinations when L + 1 modals are selected from three modals Each of {2, 3} and {1, 2, 3} is noticed, and the event occurrence counter corresponding to the state vector representing the state one hour before the modal included in the noted combination is counted up by one.
{1,2}のモーダルの組み合わせに注目したとき、1時刻前のt=2におけるモーダル1の状態は1、モーダル2の状態は2であるから、図47Aに示される8個の状態ベクトルのうちの[1 2 −]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2}, the state of
{1,3}のモーダルの組み合わせに注目したとき、1時刻前のt=2におけるモーダル1,3の状態はそれぞれ1であるから、図47Bに示される6個の状態ベクトルのうちの[1 − 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 3}, since the states of
{2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=2におけるモーダル2の状態は2、モーダル3の状態は1であるから、図47Cに示される12個の状態ベクトルのうちの[− 2 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {2, 3}, the state of
{1,2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=2におけるモーダル1の状態は1、モーダル2の状態は2、モーダル3の状態は1であるから、図47Dに示される24個の状態ベクトルのうちの[1 2 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2, 3}, the state of
このように、システムの状態が[1 2 1]から[2 2 1]に遷移したとき、図56Aに示されるように、[1 2 −]、[1 − 1]、[− 2 1]、[1 2 1]の事象生起カウンタが1だけカウントアップされる。 Thus, when the system state transitions from [1 2 1] to [2 2 1], as shown in FIG. 56A, [1 2-], [1-1], [-2 1], The event occurrence counter of [1 2 1] is incremented by 1.
さらに、遷移生起カウンタのカウントアップが行われる。 Further, the transition occurrence counter is counted up.
まず、状態が遷移したモーダル1以外のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせである{2}、{3}、{2,3}のそれぞれが注目され、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルと、モーダル1の状態遷移(1→2)との組が求められる。
First, {2}, {3}, which is an arbitrary one of M-1 C L modal combinations when L modals are selected from modals other than modal 1 whose state has changed. , {2, 3} are noticed, and a set of a state vector representing a state one hour before the modal included in the noted combination and a state transition (1 → 2) of
また、モーダル1の状態遷移(1→2)と対応付けられている、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルに対応する遷移生起カウンタ(図48A乃至C)が1だけカウントアップされる。
Further, the transition occurrence counter (FIGS. 48A to 48C) corresponding to the state vector representing the state one hour before the modal included in the combination of interest associated with the state transition (1 → 2) of
{2}のモーダルの組み合わせに注目したとき、1時刻前のt=2におけるモーダル2の状態は2であるから、図48Aに示される、モーダル1の状態遷移(1→2)と対応付けられている4個の遷移生起カウンタのうち、[* 2 −]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {2}, since the state of modal 2 at t = 2 one time before is 2, it is associated with the state transition (1 → 2) of
{3}のモーダルの組み合わせに注目したとき、1時刻前のt=2におけるモーダル3の状態は1であるから、図48Bに示される、モーダル1の状態遷移(1→2)と対応付けられている3個の遷移生起カウンタのうち、[* − 1]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {3}, since the state of modal 3 at t = 2 one time before is 1, it is associated with the state transition (1 → 2) of
{2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=2におけるモーダル2の状態は2、モーダル3の状態は1であるから、図48Cに示される、モーダル1の状態遷移(1→2)と対応付けられている12個の遷移生起カウンタのうち、[* 2 1]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {2, 3}, the state of
このように、システムの状態が[1 2 1]から[2 2 1]に遷移したとき、図56Bに示されるように、モーダル1の状態遷移(1→2)と対応付けられている、[* 2 −]、[* − 1]、[* 2 1]に対応する遷移生起カウンタが1だけカウントアップされる。 Thus, when the state of the system transitions from [1 2 1] to [2 2 1], as shown in FIG. 56B, it is associated with the state transition of modal 1 (1 → 2), The transition occurrence counter corresponding to [* 2−], [* −1], and [* 2 1] is incremented by one.
t=4になり、システムの状態が図46に示されるように[2 2 1]から[2 4 3]に遷移したとき、t=4における状態と、直前の時刻であるt=3における状態が比較され、状態の変化があったモーダルであるモーダル2とモーダル3がリストアップされる。
When t = 4 and the system state transitions from [2 2 1] to [2 4 3] as shown in FIG. 46, the state at t = 4 and the state at t = 3, which is the previous time Are compared, and
また、事象生起カウンタのカウントアップが行われる。 In addition, the event occurrence counter is counted up.
3個のモーダルの中からL+1個のモーダルを選び出したときのMCL+1通りのモーダルの組み合わせのうちの任意の1つの組み合わせである{1,2}、{1,3}、{2,3}、{1,2,3}のそれぞれが注目され、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルに対応する事象生起カウンタが1だけカウントアップされる。 {1,2}, {1,3}, which is an arbitrary combination of M C L + 1 modal combinations when L + 1 modals are selected from three modals Each of {2, 3} and {1, 2, 3} is noticed, and the event occurrence counter corresponding to the state vector representing the state one hour before the modal included in the noted combination is counted up by one.
{1,2}のモーダルの組み合わせに注目したとき、1時刻前のt=3におけるモーダル1,2の状態はそれぞれ2であるから、図47Aに示される8個の状態ベクトルのうちの[2 2 −]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2}, since the states of
{1,3}のモーダルの組み合わせに注目したとき、1時刻前のt=3におけるモーダル1の状態は2、モーダル3の状態は1であるから、図47Bに示される6個の状態ベクトルのうちの[2 − 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 3}, the state of
{2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=3におけるモーダル2の状態は2、モーダル3の状態は1であるから、図47Cに示される12個の状態ベクトルのうちの[− 2 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {2, 3}, the state of
{1,2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=3におけるモーダル1の状態は2、モーダル2の状態は2、モーダル3の状態は1であるから、図47Dに示される24個の状態ベクトルのうちの[2 2 1]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2, 3}, the state of
このように、システムの状態が[2 2 1]から[2 4 3]に遷移したとき、図57Aに示されるように、[2 2 −]、[2 − 1]、[− 2 1]、[2 2 1]に対応する事象生起カウンタが1だけカウントアップされる。 Thus, when the state of the system transitions from [2 2 1] to [2 4 3], as shown in FIG. 57A, [2 2 −], [2-1], [−2 1], The event occurrence counter corresponding to [2 2 1] is incremented by one.
さらに、遷移生起カウンタのカウントアップが行われる。2つのモーダルがリストアップされている場合、それぞれのモーダルを対象として同じ処理が繰り返される。 Further, the transition occurrence counter is counted up. When two modals are listed, the same process is repeated for each modal.
まず、状態が遷移したモーダル2以外のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせである{1}、{3}、{1,3}のそれぞれが注目され、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルと、モーダル2の状態遷移(2→4)との組が求められる。
First, {1}, {3} which is an arbitrary one of M-1 C L modal combinations when L modals are selected from modals other than modal 2 in which the state has changed. , {1, 3} are noticed, and a set of a state vector representing a state one hour before the modal included in the noted combination and a state transition (2 → 4) of
また、モーダル2の状態遷移(2→4)と対応付けられている、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルに対応する遷移生起カウンタ(図50A乃至C)が1だけカウントアップされる。
Also, the transition occurrence counter (FIGS. 50A to 50C) corresponding to the state vector representing the state one hour before the modal included in the combination of interest associated with the state transition (2 → 4) of
{1}のモーダルの組み合わせに注目したとき、1時刻前のt=3におけるモーダル1の状態は2であるから、図50Aに示される、モーダル2の状態遷移(2→4)と対応付けられている2個の遷移生起カウンタのうち、[2 * −]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1}, since the state of modal 1 at t = 3 one time before is 2, it is associated with the state transition (2 → 4) of
{3}のモーダルの組み合わせに注目したとき、1時刻前のt=3におけるモーダル3の状態は1であるから、図50Bに示される、モーダル2の状態遷移(2→4)と対応付けられている3個の遷移生起カウンタのうち、[− * 1]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {3}, since the state of modal 3 at t = 3 one time before is 1, it is associated with the state transition (2 → 4) of
{1,3}のモーダルの組み合わせに注目したとき、1時刻前のt=3におけるモーダル1の状態は2、モーダル3の状態は1であるから、図50Cに示される、モーダル2の状態遷移(2→4)と対応付けられている6個の遷移生起カウンタのうち、[2 * 1]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 3}, since the state of
次に、状態が遷移したモーダル3以外のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせである{1}、{2}、{1,2}のそれぞれが注目され、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルと、モーダル3の状態遷移(1→3)との組が求められる。
Next, {1}, {2 which is an arbitrary one of M-1 C L modal combinations when L modals are selected from modals other than modal 3 in which the state has changed. }, {1, 2} are noticed, and a set of a state vector representing a state one hour before the modal included in the noted combination and a state transition (1 → 3) of
また、モーダル3の状態遷移(1→3)と対応付けられている、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルに対応する遷移生起カウンタ(図52A乃至C)が1だけカウントアップされる。
In addition, the transition occurrence counter (FIGS. 52A to 52C) corresponding to the state vector representing the state one hour before the modal included in the combination of interest associated with the state transition (1 → 3) of
{1}のモーダルの組み合わせに注目したとき、1時刻前のt=3におけるモーダル1の状態は2であるから、図52Aに示される、モーダル3の状態遷移(1→3)と対応付けられている2個の遷移生起カウンタのうち、[2 * −]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1}, since the state of modal 1 at t = 3 one time before is 2, it is associated with the state transition (1 → 3) of
{2}のモーダルの組み合わせに注目したとき、1時刻前のt=3におけるモーダル2の状態は2であるから、図52Bに示される、モーダル3の状態遷移(1→3)と対応付けられている4個の遷移生起カウンタのうち、[* 2 −]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {2}, since the state of modal 2 at t = 3 one time before is 2, it is associated with the state transition (1 → 3) of
{1,2}のモーダルの組み合わせに注目したとき、1時刻前のt=3におけるモーダル1,2の状態はそれぞれ2であるから、図52Cに示される、モーダル3の状態遷移(1→3)と対応付けられている8個の遷移生起カウンタのうち、[2 2 −]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2}, since the states of
このように、システムの状態が[2 2 1]から[2 4 3]に遷移したとき、図57Bの左側に示されるように、モーダル2の状態遷移(2→4)については、モーダル2の状態遷移(2→4)と対応付けられている、[2 * −]、[− * 1]、[2 * 1]に対応する遷移生起カウンタが1だけカウントアップされる。また、図57Bの右側に示されるように、モーダル3の状態遷移(1→3)については、モーダル3の状態遷移(1→3)と対応付けられている、[2 − *]、[− 2 *]、[2 2 −]に対応する遷移生起カウンタが1だけカウントアップされる。 Thus, when the system state transitions from [2 2 1] to [2 4 3], as shown on the left side of FIG. 57B, the state transition of modal 2 (2 → 4) The transition occurrence counter corresponding to [2 * −], [− * 1], and [2 * 1] associated with the state transition (2 → 4) is incremented by one. As shown on the right side of FIG. 57B, the modal 3 state transition (1 → 3) is associated with the modal 3 state transition (1 → 3), [2− *], [− The transition occurrence counter corresponding to 2 *] and [2 2 −] is incremented by one.
t=5になり、システムの状態が図46に示されるように[2 4 3]から[3 4 3]に遷移したとき、t=5における状態と、直前の時刻であるt=4における状態が比較され、状態の変化があったモーダルであるモーダル1がリストアップされる。
When t = 5 and the system state transitions from [2 4 3] to [3 4 3] as shown in FIG. 46, the state at t = 5 and the state at t = 4, which is the previous time Are compared, and
また、事象生起カウンタのカウントアップが行われる。 In addition, the event occurrence counter is counted up.
3個のモーダルの中からL+1個のモーダルを選び出したときのMCL+1通りのモーダルの組み合わせのうちの任意の1つの組み合わせである{1,2}、{1,3}、{2,3}、{1,2,3}のそれぞれが注目され、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルに対応する事象生起カウンタが1だけカウントアップされる。 {1,2}, {1,3}, which is an arbitrary combination of M C L + 1 modal combinations when L + 1 modals are selected from three modals Each of {2, 3} and {1, 2, 3} is noticed, and the event occurrence counter corresponding to the state vector representing the state one hour before the modal included in the noted combination is counted up by one.
{1,2}のモーダルの組み合わせに注目したとき、1時刻前のt=4におけるモーダル1の状態は2、モーダル2の状態は4であるから、図47Aに示される8個の状態ベクトルのうちの[2 4 −]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2}, the state of
{1,3}のモーダルの組み合わせに注目したとき、1時刻前のt=4におけるモーダル1の状態は2、モーダル3の状態は3であるから、図47Bに示される6個の状態ベクトルのうちの[2 − 3]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 3}, the state of
{2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=4におけるモーダル2の状態は4、モーダル3の状態は3であるから、図47Cに示される12個の状態ベクトルのうちの[− 4 3]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {2, 3}, the state of
{1,2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=4におけるモーダル1の状態は2、モーダル2の状態は4、モーダル3の状態は3であるから、図47Dに示される24個の状態ベクトルのうちの[2 4 3]に対応する事象生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {1, 2, 3}, the state of
このように、システムの状態が[2 4 3]から[3 4 3]に遷移したとき、図58Aに示されるように、[2 4 −]、[2 − 3]、[− 4 3]、[2 4 3]に対応する事象生起カウンタが1だけカウントアップされる。 Thus, when the state of the system transitions from [2 4 3] to [3 4 3], as shown in FIG. 58A, [2 4 −], [2 −3], [− 4 3], The event occurrence counter corresponding to [2 4 3] is incremented by one.
さらに、遷移生起カウンタのカウントアップが行われる。 Further, the transition occurrence counter is counted up.
まず、状態が遷移したモーダル1以外のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせである{2}、{3}、{2,3}のそれぞれが注目され、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルと、モーダル1の状態遷移(2→3)との組が求められる。
First, {2}, {3}, which is an arbitrary one of M-1 C L modal combinations when L modals are selected from modals other than modal 1 whose state has changed. , {2, 3} are noticed, and a set of a state vector representing a state one hour before the modal included in the noted combination and a state transition (2 → 3) of
また、モーダル1の状態遷移(2→3)と対応付けられている、注目する組み合わせに含まれるモーダルの1時刻前の状態を表す状態ベクトルに対応する遷移生起カウンタ(図48A乃至C)が1だけカウントアップされる。
Further, the transition occurrence counter (FIGS. 48A to 48C) corresponding to the state vector representing the state one hour before the modal included in the combination of interest associated with the state transition (2 → 3) of
{2}のモーダルの組み合わせに注目したとき、1時刻前のt=4におけるモーダル2の状態は4であるから、図48Aに示される、モーダル1の状態遷移(2→3)と対応付けられている4個の遷移生起カウンタのうち、[* 4 −]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {2}, since the state of modal 2 at t = 4 one time ago is 4, it is associated with the state transition (2 → 3) of
{3}のモーダルの組み合わせに注目したとき、1時刻前のt=4におけるモーダル3の状態は3であるから、図48Bに示される、モーダル1の状態遷移(2→3)と対応付けられている3個の遷移生起カウンタのうち、[* − 3]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {3}, since the state of modal 3 at t = 4 one time before is 3, it is associated with the state transition (2 → 3) of
{2,3}のモーダルの組み合わせに注目したとき、1時刻前のt=4におけるモーダル2の状態は4、モーダル3の状態は3であるから、図48Cに示される、モーダル1の状態遷移(2→3)と対応付けられている12個の遷移生起カウンタのうち、[* 4 3]に対応する遷移生起カウンタが1だけカウントアップされる。
When attention is paid to the modal combination of {2, 3}, since the state of
このように、システムの状態が[2 4 3]から[3 4 3]に遷移したとき、図58Bに示されるように、モーダル1の状態遷移(2→3)と対応付けられている、[* 4 −]、[* − 3]、[* 4 3]に対応する遷移生起カウンタが1だけカウントアップされる。
Thus, when the state of the system transitions from [2 4 3] to [3 4 3], as shown in FIG. 58B, it is associated with the state transition (2 → 3) of
因果学習は以上の処理が繰り返されることによって進められる。因果学習によって得られた事象生起カウンタの値と、遷移生起カウンタの値を表す情報は因果学習処理部201から因果推定処理部202に供給され、因果推定に用いられる。
Causal learning proceeds by repeating the above process. The value of the event occurrence counter obtained by the causal learning and the information indicating the value of the transition occurrence counter are supplied from the causal
次に、因果推定処理部202により行われる因果推定について説明する。
Next, causal estimation performed by the causal
モーダルiにおける状態遷移Ti=(Si k→Si k′)の因果関係を推定する場合、L=1,2,・・・,min(M-1,MaxCombi)のそれぞれのLの値に注目して以下の処理が行われる。 When estimating the causal relationship of state transition T i = (S i k → S i k ′ ) in modal i, each L value of L = 1,2, ..., min (M-1, MaxCombi) The following processing is performed paying attention to.
モーダルi以外の、M-1個のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせをcM(L;i)で表す。また、cM(L;i)に対応する状態ベクトルパターンをScM(L;i)で表す。 CM (L; i) represents any one of M-1 C L modal combinations when L modals are selected from M-1 modals other than modal i. . A state vector pattern corresponding to cM (L; i) is represented by S cM (L; i) .
状態ベクトルパターンScM(L;i)のうちのそれぞれの状態ベクトルをScM(L;i) jで表すとすると、それぞれの状態ベクトルScM(L;i) jに対して、状態遷移Tiの条件付確率P(Ti|ScM(L;i) j)が求められる。 When expressed by; (i L) j, each state vector S cM each state vector of; (i L) S cM state vector pattern S cM; relative (L i) j, the state transition T i conditional probability P (T i | S cM (L ; i) j) is required.
具体的には、状態ベクトルScM(L;i) jの要素としてモーダルiの遷移元の状態であるSi kが補われることによって状態ベクトル(Si k,ScM(L;i) j)が生成され、生成された状態ベクトル(Si k,ScM(L;i) j)に対応する事象生起カウンタの値NSが取得される。 Specifically, the state vector S cM (L; i) a transition source state of the modal i as an element of j S i k is the state vector (S i k by being supplemented, S cM (L; i) j ) Is generated, and the value N S of the event occurrence counter corresponding to the generated state vector (S i k , S cM (L; i) j ) is acquired.
状態ベクトル(Si k,ScM(L;i) j)に対応する事象生起カウンタの値NSが0である場合、状態ベクトルScM(L;i) jに対する状態遷移Tiの条件付確率P(Ti|ScM(L;i) j)はσ0として設定される。σ0は最低確率を与える、0以上1以下の固定値である。 If the value N S of the corresponding event occurrence counter is 0, the state vector S cM; state vector (i) j S i k, S cM (L) (L; i) conditional state transition T i for j The probability P (T i | S cM (L; i) j ) is set as σ 0 . σ 0 is a fixed value between 0 and 1 that gives the lowest probability.
一方、状態ベクトル(Si k,ScM(L;i) j)に対応する事象生起カウンタの値NSが1以上である場合、(Ti,ScM(L;i) j)に対応する遷移生起カウンタの値NTが取得される。(Ti,ScM(L;i) j)は、状態遷移Tiに対応付けられている状態ベクトルScM(L;i) jを表す。 On the other hand, the state vector (S i k, S cM ( L; i) j) when the value N S of event occurrence counter corresponding to is 1 or more, (T i, S cM ( L; i) j) correspond to the The value NT of the transition occurrence counter to be acquired is acquired. (T i , S cM (L; i) j ) represents the state vector S cM (L; i) j associated with the state transition T i .
遷移生起カウンタの値NTを事象生起カウンタの値NSで割ることによって、暫定確率値p0=NT/NSが求められる。 By dividing the value N T of transition occurrence counter value N S of event occurrence counter, provisional probability value p 0 = N T / N S is obtained.
暫定確率値p0と事象生起カウンタの値NSを用いて値σが下式(2)で表されるとすると、状態ベクトルScM(L;i) jに対する状態遷移Tiの条件付確率P(Ti|ScM(L;i) j)は下式(3)によって表される。式(3)において、minは、1とp0+σのうちの小さい方の値を条件付確率Pとすることを表す。
値σを暫定確率値p0に加算することは、経験に基づく確率の推定誤差を楽観的に考えて得られた値を最終的な条件付確率Pにすることを表す。 Adding the value σ to the provisional probability value p 0 indicates that the value obtained by optimizing the estimation error of the probability based on experience is made the final conditional probability P.
なお、これ以外にも、下式(4)に従って、条件付確率Pを0.5に向けて修正することも可能である。また、p+ασを条件付確率Pとするような修正も可能である。
いま対象にしている状態遷移という事象は、生起するかしないかの2値を持つ事象であるので、生起確率pのベルヌーイ試行によってモデル化することができる。例えばN(X)回のサンプルから得られた生起確率p=N(X,T)/N(X)は、期待値√p(1-p)/N(X)の推定誤差をもつと考えられるため、これと同様にして求められる値σの分だけ確率を上げたものが、最終的な条件付確率Pとして求められる。ただし、P=0またはP=1においては推定誤差が0になるので、実用上、ある適当なパラメータσ0を用いて推定誤差としての値σの計算が行われる。 Since the event of state transition that is targeted at this time is an event having a binary value indicating whether it occurs or not, it can be modeled by a Bernoulli trial with an occurrence probability p. For example, the occurrence probability p = N (X, T) / N (X) obtained from N (X) samples has an estimation error of expected value √p (1-p) / N (X) Therefore, the final conditional probability P is obtained by increasing the probability by the value σ obtained in the same manner. However, since the estimation error is 0 at P = 0 or P = 1, the value σ as the estimation error is calculated using an appropriate parameter σ 0 in practice.
閾値以上の条件付確率P(Ti|ScM(L;i) j)が求められた場合、対象になっている状態ベクトルScM(L;i) jが、条件付確率P(Ti|ScM(L;i) j)とともに因果候補リストに登録される。因果候補リストは、状態遷移Tiと因果関係のある状態ベクトルScM(L;i) jのリストであり、状態遷移Ti毎に、条件付確率P(Ti|ScM(L;i) j)の高い順に状態ベクトルScM(L;i) jが対応付けられる。状態ベクトルScM(L;i) jにより表される状態が、状態遷移Tiの因果候補になる。 When the conditional probability P (T i | S cM (L; i) j ) equal to or greater than the threshold is obtained, the target state vector S cM (L; i) j becomes the conditional probability P (T i | S cM (L; i) j ) is registered in the causal candidate list. Causality candidate list, the state vector of the state transition T i and causality S cM; a list of (L i) j, for each state transition T i, the conditional probability P (T i | S cM ( L; i ) State vectors S cM (L; i) j are associated in descending order of j ). The state represented by the state vector S cM (L; i) j is a causal candidate for the state transition T i .
因果推定の具体例について説明する。 A specific example of causal estimation will be described.
ここでは、モーダル2の状態遷移(1→2)と因果関係のある状態ベクトルを推定する場合について説明する。
Here, a case where a state vector having a causal relationship with state transition (1 → 2) of
モーダル2の状態遷移(1→2)と因果関係のある状態ベクトルは、モーダル1とモーダル3の両方の状態を表す状態ベクトルか、モーダル1とモーダル3のうちの一方の状態を表す状態ベクトルである。従って、Lの値を1または2とし、モーダル2以外のモーダルの中からL個のモーダルを選び出したときのM-1CL通りのモーダルの組み合わせのうちの任意の1つの組み合わせを考えると、その組み合わせは{1}、{3}、{1,3}になる。それぞれのモーダルの組み合わせが上述したcM(L;i)に相当する。
The state vector that is causally related to the state transition (1 → 2) of
また、図59A乃至Cに示されるように、{1}に対応する2個の状態ベクトルのパターン、{3}に対応する3個の状態ベクトルのパターン、{1,3}に対応する6個の状態ベクトルのパターンが、それぞれ、cM(L;i)に対応する上述した状態ベクトルパターンScM(L;i)に相当する。図59A乃至Cに示される状態ベクトルは、図50A乃至Cに示されるものと同じである。 59A to 59C, two state vector patterns corresponding to {1}, three state vector patterns corresponding to {3}, and six corresponding to {1, 3} Each of the state vector patterns corresponds to the above-described state vector pattern S cM (L; i) corresponding to cM (L; i) . The state vectors shown in FIGS. 59A-C are the same as those shown in FIGS. 50A-C.
例えば、{1}に対応する[1 * −]と[2 * −]の2個の状態ベクトルのパターンのうち、[1 * −]または[2 * −]が、上述した状態ベクトルScM(L;i) jに相当する。図59A乃至Cに示される11個のそれぞれの状態ベクトルScM(L;i) jを対象として以降の処理が行われ、モーダル2の状態遷移(1→2)との因果関係を表す条件付確率が求められる。
For example, among the two state vector patterns [1 * −] and [2 * −] corresponding to {1}, [1 * −] or [2 * −] is the state vector S cM ( L; i) corresponds to j . Subsequent processing is performed on each of the 11 state vectors S cM (L; i) j shown in FIGS. 59A to 59C, and a conditional expression representing a causal relationship with the state transition (1 → 2) of
例えば、図59A乃至Cに示される11個の状態ベクトルのうち、図60Aに示される[1 * −]と[1 * 1]のそれぞれの状態ベクトルに対するモーダル2の状態遷移(1→2)の条件付確率を求める場合について説明する。 For example, among the 11 state vectors shown in FIGS. 59A to 59C, the state transition of modal 2 (1 → 2) with respect to the respective state vectors [1 * −] and [1 * 1] shown in FIG. 60A The case of obtaining the conditional probability will be described.
[1 * −]に注目すると、図60Bの左側に示されるように、[1 * −]の要素として、モーダル2の遷移元の状態である1が補われることによって[1 1 −]が生成される。[1 1 −]が上述した(Si k,ScM(L;i) j)に相当する。 When attention is paid to [1 *-], as shown on the left side of FIG. 60B, [1 *-] is generated by supplementing 1 that is the state of the transition source of modal 2 as the element of [1 *-]. Is done. [1 1 −] corresponds to (S i k , S cM (L; i) j ) described above.
[1 1 −]に対応する事象生起カウンタの値NS(図47)が取得される。値NSは、モーダル1の状態1とモーダル2の状態1が同時に生起した回数を表し、因果学習によって取得されている。
The value N S (FIG. 47) of the event occurrence counter corresponding to [1 1 −] is acquired. The value N S represents the number of times the
[1 1 −]に対応する事象生起カウンタの値NSが取得された後、モーダル2の状態遷移(1→2)と対応付けて用意されている、[1 * −]に対応する遷移生起カウンタの値NT(図60Cの左側、図50A)が取得される。遷移生起カウンタの値NTは、モーダル2の状態遷移(1→2)が生起する1時刻前に、モーダル1の状態1とモーダル2の状態1が同時に生起した回数を表し、因果学習によって取得されている。
[1 1 -] After being acquired value N S of event occurrence counter corresponding within, are prepared in association with the state transition of the modal 2 (1 → 2), [ 1 * -] corresponding to the transition occurs The counter value N T (left side of FIG. 60C, FIG. 50A) is acquired. The value NT of the transition occurrence counter represents the number of times that the
事象生起カウンタの値NSと遷移生起カウンタの値NTに基づいて、[1 * −]に対する、モーダル2の状態遷移(1→2)の条件付確率が求められる。すなわち、事象生起カウンタの値NSが0であるときには条件付確率としてσ0が求められ、事象生起カウンタの値NSが1以上であるときには上式(3)に従って条件付確率が求められる。 Based value N S of event occurrence counter value N T of transition occurrence counter, [1 * -] for, conditional probability of the state transition of the modal 2 (1 → 2) is obtained. In other words, a demand is sigma 0 as the conditional probability when the value N S of event occurrence counter is 0, the conditional probability is calculated according to the above equation (3) when the value N S of event occurrence counter is 1 or more.
同様に、[1 * 1]に注目すると、図60Bの右側に示されるように、[1 * 1]の要素として、モーダル2の遷移元の状態である1が補われることによって[1 1 1]が生成される。 Similarly, when attention is paid to [1 * 1], as shown in the right side of FIG. 60B, [1 * 1] is complemented by 1 which is the state of the transition source of modal 2 as [1 * 1]. ] Is generated.
[1 1 1]に対応する事象生起カウンタの値NSと、モーダル2の状態遷移(1→2)と対応付けて用意されている、[1 * 1](図60Cの右側、図50C)に対応する遷移生起カウンタの値NTが取得される。 [1 * 1] (right side of FIG. 60C, FIG. 50C) prepared in association with the value N S of the event occurrence counter corresponding to [1 1 1] and the state transition (1 → 2) of modal 2 A transition occurrence counter value NT corresponding to is obtained.
事象生起カウンタの値NSと遷移生起カウンタの値NTに基づいて、[1 * 1]に対する、モーダル2の状態遷移(1→2)の条件付確率が求められる。 Based on the value N S of the event occurrence counter and the value N T of the transition occurrence counter, the conditional probability of the modal 2 state transition (1 → 2) with respect to [1 * 1] is obtained.
以上のようにして求められた条件付確率が、適宜、状態ベクトルと対応付けて因果候補リストに登録され、因果候補リスト記憶部203に記憶される。
The conditional probabilities obtained as described above are appropriately registered in the causal candidate list in association with the state vector, and stored in the causal candidate
次に、因果候補リスト整理処理部204により行われる因果候補リストの整理について説明する。
Next, the arrangement of the causal candidate list performed by the causal candidate list
因果候補リストの整理は、因果候補リストに登録された状態ベクトルをマージすることであり、上述した、N(T,ak,b)を適切な範囲の値に保つように、粒度を変えるなどして事象bを制御することに相当する。因果候補リストの整理は所定のタイミングで行われる。 The causal candidate list is organized by merging the state vectors registered in the causal candidate list, and the granularity is changed so that N (T, ak, b) is kept within a suitable range of values as described above. This corresponds to controlling the event b. The arrangement of the causal candidate list is performed at a predetermined timing.
L個のモーダルにおける、ある特定の状態の組として定義される状態ベクトルScM(L;) kを考える。 Consider a state vector S cM (L;) k defined as a particular set of states in L modals .
マージの可否は、状態ベクトルScM(L;) kと、上記L個のモーダルに含まれないある1つのモーダルであるモーダルiの特定の状態Si jを状態ベクトルScM(L;) kに対して追加した状態ベクトル(ScM(L;) k,Si j)との間で判断される。この状態ベクトルScM(L;) kと状態ベクトル(ScM(L;) k,Si j)は、それぞれ、同じ状態遷移の条件付確率と対応付けて因果候補リストに登録されている状態ベクトルである。 Whether merge state vector S cM (L;) k and, the L-number of a certain one modal not included in modal modal i of the particular condition S i j the state vector S cM (L;) k And the state vector (S cM (L;) k , S i j ) added to The state vector S cM (L;) k and the state vector (S cM (L;) k , S i j ) are respectively registered in the causal candidate list in association with the conditional probabilities of the same state transition. Is a vector.
状態ベクトル(ScM(L;) k,Si j)は状態ベクトルScM(L;) kにSi jを追加したものであるから、概念的には、状態ベクトルScM(L;) kの方が状態ベクトル(ScM(L;) k,Si j)より上位の状態ベクトルといえる。マージの可否の判断は、下位の状態ベクトルを上位の状態ベクトルに含めて同じものとして考えるどうかの判断になる。 Since the state vector (S cM (L;) k , S i j ) is obtained by adding S i j to the state vector S cM (L;) k , conceptually, the state vector S cM (L;) It can be said that k is a state vector higher than the state vector (S cM (L;) k , S i j ). The determination of whether or not merging is possible is a determination of whether or not the lower state vector is included in the upper state vector and considered the same.
状態ベクトルScM(L;) kに対する目標の状態遷移の条件付確率Pを下式(5)で表し、状態ベクトル(ScM(L;) k,Si j)に対する同じ状態遷移の条件付確率P'を下式(6)で表す。
この場合、両者のマージの可否の判断は下式(7)に従って行われる。αは適当なマージ係数である。
このようなマージの可否の判断が、状態ベクトルScM(L;) kと、特定の状態であるSi jを追加した、モーダルiのni個の全ての状態ベクトル(ScM(L;) k,Si j)との間で行われる。 Such determination of whether or not merging is possible is performed by adding the state vector S cM (L;) k and the specific state S i j to all the n i state vectors (S cM (L; ) k , S i j ).
ni個の状態ベクトル(ScM(L;) k,Si j)のうちのどれか1つでもマージ不可と判断できるものがあれば、因果候補リストから状態ベクトルScM(L;) kが削除される。概念的に下位の状態ベクトルが因果候補リストに残ることになる。 If any one of the n i state vectors (S cM (L;) k , S i j ) can be determined to be unmerged, the state vector S cM (L;) k is determined from the causal candidate list. Is deleted. Conceptually lower state vectors remain in the causal candidate list.
一方、マージ不可と判断できる状態ベクトルがni個の状態ベクトル(ScM(L;) k,Si j)の中になかった場合、ni個の状態ベクトル(ScM(L;) k,Si j)、および、それを一部に含む状態ベクトル(より高次の状態ベクトル)がすべて削除される。概念的に上位の状態ベクトルによって、下位の状態ベクトルがまとめて扱われることになる。 On the other hand, merge not a determination can state vector n i number of state vectors (S cM (L;) k , S i j) if no in, n i number of state vectors (S cM (L;) k , S i j ) and the state vector (higher-order state vector) including it as a part are all deleted. Conceptually, lower state vectors are collectively handled by upper state vectors.
因果候補リストの整理の具体的な例について説明する。 A specific example of the arrangement of the causal candidate list will be described.
図61Aに示される状態ベクトルである[1 * −]について考える。[1 * −]は、モーダル2のある状態遷移の因果候補の状態を表すものとして因果候補リストに登録されている状態ベクトルであり、上述したScM(L;) kに相当する。
Consider the state vector [1 *-] shown in FIG. 61A. [1 * −] is a state vector registered in the causal candidate list as representing the state of a causal candidate of a state transition with
この場合、マージ可否の判断は、[1 * −]と、図61Bに示される、モーダル2に含まれない1つのモーダルであるモーダル3の状態を追加した状態ベクトルである[1 * 1]、[1 * 2]、[1 * 3]との間で判断される。[1 * 1]、[1 * 2]、[1 * 3]が、上述した(ScM(L;) k,Si j)に相当する。
In this case, the determination of whether or not merging is possible is [1 * −] and a state vector [1 * 1] obtained by adding a state of modal 3 that is one modal not included in
[1 * −]に対するモーダル2のある状態遷移の条件付確率が上式(5)に従って算出され、[1 * 1]、[1 * 2]、[1 * 3]のそれぞれに対する、モーダル2の同じ状態遷移の条件付確率が上式(6)に従って算出される。
The conditional probability of a state transition with
また、上式(7)に従って、[1 * −]と、[1 * 1]、[1 * 2]、[1 * 3]をマージすることができるか否かが判断される。 In addition, according to the above equation (7), it is determined whether [1 * −] and [1 * 1], [1 * 2], [1 * 3] can be merged.
[1 * 1]、[1 * 2]、[1 * 3]を全て[1 * −]にマージすることができると判断された場合、[1 * 1]、[1 * 2]、[1 * 3]が因果関係リストから削除され、[1 * −]だけが残される。 When it is determined that [1 * 1], [1 * 2], and [1 * 3] can all be merged into [1 *-], [1 * 1], [1 * 2], [1 * 3] is deleted from the causality list, leaving only [1 *-].
一方、[1 * 1]、[1 * 2]、[1 * 3]の中に1つでもマージすることができない状態ベクトルがあると判断された場合、[1 * −]が因果関係リストから削除され、[1 * 1]、[1 * 2]、[1 * 3]が残される。 On the other hand, when it is determined that any one of [1 * 1], [1 * 2], and [1 * 3] cannot be merged, [1 *-] is obtained from the causality list. Deleted, leaving [1 * 1], [1 * 2], [1 * 3].
ここで、シンプソンのパラドックスを例にとり、因果候補リストの整理の考え方について説明する。 Here, taking the Simpson paradox as an example, the concept of organizing the causal candidate list will be described.
シンプソンのパラドックスとは以下のようなものである。 The Simpson paradox is as follows.
ある病気の患者が80人いた。そのうちの半数の40人にある治療を施したところ、20人が治癒した。一方、何もしなかったところ、16人が治癒した。治療を施した場合の治癒率50%は、何もしない場合の自然治癒率40%よりも高いので、この治療には効果があると考えられる。 There were 80 sick patients. Half of them, 40 were treated, and 20 were cured. On the other hand, 16 people healed when they did nothing. The 50% cure rate when treated is higher than the 40% spontaneous cure rate when doing nothing, so this treatment is considered effective.
患者は男女それぞれ40人であったが、治療への参加人数に違いがあったので男女別に結果を分析する。 The number of patients was 40 for both men and women, but there were differences in the number of participants in the treatment.
男性は30人が治療を受け、そのうちの18人が治癒した。治療を受けなかったのは残りの10人であり、自然治癒した人はそのうちの7人であった。つまり、男性に限ると、治療を施した場合の治癒率60%は、何もしない場合の自然治癒率70%よりも低く、治療を行なわない方がよいのではないかと考えられる。 30 men were treated and 18 of them were cured. The remaining 10 were not treated, and 7 of them were naturally cured. In other words, for men only, the cure rate of 60% when treated is lower than the spontaneous cure rate of 70% when nothing is done, and it may be better not to treat.
女性は10人しか治療に参加せず、そのうちの2人のみが治癒した。残りの30人のうち9人は自然治癒した。つまり、女性の場合、治療を施した場合の治癒率20%は、何もしない場合の自然治癒率30%よりも低く、この場合もやはり、治療を行なわない方がよいのではないかと考えられる。 Only 10 women participated in treatment, only 2 of them were cured. Of the remaining 30 people, 9 were naturally cured. In other words, in the case of women, the cure rate when treated is 20% lower than the natural cure rate when doing nothing is 30%, and in this case too, it may be better not to treat .
さて、この治療には効果があるのか、ないのか。むしろ副作用があるのか。 Is this treatment effective or not? Rather there are side effects?
治癒=(病気→健康)という遷移に関して考慮すべきモーダルとしては「治療」および「男女」の2つである。これらの関係をまとめると以下のようになる。
P(治癒|治療する)=0.5 σ=0.079
P(治癒|治療せず)=0.4 σ=0.078
P(治癒|治療する,男性)=0.6 σ=0.089
P(治癒|治療する,女性)=0.2 σ=0.13
P(治癒|治療せず,男性)=0.7 σ=0.14
P(治癒|治療せず,女性)=0.3 σ=0.084
P(治癒|男性)=0.63 σ=0.077
P(治癒|女性)=0.28 σ=0.071
There are two modals that should be considered for the transition of healing = (disease → health): "treatment" and "man and woman". These relationships are summarized as follows.
P (healing | treating) = 0.5 σ = 0.079
P (healing | no treatment) = 0.4 σ = 0.078
P (healing | treating, male) = 0.6 σ = 0.089
P (healing | treating, female) = 0.2 σ = 0.13
P (healing | no treatment, male) = 0.7 σ = 0.14
P (healing | no treatment, female) = 0.3 σ = 0.084
P (healing | male) = 0.63 σ = 0.077
P (healing | female) = 0.28 σ = 0.071
問題は、これらのうちで真に考慮すべき因果関係はどこにあるのか、ということである。ここで、前述した因果関係の整理手法(因果候補リストの状態ベクトルの整理)を適用する。以下、マージ係数α=1とする。 The question is where are the causal relationships that should really be considered? Here, the above-described causal relation rearrangement method (rearrangement of state vectors of the causal candidate list) is applied. Hereinafter, the merge coefficient α = 1.
P(治癒|治療する)に関する因果関係を整理してみると次のようになるので、P(治癒|治療する,男性)とP(治癒|治療する,女性)はマージできずにP(治癒|治療する)を消去することになる。
|P(治癒|治療する)-P(治癒|治療する,男性)|=0.1<(0.079+0.089)=0.17
|P(治癒|治療する)-P(治癒|治療する,女性)|=0.3>(0.079+0.13)=0.21
The causal relationship regarding P (healing | treating) is summarized as follows, so P (healing | treating, male) and P (healing | treating, female) cannot be merged and P (healing) It will be erased.
| P (Cure | Care) -P (Cure | Cure, Men) | = 0.1 <(0.079 + 0.089) = 0.17
| P (Cure | Care) -P (Cure | Cure, Female) | = 0.3> (0.079 + 0.13) = 0.21
同様に、P(治癒|治療せず)に関しても次のようになるので、P(治癒|治療せず,男性)とP(治癒|治療せず,女性)はマージできずにP(治癒|治療せず)を消去することになる。
|P(治癒|治療せず)-P(治癒|治療せず,男性)|=0.3>(0.078+0.14)=0.22
|P(治癒|治療せず)-P(治癒|治療せず,女性)|=0.1<(0.078+0.084)=0.16
Similarly, with respect to P (healing | no treatment), P (healing | no treatment, male) and P (healing | no treatment, female) cannot merge and P (healing | Without treatment).
| P (Healing | No Treatment) -P (Healing | No Treatment, Male) | = 0.3> (0.078 + 0.14) = 0.22
| P (Cure | Untreated) -P (Cure | Untreated, Female) | = 0.1 <(0.078 + 0.084) = 0.16
一方、P(治癒|男性)について調べてみると、P(治癒|治療する,男性)とP(治癒|治療せず,男性)はいずれもマージ可能なので、P(治癒|治療する,男性)とP(治癒|治療せず,男性)が共に消去されてP(治癒|男性)のみが残る。
|P(治癒|男性)-P(治癒|治療する,男性)|=0.03<(0.077+0.089)=0.17
|P(治癒|男性)-P(治癒|治療せず,男性)|=0.07<(0.077+0.14)=0.22
On the other hand, when examining P (healing | male), P (healing | treating, male) and P (healing | not treating, male) can be merged, so P (healing | treating, male) And P (healing | no treatment, male) are erased together, leaving only P (healing | male).
| P (Healing | Male) -P (Healing | Care, Male) | = 0.03 <(0.077 + 0.089) = 0.17
| P (Healing | Male) -P (Healing | No treatment, Male) | = 0.07 <(0.077 + 0.14) = 0.22
同様に、P(治癒|女性)について調べてみると、P(治癒|治療する,女性)とP(治癒|治療せず,女性)はやはりマージ可能なので、P(治癒|治療する,女性)とP(治癒|治療せず,女性)が消去されてP(治癒|女性)のみが残る。
|P(治癒|女性)-P(治癒|治療する,女性)|=0.08<(0.071+0.13)=0.20
|P(治癒|女性)-P(治癒|治療せず,女性)|=0.02<(0.071+0.084)=0.15
Similarly, when examining P (healing | female), P (healing | treating, female) and P (healing | not treating, female) can still merge, so P (healing | treating, female) And P (healing | no treatment, female) are deleted and only P (healing | female) remains.
| P (Healing | Women) -P (Healing | Care, Women) | = 0.08 <(0.071 + 0.13) = 0.20
| P (Healing | Female) -P (Healing | Untreated, Female) | = 0.02 <(0.071 + 0.084) = 0.15
以上より、現時点で有効な因果関係は「男女差→治癒の有無」のみであり、治療に関しては有効とも副作用があるとも断定できない。言い換えれば、「男女別」と「治療の有無」の両方を同時に考慮したL=2の因果分析は不要であり、L=1の範囲内で考えれば十分であると考えられる。 Based on the above, the only causal relationship that is effective at present is only “gender difference → presence / absence of cure”, and it cannot be determined whether treatment is effective or has side effects. In other words, a causal analysis of L = 2 that considers both “gender-specific” and “presence / absence of treatment” at the same time is unnecessary, and it is considered sufficient to consider within the range of L = 1.
その後、実験を繰り返し、被験者の数を100倍に増やしたが、次のように、パラドキシカルな状況は依然として変わらなかったものとする。 After that, the experiment was repeated and the number of subjects was increased 100 times, but the paradoxical situation was still unchanged as follows.
ある病気の患者が8000人いた。そのうちの半数4000人にある治療を施したところ、2000人が治癒した。一方、何もしなかったところ、1600人が治癒した。 There were 8,000 sick patients. Half of them, 4,000, were treated, and 2000 were cured. On the other hand, 1600 people were healed when nothing was done.
患者は男女それぞれ4000人であったが、治療への参加人数に違いがあった。 There were 4,000 patients for both men and women, but there were differences in the number of participants in the treatment.
男性は3000人が治療を受け、そのうちの1800人が治癒した。治療を受けなかったのは残りの1000人であり、自然治癒した人はそのうちの700人であった。 3,000 men were treated and 1800 of them were cured. The remaining 1000 were not treated, and 700 of them were spontaneously cured.
女性は1000人しか治療に参加せず、そのうちの200人のみが治癒した。残りの3000人のうち900人は自然治癒した。 Only 1000 women participated in treatment, only 200 of them were cured. Of the remaining 3,000, 900 healed spontaneously.
このような状況を考え、今度はここから何が言えるのかを考えてみる。 Thinking about this situation, let's consider what can be said from here.
このような状況では、確率そのものは上述したものと同一で、サンプル数Nが100倍となっているため、誤差の大きさの期待値σだけが1/10になっている。 In such a situation, since the probability itself is the same as described above, and the number of samples N is 100 times, only the expected value σ of the magnitude of error is 1/10.
これまでと同様の計算により、P(治癒|治療する)に関する因果候補を整理してみると次のようになるので、P(治癒|治療する,男性)とP(治癒|治療する,女性)はマージできずにP(治癒|治療する)を消去することになる。
|P(治癒|治療する)-P(治癒|治療する,男性)|=0.1>(0.0079+0.0089)=0.017
|P(治癒|治療する)-P(治癒|治療する,女性)|=0.3>(0.0079+0.013)=0.021
Based on the same calculation as before, the causal candidates for P (healing | treating) are organized as follows, so P (healing | treating, male) and P (healing | treating, female) Will be unable to merge and will delete P (healing | treating).
| P (Cure | Care) -P (Cure | Cure, Men) | = 0.1> (0.0079 + 0.0089) = 0.017
| P (Cure | Care) -P (Cure | Cure, Female) | = 0.3> (0.0079 + 0.013) = 0.021
同様に、P(治癒|治療せず)に関しても次のようになるので、P(治癒|治療せず,男性)とP(治癒|治療せず,女性)はマージできずにP(治癒|治療せず)を消去することになる。
|P(治癒|治療せず)-P(治癒|治療せず,男性)|=0.3>(0.0078+0.014)=0.022
|P(治癒|治療せず)-P(治癒|治療せず,女性)|=0.1>(0.0078+0.0084)=0.016
Similarly, with respect to P (healing | no treatment), P (healing | no treatment, male) and P (healing | no treatment, female) cannot merge and P (healing | Without treatment).
| P (Healing | No Treatment) -P (Healing | No Treatment, Male) | = 0.3> (0.0078 + 0.014) = 0.022
| P (Cure | Untreated) -P (Cure | Untreated, Female) | = 0.1> (0.0078 + 0.0084) = 0.016
次に、P(治癒|男性)について調べてみると、P(治癒|治療する,男性)とP(治癒|治療せず,男性)は、今度はマージ不可なので、P(治癒|男性)が消去されることになる。
|P(治癒|男性)-P(治癒|治療する,男性)|=0.03>(0.0077+0.0089)=0.017
|P(治癒|男性)-P(治癒|治療せず,男性)|=0.07>(0.0077+0.014)=0.022
Next, when examining P (healing | male), P (healing | treating, male) and P (healing | not treating, male) cannot be merged, so P (healing | male) It will be erased.
| P (Healing | Male) -P (Healing | Care, Male) | = 0.03> (0.0077 + 0.0089) = 0.017
| P (Healing | Male) -P (Healing | No treatment, Male) | = 0.07> (0.0077 + 0.014) = 0.022
同様に、P(治癒|女性)についても、P(治癒|治療する,女性)とP(治癒|治療せず,女性)はやはりマージ不可なので、P(治癒|女性)の方が消去される。
|P(治癒|女性)-P(治癒|治療する,女性)|=0.08>(0.0071+0.013)=0.020
|P(治癒|女性)-P(治癒|治療せず,女性)|=0.02>(0.0071+0.0084)=0.015
Similarly, for P (healing | female), P (healing | treating, female) and P (healing | not treating, female) cannot be merged, so P (healing | female) is deleted. .
| P (Healing | Female) -P (Healing | Care, Female) | = 0.08> (0.0071 + 0.013) = 0.020
| P (Healing | Female) -P (Healing | Untreated, Female) | = 0.02> (0.0071 + 0.0084) = 0.015
以上より、このケースでは「男女差」および「治療の有無」を同時に考慮したL=2の因果分析が妥当である。つまり、考慮すべき因果関係は次のものにまとめられることになる。
P(治癒|治療する,男性)=0.6 σ=0.0089
P(治癒|治療する,女性)=0.2 σ=0.013
P(治癒|治療せず,男性)=0.7 σ=0.014
P(治癒|治療せず,女性)=0.3 σ=0.0084
From the above, in this case, a causal analysis of L = 2 considering both “gender difference” and “presence / absence of treatment” is appropriate. In other words, the causal relationships that should be considered are summarized as follows.
P (healing | treating, male) = 0.6 σ = 0.0089
P (healing | treating, female) = 0.2 σ = 0.013
P (healing | no treatment, male) = 0.7 σ = 0.014
P (healing | no treatment, female) = 0.3 σ = 0.0084
「男女差」と「治療の有無」のうちのどちらか一方の要因のみに着目すると判断を誤る。そして、上記より明らかなように、この場合、男女を問わず、治療しないほうが、治癒成績が良くなると結論できる。すなわち、この治療は副作用の方が大きい。 It is misjudged to focus on only one of the factors of "gender difference" and "presence / absence of treatment". And, as is clear from the above, in this case, it can be concluded that the treatment results are better if treatment is not performed regardless of gender. That is, this treatment has more side effects.
治療の有無のみに注目したL=1の因果推定ではなく、L=2の因果推定が必要になる理由は、治癒成績の具体的数値に関する男女差が明らかに有意であり、治療の有無に加えて男女差を考慮に入れる必要があることに対応している。実際、この層別の必要性こそがパラドックスの解決になっている。 The reason for the need for causal estimation for L = 2 rather than causal estimation for L = 1 focusing only on the presence or absence of treatment is clearly significant because of gender differences in the specific values of healing outcomes. To deal with the need to take gender differences into account. In fact, this stratified need is the solution to the paradox.
因果候補リスト整理処理部204により状態ベクトルのマージが必要に応じて行われることにより、ある状態遷移との因果関係を表すという点で必要性のある状態ベクトルを残すことができる。
The causal candidate list
次に、図62のフローチャートを参照して、以上のようにして適宜整理され、因果候補リスト記憶部203に記憶されている因果候補リストを用いて行われる行動決定部205の行動決定処理について説明する。
Next, with reference to the flowchart of FIG. 62, description will be given of the action determination process of the
ステップS211において、行動決定部205は目標値を取得する。目標値は、例えば、目標とするあるモーダルの1つの状態を表す値である。
In step S211, the
ステップS212において、行動決定部205は、因果候補リスト記憶部203に記憶されている因果候補リストを読み出し、目標値により表される状態にそのモーダルの状態を遷移させるための行動を決定する。例えば、行動決定部205は、そのモーダルの現在の状態から目標値の状態までの遷移を決定し、それぞれの遷移の因果候補を、条件付確率の高い順に因果候補リストに登録されているものの中から所定の数だけ取得する。行動決定部205は、取得した因果候補の中から選択した、条件付確率が最も、あるいは一定以上高い1つの因果候補である状態ベクトルにより表される状態に他のモーダルの状態を遷移させるような行動を行わせる。
In step S212, the
因果推定が適切に行われている場合、図63に示されるように、ロボットのエネルギーの状態を現在の状態である状態S1から状態S2に遷移させ、エネルギーを上昇させるといったことを、光センサの状態、距離センサの状態をそれぞれ所定の状態に遷移させることで実現することが可能になる。図63の例においては、光センサの状態を光の周囲にロボットがいるときの状態にすることでエネルギーを上昇させることができることが理解されている。図63のエネルギーのグラフにおいて横軸がエネルギーである。 When causal estimation is performed appropriately, as shown in FIG. 63, the state of energy of the robot is changed from the current state S 1 to the state S 2 to increase the energy. This can be realized by changing the sensor state and the distance sensor state to predetermined states. In the example of FIG. 63, it is understood that the energy can be increased by changing the state of the optical sensor to the state when the robot is around the light. In the energy graph of FIG. 63, the horizontal axis represents energy.
また、図64に示されるように、ロボットのエネルギーの状態を現在の状態である状態S11から状態S12に遷移させ、エネルギーを下降させるといったことを、光センサの状態、距離センサの状態をそれぞれ所定の状態に遷移させることで実現することが可能になる。図64の例においては、光センサの状態を光が届かない位置にロボットがいるときの状態にすることでエネルギーを下降させることができることが理解されている。 Further, as shown in FIG. 64, the state of the optical sensor, the state of the distance sensor, etc. are changed by changing the energy state of the robot from the current state S 11 to the state S 12 and decreasing the energy. Each can be realized by transitioning to a predetermined state. In the example of FIG. 64, it is understood that the energy can be lowered by changing the state of the optical sensor to the state when the robot is in a position where light does not reach.
なお、因果推定が行動決定のときに行われるようにすることも可能である。 It is also possible to perform causal estimation at the time of action determination.
以上のように、「ある事象bの生起」が他のモーダルaiの「事象akから事象a1への状態遷移を生起させる(ただし事象a1とakは相互排反とする)」という形で因果関係を定式化することで、因果関係のある事象の候補を絞ることができるとともに、学習の安定性を図ることが可能になる。事象a1とakは相互に排反する事象であるため、状態遷移ak→a1の原因となる事象はモーダルai内にはないことになり、因果推定の候補としてこのモーダルai内の事象を除外することができる。 As described above, the causal relationship in the form of “occurrence of a certain event b” causes the state transition from the event ak to the event a1 of other modal ai (however, the events a1 and ak are mutually exclusive) By formulating, it is possible to narrow down candidates for causal events and to improve learning stability. Since events a1 and ak are mutually exclusive events, the event that causes state transition ak → a1 is not in modal ai, and events in this modal ai are excluded as causal estimation candidates. Can do.
事象a1が生起するメカニズムは複数存在しうるが、状態遷移ak→a1の因果推定問題とすることで、問題の複雑性を緩和することができる。 There can be multiple mechanisms for the occurrence of the event a1, but the problem complexity can be reduced by using a causal estimation problem of the state transition ak → a1.
また、因果学習において、カウンタにより数えた事象の同時生起回数を緩やかに時間減衰させることで、時間変動がある因果に対して、それを表す状態遷移確率を動的に追従させることができる。さらに、時間変動があることの可能性を考慮して、因果関係の利用と探索のバランスをとることが可能になる。 In causal learning, the number of simultaneous occurrences of events counted by the counter is gradually attenuated over time, so that the state transition probability representing the time-dependent causality can be dynamically followed. Furthermore, it is possible to balance the use of causality and search in consideration of the possibility of time fluctuation.
また、状態遷移T:ak→a1と事象bの因果関係を条件付確率P(T|ak,b)の形で定式化し、それらの事象の同時生起回数と、条件付確率から見積もられる推定誤差の期待値σを考慮して行動決定が行われるようにすることにより、因果関係の利用と探索のトレードオフを解決することができる。すなわち、データサンプルが多い場合でも少ない場合でも適切な行動を実現することが可能になる。 In addition, the causal relationship between state transition T: ak → a1 and event b is formulated in the form of conditional probability P (T | ak, b), and the estimation error estimated from the number of simultaneous occurrences of these events and the conditional probability By making an action decision in consideration of the expected value σ, the trade-off between use of causality and search can be solved. That is, it is possible to realize an appropriate action regardless of whether there are many data samples or few data samples.
図65は、因果関係の利用と探索のトレードオフを解決するための方法として、期待値σ分だけ確率を上げた条件付確率を用いる上述した方法と、従来の方法であるランダム法、ε-greedy法、Soft-max法を採用してロボットの行動の最適度を求めた結果を示す図である。 FIG. 65 shows a method for solving the trade-off between the use of causal relationship and search, the above-described method using the conditional probability increased by the expected value σ, the conventional random method, ε− It is a figure which shows the result of having calculated | required the optimal degree of the action of the robot using the greedy method and the Soft-max method.
図65の横軸は経験数を表し、縦軸は行動の最適度を表す。曲線L1は上述した方法を用いた場合の結果を表し、曲線L2はSoft-max法を用いた場合の結果を表す。曲線L3はパラメータεを時間経過に伴い減少させていくε-greedy法を用いた場合の結果を表し、曲線L4はε-greedy法の亜種を用いた場合の結果を表す。曲線L5はランダム法を用いた場合の結果を表す。図65に示されるように、上述した方法によれば、他の方法よりよい結果を得ることができる。 The horizontal axis in FIG. 65 represents the number of experiences, and the vertical axis represents the optimum degree of behavior. A curve L 1 represents a result when the above-described method is used, and a curve L 2 represents a result when the Soft-max method is used. A curve L 3 represents a result in the case of using the ε-greedy method in which the parameter ε is decreased with time, and a curve L 4 represents a result in the case of using a variant of the ε-greedy method. A curve L 5 represents the result when the random method is used. As shown in FIG. 65, according to the above-described method, a better result than other methods can be obtained.
他の従来の方法はパラメータチューニングが必要であるのに対して、期待値σ分だけ確率を上げた条件付確率を用いる上述した方法はその必要がないため、その点でも実用的であるといえる。 While the other conventional methods require parameter tuning, the above-described method using the conditional probability with the probability increased by the expected value σ is not necessary, and can be said to be practical in that respect as well. .
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。 The series of processes described above can be executed by hardware or can be executed by software. When a series of processing is executed by software, a program constituting the software executes various functions by installing a computer incorporated in dedicated hardware or various programs. The program is installed from a program recording medium on a general-purpose personal computer capable of processing.
図66は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。 FIG. 66 is a block diagram illustrating an example of a hardware configuration of a computer that executes the above-described series of processes using a program.
CPU(Central Processing Unit)211、ROM(Read Only Memory)212、RAM(Random Access Memory)213は、バス214により相互に接続されている。
A CPU (Central Processing Unit) 211, a ROM (Read Only Memory) 212, and a RAM (Random Access Memory) 213 are connected to each other via a
バス214には、さらに、入出力インタフェース215が接続されている。入出力インタフェース215には、キーボード、マウス、マイクロホンなどよりなる入力部216、ディスプレイ、スピーカなどよりなる出力部217、ハードディスクや不揮発性のメモリなどよりなる記憶部218、ネットワークインタフェースなどよりなる通信部219、光ディスクや半導体メモリなどのリムーバブルメディア221を駆動するドライブ220が接続されている。
An input /
以上のように構成されるコンピュータでは、CPU211が、例えば、記憶部218に記憶されているプログラムを入出力インタフェース215及びバス214を介してRAM213にロードして実行することにより、上述した一連の処理が行われる。
In the computer configured as described above, the
CPU211が実行するプログラムは、例えばリムーバブルメディア221に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部218にインストールされる。
The program executed by the
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。 The program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。 The embodiments of the present invention are not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the present invention.
21 センサ部, 22 モデル化部, 23 生得コントローラ, 24 行動制御部, 25 アクション部, 31 学習部, 32 HMM格納部, 33 認識部, 34 プランニング部, 41 学習部, 42 コントローラテーブル格納部, 43 コントローラ格納部, 44 実行管理部, 61 センサ部, 62A乃至62C モデル化部, 63 因果部, 64 行動制御部, 65 アクション部, 71A 学習部, 72A HMM格納部, 73A 認識部, 74A プランニング部, 75 因果学習部, 76 因果テーブル格納部, 77 因果推定部, 78 実行管理部, 79 コントローラ, 80 コントローラテーブル格納部, 81 コントローラ格納部,91 CPU, 98 記憶部, 100 ドライブ, 101 リムーバブルメディア, 111 時系列データ入力部, 112 データ調整部, 113 パラメータ推定部, 114 評価部, 115 モデル記憶部, 116 初期構造設定部, 117 構造調整部, 151 バス, 152 CPU, 153 ROM, 154 RAM, 155 ハードディスク, 156 出力部, 157 入力部, 158 通信部, 159 ドライブ, 160 入出力インタフェース, 161 リムーバブル記録媒体, 201 因果学習処理部, 202 因果推定処理部, 203 因果候補リスト記憶部, 204 因果候補リスト整理処理部, 205 行動決定部 21 sensor units, 22 modeling units, 23 innate controllers, 24 behavior control units, 25 action units, 31 learning units, 32 HMM storage units, 33 recognition units, 34 planning units, 41 learning units, 42 controller table storage units, 43 Controller storage unit, 44 execution management unit, 61 sensor unit, 62A to 62C modeling unit, 63 causal unit, 64 action control unit, 65 action unit, 71A learning unit, 72A HMM storage unit, 73A recognition unit, 74A planning unit, 75 causal learning unit, 76 causal table storage unit, 77 causal estimation unit, 78 execution management unit, 79 controller, 80 controller table storage unit, 81 controller storage unit, 91 CPU, 98 storage unit, 100 drive, 101 remover 111, time series data input unit, 112 data adjustment unit, 113 parameter estimation unit, 114 evaluation unit, 115 model storage unit, 116 initial structure setting unit, 117 structure adjustment unit, 151 bus, 152 CPU, 153 ROM, 154 RAM, 155 hard disk, 156 output unit, 157 input unit, 158 communication unit, 159 drive, 160 input / output interface, 161 removable recording medium, 201 causal learning processing unit, 202 causal estimation processing unit, 203 causal candidate list storage unit, 204 Causal candidate list organization processing unit, 205 action decision unit
Claims (17)
前記学習の進行に応じて、前記学習に用いられる前記時系列データを調整し、調整後の時系列データを出力するデータ調整手段と、
前記調整後の時系列データを用い、前記状態遷移モデルのパラメータを推定するパラメータ推定手段と、
前記状態遷移モデルの構造を調整する構造調整手段と
を備える学習装置。 Initial structure setting means for initializing the structure of a state transition model having states and state transitions, which is learned using time-series data that is time-series data, to a sparse structure;
Data adjusting means for adjusting the time series data used for the learning according to the progress of the learning and outputting the adjusted time series data;
Using the time series data after adjustment, parameter estimation means for estimating the parameters of the state transition model;
A learning apparatus comprising: a structure adjusting unit that adjusts a structure of the state transition model.
請求項1に記載の学習装置。 The learning apparatus according to claim 1, wherein the data adjustment unit adjusts the time-series data from data including macro features to data including micro features as the learning progresses.
請求項2に記載の学習装置。 The learning apparatus according to claim 2, wherein the data adjustment unit adjusts the time-series data by down-sampling the time-series data.
請求項1に記載の学習装置。 The structure adjustment means performs the state transition model structure by dividing the state of the state transition model, merging states, adding states, adding state transitions, deleting states, or deleting state transitions. The learning device according to claim 1 to adjust.
請求項1に記載の学習装置。 The learning apparatus according to claim 1, further comprising an evaluation unit that evaluates the state transition model in which the learning has been performed and determines whether to end the learning based on a result of the evaluation of the state transition model. .
請求項1に記載の学習装置。 The learning apparatus according to claim 1, wherein the state transition model is an HMM (Hidden Markov Model).
請求項6に記載の学習装置。 7. The learning according to claim 6, wherein the structure adjustment unit divides a state for a predetermined number of states having a large variance that defines an output probability density function that is a parameter of the HMM among states of the HMM. apparatus.
請求項6に記載の学習装置。 7. The learning according to claim 6, wherein the structure adjustment unit adds a state to a predetermined number of states having a large variance that defines an output probability density function that is a parameter of the HMM among the states of the HMM. apparatus.
請求項6に記載の学習装置。 The learning apparatus according to claim 6, wherein the structure adjustment unit performs state merging for a set of a predetermined number of states having a large correlation among the states of the HMM.
請求項6に記載の学習装置。 The learning device according to claim 6, wherein the structure adjustment unit adds a state transition to a set of a predetermined number of states having a large correlation among the states of the HMM.
請求項6に記載の学習装置。 The learning device according to claim 6, wherein the structure adjusting unit deletes a state for a state that does not constitute a path obtained by the Viterbi method among the states of the HMM.
請求項6に記載の学習装置。 The learning device according to claim 6, wherein the structure adjustment unit deletes a state transition for a state transition that does not constitute a path obtained by the Viterbi method among the state transitions of the HMM.
前記状態遷移モデルの構造を、スパースな構造に初期化し、
前記学習の進行に応じて、前記学習に用いられる前記時系列データを調整し、調整後の時系列データを出力し、
前記調整後の時系列データを用い、前記状態遷移モデルのパラメータを推定し、
前記状態遷移モデルの構造を調整する
ことを繰り返す
ステップを含む学習方法。 A learning device that learns a state transition model having a state and a state transition using time-series data that is time-series data,
Initialize the structure of the state transition model to a sparse structure,
As the learning progresses, adjust the time-series data used for the learning, and output the adjusted time-series data,
Using the adjusted time series data, estimating the parameters of the state transition model,
A learning method including a step of repeatedly adjusting the structure of the state transition model.
前記学習の進行に応じて、前記学習に用いられる前記時系列データを調整し、調整後の時系列データを出力するデータ調整手段と、
前記調整後の時系列データを用い、前記状態遷移モデルのパラメータを推定するパラメータ推定手段と、
前記状態遷移モデルの構造を調整する構造調整手段と
して、コンピュータを機能させるためのプログラム。 Initial structure setting means for initializing the structure of a state transition model having states and state transitions, which is learned using time-series data that is time-series data, to a sparse structure;
Data adjusting means for adjusting the time series data used for the learning according to the progress of the learning and outputting the adjusted time series data;
Using the time series data after adjustment, parameter estimation means for estimating the parameters of the state transition model;
A program for causing a computer to function as structure adjustment means for adjusting the structure of the state transition model.
前記学習の進行に応じて、前記学習に用いられる前記時系列データを調整し、調整後の時系列データを出力するデータ調整手段と、
前記調整後の時系列データを用い、前記状態遷移モデルのパラメータを推定するパラメータ推定手段と、
前記状態遷移モデルの構造を調整する構造調整手段と
を備える学習装置。 Initial structure setting means for initializing the structure of a state transition model having states and state transitions, learning is performed using time-series data that is time-series data;
Data adjusting means for adjusting the time series data used for the learning according to the progress of the learning and outputting the adjusted time series data;
Using the time series data after adjustment, parameter estimation means for estimating the parameters of the state transition model;
A learning apparatus comprising: a structure adjusting unit that adjusts a structure of the state transition model.
前記時系列データを用い、前記状態遷移モデルのパラメータを推定するパラメータ推定手段と、
前記状態遷移モデルの構造を調整する構造調整手段と
を備え、
前記パラメータ推定手段が、前記状態遷移モデルの前記パラメータの推定を行い、前記構造調整手段が、推定後の前記パラメータで定義される前記状態遷移モデルの構造の調整を行うことを繰り返す
学習装置。 Initial structure setting means for initializing the structure of a state transition model having states and state transitions, which is learned using time-series data that is time-series data, to a sparse structure;
Using the time series data, parameter estimation means for estimating the parameters of the state transition model;
A structure adjusting means for adjusting the structure of the state transition model,
The learning apparatus in which the parameter estimation unit performs estimation of the parameter of the state transition model, and the structure adjustment unit repeatedly adjusts the structure of the state transition model defined by the estimated parameter.
前記時系列データを用い、前記状態遷移モデルのパラメータを推定するパラメータ推定手段と、
前記状態遷移モデルの構造を調整する構造調整手段と
を備え、
前記構造調整手段は、前記状態遷移モデルの状態の分割、状態のマージ、状態の追加、状態遷移の追加、状態の削除、及び、状態遷移の削除を行うことで、前記状態遷移モデルの構造を調整する
学習装置。 Initial structure setting means for initializing the structure of a state transition model having states and state transitions, learning is performed using time-series data that is time-series data;
Using the time series data, parameter estimation means for estimating the parameters of the state transition model;
A structure adjusting means for adjusting the structure of the state transition model,
The structure adjusting means performs the state transition model structure by dividing the state of the state transition model, merging states, adding states, adding state transitions, deleting states, and deleting state transitions. Learning device to adjust.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008064993A JP4683308B2 (en) | 2008-03-13 | 2008-03-13 | Learning device, learning method, and program |
US12/381,499 US8290885B2 (en) | 2008-03-13 | 2009-03-12 | Information processing apparatus, information processing method, and computer program |
US13/927,708 USRE46186E1 (en) | 2008-03-13 | 2013-06-26 | Information processing apparatus, information processing method, and computer program for controlling state transition |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008064993A JP4683308B2 (en) | 2008-03-13 | 2008-03-13 | Learning device, learning method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009223443A true JP2009223443A (en) | 2009-10-01 |
JP4683308B2 JP4683308B2 (en) | 2011-05-18 |
Family
ID=41240183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008064993A Expired - Fee Related JP4683308B2 (en) | 2008-03-13 | 2008-03-13 | Learning device, learning method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4683308B2 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011118765A (en) * | 2009-12-04 | 2011-06-16 | Sony Corp | Information processor, information processing method and program |
JP2019213220A (en) * | 2016-08-30 | 2019-12-12 | アフィニティ ヨーロッパ テクノロジーズ リミテッド | Techniques for benchmarking pairing strategies in contact center system |
WO2020166372A1 (en) * | 2019-02-15 | 2020-08-20 | ソニー株式会社 | Data processing device and display control method |
CN116449081A (en) * | 2023-06-15 | 2023-07-18 | 深圳市北汉科技有限公司 | Data acquisition system, device and storage medium with self-adaptive regulation and control function |
JP7400855B2 (en) | 2022-03-23 | 2023-12-19 | いすゞ自動車株式会社 | Model creation device, data generation device, model creation method, and data generation method |
JP7400856B2 (en) | 2022-03-23 | 2023-12-19 | いすゞ自動車株式会社 | Model creation device, data generation device, model creation method, and data generation method |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0554068A (en) * | 1991-08-29 | 1993-03-05 | Toshiba Corp | Speech recognizing system |
-
2008
- 2008-03-13 JP JP2008064993A patent/JP4683308B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0554068A (en) * | 1991-08-29 | 1993-03-05 | Toshiba Corp | Speech recognizing system |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011118765A (en) * | 2009-12-04 | 2011-06-16 | Sony Corp | Information processor, information processing method and program |
JP2019213220A (en) * | 2016-08-30 | 2019-12-12 | アフィニティ ヨーロッパ テクノロジーズ リミテッド | Techniques for benchmarking pairing strategies in contact center system |
WO2020166372A1 (en) * | 2019-02-15 | 2020-08-20 | ソニー株式会社 | Data processing device and display control method |
JP7400855B2 (en) | 2022-03-23 | 2023-12-19 | いすゞ自動車株式会社 | Model creation device, data generation device, model creation method, and data generation method |
JP7400856B2 (en) | 2022-03-23 | 2023-12-19 | いすゞ自動車株式会社 | Model creation device, data generation device, model creation method, and data generation method |
CN116449081A (en) * | 2023-06-15 | 2023-07-18 | 深圳市北汉科技有限公司 | Data acquisition system, device and storage medium with self-adaptive regulation and control function |
CN116449081B (en) * | 2023-06-15 | 2023-08-15 | 深圳市北汉科技有限公司 | Data acquisition system, device and storage medium with self-adaptive regulation and control function |
Also Published As
Publication number | Publication date |
---|---|
JP4683308B2 (en) | 2011-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE46186E1 (en) | Information processing apparatus, information processing method, and computer program for controlling state transition | |
EP3046053B1 (en) | Method and apparatus for training language model | |
KR102410820B1 (en) | Method and apparatus for recognizing based on neural network and for training the neural network | |
US8326780B2 (en) | Smoothed sarsa: reinforcement learning for robot delivery tasks | |
JP4683308B2 (en) | Learning device, learning method, and program | |
US10679618B2 (en) | Electronic device and controlling method thereof | |
US8077919B2 (en) | Toro: tracking and observing robot | |
KR102449905B1 (en) | Electronic device and method for controlling the electronic device thereof | |
JP2007280053A (en) | Data processor, data processing method and program | |
KR20200047205A (en) | Electronic device and Method for controlling the electronic device thereof | |
EP3523709B1 (en) | Electronic device and controlling method thereof | |
KR102637133B1 (en) | On-device activity recognition | |
JP4596024B2 (en) | Information processing apparatus and method, and program | |
JP4687732B2 (en) | Information processing apparatus, information processing method, and program | |
KR102206181B1 (en) | Terminla and operating method thereof | |
US11488007B2 (en) | Building of custom convolution filter for a neural network using an automated evolutionary process | |
US11195116B2 (en) | Dynamic boltzmann machine for predicting general distributions of time series datasets | |
US20200234085A1 (en) | Electronic device and feedback information acquisition method therefor | |
Rottmann et al. | Adaptive autonomous control using online value iteration with gaussian processes | |
US10812904B2 (en) | Acoustic equalization method, robot and AI server implementing the same | |
JP2007280057A (en) | Data processor, data processing method, and program | |
CN113966517A (en) | System for sequencing and planning | |
US11410042B2 (en) | Dynamic Boltzmann machine for estimating time-varying second moment | |
WO2024089554A1 (en) | System and method for keyword false alarm reduction | |
Hiltunen | Single Inertial Measurement Unit Embedded Gesture Recognition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091208 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100122 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100824 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101124 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20101129 |
|
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: 20110113 |
|
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: 20110126 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140218 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4683308 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140218 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |