Data flow

PMMLは決定木分類、ニューラル・ネット、回帰などの様々な特定のマイニングモデルを定義します。等しく重要なことは、入力データそれ自身を記述し、モデル自身の評価以前に入力データに対して適応されうる一般的なtransformationを記述するために、すべてのモデルに共通の定義も存在するということである。 以下のリストは、データ定義、および対応するデータ・フローを含むデータtransformationを構\成要素として記述しています。

データ・ディクショナリーはデータを「あるがまま(as is)」として記述した生の入力データです。DataDictionaryはオリジナルのデータを参照し、どのようにマイニングモデルがデータを解釈するか(たとえば、categoricalとして、あるいは数量的なものとして)ということや、どのように有効値の幅が制限されるであろうかという事を定義します。

MiningSchemaは、PMMLモデルのユーザへのインターフェースを定義します。それは、マイニングモデルの中で計算の入力として使用されるすべてのフィールドをリストします。マイニングモデルは、その内部で、入力値に依存して導出された新たな値を、要求するかも知れません。しかし、それらの導出された値はMiningSchemaの部分ではない。 導出された値は、transformationブロックで定義されます。MiningSchemaは、さらにどの値がoutliersと関係するか、どの重み付けがあるフィールドに適応されるか(たとえばクラスタリングの場面で)という事も定義します。いくつかのモデルは「supplementary」フィールドを持っているでしょう。

・モデルのユーザが正規化をすることは要求されないので、MiningSchemaの中で指定される入力フィールドは、導出された(derived)フィールドではなくデータ・ディクショナリー中のフィールドを参照します。

transformationsの様々なタイプは、たとえば数の範囲[0..1]への正規化や、連続フィールドの離散化のように定義されます。それらのtransformationは元々の値を内部値へと、ネットワークモデルの入力ニューロンのようにマイニングモデルで要求される形で、変換します。

・PMMLモデルがtransformationsを含んでいる場合、ユーザは、これらの正規化を要求されません。MiningSchemaは、正規化されていないオリジナルの値を参照する入力フィールドをリストします。ユーザはモデルへの入力としてこれらのフィールドを提示します。

・PMMLの中のtransformationsは、マイニングの技術によって生み出された表\現(expressions)をカバーするように意図されます。完全なマイニングプロジェクトは、通常、手動で定義しなければならない多くの他の予\備処理ステップを必要とします。PMML 2.0は、これらすべての予\備処理に対しては完全な言語を与えません。これらのデータ準備ステップは、値をPMML利用者に与える前に実行されなければなりません。

・もし、PMMLドキュメントが複数のモデルを含んでいるなら、正規化の定義を共有することでドキュメントのスペースを節約することが出来ます。それは共通のデータ・ディクショナリーを持つという考え方と同じようなものです。忘れては行けないのは、正規化はモデル間で異なることもある。つまり、異なったモデルは、導出されたフィールドの異なる集合を参照する事もあるということです。

・正規化によって定義され、導出された値は別のtransformationのために入力することができます。例えば、ニューラル・ネット・モデルは指数変換された入力フィールド「income」で定義された線形の正規化を持つこともあります。

・決定木分類あるいはニューラル・ネットのようなモデルの特定の定義は、MiningSchemaにリストされたフィールド、あるいはMiningSchemaフィールド(transitive closureを含めた)から計算されうる、導出されたフィールドを参照するでしょう。

・統計および特定のモデルは、MiningSchemaの中のフィールドを参照することができますし、変換されたフィールドも参照できます。欠損値に対して定義され、置き換えられた値がある場合、欠損値が置き換えられる前に、統計はその値を参照します。

モデルの出力は、常に特定の種類のモデルに依存します、例えば、それは決定木中のleaveノードによって、あるいはニューラル・ネット中の出力ニューロンによって定義されます。予\測されたクラスや確率のような最終結果は、モデルの出力から計算されます。もし、ニューラル・ネットが数値を予\測することに対して使われるならば、ネットワークの出力値は通常、値の元々のドメインへ逆正規化(denormalization)する必要があります。幸運にも、この逆正規化は、同じ種類のtransformationタイプを使用することができます。PMML利用者システムは自動的に逆の写像を計算するでしょう。

tranformation dictionaryのフィールドがマイニングスキーマ中のフィールドからの入力に依存することに注意してください。PMMLモデルの静的構\造は動的なデータ・フローとは異なることができます。マイニングスキーマはモデルの一部です。しかし、tranformation dictionaryはモデルの外で共有される要素です。モデルのマイニングスキーマ中のすべてのフィールドもグローバルなデータ・ディクショナリーの中で表\わされるという素晴らしい性質を持ちます。すなわち、tranformation dictionary中の導出されたフィールドを解析するのに、特定の採鉱図表\中の情報は必要ではありません。導出されたフィールド内の入力は、常にデータ・ディクショナリー中の、あるいはtranformation dictionaryそれ自体の中のフィールドを参照します。