JP5150348B2 - Model building apparatus and program - Google Patents

Model building apparatus and program Download PDF

Info

Publication number
JP5150348B2
JP5150348B2 JP2008110903A JP2008110903A JP5150348B2 JP 5150348 B2 JP5150348 B2 JP 5150348B2 JP 2008110903 A JP2008110903 A JP 2008110903A JP 2008110903 A JP2008110903 A JP 2008110903A JP 5150348 B2 JP5150348 B2 JP 5150348B2
Authority
JP
Japan
Prior art keywords
variable
order information
model
model construction
structure search
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008110903A
Other languages
Japanese (ja)
Other versions
JP2009265713A (en
Inventor
稔 田中
守一 佐藤
浩司 水野
亮 不動野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Toyota Central R&D Labs Inc
Original Assignee
Toyota Motor Corp
Toyota Central R&D Labs Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp, Toyota Central R&D Labs Inc filed Critical Toyota Motor Corp
Priority to JP2008110903A priority Critical patent/JP5150348B2/en
Publication of JP2009265713A publication Critical patent/JP2009265713A/en
Application granted granted Critical
Publication of JP5150348B2 publication Critical patent/JP5150348B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、ベイジアンネットワークモデルを構築するモデル構築装置、およびプログラムに関する。   The present invention relates to a model construction apparatus and program for constructing a Bayesian network model.

近年、商品の販売施策(消費者に対象の商品を購入してもらうことを目的とするあらゆる施策)の手段が多様化し、一つの商品に対して複数の販売施策手段を組み合わせることが一般的となっている。複数の販売施策手段を組み合わせる場合、どの販売施策手段にどの程度の費用をかけると、その商品を購入する消費者が増えるかを考える必要がある。例えば、自動車を商品とする場合、マスメディア広告、試乗イベントなどの販売施策と、消費者の購入行動との因果関係を考える必要がある。そして、このような関係をモデル化する手法の一つとして、ベイジアンネットワークモデルの構築が考えられる。   In recent years, the means of product sales measures (all measures aimed at getting consumers to purchase the target product) have diversified, and it is common to combine multiple sales measure means for one product. It has become. When combining a plurality of sales measure means, it is necessary to consider how much money is spent on which sales measure means to increase the number of consumers who purchase the product. For example, when a car is used as a product, it is necessary to consider a causal relationship between sales measures such as mass media advertisements and test drive events and consumer purchase behavior. As one method for modeling such a relationship, it is conceivable to construct a Bayesian network model.

ベイジアンネットワークとは、ノード(変数)とリンク(変数間の依存関係)とからなり、方向を持った非循環グラフである。ベイジアンネットワークは、原因と結果の結びつきを視覚化し、条件付確率を用いて、結びつきの度合いを表現する。また、ベイジアンネットワークモデルを用いることによって、観測データを基に、未観測の事象の状態の確率を計算することが可能となる。   A Bayesian network is a non-circular graph having a direction and composed of nodes (variables) and links (dependencies between variables). A Bayesian network visualizes the connection between a cause and an effect, and expresses the degree of connection using a conditional probability. Further, by using the Bayesian network model, it is possible to calculate the probability of the state of the unobserved event based on the observation data.

ベイジアンネットワークモデルの構築アルゴリズムとしては、(1)全数探索アルゴリズム、(2)K2アルゴリズム、(3)CItestアルゴリズム、等が知られている。全数探索アルゴリズムは、最も単純なアルゴリズムであり、全てのノード候補(変数)の全ての組合せに対してモデル評価を行い、最良の組合せを算出し、モデルを構築する。K2アルゴリズムは、欲張り法とも呼ばれ、ノード単位で、注目ノードと親ノード候補との間にリンクを張るべきかをモデル評価の一つである情報量基準評価などで局所的に探索し、探索した結果である局所的構造を統合することによってモデルを構築する(非特許文献1参照)。情報量基準評価は、例えば、AIC(Akaike Information Criterion)、BIC(Shwartz‘s Bayesian Infromation Criterion)などがあり、モデルの当てはまりの良さと同時に、モデルの単純さ(ベイジアンネットワークモデルの場合、リンクが少ない程、モデルが単純であると言える。)をも評価する。CItestアルゴリズムは、ノード間の条件付独立性の判定を基に全体の構造を探索し、モデルを構築する(非特許文献2参照)。また、K2アルゴリズムを改良し、親ノード選択の際、因果関係の強さに関する情報を用いる仕組みも公開されている(特許文献1参照)。
特開2007−249873号公報 Cooper,G.and Herskovits,E.、“A Bayesian method for the induction of probabilistic networks from Data” 、Machine Learning,Vol.9,pp.309−347、1992. Cheng,J.,Bell,DA,Liu,W.、“An algorithm for Bayesian Network construction from data” 、proceedings of the 6th International Workshop on Artificial Intelligence and Statistics、1997.
Known construction algorithms for the Bayesian network model include (1) exhaustive search algorithm, (2) K2 algorithm, (3) CItest algorithm, and the like. The exhaustive search algorithm is the simplest algorithm, and performs model evaluation for all combinations of all node candidates (variables), calculates the best combination, and constructs a model. The K2 algorithm is also called a greedy method, and it searches locally by node based on information criterion evaluation, which is one of model evaluations, to determine whether a link should be established between a node of interest and a parent node candidate. A model is constructed by integrating the local structures that are the results (see Non-Patent Document 1). Information criteria evaluation includes, for example, AIC (Akaike Information Criterion), BIC (Shwartz's Bayesian Information Criterion), etc., and the simplicity of the model (Baysian network model has few links). It can be said that the model is simpler.) The CItest algorithm searches the entire structure based on the determination of conditional independence between nodes, and builds a model (see Non-Patent Document 2). Further, a mechanism for improving the K2 algorithm and using information on the strength of the causal relationship when selecting a parent node has been disclosed (see Patent Document 1).
JP 2007-249873 A Cooper, G.C. and Herskovits, E .; "A Bayesian method for the induction of probable networks from Data", Machine Learning, Vol. 9, pp. 309-347, 1992. Cheng, J. et al. Bell, DA, Liu, W .; , “An algorithm for Bayesian Network construction from data”, proceedings of the 6th International Workshop on Artificial Intelligence 97.

しかしながら、前述した従来技術には、それぞれ問題がある。以下、従来技術の問題点について簡単に述べる。   However, each of the conventional techniques described above has problems. The problems of the prior art will be briefly described below.

全数探索アルゴリズムは、変数が多い場合、組合せの数が膨大になり、実用的な時間で探索できないという問題がある。ここで、組合せの数は、変数の数をNとすると、3^(N×(N−1)/2)(x^yは、xのy乗を意味する。)のオーダーで増える。   The exhaustive search algorithm has a problem that when there are many variables, the number of combinations becomes enormous and the search cannot be performed in a practical time. Here, the number of combinations increases in the order of 3 ^ (N × (N-1) / 2) (x ^ y means x to the power of y), where N is the number of variables.

K2アルゴリズムは、親ノードの候補決めのための順序付けを制約として用いないので、選択される構造の解が一意に定まらない場合がある。また、実用的な時間でモデルを構築するためには、親ノードの候補とする変数の数を少なくする必要があるが、その場合、構築したモデルの精度が低くなるという問題がある。例えば、最も因果関係の強い変数を親ノードにし損なう場合がある。   Since the K2 algorithm does not use the ordering for determining candidate nodes as a constraint, the solution of the selected structure may not be uniquely determined. Further, in order to construct a model in a practical time, it is necessary to reduce the number of variables that are candidates for the parent node, but in this case, there is a problem that the accuracy of the constructed model is lowered. For example, the most causal variable may be missed as a parent node.

K2アルゴリズムを改良した特許文献1の仕組みは、K2アルゴリズムにおける上記の問題を解決できる可能性がある。しかしながら、K2アルゴリズムの他の問題、すなわち「偽相関」により真の因果関係の構造が抽出できない場合があるという問題は解決できない。「偽相関」とは、見せかけの相関のことである。「偽相関」により真の因果関係の構造が抽出できないという問題は、「個別の変数間の相関係数が高い」ならば「個別の変数間に因果関係がある」という誤った判断をすることによって起こると考えられる。   The mechanism of Patent Document 1 in which the K2 algorithm is improved may solve the above problem in the K2 algorithm. However, the other problem of the K2 algorithm, that is, the problem that the true causal structure may not be extracted due to “false correlation” cannot be solved. “Pseudo-correlation” is an apparent correlation. The problem of not being able to extract the true causal structure due to “false correlation” is that if “correlation coefficient between individual variables is high”, it is an erroneous judgment that “causal relationship exists between individual variables”. It is thought to occur by.

ここで、図25から図32までを参照しながら、K2アルゴリズム(特許文献1の仕組みを含む。)における「偽相関」により真の因果関係の構造が抽出できない場合があるという問題について説明する。以下では、発明者らが、K2アルゴリズムとCItestアルゴリズムの両方によってベイジアンネットワークモデルを構築したときの例を用いる。   Here, with reference to FIG. 25 to FIG. 32, a problem that a true causal structure may not be extracted by “false correlation” in the K2 algorithm (including the mechanism of Patent Document 1) will be described. In the following, an example in which the inventors have constructed a Bayesian network model using both the K2 algorithm and the CItest algorithm will be used.

図25は、クロス集計表の一例を示す図である。図25は、アンケートの回答結果である。例えば、「年間所得1000万円超=0」(「0」は質問に対する答えが「No」であることを示す。)、かつ「30代以下」の場合、高級車を買いたいと答えた人が130人、高級車を買いたいと答えなかった人が130人であることを示している。また、例えば、「年間所得1000万円超=1」(「1」は、質問に対する答えが「Yes」であることを示す。)、かつ「40代以上」の場合、高級車を買いたいと答えた人が150人、高級車を買いたいと答えなかった人が50人であることを示している。   FIG. 25 is a diagram illustrating an example of a cross tabulation table. FIG. 25 shows a questionnaire response result. For example, if “Annual income exceeds 10 million yen = 0” (“0” indicates that the answer to the question is “No”), and if it is “under 30s”, the person who wants to buy a luxury car Shows that there are 130 people and 130 people who have not answered that they want to buy a luxury car. In addition, for example, if “annual income exceeds 10 million yen = 1” (“1” indicates that the answer to the question is “Yes”) and “40s or older” It shows that there are 150 people who answered and 50 people who did not want to buy a luxury car.

図25のクロス集計表について、「高級車購入願望」変数と、他の2つの変数との関係をそれぞれ観察する。
図26は、「年間所得」変数を条件としたときの「高級車購入願望」変数の分布を示す図である。図26を見ると、「年間所得1000万円超=1」の場合、「高級車を買いたい=1」となる傾向が強いことが分かる。
また、図27は、「年齢」変数を条件としたときの「高級車購入願望」変数の分布を示す図である。図27を見ると、「40代以上」の場合、「高級車を買いたい=1」となる傾向が強いことが分かる。
With respect to the cross tabulation table of FIG. 25, the relationship between the “luxury car purchase desire” variable and the other two variables is observed.
FIG. 26 is a diagram showing the distribution of the “luxury car purchase desire” variable when the “annual income” variable is used as a condition. FIG. 26 shows that when “annual income exceeds 10 million yen = 1”, there is a strong tendency to “purchase a luxury car = 1”.
FIG. 27 is a diagram showing the distribution of the “luxury car purchase desire” variable when the “age” variable is used as a condition. FIG. 27 shows that in the case of “40 or older”, there is a strong tendency of “I want to buy a luxury car = 1”.

図28は、モデル構築の仮定を示す図である。図28に示すように、最下流ノードが「高級車購入願望」変数であると仮定する。
図29は、K2アルゴリズムによるモデル構築結果を示す図である。図29に示す結果は、発明者らがK2アルゴリズムを実装しているソフトウェアを用いて実験を行ったものである。図29に示すように、「年齢」変数に係るノードから「年間所得」変数に係るノードに対してリンクが張られ、「年齢」変数に係るノードおよび「年間所得」変数に係るノードの両方から「高級車購入願望」変数に係るノードに対してリンクが張られる結果となった。
FIG. 28 is a diagram illustrating the assumption of model construction. As shown in FIG. 28, it is assumed that the most downstream node is a “luxury car purchase desire” variable.
FIG. 29 is a diagram illustrating a model construction result by the K2 algorithm. The results shown in FIG. 29 are the results of experiments conducted by the inventors using software that implements the K2 algorithm. As shown in FIG. 29, a link is established from the node related to the “age” variable to the node related to the “annual income” variable, and from both the node related to the “age” variable and the node related to the “annual income” variable. As a result, a link is made to the node related to the “luxury car purchase desire” variable.

図30は、「年齢」変数かつ「年間所得」変数の両方を条件としたときの「高級車購入願望」変数の分布を示す図である。図30を見ると、「年齢」変数による「高級車購入願望」変数の分布の偏りは無く、「年間所得」変数によって「高級車購入願望」変数の分布が偏っていることが分かる。このように、K2アルゴリズムでは、本実験においては「偽相関」により真の因果関係の構造が抽出できていない。これは、注目している子ノード(「高級車購入願望」変数)とそれぞれの親候補ノード(「年齢」変数および「年間所得」変数)との関係だけを捉えて構造探索をすることによって起こる問題である。   FIG. 30 is a diagram showing the distribution of the “luxury car purchase desire” variable when both the “age” variable and the “annual income” variable are used as conditions. FIG. 30 shows that the distribution of the “luxury car purchase desire” variable is not biased by the “age” variable, and the distribution of the “luxury car purchase desire” variable is biased by the “annual income” variable. Thus, in the K2 algorithm, the true causal structure cannot be extracted by “false correlation” in this experiment. This is caused by a structure search that captures only the relationship between the child node of interest (the “luxury car purchase desire” variable) and each parent candidate node (the “age” variable and the “annual income” variable). It is a problem.

図31は、CItestアルゴリズムによるモデル構築結果を示す図である。図31に示す結果は、発明者らがCItestアルゴリズムを実装しているソフトウェアを用いて実験を行ったものである。図31に示すように、「年齢」変数に係るノードから「年間所得」変数に係るノードに対してリンクが張られ、「年間所得」変数に係るノードのみから「高級車購入願望」変数に係るノードに対してリンクが張られる結果となった。   FIG. 31 is a diagram illustrating a result of model construction by the CItest algorithm. The results shown in FIG. 31 are the results of experiments conducted by the inventors using software that implements the CItest algorithm. As shown in FIG. 31, a node is linked from the node related to the “age” variable to the node related to the “annual income” variable, and only from the node related to the “annual income” variable, As a result, a link is made to the node.

CItestアルゴリズムにおいても、基本的には、図1に示すクロス集計表の偏りが大きい変数間にリンクが張られる。しかし、CItestアルゴリズムでは、他の変数による条件を付けると独立とみなせる場合、直接のリンクは張られない。本実験例では、「高級車購入願望」変数と「年齢」変数とは、「年間所得」変数を条件とすると、独立(因果関係が無い)とみなせるので、直接のリンクは張られない。このように、CItestアルゴリズムでは、本実験においては図1に示すクロス集計表の傾向を正しく表現できる結果となった。   Also in the CItest algorithm, a link is basically established between variables having a large deviation in the cross tabulation table shown in FIG. However, in the CItest algorithm, a direct link is not established if it can be regarded as independent when conditions based on other variables are added. In the present experimental example, the “luxury car purchase desire” variable and the “age” variable can be regarded as independent (no causal relationship) if the “annual income” variable is used as a condition, so a direct link is not established. As described above, the CItest algorithm was able to correctly express the tendency of the cross tabulation table shown in FIG. 1 in this experiment.

図32は、モデルの評価を示す図である。図32は、K2アルゴリズムとCItestアルゴリズムによるモデル構築結果に対して、対数尤度、AIC、BICの算出を行った結果である。対数尤度は、モデルの当てはまりの良さを評価する。対数尤度、AIC、BICのいずれも、絶対値が小さい方が良い評価となる。図32に示すように、モデルの当てはまりの良さを示す対数尤度は、両方のアルゴリズムともに違いはない。しかしながら、モデルの当てはまりの良さと同時に、モデルの単純さをも評価するAIC、BICに関しては、CItestアルゴリズムの方が良い評価となった。   FIG. 32 is a diagram illustrating model evaluation. FIG. 32 shows the result of calculating log likelihood, AIC, and BIC for the model construction result by the K2 algorithm and the CItest algorithm. Log likelihood evaluates the goodness of fit of the model. A logarithmic likelihood, AIC, and BIC are all better evaluated with a smaller absolute value. As shown in FIG. 32, the log likelihood indicating the goodness of fitting of the model is not different in both algorithms. However, regarding the AIC and BIC for evaluating the simplicity of the model as well as the goodness of the fit of the model, the CItest algorithm was evaluated better.

前述したように、K2アルゴリズムが有する問題は、CItestアルゴリズムによって解決できることが分かる。しかしながら、CItestアルゴリズムにも問題がある。CItestアルゴリズムでは、リンクを張るかどうかの判定において閾値を用いる。この閾値を変更すると、異なる構造を持つモデルが構築される。すなわち、閾値に依存し解が一意ではない。これは、モデル構築者が恣意的に閾値を変更することで、モデル構築者が望むモデルを構築できてしまうという問題がある。また、モデル全体の中で、他の変数との因果関係が強い変数に対しては、リンクが集中する傾向がある。そして、リンクが集中している変数については、予測に用いるパラメータが過剰な状態となり、予測精度が低下するという問題がある。   As described above, it can be understood that the problem of the K2 algorithm can be solved by the CItest algorithm. However, there are also problems with the CItest algorithm. In the CItest algorithm, a threshold is used in determining whether to establish a link. When this threshold value is changed, a model having a different structure is constructed. That is, the solution is not unique depending on the threshold. This has a problem that the model builder can arbitrarily build the model desired by the model builder by arbitrarily changing the threshold value. Also, links tend to concentrate on variables that have a strong causal relationship with other variables in the entire model. And about the variable with which the link is concentrated, the parameter used for prediction will be in an excess state, and there exists a problem that prediction accuracy falls.

以上から、実用的な時間内に真の因果関係を精度良く抽出するという問題は、従来技術において解決されていない。   From the above, the problem of accurately extracting the true causal relationship within a practical time has not been solved in the prior art.

本発明は、前述した問題点に鑑みてなされたもので、その目的は、ベイジアンネットワークモデルの構築において、実用的な時間内に真の因果関係を精度良く抽出できるモデル構築装置等を提供することである。   The present invention has been made in view of the above-described problems, and an object thereof is to provide a model construction apparatus and the like that can accurately extract a true causal relationship within a practical time in constructing a Bayesian network model. It is.

前述した目的を達成するために第1の発明は、ベイジアンネットワークモデルを構築するモデル構築装置であって、制御部が、入力部を介して入力されるデータ、または記憶部に記憶される変数単位の順序情報定義データを用いて、ノード候補である変数群を、一つまたは複数の変数の集合であるブロックに分割する変数分割手段と、制御部が、入力部を介して入力されるデータ、または記憶部に記憶される変数単位の順序情報定義データを用いて、ブロック間の因果の順序情報を定義する順序情報定義手段と、制御部が、前記順序情報定義手段によって定義された因果の順序情報を制約として、一つまたは複数のブロック内に含まれる変数群の構造探索を行う構造探索手段と、制御部が、前記構造探索手段による構造探索ごとにモデル評価を行い、構造を確定する構造確定手段と、を具備し、制御部が、前記順序情報定義手段によって定義された順序情報に基づいて、最下流のブロックから世代の遠い順に、一つまたは複数ずつのブロックを構造探索の対象として追加していき、前記構造探索手段による構造探索を繰り返し行い、かつ前記構造確定手段による構造の確定を繰り返し行うことを特徴とするモデル構築装置である。第1の発明によって、ベイジアンネットワークモデルの構築において、実用的な時間内に真の因果関係を精度良く抽出できる。
In order to achieve the above-described object, a first invention is a model construction apparatus for constructing a Bayesian network model, in which a control unit receives data input via an input unit or a variable unit stored in a storage unit Using the order information definition data, variable dividing means for dividing a variable group that is a node candidate into blocks that are a set of one or a plurality of variables, and data that the control unit inputs via the input unit, or by using the sequence information definition data variables units stored in the storage unit, the order information definition means for defining the sequence information of the causal between blocks, the control unit, the order of the causal defined by said order information definition unit as the constraint information, and structure searching means for performing a structure search variable groups included in one or more blocks, the control unit, the model evaluated every structure search by the structural searching means Performed, comprising a structure determination means for determining the structure, a control unit, based on the order information defined by said order information definition means, in order away from the most downstream block generations, one or more portions of The model construction apparatus is characterized in that a block is added as a structure search target, the structure search by the structure search means is repeated, and the structure determination by the structure determination means is repeatedly performed . According to the first invention, in the construction of a Bayesian network model, a true causal relationship can be accurately extracted within a practical time.

第1の発明における前記順序情報定義データは、同一の変数群からなる行項目の変数及び列項目の変数によって構成される表形式のデータであって、各セルの値が、順序関係に何も制約を置かないことを意味する値と、行項目が列項目よりも上流であることを意味する値のいずれかである。The order information definition data in the first invention is tabular data composed of row item variables and column item variables made up of the same variable group, and the values of the cells have nothing in the order relation. Either a value that means that no constraint is placed, or a value that means that the row item is upstream of the column item.

第2の発明は、ベイジアンネットワークモデルを構築するモデル構築装置であって、制御部が、入力部を介して入力されるデータ、または記憶部に記憶される変数単位の順序情報定義データを用いて、ノード候補である変数群の中で少なくとも一部の変数間の因果の順序情報を定義する順序情報定義手段と、制御部が、前記順序情報定義手段によって定義された因果の順序情報を制約として、変数群の構造探索を行う構造探索手段と、制御部が、前記構造探索手段による構造探索ごとにモデル評価を行い、構造を確定する構造確定手段と、を具備し、制御部が、前記順序情報定義手段によって定義された順序情報に基づいて、最下流の変数から世代の遠い順に、一つまたは複数ずつの変数を構造探索の対象として追加していき、前記構造探索手段による構造探索を繰り返し行い、かつ前記構造確定手段による構造の確定を繰り返し行うことを特徴とするモデル構築装置である。第2の発明によって、ベイジアンネットワークモデルの構築において、実用的な時間内に真の因果関係を精度良く抽出できる。
A second invention is a model construction device for constructing a Bayesian network model, wherein the control unit uses data input via the input unit or order information definition data in variable units stored in the storage unit. The order information defining means for defining the causal order information between at least some of the variables that are node candidates, and the control unit using the causal order information defined by the order information defining means as a constraint A structure search means for performing a structure search of a variable group; and a control section that performs model evaluation for each structure search performed by the structure search means and determines a structure , and the control section includes the order. Based on the order information defined by the information definition means, one or a plurality of variables are added as targets for the structure search in the order of generation from the most downstream variable, and the structure search It repeats the structure search by stages, and a model building apparatus characterized by repeating the determination of the structure by the structure determination means. According to the second invention, in the construction of a Bayesian network model, a true causal relationship can be accurately extracted within a practical time.

第2の発明における前記順序情報定義データは、同一の変数群からなる行項目の変数及び列項目の変数によって構成される表形式のデータであって、各セルの値が、順序関係に何も制約を置かないことを意味する値と、行項目が列項目よりも上流であることを意味する値のいずれかである。The order information definition data in the second invention is tabular data constituted by row item variables and column item variables comprising the same variable group, and the value of each cell is nothing in order relation. Either a value that means that no constraint is placed, or a value that means that the row item is upstream of the column item.

第1の発明または第2の発明に係るモデル構築装置は、例えば、商品に対する販売施策と消費者の商品購入行動との関係を表すベイジアンネットワークモデルを構築する。   The model construction device according to the first invention or the second invention constructs, for example, a Bayesian network model representing a relationship between a sales measure for a product and a consumer's product purchase behavior.

第3の発明は、コンピュータを第1の発明または第2の発明のモデル構築装置として機能させるプログラムである。   A third invention is a program for causing a computer to function as the model construction device of the first invention or the second invention.

本発明により、ベイジアンネットワークモデルの構築において、実用的な時間内に真の因果関係を精度良く抽出できるモデル構築装置等を提供することができる。   According to the present invention, it is possible to provide a model construction apparatus and the like that can accurately extract a true causal relationship within a practical time in constructing a Bayesian network model.

以下図面に基づいて、本発明の実施形態を詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、本発明の実施形態に係るモデル構築装置1を実現するコンピュータのハードウェア構成図である。尚、図1のハードウェア構成は一例であり、用途、目的に応じて様々な構成を採ることが可能である。   FIG. 1 is a hardware configuration diagram of a computer that realizes a model construction apparatus 1 according to an embodiment of the present invention. Note that the hardware configuration in FIG. 1 is an example, and various configurations can be adopted depending on the application and purpose.

モデル構築装置1は、制御部3、記憶部5、メディア入出力部7、通信制御部9、入力部11、表示部13、周辺機器I/F部15等が、バス17を介して接続される。   The model construction apparatus 1 includes a control unit 3, a storage unit 5, a media input / output unit 7, a communication control unit 9, an input unit 11, a display unit 13, a peripheral device I / F unit 15 and the like connected via a bus 17. The

制御部3は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等で構成される。   The control unit 3 includes a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), and the like.

CPUは、記憶部5、ROM、記録媒体等に格納されるプログラムをRAM上のワークメモリ領域に呼び出して実行し、バス17を介して接続された各装置を駆動制御し、モデル構築装置1が行う後述する処理を実現する。
ROMは、不揮発性メモリであり、コンピュータのブートプログラムやBIOS等のプログラム、データ等を恒久的に保持している。
RAMは、揮発性メモリであり、記憶部5、ROM、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部3が各種処理を行う為に使用するワークエリアを備える。
The CPU calls a program stored in the storage unit 5, ROM, recording medium, etc. to a work memory area on the RAM, executes it, drives and controls each device connected via the bus 17, and the model construction device 1 The process to be described later is realized.
The ROM is a non-volatile memory and permanently holds a computer boot program, a program such as BIOS, data, and the like.
The RAM is a volatile memory, and temporarily stores programs, data, and the like loaded from the storage unit 5, ROM, recording medium, and the like, and includes a work area used by the control unit 3 for performing various processes.

記憶部5は、HDD(ハードディスクドライブ)であり、制御部3が実行するプログラム、プログラム実行に必要なデータ等が格納される。プログラムに関しては、OS(オペレーティングシステム)に相当する制御プログラムや、後述する処理をコンピュータに実行させるためのアプリケーションプログラムが格納されている。
これらの各プログラムコードは、制御部3により必要に応じて読み出されてRAMに移され、CPUに読み出されて各種の手段として実行される。
The storage unit 5 is an HDD (hard disk drive), and stores a program executed by the control unit 3, data necessary for program execution, and the like. With respect to the program, a control program corresponding to an OS (operating system) and an application program for causing a computer to execute processing described later are stored.
Each of these program codes is read by the control unit 3 as necessary, transferred to the RAM, read by the CPU, and executed as various means.

メディア入出力部7(ドライブ装置)は、データの入出力を行い、例えば、CDドライブ(−ROM、−R、−RW等)、DVDドライブ(−ROM、−R、−RW等)、MOドライブ等のメディア入出力装置を有する。   The media input / output unit 7 (drive device) inputs / outputs data, for example, a CD drive (-ROM, -R, -RW, etc.), DVD drive (-ROM, -R, -RW, etc.), MO drive, etc. And other media input / output devices.

通信制御部9は、通信制御装置、通信ポート等を有し、コンピュータとネットワーク19間の通信を媒介する通信インタフェースであり、ネットワーク19を介して、他のコンピュータ間との通信制御を行う。   The communication control unit 9 includes a communication control device, a communication port, and the like, and is a communication interface that mediates communication between the computer and the network 19, and performs communication control between other computers via the network 19.

入力部11は、データの入力を行い、例えば、キーボード、マウス等のポインティングデバイス、テンキー等の入力装置を有する。
入力部11を介して、コンピュータに対して、操作指示、動作指示、データ入力等を行うことができる。
The input unit 11 inputs data and includes, for example, a keyboard, a pointing device such as a mouse, and an input device such as a numeric keypad.
An operation instruction, an operation instruction, data input, and the like can be performed on the computer via the input unit 11.

表示部13は、CRTモニタ、液晶パネル等のディスプレイ装置、ディスプレイ装置と連携してコンピュータのビデオ機能を実現するための論理回路等(ビデオアダプタ等)を有する。   The display unit 13 includes a display device such as a CRT monitor and a liquid crystal panel, and a logic circuit (such as a video adapter) for realizing a video function of the computer in cooperation with the display device.

周辺機器I/F(インタフェース)部15は、コンピュータに周辺機器を接続させるためのポートであり、周辺機器I/F部15を介してコンピュータは周辺機器とのデータの送受信を行う。周辺機器I/F部15は、USBやIEEE1394やRS−232C等で構成されており、通常複数の周辺機器I/Fを有する。周辺機器との接続形態は有線、無線を問わない。   The peripheral device I / F (interface) unit 15 is a port for connecting a peripheral device to the computer, and the computer transmits and receives data to and from the peripheral device via the peripheral device I / F unit 15. The peripheral device I / F unit 15 is configured by USB, IEEE 1394, RS-232C, or the like, and usually has a plurality of peripheral devices I / F. The connection form with the peripheral device may be wired or wireless.

バス17は、各装置間の制御信号、データ信号等の授受を媒介する経路である。   The bus 17 is a path that mediates transmission / reception of control signals, data signals, and the like between the devices.

<第1の実施形態>
次に、図2から図12を参照しながら、第1の実施形態について説明する。
<First Embodiment>
Next, the first embodiment will be described with reference to FIGS.

図2は、第1の実施形態に係るモデル構築装置1の機能の概要を示すブロック図である。図2に示すように、第1の実施形態に係るモデル構築装置1は、サンプルデータ入力手段21、サンプルデータ保持手段23、変数データ入力手段25、変数分割手段27、順序情報定義手段29、構造探索手段31、構造確定手段33、モデル構築結果出力手段35等を備える。   FIG. 2 is a block diagram illustrating an outline of functions of the model construction device 1 according to the first embodiment. As shown in FIG. 2, the model construction apparatus 1 according to the first embodiment includes a sample data input unit 21, a sample data holding unit 23, a variable data input unit 25, a variable division unit 27, an order information definition unit 29, a structure. A search unit 31, a structure determination unit 33, a model construction result output unit 35, and the like are provided.

サンプルデータ入力手段21は、メディア入出力部7、通信制御部9、入力部11、周辺機器I/F部15等を介して、サンプルデータを入力する。サンプルデータとは、ベイジアンネットワークモデル(以下、単に「モデル」という。)の構築に用いるデータであり、モデル化対象から観測されたものである。サンプルデータ保持手段23は、サンプルデータ入力手段21によって入力されたサンプルデータ41を記憶部5に記憶する。   The sample data input means 21 inputs sample data via the media input / output unit 7, the communication control unit 9, the input unit 11, the peripheral device I / F unit 15, and the like. The sample data is data used to construct a Bayesian network model (hereinafter simply referred to as “model”) and is observed from the modeling target. The sample data holding unit 23 stores the sample data 41 input by the sample data input unit 21 in the storage unit 5.

図3は、サンプルデータ41の一例を示す図である。図3に示すように、サンプルデータ41は、サンプルIDごとに、変数群43(X1、X2、X3等)の観測データを含む。変数群43は、モデルのノード候補群である。図3に示す例では、サンプルIDが「1」のデータは、X1が「0」、X2が「1」、X3が「0」、・・・である。当然ながら、変数群43の取りうる値は、「0」と「1」に限定されるものではない。サンプルデータ41がアンケートの回答である場合、データを扱い易いように、例えば、YESまたはNOで答える質問については、YESであれば「1」、NOであれば「0」と記号化する。また、例えば、三つ以上の選択肢がある質問については、それぞれの選択肢を異なる数値に記号化する。   FIG. 3 is a diagram illustrating an example of the sample data 41. As shown in FIG. 3, the sample data 41 includes observation data of a variable group 43 (X1, X2, X3, etc.) for each sample ID. The variable group 43 is a model candidate node group. In the example shown in FIG. 3, the data whose sample ID is “1” is “0” for X1, “1” for X2, “0” for X3,. Of course, the possible values of the variable group 43 are not limited to “0” and “1”. When the sample data 41 is an answer to a questionnaire, for example, a question answered with YES or NO is symbolized as “1” for YES and “0” for NO so that the data is easy to handle. For example, for a question with three or more options, each option is symbolized into a different numerical value.

変数データ入力手段25は、メディア入出力部7、通信制御部9、入力部11、周辺機器I/F部15等を介して、変数データを入力する。変数データとは、モデルのノード候補のデータである。変数分割手段27は、変数データ入力手段25によって入力された変数データを、一つまたは複数の変数の集合であるブロックに分割する。ここで、変数分割手段27は、事前に変数単位の順序情報を定義し、定義した変数単位の順序情報を用いてブロックに分割しても良い。順序情報定義手段29は、変数分割手段27による分割結果に基づいて、ブロック間の因果の順序情報を定義する。   The variable data input means 25 inputs variable data via the media input / output unit 7, the communication control unit 9, the input unit 11, the peripheral device I / F unit 15, and the like. Variable data is model node candidate data. The variable dividing unit 27 divides the variable data input by the variable data input unit 25 into blocks that are sets of one or a plurality of variables. Here, the variable dividing unit 27 may define order information for each variable unit in advance, and may divide into blocks using the defined order information for each variable unit. The order information defining means 29 defines causal order information between blocks based on the result of division by the variable dividing means 27.

図4は、ブロック間の因果関係を示す図である。図4に示す例では、X1、X2、・・・、X5が変数データである。図4に示すように、変数分割手段27は、X1とX2をブロックA、X3とX4をブロックB、X5をブロックCに分割する。具体的には、例えば、表示部13に表示されている変数データX1に対して、ユーザが、入力部11を介して、ブロックAに分割することを指定入力すると、制御部3は、変数データX1がブロックAに分割されたことをRAM上のワークメモリに記憶する。   FIG. 4 is a diagram illustrating a causal relationship between blocks. In the example shown in FIG. 4, X1, X2,..., X5 are variable data. As shown in FIG. 4, the variable dividing means 27 divides X1 and X2 into blocks A, X3 and X4 into blocks B, and X5 into blocks C. Specifically, for example, when the user specifies and inputs the variable data X1 displayed on the display unit 13 to be divided into blocks A via the input unit 11, the control unit 3 displays the variable data. The fact that X1 is divided into blocks A is stored in the work memory on the RAM.

また、順序情報定義手段29は、ブロックAとブロックBとの間の順序情報45、ブロックBとブロックCとの間の順序情報45を定義する。具体的には、例えば、ユーザが、入力部11を介して、ブロックAからブロックBへの順序を定義することを指定入力すると、制御部3は、ブロックAからブロックBへの順序を定義したことをRAM上のワークメモリに記憶する。   The order information defining unit 29 defines order information 45 between the block A and the block B and order information 45 between the block B and the block C. Specifically, for example, when the user specifies and inputs the definition from the block A to the block B via the input unit 11, the control unit 3 defines the order from the block A to the block B. This is stored in the work memory on the RAM.

図5は、順序情報定義データ47の一例を示す図である。図5に示す順序情報定義データ47は、変数単位の順序情報である。図5に示すセルの値が「1」の場合、行項目の変数は列項目の変数の上流であることを示す。また、図5に示すセルの値が「0」の場合、行項目の変数は列項目の変数の上流でない、すなわち、同じブロックに属する、または下流であることを示す。   FIG. 5 is a diagram illustrating an example of the order information definition data 47. The order information definition data 47 shown in FIG. 5 is order information in variable units. When the cell value shown in FIG. 5 is “1”, it indicates that the variable of the row item is upstream of the variable of the column item. 5 indicates that the row item variable is not upstream of the column item variable, that is, belongs to the same block or is downstream.

図5に示す例では、行項目の変数がX1、列項目の変数がX2のセルの値は、「0」となっている。従って、X1はX2の上流でない、すなわち、同じブロックに属する、または下流である。また、行項目の変数がX2、列項目の変数がX1のセルの値は、「0」となっている。従って、X2はX1の上流でない、すなわち、同じブロックに属する、または下流である。そして、これらの両方が成り立つことから、制御部3は、X1とX2が同じブロックに属すると判断する。このように、変数分割手段27は、変数をブロックに分割するために、図5に示す変数単位の順序情報定義データ47を利用しても良い。また、順序情報定義手段29は、図5に示す変数単位の順序情報定義データ47を利用して、ブロック間の因果の順序情報を定義しても良い。   In the example shown in FIG. 5, the value of the cell whose row item variable is X1 and whose column item variable is X2 is “0”. Thus, X1 is not upstream of X2, ie belongs to the same block or is downstream. The value of the cell in which the row item variable is X2 and the column item variable is X1 is “0”. Thus, X2 is not upstream of X1, ie belongs to the same block or is downstream. Since both of these hold, the control unit 3 determines that X1 and X2 belong to the same block. As described above, the variable dividing unit 27 may use the variable unit order information definition data 47 shown in FIG. 5 in order to divide the variable into blocks. The order information defining unit 29 may define causal order information between blocks using the variable unit order information definition data 47 shown in FIG.

構造探索手段31は、順序情報定義手段29によって定義された因果の順序情報を制約として、一つまたは複数のブロック内に含まれる変数群の構造探索を行う。構造確定手段33は、構造探索手段31による構造探索ごとにモデル評価を行い、構造を確定する。モデル評価の方法は、例えば、モデルの複雑さを考慮しない「尤度」による評価、モデルの複雑さを考慮する情報量基準(AIC、BICなど)による評価、モデルの予測誤差を評価するクロスバリデーション法による評価などがある。本発明の実施の形態では、モデル評価の方法はいずれを用いても良い。   The structure search means 31 performs a structure search of a variable group included in one or a plurality of blocks, with the causal order information defined by the order information definition means 29 as a constraint. The structure determining unit 33 performs model evaluation for each structure search by the structure searching unit 31 and determines the structure. Model evaluation methods include, for example, evaluation based on “likelihood” that does not consider model complexity, evaluation based on an information criterion (AIC, BIC, etc.) that considers model complexity, and cross-validation that evaluates model prediction errors. There are legal evaluations. In the embodiment of the present invention, any model evaluation method may be used.

更に、モデル構築装置1は、順序情報定義手段29によって定義された順序情報に基づいて、最下流のブロックから世代の遠い順に、一つまたは複数ずつのブロックを構造探索の対象として追加していき、構造探索手段31による構造探索を繰り返し行い、かつ構造確定手段33による構造の確定を繰り返し行うことが望ましい。また、構造探索手段31は、複数のアルゴリズム(例えば、全数探索アルゴリズムおよびCItestアルゴリズム等)に従って構造探索手段31による構造探索を行い、モデル評価が最も高い組合せを選択するようにしても良い。   Further, the model construction device 1 adds one or more blocks as the target of the structure search in order from the most downstream block in the order of generation, based on the order information defined by the order information defining unit 29. It is desirable that the structure search by the structure search unit 31 is repeated and the structure determination by the structure determination unit 33 is repeatedly performed. Further, the structure search means 31 may perform a structure search by the structure search means 31 according to a plurality of algorithms (for example, exhaustive search algorithm, CItest algorithm, etc.) and select a combination having the highest model evaluation.

図6は、最下流のブロックからの距離を示す図である。図6に示すように、ブロックAは、最下流のブロックであるブロックCからの距離が「2」(中括弧「()」内に図示)である。また、ブロックBは、ブロックCからの距離が「1」である。構造探索手段31は、最下流のブロックであるブロックCから世代の遠い順に、一つまたは複数ずつのブロックを構造探索の対象として追加していく。すなわち、図6に示す例では、構造探索手段31は、(1)ブロックAのみ、(2)ブロックAとブロックB、(3)ブロックAとブロックBとブロックC、という順に、構造探索の対象とする。   FIG. 6 is a diagram illustrating the distance from the most downstream block. As shown in FIG. 6, the distance from the block A, which is the most downstream block, is “2” (shown in the braces “()”). Further, the distance from the block C to the block C is “1”. The structure search means 31 adds one or a plurality of blocks as a structure search target in order of generation from the block C that is the most downstream block. That is, in the example shown in FIG. 6, the structure search means 31 performs structure search targets in the order of (1) only block A, (2) block A and block B, and (3) block A, block B and block C. And

図7は、ブロックAのみを構造探索の対象とした状態を示す図である。図7では、ブロックAのみが太字で囲まれており、構造探索の対象であることを示している。   FIG. 7 is a diagram illustrating a state in which only the block A is the target of the structure search. In FIG. 7, only the block A is surrounded by a bold letter, which indicates that it is a structure search target.

X1とX2との間は、方向を有さない点線で結ばれている。これは、X1とX2との因果関係として、(a)X1からX2へのリンク、(b)X2からX1へのリンク、(c)X1とX2との間にリンクなし、の3つのパターンがあることを示している。従って、構造探索手段31は、例えば、全数探索アルゴリズムに従う場合には、3つのパターンがあることを特定する。そして、構造確定手段33は、3つのパターンについてモデル評価を行い、最も評価の良いパターンを決定し、局所的な構造を確定する。   X1 and X2 are connected by a dotted line having no direction. This is because there are three causal relationships between X1 and X2: (a) a link from X1 to X2, (b) a link from X2 to X1, and (c) no link between X1 and X2. It shows that there is. Therefore, the structure search means 31 specifies that there are three patterns when, for example, following the exhaustive search algorithm. Then, the structure determining unit 33 performs model evaluation on the three patterns, determines a pattern with the best evaluation, and determines a local structure.

図8は、ブロックAとブロックBを構造探索の対象とした状態を示す図である。図8では、ブロックAとブロックBが太字で囲まれており、構造探索の対象であることを示している。   FIG. 8 is a diagram illustrating a state in which the block A and the block B are subjected to the structure search. In FIG. 8, the block A and the block B are surrounded by bold letters, and indicate that they are objects of structure search.

X1とX2との間は、X2からX1への方向を有する実線で結ばれている。これは、X2からX1へのリンクが確定していることを示している。   X1 and X2 are connected by a solid line having a direction from X2 to X1. This indicates that the link from X2 to X1 is established.

X1とX3との間は、X1からX3への方向を有する点線で結ばれている。これは、X1とX3との因果関係として、(a)X1からX3へのリンク、(b)X1とX3との間にリンクなし、の2つのパターンがあることを示している。同様に、X1とX4との間、X2とX3との間、X2とX4との間も、一方から他方への方向を有する点線で結ばれている。
X3とX4との間は、方向を有さない点線で結ばれている。これは、図7に示したX1とX2との因果関係と同様であり、3つのパターンがあることを示している。
従って、構造探索手段31は、例えば、全数探索アルゴリズムに従う場合には、(2^4)×3(=48)個のパターンがあることを特定する。そして、構造確定手段33は、48個のパターンについてモデル評価を行い、最も評価の良いパターンを決定し、局所的な構造を確定する。
X1 and X3 are connected by a dotted line having a direction from X1 to X3. This indicates that there are two patterns of the causal relationship between X1 and X3: (a) a link from X1 to X3, and (b) no link between X1 and X3. Similarly, X1 and X4, X2 and X3, and X2 and X4 are also connected by a dotted line having a direction from one to the other.
X3 and X4 are connected by a dotted line having no direction. This is similar to the causal relationship between X1 and X2 shown in FIG. 7, and indicates that there are three patterns.
Therefore, the structure search means 31 specifies that there are (2 ^ 4) × 3 (= 48) patterns, for example, when following the exhaustive search algorithm. Then, the structure determining unit 33 performs model evaluation on 48 patterns, determines a pattern with the best evaluation, and determines a local structure.

前述の通り、互いに同じブロックに分割された変数間の因果関係は、3つのパターンがある。一方、異なるブロックに分割された変数間の因果関係は、前述の通り、2つのパターンがある。   As described above, the causal relationship between the variables divided into the same blocks has three patterns. On the other hand, there are two patterns of the causal relationship between variables divided into different blocks as described above.

図9は、ブロックAとブロックBとブロックCを構造探索の対象とした状態を示す図である。図9では、ブロックAとブロックBとブロックCが太字で囲まれており、構造探索の対象であることを示している。   FIG. 9 is a diagram illustrating a state in which the block A, the block B, and the block C are subjected to the structure search. In FIG. 9, the block A, the block B, and the block C are surrounded by bold letters, and indicate that they are objects of structure search.

X1とX2との間は、X2からX1への方向を有する実線で結ばれている。これは、X2からX1へのリンクが確定していることを示している。同様に、X1とX3との間はX1からX3への方向を有する実線、X1からX4との間はX1からX4への方向を有する実線で結ばれている。   X1 and X2 are connected by a solid line having a direction from X2 to X1. This indicates that the link from X2 to X1 is established. Similarly, a solid line having a direction from X1 to X3 is connected between X1 and X3, and a solid line having a direction from X1 to X4 is connected between X1 and X4.

X1とX5との間は、X1からX5への方向を有する点線で結ばれている。同様に、X2とX5との間、X3とX5との間、X4とX5との間も、一方から他方への方向を有する点線で結ばれている。
従って、構造探索手段31は、例えば、全数探索アルゴリズムに従う場合には、2^4(=16)個のパターンがあることを特定する。そして、構造確定手段33は、16個のパターンについてモデル評価を行い、最も評価の良いパターンを決定し、局所的な構造を確定する。
X1 and X5 are connected by a dotted line having a direction from X1 to X5. Similarly, X2 and X5, X3 and X5, and X4 and X5 are also connected by a dotted line having a direction from one to the other.
Therefore, the structure search means 31 specifies that there are 2 ^ 4 (= 16) patterns, for example, when following the exhaustive search algorithm. Then, the structure determining unit 33 performs model evaluation on the 16 patterns, determines a pattern with the best evaluation, and determines a local structure.

尚、構造探索手段31は、CItestアルゴリズムなど、全数探索アルゴリズムと異なるアルゴリズムに従うようにしても良い。また、モデル構築装置1は、複数のアルゴリズムに従って構造探索を行い、モデル評価が最も高い組合せを選択するようにしても良い。   Note that the structure search means 31 may follow an algorithm different from the exhaustive search algorithm such as the CItest algorithm. The model construction device 1 may perform a structure search according to a plurality of algorithms and select a combination having the highest model evaluation.

モデル構築結果出力手段35は、モデル構築結果を出力する。例えば、モデル構築結果出力手段35は、表示部13にモデル構築結果を表示する。また、例えば、モデル構築結果出力手段35は、メディア入出力部7を介してモデル構築結果を各種のメディアに出力する。また、例えば、モデル構築結果出力手段35は、通信制御部9を介してモデル構築結果を他のコンピュータに送信する。また、例えば、モデル構築結果出力手段35は、通信制御部9または周辺機器I/F部15等を介してモデル構築結果をプリンタ等に送信する。   The model construction result output means 35 outputs the model construction result. For example, the model construction result output unit 35 displays the model construction result on the display unit 13. In addition, for example, the model construction result output unit 35 outputs the model construction result to various media via the media input / output unit 7. Further, for example, the model construction result output means 35 transmits the model construction result to another computer via the communication control unit 9. For example, the model construction result output means 35 transmits the model construction result to a printer or the like via the communication control unit 9 or the peripheral device I / F unit 15.

図10は、モデル構築結果を示す図である。図10に示す例では、X2からX1、X2からX4、X1からX3、X1からX4、X1からX5、X3からX5、X4からX5のリンクが張られている。モデル構築結果出力手段35は、少なくとも、図10に示す情報を出力する。また、必要に応じて、モデル全体に対するAICまたはBICなどモデル評価の値を算出し、出力する。   FIG. 10 is a diagram illustrating a model construction result. In the example shown in FIG. 10, links X2 to X1, X2 to X4, X1 to X3, X1 to X4, X1 to X5, X3 to X5, and X4 to X5 are established. The model construction result output means 35 outputs at least the information shown in FIG. Further, if necessary, a model evaluation value such as AIC or BIC for the entire model is calculated and output.

図3から図10に示した例(ノード候補の変数が5つであり、図4に示したブロック分割の場合)では、本発明における構造探索のパターンは、3+(2^4)×3+2^4(=67)通りとなる。一方、同様の例(ノード候補の変数が5つの場合)に対して、モデル全体に全数探索アルゴリズムを適用した場合、3^(5×4/2)(=59049)通りとなる。このように、本発明では、構造探索のパターンを大幅に減らすことができる。   In the example shown in FIGS. 3 to 10 (in the case of five node candidate variables and block division shown in FIG. 4), the structure search pattern in the present invention is 3+ (2 ^ 4) × 3 + 2 ^. There are 4 (= 67) ways. On the other hand, when the exhaustive search algorithm is applied to the entire model for the same example (when there are five variables of node candidates), there are 3 ^ (5 × 4/2) (= 59049). Thus, in the present invention, the structure search pattern can be greatly reduced.

次に、図11を参照しながら、第1の実施形態に係るモデル構築装置1の動作の詳細について説明する。図11は、第1の実施形態に係るモデル構築装置1の処理の流れを示すフローチャートである。   Next, the details of the operation of the model construction device 1 according to the first embodiment will be described with reference to FIG. FIG. 11 is a flowchart illustrating a process flow of the model construction device 1 according to the first embodiment.

図11に示すように、モデル構築装置1の制御部3は、サンプルデータ入力手段21の機能によってサンプルデータを入力し、サンプルデータ保持手段23の機能によってサンプルデータを保持する(ステップ101)。   As shown in FIG. 11, the control unit 3 of the model construction device 1 inputs sample data by the function of the sample data input unit 21 and holds the sample data by the function of the sample data holding unit 23 (step 101).

次に、制御部3は、変数データ入力手段25の機能によって変数データを入力し、変数分割手段27の機能によって変数群をブロックに分割する(ステップ102)。   Next, the control unit 3 inputs variable data by the function of the variable data input unit 25, and divides the variable group into blocks by the function of the variable dividing unit 27 (step 102).

次に、制御部3は、順序情報定義手段29の機能によってブロック間の因果の順序情報を定義する(ステップ103)。   Next, the control unit 3 defines causal order information between blocks by the function of the order information defining means 29 (step 103).

次に、制御部3は、最下流のブロックから最も世代の遠いブロックを特定する(ステップ104)。尚、最下流のブロックから最も世代の遠いブロックが複数ある場合(=最下流のブロックからの最大の距離を有するブロックが複数ある場合)には、適宜順番を定めて処理を行えば良い。   Next, the control unit 3 specifies a block farthest generation from the most downstream block (step 104). In addition, when there are a plurality of blocks that are furthest from the most downstream block (= a plurality of blocks having the maximum distance from the most downstream block), the processing may be performed by appropriately determining the order.

次に、制御部3は、構造探索の対象を特定する(ステップ105)。ステップ105の1回目の処理では、ステップ104において特定したブロックのみが構造探索の対象となる。2回目以降の処理では、構造探索の対象に含めていないブロックの中で、最下流のブロックから最も世代の遠いブロックを一つ、構造探索の対象に含める。   Next, the control part 3 specifies the object of structure search (step 105). In the first process of step 105, only the block specified in step 104 is subjected to the structure search. In the second and subsequent processing, among the blocks not included in the structure search target, one block farthest from the most downstream block is included in the structure search target.

次に、制御部3は、構造探索手段31の機能によって局所的な構造探索を行う(ステップ106)。ここで、既にステップ107において構造を確定した箇所は確定したものとして扱う。   Next, the control unit 3 performs a local structure search by the function of the structure search means 31 (step 106). Here, the part where the structure has already been determined in step 107 is treated as determined.

次に、制御部3は、構造確定手段33の機能によってモデル評価による構造の確定を行う(ステップ107)。   Next, the control unit 3 determines the structure by model evaluation using the function of the structure determination unit 33 (step 107).

次に、制御部3は、最下流のブロックが構造探索の対象に含まれているかどうか確認する(ステップ108)。
含まれていない場合、制御部3は、ステップ105から処理を繰り返す(ステップ108のNo)。
含まれている場合、制御部3は、ステップ109に進む(ステップ108のYes)。
Next, the control unit 3 checks whether or not the most downstream block is included in the structure search target (step 108).
If not included, the control unit 3 repeats the processing from Step 105 (No in Step 108).
If included, the control unit 3 proceeds to step 109 (Yes in step 108).

最後に、制御部3は、モデル構築結果出力手段35によってモデル構築結果の出力を行う(ステップ109)。   Finally, the control unit 3 outputs the model construction result by the model construction result output means 35 (step 109).

次に、図12を参照しながら、最下流のブロックから世代の遠い順に、一つまたは複数ずつのブロックを構造探索の対象として追加していく技術的意義について説明する。図12は、ブロック間の順序情報を定義した状態の一例を示す図である。図12に示すA〜Gは、ブロックである。但し、A〜Gを変数に置き換えても、同様のことが言える。   Next, with reference to FIG. 12, the technical significance of adding one or a plurality of blocks as targets for the structure search in order of increasing generation from the most downstream block will be described. FIG. 12 is a diagram illustrating an example of a state in which order information between blocks is defined. A to G shown in FIG. 12 are blocks. However, the same can be said even if A to G are replaced with variables.

まず、最上流のブロックから順に探索する方法について考える。最上流のブロックから順に探索する場合、最初に、AからBへの探索、DからGへの探索、FからGへの探索が同時に行われる(探索を同時に行うと、同時にモデル評価の対象となる。)。次に、BからEへの探索、CからEへの探索が同時に行われる。最後に、EからGへの探索が行われる。しかしながら、最初の時点で、DからGへのリンク、および/またはFからGへのリンクを選択し、EからGへのリンクを選択しないことも考えられる。従って、この方法では、A、B、Cに係る情報を用いずに、EがGに対して因果関係が強い変数かどうかを判断することになり、結果として精度の低いモデルが構築される可能性が高い。   First, consider a method of searching in order from the most upstream block. When searching in order from the most upstream block, first, a search from A to B, a search from D to G, and a search from F to G are performed at the same time. Become.). Next, a search from B to E and a search from C to E are simultaneously performed. Finally, a search from E to G is performed. However, it is conceivable that at the initial point, the link from D to G and / or the link from F to G is selected and the link from E to G is not selected. Therefore, in this method, it is determined whether E is a variable having a strong causal relationship with G without using information on A, B, and C, and as a result, a model with low accuracy can be constructed. High nature.

