LbfgsLogisticRegressionBinaryTrainer Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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 |
WeightColumn |
Kolom berat yang diharapkan pelatih. Dapat berupa |
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 |
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
- LbfgsLogisticRegression(BinaryClassificationCatalog+BinaryClassificationTrainers, String, String, String, Single, Single, Single, Int32, Boolean)
- LbfgsLogisticRegression(BinaryClassificationCatalog+BinaryClassificationTrainers, LbfgsLogisticRegressionBinaryTrainer+Options)
- LbfgsLogisticRegressionBinaryTrainer.Options