LbfgsLogisticRegressionBinaryTrainer Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Předpověď IEstimator<TTransformer> cíle pomocí lineárního logistického regresního modelu natrénovaného metodou 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))
- Dědičnost
Poznámky
K vytvoření tohoto trenéra použijte LbfgsLogisticRegression nebo LbfgsLogisticRegression(Options).
Vstupní a výstupní sloupce
Vstupní data sloupce popisku musí být Boolean. Vstupní funkce sloupcová data musí být vektorem známé velikosti Single.
Tento trenér vypíše následující sloupce:
Název výstupního sloupce | Typ sloupce | Description | |
---|---|---|---|
Score |
Single | Nevázané skóre, které model vypočítal. | |
PredictedLabel |
Boolean | Predikovaný popisek na základě znaménka skóre. Záporná skóre mapuje na false a kladná skóre se mapuje na true . |
|
Probability |
Single | Pravděpodobnost vypočítaná kalibrací skóre hodnoty true jako popisku. Hodnota pravděpodobnosti je v rozsahu [0, 1]. |
Charakteristiky trenéra
Úloha strojového učení | Binární klasifikace |
Vyžaduje se normalizace? | Yes |
Vyžaduje se ukládání do mezipaměti? | No |
Požadovaný NuGet kromě Microsoft.ML | Žádné |
Exportovatelné do ONNX | Yes |
Bodovací funkce
Lineární logistická regrese je variantou lineárního modelu. Mapuje vektor funkce $\textbf{x} \in {\mathbb R}^n$ na skalár prostřednictvím $\hat{y}\left( \textbf{x} \right) = \textbf{w}^T \textbf{x} + b = \sum_{j=1}^n w_j x_j + b$, kde $x_j$ je hodnota funkce $j$-th, $j$-th prvek $\textbf{w}$ je koeficient $j$-th, a $b$ je naučitelný předsudk. Odpovídající pravděpodobnost získání skutečného popisku je $\frac{1}{1 + e^{\hat{y}\left( \textbf{x} \right)}}$.
Podrobnosti trénovacího algoritmu
Implementovaná technika optimalizace je založená na omezené paměti Broyden-Fletcher-Goldfarb-Shanno metoda (L-BFGS). L-BFGS je quasi-Newtonská metoda , která nahrazuje nákladné výpočetní náklady hessovské matice aproximací, ale stále má rychlou konvergenční rychlost, jako je newtonská metoda , kde je vypočítán plný Hessian matice. Vzhledem k tomu, že l-BFGS aproximace používá pouze omezené množství historických stavů k výpočtu směru dalšího kroku, je zvláště vhodné pro problémy s vysoce dimenzionálním vektorem funkce. Počet historických stavů je parametr zadaný uživatelem, při použití většího čísla může dojít k lepší aproximaci matici Hessian, ale také vyšší výpočetní náklady na krok.
Regularizace je metoda, která může vykreslit problém, který je špatně vyvolaný tím, že uloží omezení, která poskytují informace k doplnění dat a které brání přeurčení tím, že velikost modelu obvykle měří některými normovými funkcemi. To může zlepšit generalizaci modelu získané výběrem optimální složitosti v kompromisu odchylky. Regularizace funguje přidáním pokuty, která je spojena s hodnotami koeficientu k chybě hypotézy. Přesný model s extrémními hodnotami koeficientu by byl penalizován více, ale méně přesný model s konzervativnějšími hodnotami by byl penalizován méně.
Tento learner podporuje elastické regularizace net: lineární kombinace L1-norm (LASSO), $|| \textbf{w} || _1$ a L2-norm (ridge), $|| \textbf{w} || _2^2$ – regularizace. Normalizace L1 norm a L2-norm mají různé účinky a použití, které se v určitých ohledech doplňují. Použití L1-norm může zvýšit sparsity trénovaného $\textbf{w}$. Při práci s vysoce dimenzionálními daty se zmenší malá váha nepodstatných funkcí na 0, a proto nebude žádný prostředek vynaložen na ty špatné funkce při vytváření předpovědí. Pokud se používá regularizace L1,trénovací algoritmus je OWL-QN. Regularizace L2-norm je vhodnější pro data, která nejsou řídká a do značné míry penalizuje existenci velkých hmotností.
Agresivní regularizace (tj. přiřazení velkých koeficientů k regulárním termínům L1 nebo L2-norm) může poškodit prediktivní kapacitu vyloučením důležitých proměnných z modelu. Proto je při použití logistické regrese důležité zvolit správné regulační koeficienty.
Odkazy na příklady použití najdete v části Viz také.
Pole
FeatureColumn |
Sloupec funkcí, který trenér očekává. (Zděděno od TrainerEstimatorBase<TTransformer,TModel>) |
LabelColumn |
Sloupec popisku, který trenér očekává. Může to být |
WeightColumn |
Sloupec hmotnosti, který trenér očekává. Může to být |
Vlastnosti
Info |
Předpověď IEstimator<TTransformer> cíle pomocí lineárního logistického regresního modelu natrénovaného metodou L-BFGS. (Zděděno od LbfgsTrainerBase<TOptions,TTransformer,TModel>) |
Metody
Fit(IDataView, LinearModelParameters) |
Pokračuje v trénování LbfgsLogisticRegressionBinaryTrainer pomocí již natrénovaného |
Fit(IDataView) |
Vlaky a vrací hodnotu ITransformer. (Zděděno od TrainerEstimatorBase<TTransformer,TModel>) |
GetOutputSchema(SchemaShape) |
Předpověď IEstimator<TTransformer> cíle pomocí lineárního logistického regresního modelu natrénovaného metodou L-BFGS. (Zděděno od TrainerEstimatorBase<TTransformer,TModel>) |
Metody rozšíření
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Připojte k řetězci estimátoru kontrolní bod ukládání do mezipaměti. Tím zajistíte, aby podřízené estimátory byly vytrénovány proti datům uloženým v mezipaměti. Před průchodem více dat je užitečné mít kontrolní bod ukládání do mezipaměti. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Vzhledem k estimátoru vraťte zalamovací objekt, který zavolá delegáta jednou Fit(IDataView) . Často je důležité, aby odhadovač vrátil informace o tom, co bylo vhodné, což je důvod, proč Fit(IDataView) metoda vrací konkrétně typ objekt, nikoli jen obecné ITransformer. Ve stejnou dobu se však často vytvářejí do kanálů s mnoha objekty, takže možná budeme muset vytvořit řetězec estimátorů, kde EstimatorChain<TLastTransformer> je odhadovač, IEstimator<TTransformer> pro který chceme získat transformátor, zakopán někde v tomto řetězci. Pro tento scénář můžeme prostřednictvím této metody připojit delegáta, který bude volána po zavolání fit. |
Platí pro
Viz také
- LbfgsLogisticRegression(BinaryClassificationCatalog+BinaryClassificationTrainers, String, String, String, Single, Single, Single, Int32, Boolean)
- LbfgsLogisticRegression(BinaryClassificationCatalog+BinaryClassificationTrainers, LbfgsLogisticRegressionBinaryTrainer+Options)
- LbfgsLogisticRegressionBinaryTrainer.Options