OnnxScoringEstimator クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
IEstimator<TTransformer> ML.NET フレームワークで ONNX モデルをスコア付けする場合。
public sealed class OnnxScoringEstimator : Microsoft.ML.Data.TrivialEstimator<Microsoft.ML.Transforms.Onnx.OnnxTransformer>
type OnnxScoringEstimator = class
inherit TrivialEstimator<OnnxTransformer>
Public NotInheritable Class OnnxScoringEstimator
Inherits TrivialEstimator(Of OnnxTransformer)
- 継承
注釈
エスティメーターの特性
この推定器は、パラメーターをトレーニングするためにデータを確認する必要がありますか? | いいえ |
入力列のデータ型 | 既知のサイズの Single ベクターまたは Double 型 |
出力列のデータ型 | ONNX モデルで指定されたとおり |
Microsoft.ML に加えて必要な NuGet | Microsoft.ML.OnnxTransformer (常に)、Microsoft.ML.OnnxRuntime 1.6.0 (CPU 処理用) または Microsoft.ML.OnnxRuntime.Gpu 1.6.0 (GPU が使用可能な場合は GPU 処理用) |
ONNX にエクスポート可能 | いいえ |
このエスティメーターを作成するには、次の API を使用します。 ApplyOnnxModel
Microsoft.ML.OnnxRuntime ライブラリを使用した ONNX 1.6 形式 (opset 11) でのモデルの推論をサポートします。 プロジェクトが Microsoft.ML.OnnxRuntime を参照している場合は CPU で、プロジェクトが Microsoft.ML.OnnxRuntime.Gpu を参照している場合は GPU でモデルがスコア付けされます。 OnnxScoringEstimator を使用するすべてのプロジェクトは、上記の 2 つのパッケージのいずれかを参照する必要があります。
GPU で実行するには、Microsoft.ML.OnnxRuntime nuget (CPU 処理用) ではなく、NuGet パッケージ Microsoft.ML.OnnxRuntime.Gpu を使用します。 Microsoft.ML.OnnxRuntime.Gpu には、 CUDA でサポートされている GPU、 CUDA 10.2 Toolkit、 cuDNN 8.0.3 ( Onnxruntime のドキュメントに記載) が必要です。 ApplyOnnxModel を使用してエスティメーターを作成する場合は、パラメーター 'gpuDeviceId' を有効な負以外の整数に設定します。 一般的なデバイス ID の値は 0 または 1 です。 GPU デバイスが見つからないが 'fallbackToCpu = true' の場合、推定器は CPU で実行されます。 GPU デバイスが見つからないが 'fallbackToCpu = false' の場合、エスティメーターは例外をスローします
ONNX モデルの入力と出力は Tensor 型である必要があります。 シーケンスとマップはまだサポートされていません。
内部的には、OnnxTransformer (OnnxScoringEstimator.Fit() の戻り値) は、OnnxRuntime.dllが所有するアンマネージ メモリを指す推論セッションへの参照を保持します。 パイプラインで ApplyOnnxModel の呼び出しがある場合は常に、Fit() 呼び出しの戻り値を IDisposable にキャストし、Dispose() を呼び出してメモリ リークがないことを確認することをお勧めします。
OnnxRuntime は、Windows、MacOS、Ubuntu 16.04 Linux 64 ビット プラットフォームで動作します。 ONNX モデルにアクセスして、すぐに使用できるモデルの一覧を確認してください。 詳細については、 ONNX を参照してください。
メソッド
Fit(IDataView) |
IEstimator<TTransformer> ML.NET フレームワークで ONNX モデルをスコア付けする場合。 (継承元 TrivialEstimator<TTransformer>) |
GetOutputSchema(SchemaShape) |
SchemaShapeトランスフォーマーによって生成されるスキーマの値を返します。 パイプラインでのスキーマの伝達と検証に使用されます。 |
拡張メソッド
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
推定チェーンに "キャッシュ チェックポイント" を追加します。 これにより、ダウンストリーム推定器がキャッシュされたデータに対してトレーニングされるようになります。 複数のデータを受け取るトレーナーの前にキャッシュ チェックポイントを設定すると便利です。 |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
エスティメーターを指定すると、デリゲートが呼 Fit(IDataView) び出されると呼び出されるラップ オブジェクトを返します。 多くの場合、エスティメーターが適合した内容に関する情報を返すことが重要です。そのため Fit(IDataView) 、メソッドは一般的 ITransformerなオブジェクトではなく、具体的に型指定されたオブジェクトを返します。 ただし、同時に、 IEstimator<TTransformer> 多くのオブジェクトを含むパイプラインに形成されることが多いため、トランスフォーマーを取得する推定器がこのチェーンのどこかに埋もれている場所を介して EstimatorChain<TLastTransformer> 、推定器のチェーンを構築する必要がある場合があります。 このシナリオでは、このメソッドを使用して、fit が呼び出されると呼び出されるデリゲートをアタッチできます。 |