一方、本発明のように、最下流のブロックから世代の遠い順に、一つまたは複数ずつのブロックを構造探索の対象として追加していく方法であれば、最初に、AからBへの探索が行われる。そして、最後に、A、B、C、Eのブロック群からGへの探索、DからGへの探索、FからGへの探索を同時に行う。従って、本発明の方法では、A、B、Cに係る情報を用いて、EがGに対して因果関係が強い変数かどうかを判断するため、結果として精度の高いモデルが構築される。   On the other hand, if the method is such that one or more blocks are added as targets for structure search in order of increasing generation from the most downstream block as in the present invention, the search from A to B is performed first. Done. Finally, a search from the block group of A, B, C, and E to G, a search from D to G, and a search from F to G are simultaneously performed. Therefore, in the method of the present invention, it is determined whether E is a variable having a strong causal relationship with G using information on A, B, and C. As a result, a highly accurate model is constructed.

<第2の実施形態>
次に、図13から図14を参照しながら、第2の実施形態について説明する。尚、第1の実施形態と同様の要素については同一の符号を付し、重複した説明を避ける。
<Second Embodiment>
Next, a second embodiment will be described with reference to FIGS. In addition, the same code | symbol is attached | subjected about the element similar to 1st Embodiment, and the overlapping description is avoided.

