Dil

LbfgsLogisticRegressionBinaryTrainer Sınıf

Tanım

IEstimator<TTransformer> L-BFGS yöntemiyle eğitilen doğrusal lojistik regresyon modelini kullanarak hedefi tahmin etme.

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))
Devralma

Açıklamalar

Bu eğitmeni oluşturmak için LbfgsLogisticRegression veya LbfgsLogisticRegression(Options) kullanın.

Giriş ve Çıkış Sütunları

Giriş etiket sütunu verileri Booleanolmalıdır. Giriş özellikleri sütun verileri bilinen boyutlu bir vektör olmalıdır Single.

Bu eğitmen aşağıdaki sütunları üretir:

Çıkış Sütunu Adı Sütun Türü Description
Score Single Model tarafından hesaplanan ilişkisiz puan.
PredictedLabel Boolean Skorun işaretine dayanarak tahmin edilen etiket. Negatif bir skor false ile eşleşir ve pozitif bir skor trueile eşleşir.
Probability Single Etiket olarak true değerinin ayarlanmasıyla hesaplanan olasılık. Olasılık değeri [0, 1] aralığındadır.

Eğitmen Özellikleri

Makine öğrenmesi görevi İkili sınıflandırma
Normalleştirme gerekli mi? Evet
Önbelleğe alma gerekli mi? Hayır
Microsoft.ML'ye ek olarak gerekli NuGet Hiçbiri
ONNX'e aktarılabilir Evet

Puanlama İşlevi

Doğrusal lojistik regresyon, doğrusal modelin bir çeşididir. {\mathbb R}^n$ içindeki $\textbf{x} \özellik vektörlerini $\hat{y}\left( \textbf{x} \right) = \textbf{w}^T \textbf{x} + b = \sum_{j=1}^n w_j x_j + b$ aracılığıyla skaler olarak eşler, burada $x_j$ $j$-th özelliğinin değeridir, $\textbf{w}$ öğesinin $j$-th öğesi $j$-th özelliğinin katsayısıdır, ve $b$ öğrenilebilir bir sapmadır. İlgili doğru etiket alma olasılığı $\frac{1}{1 + e^{\hat{y}\left( \textbf{x} \right)}}$ şeklindedir.

Eğitim Algoritması Ayrıntıları

Uygulanan iyileştirme tekniği sınırlı bellek Broyden-Fletcher-Goldfarb-Shanno yöntemini (L-BFGS) temel alır. L-BFGS, Hessian matrisinin pahalı hesaplama maliyetini yaklaşık değerle değiştiren ancak yine de tam Hess matrisinin hesaplandığı Newton yöntemi gibi hızlı bir yakınsama oranına sahip olan bir quasi-Newton yöntemidir. L-BFGS tahmini, bir sonraki adım yönünü hesaplamak için yalnızca sınırlı sayıda geçmiş durumu kullandığından, özellikle yüksek boyutlu özellik vektörü ile ilgili sorunlar için uygundur. Geçmiş durumların sayısı kullanıcı tarafından belirtilen bir parametredir ve daha büyük bir sayı kullanmak Hessian matrisine daha iyi bir tahmine yol açabilir, ancak adım başına daha yüksek bir hesaplama maliyetine yol açabilir.

Normalleştirme, verileri desteklemek için bilgi sağlayan ve modelin büyüklüğünü genellikle bazı norm işlevleriyle ölçülen cezaya dönüştürerek fazla uygunluğu önleyen kısıtlamalar getirerek kötü görünen bir sorunu daha çekici hale getirebilen bir yöntemdir. Bu, sapma-varyans dengelenmesinde en uygun karmaşıklığı seçerek öğrenilen modelin genelleştirilmesini iyileştirebilir. Normalleştirme, hipotez hatasına katsayı değerleriyle ilişkili cezayı ekleyerek çalışır. Aşırı katsayı değerlerine sahip doğru bir model daha fazla cezaya neden olur, ancak daha muhafazakar değerlere sahip daha az doğru bir model daha az cezaya neden olur.

