示例#1
0
 /// <summary>
 /// Initializes a new instance of <see cref="MultiClassNaiveBayesTrainer"/>
 /// </summary>
 /// <param name="env">The environment to use.</param>
 /// <param name="labelColumn">The name of the label column.</param>
 /// <param name="featureColumn">The name of the feature column.</param>
 public MultiClassNaiveBayesTrainer(IHostEnvironment env, string featureColumn, string labelColumn)
     : base(Contracts.CheckRef(env, nameof(env)).Register(LoadName), TrainerUtils.MakeR4VecFeature(featureColumn),
            TrainerUtils.MakeU4ScalarColumn(labelColumn))
 {
     Host.CheckNonEmpty(featureColumn, nameof(featureColumn));
     Host.CheckNonEmpty(labelColumn, nameof(labelColumn));
 }
 /// <summary>
 /// Initializes a new instance of <see cref="NaiveBayesMulticlassTrainer"/>
 /// </summary>
 /// <param name="env">The environment to use.</param>
 /// <param name="labelColumn">The name of the label column.</param>
 /// <param name="featureColumn">The name of the feature column.</param>
 internal NaiveBayesMulticlassTrainer(IHostEnvironment env,
                                      string labelColumn   = DefaultColumnNames.Label,
                                      string featureColumn = DefaultColumnNames.Features)
     : base(Contracts.CheckRef(env, nameof(env)).Register(LoadName), TrainerUtils.MakeR4VecFeature(featureColumn),
            TrainerUtils.MakeU4ScalarColumn(labelColumn))
 {
     Host.CheckNonEmpty(featureColumn, nameof(featureColumn));
     Host.CheckNonEmpty(labelColumn, nameof(labelColumn));
 }
示例#3
0
        internal SdcaMultiClassTrainer(IHostEnvironment env, Options options,
                                       string featureColumn, string labelColumn, string weightColumn = null)
            : base(env, options, TrainerUtils.MakeU4ScalarColumn(labelColumn), TrainerUtils.MakeR4ScalarWeightColumn(weightColumn))
        {
            Host.CheckValue(labelColumn, nameof(labelColumn));
            Host.CheckValue(featureColumn, nameof(featureColumn));

            _loss = options.LossFunction.CreateComponent(env);
            Loss  = _loss;
        }
示例#4
0
 /// <summary>
 /// Initializes a new instance of <see cref="SdcaMultiClassTrainer"/>
 /// </summary>
 /// <param name="env">The environment to use.</param>
 /// <param name="labelColumn">The label, or dependent variable.</param>
 /// <param name="featureColumn">The features, or independent variables.</param>
 /// <param name="weights">The optional example weights.</param>
 /// <param name="loss">The custom loss.</param>
 /// <param name="l2Const">The L2 regularization hyperparameter.</param>
 /// <param name="l1Threshold">The L1 regularization hyperparameter. Higher values will tend to lead to more sparse model.</param>
 /// <param name="maxIterations">The maximum number of passes to perform over the data.</param>
 internal SdcaMultiClassTrainer(IHostEnvironment env,
                                string labelColumn   = DefaultColumnNames.Label,
                                string featureColumn = DefaultColumnNames.Features,
                                string weights       = null,
                                ISupportSdcaClassificationLoss loss = null,
                                float?l2Const     = null,
                                float?l1Threshold = null,
                                int?maxIterations = null)
     : base(env, featureColumn, TrainerUtils.MakeU4ScalarColumn(labelColumn), TrainerUtils.MakeR4ScalarWeightColumn(weights),
            l2Const, l1Threshold, maxIterations)
 {
     Host.CheckNonEmpty(featureColumn, nameof(featureColumn));
     Host.CheckNonEmpty(labelColumn, nameof(labelColumn));
     _loss = loss ?? SdcaTrainerOptions.LossFunction.CreateComponent(env);
     Loss  = _loss;
 }