図13は、第2の実施形態に係るモデル構築装置1の機能の概要を示すブロック図である。図13に示すように、第2の実施形態に係るモデル構築装置1は、サンプルデータ入力手段21、サンプルデータ保持手段23、変数データ入力手段25、順序情報定義手段29a、構造探索手段31a、構造確定手段33、モデル構築結果出力手段35等を備える。   FIG. 13 is a block diagram illustrating an outline of functions of the model construction device 1 according to the second embodiment. As shown in FIG. 13, the model construction apparatus 1 according to the second embodiment includes a sample data input unit 21, a sample data holding unit 23, a variable data input unit 25, an order information definition unit 29a, a structure search unit 31a, and a structure. A determination unit 33, a model construction result output unit 35, and the like are provided.

順序情報定義手段29aは、ノード候補である変数群の中で少なくとも一部の変数間の因果の順序情報を定義する。構造探索手段31aは、順序情報定義手段29aによって定義された因果の順序情報を制約として、変数群の構造探索を行う。第1の実施形態と異なる点は、ブロックに分割することなく、変数単位で処理を行うことである。   The order information defining unit 29a defines causal order information between at least some of the variables in the variable group that is a node candidate. The structure search means 31a performs a variable structure search using the causal order information defined by the order information definition means 29a as a constraint. The difference from the first embodiment is that the processing is performed in units of variables without being divided into blocks.

