JARの構造¶
マシンにダウンロードしたスコアリングコードJARパッケージの構造は適切に編成されています。
ルートディレクトリ¶
ルートディレクトリには、.so
および.jnilib
ファイルのセットが含まれています。 これらには、LAPACKおよびBLASライブラリのコンパイル済みJava Native Interfaceコードが含まれています。 JARを起動すると、OSでこれらのライブラリの場所が検索されます。 ライブラリが見つかると、モデルのスコアリングの速度が大幅にアップします。 ライブラリが見つからない場合、スコアリングコードは低速のJava実装にフォールバックします。
com.github.fommilパッケージ¶
com.github.fommil
パッケージには、Java側のLAPACKおよびBLASネイティブインターフェイスが含まれています。
drmodel_IDパッケージ¶
drmodel_ID
パッケージには、DataRobotモデル(ブループリント)の個々のノードのパラメーターを含む二値ファイルのセットが含まれています。 これらのパラメーターは人間が読み取ることのできない形式ですが、モデルのノードを実装するクラスの内部でreadParameters(DRDataInputStream dis)
メソッドをデバッグすることによってパラメーターの値を取得できます。 これらのクラスはom.datarobot.prediction.dr<model_ID>
パッケージの内部にあります。
com.datarobot.predictionパッケージ¶
com.datarobot.prediction
パッケージには、スコアリングコードJARの内部で一般的に使用されるJavaインターフェイスが含まれています。 下位互換性を維持するために、インターフェイスの現在のバージョンと使用非推奨バージョンの両方が含まれています。 使用非推奨のインターフェイスは、Predictor、MulticlassPredictor、およびRowです。
com.datarobot.prediction.drパッケージ¶
com.datarobot.prediction.dr<model_ID>
パッケージには、モデル(ブループリント)および一部のユーティリティコードを実装するクラスが含まれています。
モデルを理解するには、BP.java
クラスから開始します。 このクラスは、モデル内でのデータのフローを管理します。 元のデータはDP.java
クラスに読み取られ、特徴量の変換操作が行われます。 その後、前処理されたデータが各V<number>
クラスに適用され、モデル実行の実際の手順が行われます。 これらのすべてのクラスでは、3つのメインユーティリティクラスが使用されます。
-
BaseDataStructure
は、データの統合コンテナを定義します。 -
DRDataInputStream
は、dr<model_ID>
パッケージから二値パラメーターを読み取ります。 -
BaseVertex
は、機械学習アルゴリズムおよびユーティリティ機能の実際の実装を含みます。 -
DRModel
は、モデルAPIの低レベルの実装を定義します。RegressionPredictorImpl
クラスとClassificationPredictorImpl
クラスは、DRModel
の上に構築された最上位のAPIです。DRModel
を直接使う代わりに、これらのクラスを使用することが強く推奨されます。 これらのインターフェイスの詳細については、(ダウンロードタブからリンクされている)javadoc、および下位互換性のあるJava APIセクションを参照してください。
com.datarobot.prediction.drmatrixパッケージ¶
com.datarobot.prediction.drmatrix
パッケージには、密行列および疎行列における一般的な行列操作の実装が含まれています。
com.datarobot.prediction.engineおよびcom.datarobot.prediction.ioパッケージ¶
com.datarobot.prediction.engine
パッケージとcom.datarobot.prediction.io
パッケージには、各スコアリングコードJARをCSVファイルのコマンドラインスコアリングツールとして使用することを可能にする高パフォーマンスのスコアリングロジックが含まれています。
ソースJARと二値JARの違い¶
ソースおよび二値ダウンロードオプションの違いを次の表に示します。
ファイル | 二値.jar |
ソース.jar |
---|---|---|
BLASおよびLAPACKライブラリのネイティブ.so およびjnilib ファイル |
はい | いいえ |
com.github.fommil (BLASおよびLAPACライブラリ用) |
はい | いいえ |
dr<model_ID> (モデルのノードの二値パラメーター) |
はい | はい |
com.datarobot.prediction |
はい | いいえ |
com.datarobot.prediction.drmodel_ID |
はい | はい |
com.datarobot.prediction.drmatrix |
はい | いいえ |
com.datarobot.prediction.engine |
はい | いいえ |
com.datarobot.prediction.io |
はい | いいえ |
DataRobotでは、“ソース” .jarファイルをダウンロードしてモデル検査のプロセスをシンプルにすることができます。 “ソース”ダウンロードオプションを使用することにより、モデルを直接実装するコードだけを取得できます。 これは“二値” .jarと同じコードですが、すべての依存関係が排除されています。