Skip to content

Commit

Permalink
API folder changes (dotnet#6)
Browse files Browse the repository at this point in the history
  • Loading branch information
vinodshanbhag authored and Dmitry-A committed Aug 22, 2019
1 parent 5e95fd9 commit 79314bf
Show file tree
Hide file tree
Showing 6 changed files with 250 additions and 248 deletions.
71 changes: 71 additions & 0 deletions src/AutoML/API/AutoFitSettings.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
using System.Collections.Generic;
using System.Diagnostics;

namespace Microsoft.ML.Auto
{
public class AutoFitSettings
{
public ExperimentStoppingCriteria StoppingCriteria = new ExperimentStoppingCriteria();
internal IterationStoppingCriteria IterationStoppingCriteria;
internal Concurrency Concurrency;
internal Filters Filters;
internal CrossValidationSettings CrossValidationSettings;
internal OptimizingMetric OptimizingMetric;
internal bool EnableEnsembling;
internal bool EnableModelExplainability;
internal bool EnableAutoTransformation;

// spec question: Are following automatic or a user setting?
internal bool EnableSubSampling;
internal bool EnableCaching;
internal bool ExternalizeTraining;
internal TraceLevel TraceLevel; // Should this be controlled through code or appconfig?
}

public class ExperimentStoppingCriteria
{
public int MaxIterations = 100;
public int TimeOutInMinutes = 300;
internal bool StopAfterConverging;
internal double ExperimentExitScore;
}

internal class Filters
{
internal IEnumerable<Trainers> WhitelistTrainers;
internal IEnumerable<Trainers> BlackListTrainers;
internal IEnumerable<Transformers> WhitelistTransformers;
internal IEnumerable<Transformers> BlacklistTransformers;
internal bool PreferExplainability;
internal bool PreferInferenceSpeed;
internal bool PreferSmallDeploymentSize;
internal bool PreferSmallMemoryFootprint;
}

public class IterationStoppingCriteria
{
internal int TimeOutInSeconds;
internal bool TerminateOnLowAccuracy;
}

public class Concurrency
{
internal int MaxConcurrentIterations;
internal int MaxCoresPerIteration;
}

internal enum Trainers
{
}

internal enum Transformers
{
}

internal class CrossValidationSettings
{
internal int NumberOfFolds;
internal int ValidationSizePercentage;
internal IEnumerable<string> StratificationColumnNames;
}
}
34 changes: 34 additions & 0 deletions src/AutoML/API/InferenceException.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
using System;

namespace Microsoft.ML.Auto
{
public enum InferenceType
{
Seperator,
Header,
Label,
Task,
ColumnDataKind,
ColumnPurpose,
Tranform,
Trainer,
Hyperparams,
ColumnSplit
}

public class InferenceException : Exception
{
public InferenceType InferenceType;

public InferenceException(InferenceType inferenceType, string message)
: base(message)
{
}

public InferenceException(InferenceType inferenceType, string message, Exception inner)
: base(message, inner)
{
}
}

}
Loading

0 comments on commit 79314bf

Please sign in to comment.