次に、図14を参照しながら、第2の実施形態に係るモデル構築装置1の動作の詳細について説明する。図14は、第2の実施形態に係るモデル構築装置1の処理の流れを示すフローチャートである。   Next, details of the operation of the model construction device 1 according to the second embodiment will be described with reference to FIG. FIG. 14 is a flowchart showing a process flow of the model construction device 1 according to the second embodiment.

図14に示すように、モデル構築装置1の制御部3は、サンプルデータ入力手段21の機能によってサンプルデータを入力し、サンプルデータ保持手段23の機能によってサンプルデータを保持する(ステップ201)。   As shown in FIG. 14, the control unit 3 of the model construction device 1 inputs sample data by the function of the sample data input unit 21 and holds the sample data by the function of the sample data holding unit 23 (step 201).

次に、制御部3は、順序情報定義手段29aの機能によって変数間の因果の順序情報を定義する(ステップ202)。   Next, the control unit 3 defines causal order information between variables by the function of the order information defining unit 29a (step 202).

次に、制御部3は、最下流の変数から最も世代の遠い変数を特定する(ステップ203)。尚、最下流の変数から最も世代の遠い変数が複数ある場合(=最下流の変数からの最大の距離を有する変数が複数ある場合)には、適宜順番を定めて処理を行えば良い。   Next, the control unit 3 identifies the variable farthest from the most downstream variable (step 203). In addition, when there are a plurality of variables farthest from the most downstream variable (= a plurality of variables having the maximum distance from the most downstream variable), processing may be performed by appropriately determining the order.

