RandomizedPcaTrainer Kelas

Definisi

IEstimator<TTransformer> untuk melatih perkiraan PCA menggunakan algoritma SVD Acak.

public sealed class RandomizedPcaTrainer : Microsoft.ML.Trainers.TrainerEstimatorBase<Microsoft.ML.Data.AnomalyPredictionTransformer<Microsoft.ML.Trainers.PcaModelParameters>,Microsoft.ML.Trainers.PcaModelParameters>
type RandomizedPcaTrainer = class
    inherit TrainerEstimatorBase<AnomalyPredictionTransformer<PcaModelParameters>, PcaModelParameters>
Public NotInheritable Class RandomizedPcaTrainer
Inherits TrainerEstimatorBase(Of AnomalyPredictionTransformer(Of PcaModelParameters), PcaModelParameters)
Warisan

Keterangan

Untuk membuat pelatih ini, gunakan RandomizedPca atau RandomizedPca(Options).

Kolom Input dan Output

Data kolom fitur input harus merupakan vektor berukuran dikenal dari Single. Pelatih ini menghasilkan kolom berikut:

Nama Kolom Output Tipe Kolom Description
Score Single Skor non-negatif dan tidak terbatas yang dihitung oleh model deteksi anomali.
PredictedLabel Boolean Label yang diprediksi, berdasarkan ambang batas. Skor yang lebih tinggi dari peta ambang ke true dan skor yang lebih rendah dari peta ambang ke false. Ambang defaultnya adalah 0.5. Gunakan <xref:AnomalyDetectionCatalog.ChangeModelThreshold> untuk mengubah nilai default.

Karakteristik Pelatih

Tugas pembelajaran mesin Deteksi Anomali
Apakah normalisasi diperlukan? Ya
Apakah penembolokan diperlukan? Tidak
NuGet yang diperlukan selain Microsoft.ML None
Dapat diekspor ke ONNX Tidak

Detail Algoritma Pelatihan

Pelatih ini menggunakan eigenvector teratas untuk memperkirakan subspace yang berisi kelas normal. Untuk setiap instans baru, instans ini menghitung perbedaan norma antara vektor fitur mentah dan fitur yang diproyeksikan pada subspace tersebut. Jika kesalahan mendekati 0, instans dianggap normal (non-anomali).

Lebih khusus lagi, pelatih ini melatih perkiraan PCA menggunakan metode acak untuk menghitung dekomposisi nilai tunggal (SVD) matriks yang barisnya adalah vektor input. Model yang dihasilkan oleh pelatih ini berisi tiga parameter:

  • Matriks proyeksi $U$
  • Vektor rata-rata di ruang fitur asli $m$
  • Rata-rata vektor dalam ruang fitur yang diproyeksikan $p$

Untuk vektor fitur input $x$, skor anomali dihitung dengan membandingkan norma $L_2$ dari vektor input asli, dan norma $L_2$ dari vektor yang diproyeksikan: $\sqrt{\left(|x-m|_2^2 - |Ux-p|_2^2\right)|x-m|_2^2}$.

Metode ini dijelaskan di sini.

Perhatikan bahwa algoritma dapat dibuat menjadi Kernel PCA dengan menerapkan ke ApproximatedKernelTransformer data sebelum meneruskannya ke pelatih.

Periksa bagian Lihat Juga untuk tautan ke contoh penggunaan.

Bidang

Nama Deskripsi
FeatureColumn

Kolom fitur yang diharapkan pelatih.

(Diperoleh dari TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

Kolom label yang diharapkan pelatih. Dapat berupa null, yang menunjukkan bahwa label tidak digunakan untuk pelatihan.

(Diperoleh dari TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

Kolom berat yang diharapkan pelatih. Dapat berupa null, yang menunjukkan bahwa berat tidak digunakan untuk pelatihan.

(Diperoleh dari TrainerEstimatorBase<TTransformer,TModel>)

Properti

Nama Deskripsi
Info

IEstimator<TTransformer> untuk melatih perkiraan PCA menggunakan algoritma SVD Acak.

Metode

Nama Deskripsi
Fit(IDataView)

Melatih dan mengembalikan ITransformer.

(Diperoleh dari TrainerEstimatorBase<TTransformer,TModel>)
GetOutputSchema(SchemaShape)

IEstimator<TTransformer> untuk melatih perkiraan PCA menggunakan algoritma SVD Acak.

(Diperoleh dari TrainerEstimatorBase<TTransformer,TModel>)

Metode Ekstensi

Nama Deskripsi
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 lolos.

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 di ketik 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 cocok dipanggil.

Berlaku untuk

Lihat juga