データ・ファイル
Huginグラフィカル・ユーザー・インタフェースは,データ・ファイルの保存と読み込みをサポートします.データ・ファイルは,以下のようにケースの集合を格納します.
図 1:ある標本データ・ファイル
図 2: 他の標本データ・ファイル
図1に示すように,最初の行は,ネットワーク中のノードの名前で,一方,その下の各行は,各変数に値を割り当てられたケース,すなわち,各ノードに1つのオブザべーションを持つオブザベーションの集合を指定します.オブザベーションには欠損値があるかもしれません. 欠損値は, * を用いて指定されます.
データ・ファイルの最初の行は,必ずネットワーク中のノードの(部分集合)の名前を格納していることに注意してください.ノードのラベルではなく,名前を指定することが重要です.名前は,各ノードのためのユニークな(他にない)識別子です. したがって,図1のデータ・ファイルは,ネットワークが, 名前 E, T, L, S, A , D, B,Xのノードを持つことを仮定しています.これは,図3(ノードにノード・ラベルが表示されている)に示すネットワークのノード名です.
図 3: "Chest
Clinic"のベイジアンネットワーク表現
このネットワークのドメインに関する詳細は,Chest Clinicを参照.
データ・ファイルの形式は,下記の文法で記述できます:
<Data file> ::= <Header> <Case>*
<Header> ::= # <Separator> <Node list> | <Node list>
<Separator> ::= , | <Empty>
<Node list> ::= <Node name> | <Node list> <Separator> <Node name>
<Case> ::= <Case count> <Separator> <Data list> | <Data list>
<Case count> ::= <Nonnegative real number>
<Data list> ::= <Data> | <Data list> <Separator> <Data>
<Data> ::= <Value> | * | ? | <Empty>
<Value> ::= <State index> | <Label> | <Real number> | true | false
<State index> ::= #<Integer>
ここで:
- <Header>は, ファイル中の1行を占めます.同様に,各 <Case> は1行を占めます.
-
# が<Header>の最初のエレメントの場合,<Case>は, <Case count>を含みます.
-
各<Case>は,<Header>に指定された各ノードの <Data> 項目を格納します.<Data list>中の i番目の<Data> 項目(それが <Value>である場合)は,<Header>の<Node list>中のi番目のノードに対して有効であるはずです.
- <Data> が *, ?, または <Empty>である場合,そのデータは,'missing'(欠損値)として取られます.
- <Separator> が <Empty>の場合,<Empty>には個別の項目が何も使用できません.
-
<Value>は,<Likelihood>が使用できない例外とともに,節 8.8のように定義されています.
-
CG,数字つきノード,および区間ノードには,<Real number> は,有効な指定です.数字つきノードと区間ノードについて,許容されるな値は,名前つきノードのステート値よって定義されます.
- ラベルつきノードには,<Label>が有効な指定です.ラベル(重複した文字列)は,名前つきノードのユニークなステート・ラベルにマッチしなければなりません.ラベルが単一の語である場合は,引用は省略されます.
- 論理ノードには,真と偽が有効な指定です.
Back
翻訳者:多田くにひろ(マインドウェア総研)