Bu öğrenci esnek net düzenlileştirmeyi destekler: L1 normunun (LASSO) doğrusal bir bileşimi, $|| \textbf{w} ||_1$ ve L2-norm (sırt), $|| \textbf{w} ||_2^2$ normalleştirme. L1-norm ve L2-norm düzenlileştirmelerinin farklı etkileri ve belirli açılardan tamamlayıcı kullanımları vardır. L1-norm kullanılması eğitilen $\textbf{w}$ değerinin sparsity değerini artırabilir. Yüksek boyutlu verilerle çalışırken, ilgisiz özelliklerin küçük ağırlıklarını 0'a küçültür ve bu nedenle tahmin yaparken bu kötü özelliklere kaynak harcanmayacaktır. L1 normlu düzenlileştirme kullanılırsa, eğitim algoritması OWL-QN'dir. L2 normlu düzenlileştirme seyrek olmayan veriler için tercih edilir ve büyük ağırlıkların varlığını büyük ölçüde cezalandırır.

Agresif bir normalleştirme (L1-norm veya L2-norm normalleştirme terimlerine büyük katsayılar atamak), önemli değişkenleri modelin dışında tutarak tahmine dayalı kapasiteye zarar verebilir. Bu nedenle lojistik regresyon uygulanırken doğru normalleştirme katsayılarının seçilmesi önemlidir.

Kullanım örneklerinin bağlantıları için Ayrıca Bkz. bölümüne bakın.

Alanlar

Name Description
FeatureColumn

Eğitmenin beklediği özellik sütunu.

(Devralındığı yer: TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

Eğitmenin beklediği etiket sütunu. etiketin eğitim için kullanılmadığını gösteren olabilir null.

(Devralındığı yer: TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

Eğitmenin beklediği ağırlık sütunu. olabilir null, bu da ağırlığın eğitim için kullanılmadığını gösterir.

(Devralındığı yer: TrainerEstimatorBase<TTransformer,TModel>)

Özellikler

Name Description
Info

IEstimator<TTransformer> L-BFGS yöntemiyle eğitilen doğrusal lojistik regresyon modelini kullanarak hedefi tahmin etme.

(Devralındığı yer: LbfgsTrainerBase<TOptions,TTransformer,TModel>)

Yöntemler

Name Description
Fit(IDataView, LinearModelParameters)

Önceden eğitilmiş modelParameters bir kullanarak bir LbfgsLogisticRegressionBinaryTrainer öğesinin eğitimine devam eder ve döndürürBinaryPredictionTransformer<TModel>.

Fit(IDataView)

Bir eğitip döndürür ITransformer.

(Devralındığı yer: TrainerEstimatorBase<TTransformer,TModel>)
GetOutputSchema(SchemaShape)

IEstimator<TTransformer> L-BFGS yöntemiyle eğitilen doğrusal lojistik regresyon modelini kullanarak hedefi tahmin etme.

(Devralındığı yer: TrainerEstimatorBase<TTransformer,TModel>)

Uzantı Metotları

Name Description
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

Tahmin zincirine bir 'önbelleğe alma denetim noktası' ekler. Bu, aşağı akış tahmincilerinin önbelleğe alınmış verilere karşı eğitilmesini sağlar. Birden fazla veri alan eğitmenler geçişten önce bir önbelleğe alma kontrol noktasının olması yararlıdır.

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

Tahmin aracı verildiğinde, bir temsilci çağrıldıktan sonra Fit(IDataView) çağıracak bir sarmalama nesnesi döndürün. Tahmin aracının neyin uygun olduğu hakkında bilgi döndürmesi genellikle önemlidir. Bu nedenle Fit(IDataView) yöntem yalnızca genel ITransformerbir nesne yerine özel olarak yazılan bir nesne döndürür. Bununla birlikte, aynı zamanda, IEstimator<TTransformer> genellikle birçok nesne içeren işlem hatları halinde oluşturulur, bu nedenle transformatörü almak istediğimiz tahmin aracının EstimatorChain<TLastTransformer> bu zincirde bir yere gömüldüğü bir tahmin zinciri oluşturmamız gerekebilir. Bu senaryo için, bu yöntem aracılığıyla uygun çağrıldıktan sonra çağrılacak bir temsilci ekleyebiliriz.

Şunlara uygulanır

Ayrıca bkz.