Yukinobu Hamuro
hamur****@adm*****
2004年 8月 24日 (火) 18:48:51 JST
羽室です。 すみません。 言葉足らずで。 私が考えていましたGraphIDの導入の目的は、多分鷲尾先生のお考えと同様です。 例えばAGMにかけた後で、どのグラフがどのルールに当てはまるったかを見やすくするといったものです。 C5.0で、例えば顧客に関する決定木を作るとき、顧客コードと顧客名を名目属性(もちろん説明属性としては利用しません)として含めておけば、 後にどのリーフにどの顧客が分類されたかを参照できます。これと同じような目的を考えています。 Labelはユニークである必要はありませんが、実際の利用では結果としてユニークとなるケースが多いと思われます。 ですからvalueはtype="xs:string"で全く問題ありません。 例えば、VertexLabelであれば、DataDictionaryに次のようなデータ項目の定義が必須です。 <DataField name="atomy" optype="categorical"> <Value value="H" /> <Value value="C" /> </DataField> そしてVertexLabelは次のようになります。 <Vertex vertexId="1" dimension="1"> <VertexLabel field="atomy" value="H" /> </Vertex> もし、GraphLabelについても同様に考えるなら、 <DataField name="GraphName" optype="categorical"> <Value value="酸素" /> <Value value="アンモニア" /> <Value value="二酸化炭素" /> : </DataField> とし、 <Graph graphId="1"> <GraphLabel field="GraphName" value="酸素"> <Vertex vertexId="1" dimension="1"> <VertexLabel field="atomy" value="O" /> </Vertex> : </Graph> といったようにする必要はないでしょうか? もしそうする必要があれば、<Value value="酸素" /> といったValue要素が膨大になってしまいます。 必要なければ、単に、 <GraphLabel value="酸素"> といった感じになるかとはおもいます。 ただ、グラフのラベルを以下のような複数のデータ項目でつけたいケースも生じると思われます。 <Graph graphId="1"> <GraphLabel field="Place" value="大阪"> <GraphLabel field="GraphName" value="酸素"> あまりよい例ではありませんが。。。 また、 <DataField name="GraphName" optype="categorical"> としましたが、C5.0に習って(http://www.rulequest.com/see5-win.html#explicit) <DataField name="GraphName" optype="label"> とするほうが誤解がないと思われます。 >>これに関連する話ですが、GraphMLで宣言されているDataDictionaryやHeader要素のXMLschemaもGraphMLのスキーマ内に入れたほうが >>よいかと思いますがどうでしょうか? > >GraphMLのスキーマに入れるということは、標準と違ってカスタマイズしたい >ということでしょうか。 ここでの標準とは何のことでしょうか? PMMLではないですよね? GraphMLはPMMLとは完全に独立した存在だと解釈していましたが。。。 Takashi Washio さんは書きました: >羽室先生、光永君 > >>>以下、グラフにIDだけでなく、グラフそのものにラベル(フィールド名や値) >>>をつけるということですね。あれば便利と思います。ただこれらは >>>use="optional"にした方がいいと思います。"value"はtype="xs:string" >>>としたのは、数字ばかりでなく何でも書けるようにですね? >>はい、その通りです。 >>ただ、問題となってくることは、DataDictionaryの方です。 >><DataField name="GraphName" optype="categorical"/> >>のように、Valueを伴わないDataFieldはありでしょうか? >>もしValueが必須であるとすると、グラフ数と同数のValueを出力する必要がでてきます。 > >えーと、おっしゃっている意味がうまく飲み込めないのですが、 >この場合、GraphIDではなくGraphLabelを導入する目的が何かのかです。 >GraphIDをtype="xs:int"ではなくtype="xs:string"にすれば、 >文字列のIDは付けられますね。GraphLabelを導入するのは >こういうIDの使い方ではなくて、あくまでLabelが欲しいからだと >私は理解してました。LabelはIDと違い、各グラフにuniqueである >必要はないですね。というかuniqueならIDを使った方がいいので >はないでしょうか。 > >それからvalueが数字なら ><DataField name="GraphName" optype="continuous"/> >というやり方もありますが、おそらくこれは羽室先生が考えておられる >こととは違うでしょうね。 > > >>これに関連する話ですが、GraphMLで宣言されているDataDictionaryやHeader要素のXMLschemaもGraphMLのスキーマ内に入れたほうが >>よいかと思いますがどうでしょうか? > >GraphMLのスキーマに入れるということは、標準と違ってカスタマイズしたい >ということでしょうか。 > >光永君 >これはどう思いますか。現状は標準のXMLschemaを使っているわけですが、 >GraphMLのスキーマに入れる必要がありますか? > > >鷲尾 > > >_______________________________________________ >Musashi-devel mailing list >Musas****@lists***** >http://lists.sourceforge.jp/mailman/listinfo/musashi-devel > ---- Yukinobu Hamuro hamur****@adm*****