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と同じコードですが、すべての依存関係が排除されています。