Bagikan melalui


LbfgsLogisticRegressionBinaryTrainer Kelas

Definisi

IEstimator<TTransformer> untuk memprediksi target menggunakan model regresi logistik linier yang dilatih dengan metode L-BFGS.

public sealed class LbfgsLogisticRegressionBinaryTrainer : Microsoft.ML.Trainers.LbfgsTrainerBase<Microsoft.ML.Trainers.LbfgsLogisticRegressionBinaryTrainer.Options,Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.LinearBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>,Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.LinearBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>
type LbfgsLogisticRegressionBinaryTrainer = class
    inherit LbfgsTrainerBase<LbfgsLogisticRegressionBinaryTrainer.Options, BinaryPredictionTransformer<CalibratedModelParametersBase<LinearBinaryModelParameters, PlattCalibrator>>, CalibratedModelParametersBase<LinearBinaryModelParameters, PlattCalibrator>>
Public NotInheritable Class LbfgsLogisticRegressionBinaryTrainer
Inherits LbfgsTrainerBase(Of LbfgsLogisticRegressionBinaryTrainer.Options, BinaryPredictionTransformer(Of CalibratedModelParametersBase(Of LinearBinaryModelParameters, PlattCalibrator)), CalibratedModelParametersBase(Of LinearBinaryModelParameters, PlattCalibrator))
Warisan

Keterangan

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

Kolom Input dan Output

Data kolom label input harus Boolean. Data kolom fitur input harus merupakan vektor berukuran besar yang diketahui dari Single.

Pelatih ini menghasilkan kolom berikut:

Nama Kolom Output Jenis Kolom Deskripsi
Score Single Skor tidak terikat yang dihitung oleh model.
PredictedLabel Boolean Label yang diprediksi, berdasarkan tanda skor. Skor negatif memetakan ke false dan skor positif memetakan ke true.
Probability Single Probabilitas dihitung dengan mengkalibrasi skor memiliki true sebagai label. Nilai probabilitas dalam rentang [0, 1].

Karakteristik Pelatih

Tugas pembelajaran mesin Klasifikasi biner
Apakah normalisasi diperlukan? Ya
Apakah penembolokan diperlukan? Tidak
NuGet yang diperlukan selain Microsoft.ML Tidak ada
Dapat diekspor ke ONNX Ya

Fungsi Penilaian

Regresi logistik linier adalah varian model linier. Ini memetakan vektor fitur $\textbf{x} \in {\mathbb R}^n$ ke skalar melalui $\hat{y}\left( \textbf{x} \right) = \textbf{w}^T \textbf{x} + b = \sum_{j=1}n^n w_j x_j + b$, di mana $x_j$ adalah nilai fitur $j$-th, elemen $j$-th dari $\textbf{w}$ adalah koefisien fitur $j$-th, dan $b$ adalah bias yang dapat dipelajari. Probabilitas yang sesuai untuk mendapatkan label true adalah $\frac{1}{1 + e^{\hat{y}\left( \textbf{x} \right)}}$.

Detail Algoritma Pelatihan

Teknik pengoptimalan yang diterapkan didasarkan pada memori terbatas metode Broyden-Fletcher-Goldfarb-Shanno (L-BFGS). L-BFGS adalah metode kuasi-Newtonian yang menggantikan biaya komputasi mahal matriks Hessian dengan perkiraan tetapi masih menikmati tingkat konvergensi cepat seperti metode Newton di mana matriks Hessian lengkap dihitung. Karena perkiraan L-BFGS hanya menggunakan sejumlah status historis terbatas untuk menghitung arah langkah berikutnya, sangat cocok untuk masalah dengan vektor fitur dimensi tinggi. Jumlah status historis adalah parameter yang ditentukan pengguna, menggunakan jumlah yang lebih besar dapat menyebabkan perkiraan yang lebih baik ke matriks Hessian tetapi juga biaya komputasi yang lebih tinggi per langkah.

Regularisasi adalah metode yang dapat merender masalah yang tidak ditimbulkan lebih dapat ditelusuri dengan memberlakukan batasan yang memberikan informasi untuk melengkapi data dan yang mencegah overfitting dengan menghukum besaran model biasanya diukur oleh beberapa fungsi norma. Ini dapat meningkatkan generalisasi model yang dipelajari dengan memilih kompleksitas optimal dalam tradeoff varians bias. Regularisasi bekerja dengan menambahkan penalti yang terkait dengan nilai koefisien ke kesalahan hipotesis. Model yang akurat dengan nilai koefisien ekstrem akan dikenakan sanksi lebih banyak, tetapi model yang kurang akurat dengan nilai yang lebih konservatif akan dikenakan sanksi lebih sedikit.

Pelajar ini mendukung regularisasi bersih elastis: kombinasi linier L1-norma (LASSO), $|| \textbf{w} || _1$, dan L2-norm (ridge), $|| \textbf{w} || _2^2$ regularisasi. Regularisasi norma L1 dan L2 memiliki efek dan penggunaan yang berbeda yang saling melengkapi dalam hal-hal tertentu. Menggunakan L1-norm dapat meningkatkan sparitas $\textbf{w}$terlatih. Saat bekerja dengan data dimensi tinggi, itu menyusutkan bobot kecil fitur yang tidak relevan menjadi 0 dan karena itu tidak ada sumber daya yang akan dihabiskan untuk fitur buruk tersebut saat membuat prediksi. Jika regularisasi L1-norma digunakan, algoritma pelatihan adalah OWL-QN. Regularisasi L2-norma lebih disukai untuk data yang tidak jarang dan sebagian besar mengharuskan keberadaan bobot besar.

Regularisasi agresif (yaitu, menetapkan koefisien besar ke istilah regularisasi L1-norma atau L2-norma) dapat membahayakan kapasitas prediktif dengan mengecualikan variabel penting dari model. Oleh karena itu, memilih koefisien regularisasi yang tepat penting saat menerapkan regresi logistik.

Periksa bagian Lihat Juga untuk tautan ke contoh penggunaan.

Bidang

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

Info

IEstimator<TTransformer> untuk memprediksi target menggunakan model regresi logistik linier yang dilatih dengan metode L-BFGS.

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

Metode

Fit(IDataView, LinearModelParameters)

Melanjutkan pelatihan menggunakan LbfgsLogisticRegressionBinaryTrainer yang sudah dilatih modelParameters dan mengembalikan BinaryPredictionTransformer<TModel>.

Fit(IDataView)

Melatih dan mengembalikan ITransformer.

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

IEstimator<TTransformer> untuk memprediksi target menggunakan model regresi logistik linier yang dilatih dengan metode L-BFGS.

(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