次に、制御部3は、構造探索の対象を特定する(ステップ204)。ここでは、前回の処理までに構造探索の対象に含めていない変数の中で、最下流の変数から最も世代の遠い変数を一つ、構造探索の対象に含める。   Next, the control part 3 specifies the object of structure search (step 204). Here, among the variables that have not been included in the structure search target up to the previous process, one variable that is farthest from the most downstream variable is included in the structure search target.

次に、制御部3は、構造探索手段31aの機能によって局所的な構造探索を行う(ステップ205)。ここで、既にステップ206において構造を確定した箇所は確定したものとして扱う。   Next, the control unit 3 performs a local structure search by the function of the structure search means 31a (step 205). Here, the part where the structure has already been determined in step 206 is treated as determined.

次に、制御部3は、構造確定手段33の機能によってモデル評価による構造の確定を行う(ステップ206)。   Next, the control unit 3 determines the structure by model evaluation using the function of the structure determination unit 33 (step 206).

次に、制御部3は、最下流の変数が構造探索の対象に含まれているかどうか確認する(ステップ207)。
含まれていない場合、制御部3は、ステップ204から処理を繰り返す(ステップ207のNo)。
含まれている場合、制御部3は、ステップ208に進む(ステップ207のYes)。
Next, the control unit 3 confirms whether the most downstream variable is included in the structure search target (step 207).
If not included, the control unit 3 repeats the process from Step 204 (No in Step 207).
If included, the control unit 3 proceeds to step 208 (Yes in step 207).

次に、制御部3は、モデル構築結果出力手段35によってモデル構築結果の出力を行う(ステップ208)。   Next, the control unit 3 outputs the model construction result by the model construction result output means 35 (step 208).

