Bagikan melalui


FastTreeRankingTrainer Kelas

Definisi

IEstimator<TTransformer> untuk melatih model peringkat pohon keputusan menggunakan FastTree.

public sealed class FastTreeRankingTrainer : Microsoft.ML.Trainers.FastTree.BoostingFastTreeTrainerBase<Microsoft.ML.Trainers.FastTree.FastTreeRankingTrainer.Options,Microsoft.ML.Data.RankingPredictionTransformer<Microsoft.ML.Trainers.FastTree.FastTreeRankingModelParameters>,Microsoft.ML.Trainers.FastTree.FastTreeRankingModelParameters>
type FastTreeRankingTrainer = class
    inherit BoostingFastTreeTrainerBase<FastTreeRankingTrainer.Options, RankingPredictionTransformer<FastTreeRankingModelParameters>, FastTreeRankingModelParameters>
Public NotInheritable Class FastTreeRankingTrainer
Inherits BoostingFastTreeTrainerBase(Of FastTreeRankingTrainer.Options, RankingPredictionTransformer(Of FastTreeRankingModelParameters), FastTreeRankingModelParameters)
Warisan

Keterangan

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

Kolom Input dan Output

Jenis data label input harus jenis kunci atau Single. Nilai label menentukan relevansi, di mana nilai yang lebih tinggi menunjukkan relevansi yang lebih tinggi. Jika label adalah jenis kunci , maka indeks kunci adalah nilai relevansi, di mana indeks terkecil adalah yang paling tidak relevan. Jika label adalah , nilai yang lebih Singlebesar menunjukkan relevansi yang lebih tinggi. Kolom fitur harus merupakan vektor berukuran dikenal dari Single dan kolom grup baris input harus berupa jenis kunci .

Pelatih ini menghasilkan kolom berikut:

Nama Kolom Output Jenis Kolom Deskripsi
Score Single Skor tidak terikat yang dihitung oleh model untuk menentukan prediksi.

Karakteristik Pelatih

Tugas pembelajaran mesin Peringkat teratas
Apakah normalisasi diperlukan? Tidak
Apakah penembolokan diperlukan? Tidak
NuGet yang diperlukan selain Microsoft.ML Microsoft.ML.FastTree
Dapat diekspor ke ONNX Tidak

Detail Algoritma Pelatihan

FastTree adalah implementasi algoritma peningkatan gradien MART yang efisien. Peningkatan gradien adalah teknik pembelajaran mesin untuk masalah regresi. Ini membangun setiap pohon regresi dengan cara langkah-bijaksana, menggunakan fungsi kerugian yang telah ditentukan sebelumnya untuk mengukur kesalahan untuk setiap langkah dan memperbaikinya di langkah berikutnya. Jadi model prediksi ini sebenarnya merupakan ansambel model prediksi yang lebih lemah. Dalam masalah regresi, meningkatkan membangun serangkaian pohon tersebut dengan cara yang bijaksana dan kemudian memilih pohon optimal menggunakan fungsi kehilangan yang dapat diferensial yang sewenang-wenang.

MART mempelajari ansambel pohon regresi, yang merupakan pohon keputusan dengan nilai skalar di daunnya. Pohon keputusan (atau regresi) adalah bagan alur seperti pohon biner, di mana pada setiap simpul interior satu memutuskan mana dari dua simpul anak yang akan terus didasarkan pada salah satu nilai fitur dari input. Pada setiap simpul daun, nilai dikembalikan. Dalam simpul interior, keputusan didasarkan pada pengujian x <= v di mana x adalah nilai fitur dalam sampel input dan v adalah salah satu nilai yang mungkin dari fitur ini. Fungsi yang dapat diproduksi oleh pohon regresi adalah semua fungsi konstanta sepotong bijaksana.

Ansambel pohon dihasilkan oleh komputasi, di setiap langkah, pohon regresi yang memperkirakan gradien fungsi kerugian, dan menambahkannya ke pohon sebelumnya dengan koefisien yang meminimalkan hilangnya pohon baru. Output ansambel yang dihasilkan oleh MART pada instans tertentu adalah jumlah output pohon.

  • Dalam kasus masalah klasifikasi biner, output dikonversi ke probabilitas dengan menggunakan beberapa bentuk kalibrasi.
  • Dalam kasus masalah regresi, output adalah nilai fungsi yang diprediksi.
  • Dalam kasus masalah peringkat, instans diurutkan oleh nilai output ansambel.

Untuk informasi selengkapnya, lihat:

Periksa bagian Lihat Juga untuk tautan ke contoh penggunaan.

Bidang

FeatureColumn

Kolom fitur yang diharapkan pelatih.

(Diperoleh dari TrainerEstimatorBase<TTransformer,TModel>)
GroupIdColumn

Kolom groupID opsional yang diharapkan pelatih peringkat.

(Diperoleh dari TrainerEstimatorBaseWithGroupId<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

Info

IEstimator<TTransformer> untuk melatih model peringkat pohon keputusan menggunakan FastTree.

(Diperoleh dari FastTreeTrainerBase<TOptions,TTransformer,TModel>)

Metode

Fit(IDataView, IDataView)

FastTreeRankingTrainer Melatih menggunakan data pelatihan dan validasi, mengembalikan RankingPredictionTransformer<TModel>.

Fit(IDataView)

Melatih dan mengembalikan ITransformer.

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

IEstimator<TTransformer> untuk melatih model peringkat pohon keputusan menggunakan FastTree.

(Diperoleh dari TrainerEstimatorBase<TTransformer,TModel>)

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 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> di mana estimator yang ingin kita dapatkan transformator dimakamkan di suatu tempat dalam rantai ini. Untuk skenario itu, kita dapat melalui metode ini melampirkan delegasi yang akan dipanggil setelah fit dipanggil.

Berlaku untuk

Lihat juga