示例#5
0
        /// <summary>
        /// Initializes a new instance of <see cref="MulticlassLogisticRegression"/>
        /// </summary>
        /// <param name="env">The environment to use.</param>
        /// <param name="labelColumn">The name of the label column.</param>
        /// <param name="featureColumn">The name of the feature column.</param>
        /// <param name="weights">The name for the example weight column.</param>
        /// <param name="enforceNoNegativity">Enforce non-negative weights.</param>
        /// <param name="l1Weight">Weight of L1 regularizer term.</param>
        /// <param name="l2Weight">Weight of L2 regularizer term.</param>
        /// <param name="memorySize">Memory size for <see cref="LogisticRegression"/>. Low=faster, less accurate.</param>
        /// <param name="optimizationTolerance">Threshold for optimizer convergence.</param>
        internal MulticlassLogisticRegression(IHostEnvironment env,
                                              string labelColumn          = DefaultColumnNames.Label,
                                              string featureColumn        = DefaultColumnNames.Features,
                                              string weights              = null,
                                              float l1Weight              = Options.Defaults.L1Weight,
                                              float l2Weight              = Options.Defaults.L2Weight,
                                              float optimizationTolerance = Options.Defaults.OptTol,
                                              int memorySize              = Options.Defaults.MemorySize,
                                              bool enforceNoNegativity    = Options.Defaults.EnforceNonNegativity)
            : base(env, featureColumn, TrainerUtils.MakeU4ScalarColumn(labelColumn), weights, l1Weight, l2Weight, optimizationTolerance, memorySize, enforceNoNegativity)
        {
            Host.CheckNonEmpty(featureColumn, nameof(featureColumn));
            Host.CheckNonEmpty(labelColumn, nameof(labelColumn));

            ShowTrainingStats = Args.ShowTrainingStats;
        }
 /// <summary>
 /// Initializes a new instance of <see cref="SdcaMultiClassTrainer"/>
 /// </summary>
 /// <param name="env">The environment to use.</param>
 /// <param name="featureColumn">The features, or independent variables.</param>
 /// <param name="labelColumn">The label, or dependent variable.</param>
 /// <param name="loss">The custom loss.</param>
 /// <param name="weightColumn">The optional example weights.</param>
 /// <param name="l2Const">The L2 regularization hyperparameter.</param>
 /// <param name="l1Threshold">The L1 regularization hyperparameter. Higher values will tend to lead to more sparse model.</param>
 /// <param name="maxIterations">The maximum number of passes to perform over the data.</param>
 /// <param name="advancedSettings">A delegate to set more settings.
 /// The settings here will override the ones provided in the direct method signature,
 /// if both are present and have different values.
 /// The columns names, however need to be provided directly, not through the <paramref name="advancedSettings"/>.</param>
 public SdcaMultiClassTrainer(IHostEnvironment env,
                              string featureColumn,
                              string labelColumn,
                              string weightColumn = null,
                              ISupportSdcaClassificationLoss loss = null,
                              float?l2Const     = null,
                              float?l1Threshold = null,
                              int?maxIterations = null,
                              Action <Arguments> advancedSettings = null)
     : base(env, featureColumn, TrainerUtils.MakeU4ScalarColumn(labelColumn), TrainerUtils.MakeR4ScalarWeightColumn(weightColumn), advancedSettings,
            l2Const, l1Threshold, maxIterations)
 {
     Host.CheckNonEmpty(featureColumn, nameof(featureColumn));
     Host.CheckNonEmpty(labelColumn, nameof(labelColumn));
     _loss = loss ?? Args.LossFunction.CreateComponent(env);
     Loss  = _loss;
 }
 /// <summary>
 /// Initializes a new instance of <see cref="MultiClassNaiveBayesTrainer"/>
 /// </summary>
 internal MultiClassNaiveBayesTrainer(IHostEnvironment env, Arguments args)
     : base(Contracts.CheckRef(env, nameof(env)).Register(LoadName), TrainerUtils.MakeR4VecFeature(args.FeatureColumn),
            TrainerUtils.MakeU4ScalarColumn(args.LabelColumn))
 {
     Host.CheckValue(args, nameof(args));
 }
 /// <summary>
 /// Initializes a new instance of <see cref="NaiveBayesMulticlassTrainer"/>
 /// </summary>
 internal NaiveBayesMulticlassTrainer(IHostEnvironment env, Options options)
     : base(Contracts.CheckRef(env, nameof(env)).Register(LoadName), TrainerUtils.MakeR4VecFeature(options.FeatureColumnName),
            TrainerUtils.MakeU4ScalarColumn(options.LabelColumnName))
 {
     Host.CheckValue(options, nameof(options));
 }
示例#9
0
 /// <summary>
 /// Initializes a new instance of <see cref="MulticlassLogisticRegression"/>
 /// </summary>
 internal MulticlassLogisticRegression(IHostEnvironment env, Options options)
     : base(env, options, TrainerUtils.MakeU4ScalarColumn(options.LabelColumn))
 {
     ShowTrainingStats = Args.ShowTrainingStats;
 }
 /// <summary>
 /// Initializes a new instance of <see cref="LogisticRegressionMulticlassClassificationTrainer"/>
 /// </summary>
 internal LogisticRegressionMulticlassClassificationTrainer(IHostEnvironment env, Options options)
     : base(env, options, TrainerUtils.MakeU4ScalarColumn(options.LabelColumnName))
 {
     ShowTrainingStats = LbfgsTrainerOptions.ShowTrainingStatistics;
 }