次に、図15から図24を参照しながら、第2の実施形態に係る実施例について説明する。本実施例では、商品を自動車等とし、マスメディア広告、試乗イベント等の販売施策と、消費者の購入行動との因果関係のモデルを構築する。   Next, an example according to the second embodiment will be described with reference to FIGS. 15 to 24. In this embodiment, the product is an automobile or the like, and a causal relationship model between a sales measure such as a mass media advertisement and a test ride event and the purchase behavior of a consumer is constructed.

図15は、実施例に係る変数群43aを示す図である。図15に示すように、本実施例では、(1)宣伝を見た、(2)宣伝に好印象、(3)商品を知った、(4)商品情報を見た、(5)商品情報に好印象、(6)興味を持った、(7)お店に行った、(8)実物に好印象、(9)購入した、といった変数をノード候補とする。   FIG. 15 is a diagram illustrating a variable group 43a according to the embodiment. As shown in FIG. 15, in this example, (1) saw advertisement, (2) good impression on advertisement, (3) knew the product, (4) saw the product information, (5) product information. Node candidates are variables such as (6) interested, (7) went to a shop, (8) good impression on the real thing, and (9) purchased.

図16は、実施例に係るサンプルデータ41aの一例を示す図である。図16に示すサンプルデータ41aは、アンケートの回答結果である。例えば、サンプルIDが「1」のサンプルデータ41aは、「宣伝を見た」変数が「YES」、「商品情報を見た」変数が「NO」、・・・、「購入した」変数が「NO」である。   FIG. 16 is a diagram illustrating an example of sample data 41a according to the embodiment. Sample data 41a shown in FIG. 16 is a questionnaire response result. For example, in the sample data 41a with the sample ID “1”, the variable “I saw advertisement” is “YES”, the variable “I saw product information” is “NO”,. NO ”.

図17は、実施例に係る順序情報45aの一例を示す図である。図17に示す順序情報45aは変数間の順序関係であり、モデル構築の制約として、ユーザの事前知識などから定義する。図17に示す記号「>」は、左の変数が右の変数の原因である(モデル上は未確定な関係がある)ことを示している。また、図17に示す記号「−>」(矢印)は、左の変数と右の変数とは確定した因果関係があることを示している。また、図17に示す記号「×」は、因果関係がないことを示している。   FIG. 17 is a diagram illustrating an example of the order information 45a according to the embodiment. The order information 45a shown in FIG. 17 is an order relationship between variables, and is defined from the prior knowledge of the user as a constraint for model construction. The symbol “>” shown in FIG. 17 indicates that the left variable is the cause of the right variable (there is an undetermined relationship on the model). Also, the symbol “->” (arrow) shown in FIG. 17 indicates that the left variable and the right variable have a definite causal relationship. Further, the symbol “x” shown in FIG. 17 indicates that there is no causal relationship.

図17(a)は、「宣伝を見た」、「宣伝に好印象」の2つの変数が、「商品情報を見た」、「商品情報に好印象」の2つの変数の原因であることを示している。また、図17(a)は、「商品情報を見た」、「商品情報に好印象」の2つの変数が、「お店に行った」、「実物に好印象」の2つの変数の原因であることを示している。   FIG. 17A shows that two variables of “I saw advertisement” and “Good impression on advertisement” are causes of two variables of “I saw product information” and “Good impression on product information”. Is shown. FIG. 17A shows the cause of two variables, “I saw product information” and “Good impression on product information”, “I went to the store” and “Good impression on the real thing”. It is shown that.

図17(b)は、「商品を知った」変数と「興味を持った」変数とは確定した因果関係があることを示している。また、図17(b)は、「興味を持った」変数と「購入した」変数とは確定した因果関係があることを示している。   FIG. 17B shows that there is a definite causal relationship between the variable that “knows the product” and the variable that is “interested”. FIG. 17B shows that the “interested” variable and the “purchased” variable have a definite causal relationship.

図17(c)は、「宣伝を見た」変数が、「他の全ての変数」の原因であることを示している。また、図17(c)は、「他の全ての変数」が、「商品を知った」変数の原因であることを示している。   FIG. 17C shows that the variable “I saw advertisement” is the cause of “all other variables”. Further, FIG. 17C shows that “all other variables” are the cause of the variable “I learned the product”.

図17(d)は、「宣伝に好印象」、「商品情報に好印象」、「実物に好印象」の3つの変数が、「商品を知った」変数と因果関係がないことを示している。   FIG. 17 (d) shows that the three variables of “Good impression on advertisement”, “Good impression on product information”, and “Good impression on real product” have no causal relationship with the variable “I knew the product”. Yes.

図17(e)は、「宣伝を見た」変数と「宣伝に好印象」変数とは確定した因果関係があることを示している。図17(f)は、「商品情報を見た」変数と「商品情報に好印象」変数とは確定した因果関係があることを示している。図17(g)は、「お店に行った」変数と「実物に好印象」変数とは確定した因果関係があることを示している。   FIG. 17 (e) shows that there is a definite causal relationship between the “I saw the advertisement” variable and the “Good impression on advertisement” variable. FIG. 17 (f) shows that the variable “I saw product information” and the “Good impression on product information” variable have a definite causal relationship. FIG. 17G shows that there is a definite causal relationship between the variable “I went to the store” and the “Impressive to Real” variable.

図18は、実施例に係る順序情報定義データ47aの一例を示す図である。図18に示す例では、セルの値が「0」は、順序関係に何も制約を置かないことを意味する。また、セルの値が「1」は、行項目が列項目よりも上流(原因)であることを意味する。すなわち、図17に示す記号「>」に相当する。   FIG. 18 is a diagram illustrating an example of the order information definition data 47a according to the embodiment. In the example illustrated in FIG. 18, the cell value “0” means that no restriction is placed on the order relationship. The cell value “1” means that the row item is upstream (cause) from the column item. That is, it corresponds to the symbol “>” shown in FIG.

図19は、実施例に係る因果関係定義データ49の一例を示す図である。因果関係定義データ49は、確定した因果関係を定義するデータである。図19に示す例では、セルの値が「0」は、確定した因果関係を定義しないことを意味する。また、セルの値が「1」は、行項目が列項目の原因として確定した因果関係を定義していることを意味する。すなわち、図17に示す記号「−>」(矢印)に相当する。また、セルの値が「−1」は、行項目と列項目に因果関係がないことを定義していることを意味する。すなわち、図17に示す記号「×」に相当する。   FIG. 19 is a diagram illustrating an example of the causal relationship definition data 49 according to the embodiment. The causal relationship definition data 49 is data that defines a confirmed causal relationship. In the example shown in FIG. 19, the cell value “0” means that a defined causal relationship is not defined. The cell value “1” means that a causal relationship in which the row item is determined as the cause of the column item is defined. That is, it corresponds to the symbol “->” (arrow) shown in FIG. A cell value of “−1” means that there is no causal relationship between the row item and the column item. That is, it corresponds to the symbol “x” shown in FIG.

本実施例においては、図17に示す順序情報45aと、図18に示す順序情報定義データ47aおよび図19に示す因果関係定義データ49aとが、等価な情報である。すなわち、いずれかの形式でデータを定義すれば、後述する処理が可能である。   In this embodiment, the order information 45a shown in FIG. 17, the order information definition data 47a shown in FIG. 18, and the causal relationship definition data 49a shown in FIG. 19 are equivalent information. That is, if data is defined in any format, processing described later is possible.

図20は、実施例に係る制約の一例を示す図である。尚、図17から図19に示したデータの一例との整合性が保証されたものではない。図20に示す楕円は、ノード候補の変数である。また、小括弧「()」内の数字は、最下流変数と各変数との距離である(一部のみ図示)。また、実線の矢印は、矢印の元に係る変数が矢印の先に係る変数の原因として確定した因果関係があることを意味する。すなわち、図17に示す記号「−>」(矢印)に相当する。また、破線の矢印は、矢印の元に係る変数が矢印の先に係る変数よりも上流(原因)であることを意味する。すなわち、図17に示す記号「>」に相当する。また、「購入した」変数は、子ノード候補の変数がない。また、「宣伝を見た」変数は、親ノード候補の変数がない。   FIG. 20 is a diagram illustrating an example of restrictions according to the embodiment. Note that consistency with the example of data shown in FIGS. 17 to 19 is not guaranteed. An ellipse shown in FIG. 20 is a variable of a node candidate. The numbers in parentheses “()” are distances between the most downstream variable and each variable (only a part is shown). Moreover, the solid line arrow means that there is a causal relationship in which the variable related to the arrow is fixed as the cause of the variable related to the arrow. That is, it corresponds to the symbol “->” (arrow) shown in FIG. Moreover, the broken arrow means that the variable related to the source of the arrow is upstream (cause) than the variable related to the tip of the arrow. That is, it corresponds to the symbol “>” shown in FIG. Further, the “purchased” variable does not have a variable of a child node candidate. Further, the variable “I saw advertisement” does not have a variable of a parent node candidate.

図20に示すように、モデル構築装置1は、制約を定義する(処理[1])。以下、図21から図24において、大括弧「[]」内の数字は、処理の順番を示すものである。   As illustrated in FIG. 20, the model construction device 1 defines constraints (processing [1]). Hereinafter, in FIGS. 21 to 24, the numbers in square brackets “[]” indicate the order of processing.

図21は、実施例に係る第1の構造確定の一例を示す図である。図21に示す太線の矢印は、矢印の元の変数から矢印の先の変数へリンクが張られたことを意味する。図21に示す×印は、モデル評価によって、因果関係が棄却されたことを意味する。尚、ベイジアンネットワークでは、一般にリンクが循環することを許していない(非循環グラフ)。従って、モデル構築装置1は、モデル評価による判定の度に、グラフが循環するか否かを判定する。   FIG. 21 is a diagram illustrating an example of the first structure determination according to the embodiment. A thick arrow shown in FIG. 21 means that a link is established from the original variable of the arrow to the variable at the end of the arrow. The x mark shown in FIG. 21 means that the causal relationship has been rejected by the model evaluation. Note that a Bayesian network generally does not allow links to circulate (acyclic graph). Therefore, the model construction device 1 determines whether or not the graph circulates every time determination is performed by model evaluation.

図21に示すように、モデル構築装置1は、最下流の変数(=「購入した」変数)から最も世代の遠い変数(=「宣伝を見た」変数)を特定し、その次に世代の遠い変数(=「宣伝に好印象」変数)を構造探索の対象に含める(処理[2])。ここで、「宣伝を見た」変数と「宣伝に好印象」変数とは、図20に示す制約によって確定した因果関係があるため、モデル構築装置1はモデル評価を行わずにリンクを張る。   As shown in FIG. 21, the model construction device 1 specifies the variable farthest generation (= the variable that saw “advertisement”) from the most downstream variable (= the “purchased” variable), and then the generation A far variable (= “good impression for advertisement” variable) is included in the structure search target (process [2]). Here, since the “I saw advertisement” variable and the “Good impression on advertisement” variable have a causal relationship determined by the constraints shown in FIG. 20, the model construction apparatus 1 establishes a link without performing model evaluation.

ここで、「興味を持った」変数と「宣伝に好印象」変数に対する処理を説明する。「興味を持った」変数と「宣伝に好印象」変数とは、図20に示す制約の段階ではリンクの方向が不定として定義されている。この場合、モデル構築装置1は、最初に、上流向き、すなわち「興味を持った」変数から「宣伝に好印象」変数への向きからモデル評価を行う。次に、モデル構築装置1は、モデル評価によって因果関係が採用された場合および棄却された場合のいずれであっても、下流向き、すなわち「宣伝に好印象」変数から「興味を持った」変数への向きを構造探索の対象として残しておく。そして、モデル構築装置1は、下流向きに対してモデル評価を行い、下流向きの因果関係が採用された場合かつ上流向きの因果関係が採用されていた場合、上流向きのモデル評価を再度行い、評価の良い方にリンクを張る。   Here, the processing for the “interested” variable and the “good impression on advertisement” variable will be described. The “interested” variable and the “good impression on advertising” variable are defined as the link direction being undefined at the stage of restriction shown in FIG. In this case, the model construction apparatus 1 first performs model evaluation from the upstream direction, that is, the direction from the “interested” variable to the “good impression for advertisement” variable. Next, the model construction device 1 determines whether the variable is “interesting” from the downstream direction, that is, from the “good impression to advertisement” variable, regardless of whether the causal relationship is adopted or rejected by the model evaluation. The direction to is left as a target for structure search. Then, the model construction device 1 performs the model evaluation for the downstream direction, and when the downstream direction causal relationship is employed and when the upstream direction causal relationship is employed, the upstream model evaluation is performed again, Link to the person with the best evaluation.

