第3章 Red Hat Process Automation Manager における PMML サポート
Red Hat Process Automation Manager には、以下の PMML 4.2.1 モデルタイプに対するコンシューマー適合サポートが含まれます。
Red Hat Process Automation Manager でサポートされていないモデルを含め、すべての PMML モデルタイプの一覧については、DMG PMML specification を参照してください。
Red Hat Process Automation Manager には、PMML モデルエディターが同梱されていますが、XML または PMML 固有のオーサリングツールを使用して、Red Hat Process Automation Manager のデシジョンサービスで PMML モデルを作成することができます。Business Central (Menu
Red Hat Process Automation Manager でプロジェクトに PMML ファイルを追加する場合には複数のアセットが生成されます。PMML モデルのタイプごとに、異なるアセットのセットが生成されますが、すべての PMML モデルタイプは少なくとも以下のアセットセットを生成します。
- PMML モデルに関連する全ルールを含む DRL ファイル
少なくとも以下の Java クラス 2 つが含まれていること
- モデルタイプのデフォルトオブエジェクトタイプとして使用するデータクラス
-
データソースとルール実行の管理に使用する
RuleUnit
クラス
PMML ファイルに root モデルとして MiningModel
が含まれている場合には、これらのファイルごとに複数のインスタンスが生成されます。
プロジェクトのパッケージ化およびデプロイメントの方法に、PMML ファイルなどのアセットを追加する方法の詳細は、『Packaging and deploying a Red Hat Process Automation Manager project』を参照してください
3.1. Red Hat Process Automation Manager の PMML 命名規則
以下は、生成された 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 つ -
ツリーモデル: 1 つ目は
modelName+"TreeNode"
という名前で、2 つ目はmodelName+"TreeToken"
という名前の合計 2 つのデータクラス -
マイニングモデル:
modelName+"MiningModelData"
という名前のデータクラス 1 つ
-
回帰モデル:
マイニングモデルは、各セグメントに含まれるルールとクラスすべても生成します。
3.2. 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
要素名と一致する要素名のクラスが含まれます。