12.2. Red Hat Process Automation Manager の PMML のレガシーサポートおよび命名規則
Red Hat Process Automation Manager でプロジェクトに PMML ファイルを追加する場合は複数のアセットが生成されます。PMML モデルのタイプごとに、異なるアセットのセットが生成されますが、すべての PMML モデルタイプは少なくとも以下のアセットセットを生成します。
- PMML モデルに関連する全ルールを含む DRL ファイル
少なくとも以下の Java クラス 2 つが含まれている。
- モデルタイプのデフォルトオブエジェクトタイプとして使用するデータクラス
-
データソースとルール実行の管理に使用する
RuleUnit
クラス
PMML ファイルに root モデルとして MiningModel
が含まれている場合は、これらのファイルごとに複数のインスタンスが生成されます。
以下は、生成された PMML レガシーパッケージ、クラス、ルールの命名規則です。
-
PMML モデルファイルにパッケージ名が指定されていない場合は、
"org.kie.pmml.pmml_4_2"+modelName
の形式で、生成されたルールのモデル名に、デフォルトのパッケージ名org.kie.pmml.pmml_4_2
がプリフィックスとして追加されます。 -
生成された
RuleUnit
Java クラスのパッケージ名は、生成されたルールのパッケージ名と同じです。 -
生成された
RuleUnit
Java クラスの名前は、RuleUnit
にモデル名を追加してmodelName+"RuleUnit"
の形式で指定します。 -
PMML モデルにはそれぞれ、最低でも生成されたデータクラスが 1 つ含まれます。これらのクラスのパッケージ名は
org.kie.pmml.pmml_4_2.model
です。 生成されたデータクラス名は、モデルタイプにより決まり、プリフィックスとしてモデル名を指定します。
-
回帰モデル:
modelName+"RegressionData"
という名前のデータクラス 1 つ -
スコアカードモデル:
modelName+"ScoreCardData"
という名前のデータクラス 1 つ -
ツリーモデル:
modelName+"TreeNode"
という名前の 1 つ目のデータクラスと、modelName+"TreeToken"
という名前の 2 つ目のデータクラス 2 つ -
マイニングモデル:
modelName+"MiningModelData"
という名前のデータクラス 1 つ
-
回帰モデル:
マイニングモデルは、各セグメントに含まれるルールとクラスすべても生成します。
12.2.1. Red Hat Process Automation Manager における PMML 拡張
PMML 仕様は、PMML レガシーモデルのコンテンツを拡張する Extension
要素をサポートします。モデルの主要要素の最初と最後の子として、PMML モデル定義のほぼすべてのレベルで拡張を使用し、最大限に柔軟性をもたせることができます。PMML 拡張の詳細は DMG PMML の Extension Mechanism を参照してください。
Red Hat Process Automation Manager は、PMML 統合を最適化するために以下の追加の PMML 拡張をサポートします。
-
modelPackage
: 生成されたルールと Java クラスのパッケージ名を指定します。PMML モデルファイルのHeader
セクションにこの拡張を追加します。 -
adapter
: ルールの入出力データを含めるのに使用するコンストラクトタイプ (bean
またはtrait
) を指定します。PMML モデルファイルのMiningSchema
またはOutput
セクション (または両方) にこの拡張を挿入します。 -
externalClass
:adapter
拡張と連携して使用し、MiningField
またはOutputField
を定義します。この拡張には、MiningField
またはOutputField
要素名と一致する要素名のクラスが含まれます。