次に、モデル構築装置1は、「商品情報を見た」変数を構造探索の対象に含める(処理[3])。ここで、「宣伝に好印象」変数と「商品情報を見た」変数とは、モデル評価によって因果関係が採用されたため、モデル構築装置1はリンクを張る。一方、「宣伝を見た」変数と「商品情報を見た」変数とは、モデル評価によって因果関係が棄却されたため、モデル構築装置1はリンクを張らない。   Next, the model construction device 1 includes a variable “saw product information” as a structure search target (process [3]). Here, since the causal relationship is adopted by the model evaluation, the “model impression device 1” link is established between the “good impression on advertisement” variable and the “product information viewed” variable. On the other hand, since the causal relationship has been rejected by the model evaluation, the model construction device 1 does not link the variable that “saw advertisement” and the variable “saw product information”.

次に、モデル構築装置1は、「商品情報に好印象」変数を構造探索の対象に含める(処理[4])。ここで、「商品情報を見た」変数と「商品情報に好印象」変数とは、図20に示す制約によって確定した因果関係があるため、モデル構築装置1はモデル評価を行わずにリンクを張る。   Next, the model construction device 1 includes the “good impression on product information” variable as a structure search target (process [4]). Here, since the “product information saw” variable and the “good impression on product information” variable have a causal relationship determined by the constraints shown in FIG. 20, the model construction device 1 links without performing model evaluation. Tighten.

図22は、実施例に係る第2の構造確定の一例を示す図である。図22に示すように、モデル構築装置1は、「お店に行った」変数を構造探索の対象に含める(処理[5])。ここで、「宣伝に好印象」変数と「お店に行った」変数とは、モデル評価によって因果関係が採用されたため、モデル構築装置1はリンクを張る。同様に、「商品情報に好印象」変数と「お店に行った」変数とは、モデル評価によって因果関係が採用されたため、モデル構築装置1はリンクを張る。   FIG. 22 is a diagram illustrating an example of the second structure determination according to the embodiment. As shown in FIG. 22, the model construction device 1 includes the variable “I went to the store” as a structure search target (process [5]). Here, since the causal relationship is adopted by the model evaluation between the “good impression on advertisement” variable and the “going to the store” variable, the model construction apparatus 1 establishes a link. Similarly, since the causal relationship is adopted by the model evaluation between the “good impression on product information” variable and the “go to shop” variable, the model construction apparatus 1 establishes a link.

次に、モデル構築装置1は、「実物に好印象」変数を構造探索の対象に含める(処理[6])。ここで、「お店に行った」変数と「実物に好印象」変数とは、図20に示す制約によって確定した因果関係があるため、モデル構築装置1はモデル評価を行わずにリンクを張る。   Next, the model construction device 1 includes the “good impression on the real thing” variable as a structure search target (process [6]). Here, since the variable “I went to the store” and the “Impressive to Real” variable have a causal relationship determined by the constraints shown in FIG. 20, the model construction device 1 establishes a link without performing model evaluation. .

図23は、実施例に係る第3の構造確定の一例を示す図である。図23に示すように、モデル構築装置1は、「商品を知った」変数を構造探索の対象に含める(処理[7])。ここで、「商品を知った」変数と「興味を持った」変数とは、図20に示す制約によって確定した因果関係があるため、モデル構築装置1はモデル評価を行わずにリンクを張る。また、「宣伝を見た」変数と「商品を知った」変数とは、モデル評価によって因果関係が採用されたため、モデル構築装置1はリンクを張る。   FIG. 23 is a diagram illustrating an example of the third structure determination according to the embodiment. As shown in FIG. 23, the model construction device 1 includes the variable “I learned the product” in the structure search target (process [7]). Here, since the “know about product” variable and the “interested” variable have a causal relationship determined by the constraints illustrated in FIG. 20, the model construction apparatus 1 establishes a link without performing model evaluation. In addition, since the causal relationship is adopted by the model evaluation, the “model that saw the advertisement” variable and the “know the product” variable establish a link.

次に、モデル構築装置1は、「興味を持った」変数を構造探索の対象に含める(処理[8])。ここで、「商品を知った」変数と「興味を持った」変数とは、図20に示す制約によって確定した因果関係があるため、モデル構築装置1はモデル評価を行わずにリンクを張る。また、「商品情報に好印象」変数と「興味を持った」変数とは、モデル評価によって因果関係が採用されたため、モデル構築装置1はリンクを張る。同様に、「宣伝に好印象」変数と「興味を持った」変数とは、モデル評価によって因果関係が採用されたため、モデル構築装置1はリンクを張る。   Next, the model construction device 1 includes the “interested” variable in the structure search target (process [8]). Here, since the “know about product” variable and the “interested” variable have a causal relationship determined by the constraints illustrated in FIG. 20, the model construction apparatus 1 establishes a link without performing model evaluation. In addition, since the causal relationship is adopted by the model evaluation between the “good impression on product information” variable and the “interested” variable, the model construction apparatus 1 establishes a link. Similarly, since the causal relationship is adopted by the model evaluation between the “good impression on advertisement” variable and the “interested” variable, the model construction apparatus 1 establishes a link.

図24は、実施例に係る第4の構造確定の一例を示す図である。最後に、モデル構築装置1は、最下流変数である「購入した」変数を構造探索の対象に含める。ここで、「興味を持った」変数と「購入した」変数とは、図20に示す制約によって確定した因果関係があるため、モデル構築装置1はモデル評価を行わずにリンクを張る。また、「宣伝に好印象」変数と「購入した」変数とは、モデル評価によって因果関係が採用されたため、モデル構築装置1はリンクを張る。同様に、「実物に好印象」変数と「購入した」変数とは、モデル評価によって因果関係が採用されたため、モデル構築装置1はリンクを張る。   FIG. 24 is a diagram illustrating an example of the fourth structure determination according to the embodiment. Finally, the model construction device 1 includes the “purchased” variable, which is the most downstream variable, in the structure search target. Here, since the “interested” variable and the “purchased” variable have a causal relationship determined by the constraints illustrated in FIG. 20, the model construction apparatus 1 establishes a link without performing model evaluation. In addition, since the causal relationship is adopted between the “good impression for advertisement” variable and the “purchased” variable by the model evaluation, the model construction apparatus 1 establishes a link. Similarly, since the causal relationship is adopted by the model evaluation between the “good impression on the real” variable and the “purchased” variable, the model construction apparatus 1 establishes a link.

図15から図24に示した例では、ノード候補の変数が9つである。例えば、モデル全体に全数探索アルゴリズムを適用しようとすると、構造探索のパターンは、3^(9×8/2)(=150,094,635,296,999,000)通りとなり、現実的な時間内に処理を終了することができない。一方、本発明では、構造探索のパターンを大幅に減らすことができ、現実的な時間内に処理を終了することができた。また、図24に示したモデル構築結果は、真の因果関係を精度良く抽出できている。   In the example shown in FIGS. 15 to 24, there are nine node candidate variables. For example, if an exhaustive search algorithm is applied to the entire model, the number of structure search patterns is 3 ^ (9 × 8/2) (= 150,094,635,296,999,000). The process cannot be completed within. On the other hand, in the present invention, the structure search pattern can be greatly reduced, and the processing can be completed within a realistic time. Further, the model construction result shown in FIG. 24 can extract the true causal relationship with high accuracy.

以上説明したように、本発明の実施形態によれば、モデル構築装置1は、必要があればノード候補である変数群をブロックに分割し、ブロック間または変数間の順序情報を定義し、定義された因果の順序情報を制約として、最下流のブロックから世代の遠い順に、一つまたは複数ずつのブロックを構造探索の対象として追加していき、構造探索を繰り返し行い、かつ構造の確定を繰り返し行う。そして、ユーザは、モデル構築装置1によって、ベイジアンネットワークモデルの構築において、実用的な時間内に真の因果関係を精度良く抽出できる。   As described above, according to the embodiment of the present invention, the model construction device 1 divides a variable group, which is a node candidate, into blocks if necessary, and defines order information between blocks or between variables. By using the causal order information that has been created, one or more blocks are added as targets for structure search in order from the most downstream block in the order of generation, and the structure search is repeated, and the structure is repeatedly determined. Do. Then, the user can accurately extract the true causal relationship within a practical time in the construction of the Bayesian network model by the model construction device 1.

以上、添付図面を参照しながら、本発明に係るモデル構築装置等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。   The preferred embodiments of the model construction device and the like according to the present invention have been described above with reference to the accompanying drawings, but the present invention is not limited to such examples. It will be apparent to those skilled in the art that various changes or modifications can be conceived within the scope of the technical idea disclosed in the present application, and these naturally belong to the technical scope of the present invention. Understood.

モデル構築装置1を実現するコンピュータのハードウェア構成図Hardware configuration diagram of a computer that realizes the model construction device 1 第1の実施形態に係るモデル構築装置1の機能の概要を示すブロック図The block diagram which shows the outline | summary of the function of the model construction apparatus 1 which concerns on 1st Embodiment. サンプルデータ41の一例を示す図The figure which shows an example of the sample data 41 ブロック間の因果関係を示す図Diagram showing the causal relationship between blocks 順序情報定義データ47の一例を示す図The figure which shows an example of the order information definition data 47 最下流のブロックからの距離を示す図Diagram showing distance from the most downstream block ブロックAのみを構造探索の対象とした状態を示す図The figure which shows the state which made the structure search object only the block A ブロックAとブロックBを構造探索の対象とした状態を示す図The figure which shows the state which made the block A and the block B the object of structure search ブロックAとブロックBとブロックCを構造探索の対象とした状態を示す図The figure which shows the state which made the block A, the block B, and the block C the object of structure search モデル構築結果を示す図Diagram showing model construction results 第1の実施形態に係るモデル構築装置1の処理の流れを示すフローチャートThe flowchart which shows the flow of a process of the model construction apparatus 1 which concerns on 1st Embodiment. ブロック間の順序情報を定義した状態の一例を示す図The figure which shows an example of the state which defined the order information between blocks 第2の実施形態に係るモデル構築装置1の機能の概要を示すブロック図The block diagram which shows the outline | summary of the function of the model construction apparatus 1 which concerns on 2nd Embodiment. 第2の実施形態に係るモデル構築装置1の処理の流れを示すフローチャートThe flowchart which shows the flow of a process of the model construction apparatus 1 which concerns on 2nd Embodiment. 実施例に係る変数群43aを示す図The figure which shows the variable group 43a which concerns on an Example 実施例に係るサンプルデータ41aの一例を示す図The figure which shows an example of the sample data 41a which concerns on an Example 実施例に係る順序情報45aの一例を示す図The figure which shows an example of the order information 45a which concerns on an Example. 実施例に係る順序情報定義データ47aの一例を示す図The figure which shows an example of the order information definition data 47a which concerns on an Example. 実施例に係る因果関係定義データ49の一例を示す図The figure which shows an example of the causal relationship definition data 49 which concerns on an Example. 実施例に係る制約の一例を示す図The figure which shows an example of the restriction | limiting which concerns on an Example 実施例に係る第1の構造確定の一例を示す図The figure which shows an example of the 1st structure determination which concerns on an Example 実施例に係る第2の構造確定の一例を示す図The figure which shows an example of the 2nd structure determination which concerns on an Example 実施例に係る第3の構造確定の一例を示す図The figure which shows an example of the 3rd structure determination which concerns on an Example 実施例に係る第4の構造確定の一例を示す図The figure which shows an example of the 4th structure determination which concerns on an Example クロス集計表の一例を示す図Figure showing an example of a cross tabulation table 「年間所得」変数を条件としたときの「高級車購入願望」変数の分布を示す図Diagram showing the distribution of “luxury car purchase desire” variables when the “annual income” variable is a condition 「年齢」変数を条件としたときの「高級車購入願望」変数の分布を示す図Diagram showing the distribution of “luxury car purchase desire” variables when the “age” variable is a condition モデル構築の仮定を示す図Diagram showing model building assumptions K2アルゴリズムによるモデル構築結果を示す図The figure which shows the model construction result with K2 algorithm 「年齢」変数かつ「年間所得」変数の両方を条件としたときの「高級車購入願望」変数の分布を示す図Figure showing the distribution of the “luxury car purchase desire” variable when both the “age” variable and the “annual income” variable are used as conditions. CItestアルゴリズムによるモデル構築結果を示す図The figure which shows the model construction result with CItest algorithm モデルの評価を示す図Diagram showing model evaluation

