Aracılığıyla paylaş


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ş etiketi sütun verileri olmalıdır Boolean. Giriş özellikleri sütun verileri bilinen boyutlu bir vektör Singleolmalıdır.

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

Çıkış Sütunu Adı Sütun Türü Description
Score Single Model tarafından hesaplanan ilişkisiz puan.
PredictedLabel Boolean Puanın işaretine göre tahmin edilen etiket. Negatif puan ile false , pozitif puan ise ile trueeşler.
Probability Single Etiket olarak true değerinin puanını ayarlayarak 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? Yes
Önbelleğe alma gerekli mi? No
Microsoft.ML ek olarak gerekli NuGet Hiçbiri
ONNX'e aktarılabilir Yes

Puanlama İşlevi

Doğrusal lojistik regresyon, doğrusal modelin bir çeşididir. {\mathbb R}^n$ içindeki $\textbf{x} \in özellik vektörlerini $\hat{y}\left( \textbf{x} \right) = \textbf{w}^T \textbf{x} + b = \sum_{j=1}^n w_j x_j + b$, burada $x_j$ $j$-th özelliğin değeridir; $\textbf{w}$ öğesinin $j$-th öğesi $j$-th özelliğinin katsayısıdır, ve $b$ öğrenilebilir bir önyargıdır. İlgili gerçek 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 Hessian matrisinin hesaplandığı Newton yöntemi gibi hızlı bir yakınsama oranına sahip olan bir quasi-Newton yöntemidir. L-BFGS yaklaşık olarak bir sonraki adım yönünü hesaplamak için yalnızca sınırlı miktarda geçmiş durum 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 yaklaşık değere 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 genellikle bazı norm işlevleriyle ölçülen modelin büyüklüğünü 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 dengesinde en uygun karmaşıklığı seçerek öğrenilen modelin genelleştirilmesini geliştirebilir. Düzenlileştirme, katsayı değerleriyle ilişkili cezayı hipotez hatasına ekleyerek çalışır. Aşırı katsayı değerlerine sahip doğru bir model daha fazla cezalı hale getirilir, 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ştirmeleri. L1-norm ve L2-norm düzenlileştirmelerinin farklı etkileri ve belirli açılardan tamamlayıcı olan 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 tahminler yaparken bu kötü özelliklere kaynak harcanmayacaktır. L1-norm düzenlileştirmesi kullanılıyorsa, 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 cezalendirir.

Agresif bir düzenlileştirme (yani L1 norm veya L2 normlu 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

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

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

Fit(IDataView)

Bir ITransformereğiter ve döndürür.

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

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

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ı

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

Tahmin aracı zincirine bir 'önbelleğe alma denetim noktası' ekler. Bu, aşağı akış tahmincilerinin önbelleğe alınan verilere karşı eğitilmesini sağlar. Birden çok veri geçişi alan eğitmenlerden önce bir önbelleğe alma denetim noktası olması yararlıdır.

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

Tahmin aracı verildiğinde, çağrıldıktan sonra Fit(IDataView) temsilci ç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 nesneye sahip 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ülü olduğu bir tahmin aracı zinciri oluşturmamız gerekebilir. Bu senaryo için, bu yöntem aracılığıyla sığdır çağrıldıktan sonra çağrılacak bir temsilci ekleyebiliriz.

Şunlara uygulanır

Ayrıca bkz.