Bagikan melalui


OnnxScoringEstimator Kelas

Definisi

IEstimator<TTransformer> untuk menilai model ONNX dalam kerangka kerja ML.NET.

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)
Warisan
OnnxScoringEstimator

Keterangan

Karakteristik Estimator

Apakah estimator ini perlu melihat data untuk melatih parameternya? Tidak
Jenis data kolom input Vektor atau Double jenis berukuran Single diketahui
Jenis data kolom output Seperti yang ditentukan oleh model ONNX
NuGet yang diperlukan selain Microsoft.ML Microsoft.ML.OnnxTransformer (selalu), Microsoft.ML.OnnxRuntime 1.6.0 (untuk pemrosesan CPU) atau Microsoft.ML.OnnxRuntime.Gpu 1.6.0 (untuk pemrosesan GPU jika GPU tersedia)
Dapat diekspor ke ONNX Tidak

Untuk membuat estimator ini, gunakan API berikut: ApplyOnnxModel

Mendukung inferensi model dalam format ONNX 1.6 (opset 11), menggunakan pustaka Microsoft.ML.OnnxRuntime . Model dinilai pada CPU jika proyek mereferensikan Microsoft.ML.OnnxRuntime dan pada GPU jika proyek mereferensikan Microsoft.ML.OnnxRuntime.Gpu. Setiap proyek yang menggunakan OnnxScoringEstimator harus mereferensikan salah satu dari dua paket di atas.

Untuk menjalankan pada GPU, gunakan paket NuGet Microsoft.ML.OnnxRuntime.Gpu alih-alih nuget Microsoft.ML.OnnxRuntime (yang untuk pemrosesan CPU). Microsoft.ML.OnnxRuntime.Gpu memerlukan GPU yang didukung CUDA, Toolkit CUDA 10.2, dan cuDNN 8.0.3 (seperti yang ditunjukkan pada dokumentasi Onnxruntime). Saat membuat estimator melalui ApplyOnnxModel, atur parameter 'gpuDeviceId' ke bilangan bulat non-negatif yang valid. Nilai ID perangkat yang khas adalah 0 atau 1. Jika perangkat GPU tidak ditemukan tetapi 'fallbackToCpu = true' maka estimator akan berjalan pada CPU. Jika perangkat GPU tidak ditemukan tetapi 'fallbackToCpu = false' maka estimator akan memberikan pengecualian

Input dan output model ONNX harus jenis Tensor. Urutan dan Peta belum didukung.

Secara internal, OnnxTransformer (nilai pengembalian OnnxScoringEstimator.Fit()) menyimpan referensi ke sesi inferensi yang menunjuk ke memori tidak terkelola yang dimiliki oleh OnnxRuntime.dll. Setiap kali ada panggilan ke ApplyOnnxModel dalam alur, disarankan untuk mentransmisikan nilai pengembalian panggilan Fit() ke IDisposable dan memanggil Dispose() untuk memastikan bahwa tidak ada kebocoran memori.

OnnxRuntime berfungsi pada platform Windows, MacOS, dan Ubuntu 16.04 Linux 64-bit. Kunjungi Model ONNX untuk melihat daftar model yang tersedia untuk memulai. Lihat ONNX untuk informasi selengkapnya.

Metode

Fit(IDataView)

IEstimator<TTransformer> untuk menilai model ONNX dalam kerangka kerja ML.NET.

(Diperoleh dari TrivialEstimator<TTransformer>)
GetOutputSchema(SchemaShape)

Mengembalikan SchemaShape skema yang akan diproduksi oleh transformator. Digunakan untuk propagasi dan verifikasi skema dalam alur.

Metode Ekstensi

AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

Tambahkan 'titik pemeriksaan penembolokan' ke rantai estimator. Ini akan memastikan bahwa estimator hilir akan dilatih terhadap data cache. Sangat membantu untuk memiliki titik pemeriksaan penembolokan sebelum pelatih yang mengambil beberapa data berlalu.

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

Mengingat estimator, kembalikan objek pembungkus yang akan memanggil delegasi setelah Fit(IDataView) dipanggil. Seringkali penting bagi estimator untuk mengembalikan informasi tentang apa yang cocok, itulah sebabnya Fit(IDataView) metode mengembalikan objek yang ditik secara khusus, bukan hanya umum ITransformer. Namun, pada saat yang sama, IEstimator<TTransformer> sering dibentuk menjadi alur dengan banyak objek, jadi kita mungkin perlu membangun rantai estimator melalui EstimatorChain<TLastTransformer> tempat estimator yang ingin kita dapatkan transformator dikubur di suatu tempat dalam rantai ini. Untuk skenario itu, kita dapat melalui metode ini melampirkan delegasi yang akan dipanggil setelah pas dipanggil.

Berlaku untuk