符号の説明Explanation of symbols

1………モデル構築装置
3………制御部
5………記憶部
7………メディア入出力部
9………通信制御部
11………入力部
13………表示部
15………周辺機器I/F部
17………バス
19………ネットワーク
21………サンプルデータ入力手段
23………サンプルデータ保持手段
25………変数データ入力手段
27………変数分割手段
29、29a………順序情報定義手段
31、31a………構造探索手段
33………構造確定手段
35………モデル構築結果出力手段
41、41a………サンプルデータ
43、43a………変数群
45、45a………順序情報
47、47a………順序情報定義データ
49………因果関係定義データ
DESCRIPTION OF SYMBOLS 1 ......... Model construction apparatus 3 ......... Control part 5 ......... Storage part 7 ......... Media input / output part 9 ......... Communication control part 11 ......... Input part 13 ......... Display part 15 ......... Peripheral device I / F unit 17 ......... Bus 19 ......... Network 21 ......... Sample data input means 23 ......... Sample data holding means 25 ......... Variable data input means 27 ......... Variable dividing means 29, 29a ......... Order information definition means 31, 31a ......... Structure search means 33 ......... Structure determination means 35 ......... Model construction result output means 41, 41a ......... Sample data 43, 43a ......... Variable group 45, 45a ......... Order information 47, 47a ......... Order information definition data 49 ......... Causality relation definition data

Claims (8)

ベイジアンネットワークモデルを構築するモデル構築装置であって、
制御部が、入力部を介して入力されるデータ、または記憶部に記憶される変数単位の順序情報定義データを用いて、ノード候補である変数群を、一つまたは複数の変数の集合であるブロックに分割する変数分割手段と、
制御部が、入力部を介して入力されるデータ、または記憶部に記憶される変数単位の順序情報定義データを用いて、ブロック間の因果の順序情報を定義する順序情報定義手段と、
制御部が、前記順序情報定義手段によって定義された因果の順序情報を制約として、一つまたは複数のブロック内に含まれる変数群の構造探索を行う構造探索手段と、
制御部が、前記構造探索手段による構造探索ごとにモデル評価を行い、構造を確定する構造確定手段と、
を具備し、
制御部が、前記順序情報定義手段によって定義された順序情報に基づいて、最下流のブロックから世代の遠い順に、一つまたは複数ずつのブロックを構造探索の対象として追加していき、前記構造探索手段による構造探索を繰り返し行い、かつ前記構造確定手段による構造の確定を繰り返し行う
ことを特徴とするモデル構築装置。
A model building device for building a Bayesian network model,
The control unit is a set of one or a plurality of variables, using the data input via the input unit or the variable unit order information definition data stored in the storage unit, as a variable group that is a node candidate. Variable dividing means for dividing into blocks,
Order information definition means for defining causal order information between blocks using control unit, data input via input unit, or variable unit order information definition data stored in storage unit ;
A structure search means for performing a structure search of a variable group included in one or a plurality of blocks, with the control unit being constrained by the causal order information defined by the order information defining means;
The control unit performs model evaluation for each structure search by the structure search means, and structure determination means for determining the structure;
Equipped with,
Based on the order information defined by the order information defining means, the control unit adds one or more blocks as targets for structure search in order from the most downstream block in order of generation, and the structure search A model construction apparatus characterized by repeatedly performing a structure search by means and repeatedly confirming a structure by the structure determining means .
前記順序情報定義データは、同一の変数群からなる行項目の変数及び列項目の変数によって構成される表形式のデータであって、各セルの値が、順序関係に何も制約を置かないことを意味する値と、行項目が列項目よりも上流であることを意味する値のいずれかであることを特徴とする請求項1に記載のモデル構築装置。 The order information definition data is tabular data composed of row item variables and column item variables consisting of the same variable group, and the values of each cell do not place any restrictions on the order relationship. The model construction apparatus according to claim 1 , wherein the model construction apparatus is one of a value meaning “a” and a value meaning that the row item is upstream of the column item . 前記順序情報定義手段は、更に、一部のブロック間の因果関係を確定したものとして定義し、前記構造探索手段は、更に、前記順序情報定義手段によって定義した一部のブロック間の確定した因果関係を制約として、変数群の構造探索を行うことを特徴とする請求項1または請求項2に記載のモデル構築装置。 The order information defining means is further defined as a confirmed causal relationship between some blocks, and the structure searching means is further defined as a cause and effect established between some blocks defined by the order information defining means. The model construction apparatus according to claim 1 or 2, wherein a structure search of a variable group is performed by using the relationship as a constraint. ベイジアンネットワークモデルを構築するモデル構築装置であって、
制御部が、入力部を介して入力されるデータ、または記憶部に記憶される変数単位の順序情報定義データを用いて、ノード候補である変数群の中で少なくとも一部の変数間の因果の順序情報を定義する順序情報定義手段と、
制御部が、前記順序情報定義手段によって定義された因果の順序情報を制約として、変数群の構造探索を行う構造探索手段と、
制御部が、前記構造探索手段による構造探索ごとにモデル評価を行い、構造を確定する構造確定手段と、
を具備し、
制御部が、前記順序情報定義手段によって定義された順序情報に基づいて、最下流の変数から世代の遠い順に、一つまたは複数ずつの変数を構造探索の対象として追加していき、前記構造探索手段による構造探索を繰り返し行い、かつ前記構造確定手段による構造の確定を繰り返し行う
ことを特徴とするモデル構築装置。
A model building device for building a Bayesian network model,
The control unit uses the data input via the input unit or the variable unit order information definition data stored in the storage unit to determine the causality between at least some of the variables in the variable group that is the node candidate. Order information defining means for defining order information;
A structure search means for performing a structure search for a variable group, with the control unit being constrained by the causal order information defined by the order information defining means;
The control unit performs model evaluation for each structure search by the structure search means, and structure determination means for determining the structure;
Equipped with,
Based on the order information defined by the order information defining means, the control unit adds one or more variables as targets for structure search in order of generation from the most downstream variable, and the structure search A model construction apparatus characterized by repeatedly performing a structure search by means and repeatedly confirming a structure by the structure determining means .
前記順序情報定義データは、同一の変数群からなる行項目の変数及び列項目の変数によって構成される表形式のデータであって、各セルの値が、順序関係に何も制約を置かないことを意味する値と、行項目が列項目よりも上流であることを意味する値のいずれかであることを特徴とする請求項4に記載のモデル構築装置。 The order information definition data is tabular data composed of row item variables and column item variables consisting of the same variable group, and the values of each cell do not place any restrictions on the order relationship. The model construction apparatus according to claim 4 , wherein the model construction device is one of a value meaning “a” and a value meaning that the row item is upstream of the column item . 前前記順序情報定義手段は、更に、一部の変数間の因果関係を確定したものとして定義し、前記構造探索手段は、更に、前記順序情報定義手段によって定義した一部の変数間の確定した因果関係を制約として、変数群の構造探索を行うことを特徴とする請求項4または請求項5に記載のモデル構築装置。 The previous order information defining means is further defined as a confirmed causal relationship between some variables, and the structure searching means is further confirmed between some variables defined by the order information defining means. The model construction apparatus according to claim 4 or 5 , wherein a structure search of a variable group is performed with a causal relationship as a constraint. 商品に対する販売施策と消費者の商品購入行動との関係を表すベイジアンネットワークモデルを構築することを特徴とする請求項1から請求項6のいずれかに記載のモデル構築装置。 The model construction apparatus according to claim 1, wherein a Bayesian network model representing a relationship between a sales measure for a product and a consumer's product purchase behavior is constructed. コンピュータを請求項1から請求項7のいずれかに記載のモデル構築装置として機能させるためのプログラム。
The program for functioning a computer as a model construction apparatus in any one of Claims 1-7 .
JP2008110903A 2008-04-22 2008-04-22 Model building apparatus and program Expired - Fee Related JP5150348B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008110903A JP5150348B2 (en) 2008-04-22 2008-04-22 Model building apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008110903A JP5150348B2 (en) 2008-04-22 2008-04-22 Model building apparatus and program

Publications (2)

Publication Number Publication Date
JP2009265713A JP2009265713A (en) 2009-11-12
JP5150348B2 true JP5150348B2 (en) 2013-02-20

Family

ID=41391531

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008110903A Expired - Fee Related JP5150348B2 (en) 2008-04-22 2008-04-22 Model building apparatus and program

Country Status (1)

Country Link
JP (1) JP5150348B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5665116B2 (en) 2009-11-20 2015-02-04 日東電工株式会社 Patches and patch preparations
JP6562851B2 (en) * 2016-02-19 2019-08-21 株式会社日立製作所 Yield prediction device and yield prediction method
JP7247021B2 (en) * 2019-05-28 2023-03-28 株式会社日立製作所 Information processing device, prediction discrimination system, and prediction discrimination method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4164669B2 (en) * 2003-09-29 2008-10-15 独立行政法人産業技術総合研究所 Model creation device, information analysis device, model creation method, information analysis method, and program
JP4767017B2 (en) * 2003-12-26 2011-09-07 株式会社電通 Campaign dynamic optimization system and method thereof, recording medium recording the method, and transmission medium transmitting the method
JP2006331338A (en) * 2005-05-30 2006-12-07 Toshiba Corp Structure analysis apparatus, structure analysis method and program
JP2007066260A (en) * 2005-09-02 2007-03-15 Ntt Docomo Inc Network conversion system and method
JP4495669B2 (en) * 2005-12-06 2010-07-07 株式会社日立製作所 Business process design support method and system based on role relationship modeling
JP4169063B2 (en) * 2006-04-06 2008-10-22 ソニー株式会社 Data processing apparatus, data processing method, and program

Also Published As

Publication number Publication date
JP2009265713A (en) 2009-11-12

Similar Documents

Publication Publication Date Title
Raskutti et al. Learning directed acyclic graph models based on sparsest permutations
Jin et al. Data-driven evolutionary optimization
JP5769138B2 (en) Event analysis apparatus and computer program
Li et al. Statistics-based wrapper for feature selection: An implementation on financial distress identification with support vector machine
JP6744882B2 (en) Action pattern search system and action pattern search method
Contreras-Bolton et al. Automatic combination of operators in a genetic algorithm to solve the traveling salesman problem
JP4755441B2 (en) Design support method and system
Miric et al. When and who do platform companies acquire? Understanding the role of acquisitions in the growth of platform companies
JP2019153258A (en) Mechanical learning device, prediction system, and program
Vergidis et al. Business process improvement using multi-objective optimisation
JP2020086821A (en) Optimization device and control method thereof
Jenab et al. A graph-based model for manufacturing complexity
WO2021049365A1 (en) Information processing device, information processing method, and program
CN102693262A (en) Method of determining the influence of a variable in a phenomenon
JP5150348B2 (en) Model building apparatus and program
Thiess et al. Towards Design Principles for Data-Driven Decision Making: An Action Design Research Project in the Maritime Industry
Hadi-Vencheh et al. The slack-based measure model based on supporting hyperplanes of production possibility set
JP2006252011A (en) Environmental load evaluation device, environmental load evaluation method and program recording medium
JP2016095568A (en) Model construction device and program
AU2020472445B2 (en) Hidden decision tree test device, hidden decision tree test system, hidden decision tree test method, and program
JP5835802B2 (en) Purchase forecasting apparatus, method, and program
JP5963493B2 (en) Cost estimation system, method and program
Anunciação et al. Using information interaction to discover epistatic effects in complex diseases
JP2016122332A (en) Process evaluation device and process evaluation program
Duboue Feature Engineering: Human-in-the-Loop Machine Learning

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120515

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120712

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121203

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees