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 berupa Boolean. 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 tidak terbatas yang dihitung oleh model.
PredictedLabel Boolean Label yang diprediksi, berdasarkan tanda skor. Skor negatif dipetakan ke false dan skor positif dipetakan ke true.
Probability Single Probabilitas dihitung dengan mengkalibrasi skor memiliki true sebagai label. Nilai probabilitas berada 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 None
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 w_j x_j + b$, dengan $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 benar adalah $\frac{1}{1 + e^{\hat{y}\left( \textbf{x} \right)}}$.

Detail Algoritma Pelatihan

Teknik pengoptimalan yang diterapkan didasarkan pada memori terbatas Broyden-Fletcher- metodeGoldfarb-Shanno (L-BFGS). L-BFGS adalah metode kuasi-Newtonian yang menggantikan biaya komputasi mahal dari matriks Hessian dengan perkiraan tetapi masih menikmati tingkat konvergensi cepat seperti metode Newton di mana matriks Hessian penuh dihitung. Karena perkiraan L-BFGS hanya menggunakan sejumlah besar status historis 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 sakit lebih dapat dilacak 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 dihukum lebih banyak, tetapi model yang kurang akurat dengan nilai yang lebih konservatif akan dihukum lebih sedikit.

Pelajar ini mendukung regularisasi bersih elastis: kombinasi linier L1-norma (LASSO), $|| \textbf{w} ||_1$, dan L2-norm (punggung bukit), $|| \textbf{w} ||_2^2$ regularisasi. Regularisasi L1-norma dan L2-norma memiliki efek dan penggunaan yang berbeda yang melengkapi dalam hal-hal tertentu. Menggunakan L1-norm dapat meningkatkan sparitas dari $\textbf{w}$terlatih. Saat bekerja dengan data dimensi tinggi, itu menyusutkan bobot kecil fitur yang tidak relevan ke 0 dan oleh 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 mengharamkan adanya 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

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 memprediksi target menggunakan model regresi logistik linier yang dilatih dengan metode L-BFGS.

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

Metode

Nama Deskripsi
Fit(IDataView, LinearModelParameters)

Melanjutkan pelatihan LbfgsLogisticRegressionBinaryTrainer menggunakan 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

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