using System; using System.Collections.Generic; using System.Text; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Microsoft.ML.SearchSpace; using Microsoft.ML; namespace Microsoft.ML.AutoML.CodeGen { internal static class SweepableEstimatorFactory { public static LightGbmBinary CreateLightGbmBinary(LgbmOption defaultOption, SearchSpace<LgbmOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<LgbmOption>(defaultOption); } return new LightGbmBinary(defaultOption, searchSpace); } public static LightGbmMulti CreateLightGbmMulti(LgbmOption defaultOption, SearchSpace<LgbmOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<LgbmOption>(defaultOption); } return new LightGbmMulti(defaultOption, searchSpace); } public static LightGbmRegression CreateLightGbmRegression(LgbmOption defaultOption, SearchSpace<LgbmOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<LgbmOption>(defaultOption); } return new LightGbmRegression(defaultOption, searchSpace); } public static FastForestBinary CreateFastForestBinary(FastForestOption defaultOption, SearchSpace<FastForestOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<FastForestOption>(defaultOption); } return new FastForestBinary(defaultOption, searchSpace); } public static FastForestOva CreateFastForestOva(FastForestOption defaultOption, SearchSpace<FastForestOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<FastForestOption>(defaultOption); } return new FastForestOva(defaultOption, searchSpace); } public static FastForestRegression CreateFastForestRegression(FastForestOption defaultOption, SearchSpace<FastForestOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<FastForestOption>(defaultOption); } return new FastForestRegression(defaultOption, searchSpace); } public static FastTreeBinary CreateFastTreeBinary(FastTreeOption defaultOption, SearchSpace<FastTreeOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<FastTreeOption>(defaultOption); } return new FastTreeBinary(defaultOption, searchSpace); } public static FastTreeOva CreateFastTreeOva(FastTreeOption defaultOption, SearchSpace<FastTreeOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<FastTreeOption>(defaultOption); } return new FastTreeOva(defaultOption, searchSpace); } public static FastTreeRegression CreateFastTreeRegression(FastTreeOption defaultOption, SearchSpace<FastTreeOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<FastTreeOption>(defaultOption); } return new FastTreeRegression(defaultOption, searchSpace); } public static FastTreeTweedieRegression CreateFastTreeTweedieRegression(FastTreeOption defaultOption, SearchSpace<FastTreeOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<FastTreeOption>(defaultOption); } return new FastTreeTweedieRegression(defaultOption, searchSpace); } public static LbfgsLogisticRegressionBinary CreateLbfgsLogisticRegressionBinary(LbfgsOption defaultOption, SearchSpace<LbfgsOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<LbfgsOption>(defaultOption); } return new LbfgsLogisticRegressionBinary(defaultOption, searchSpace); } public static LbfgsLogisticRegressionOva CreateLbfgsLogisticRegressionOva(LbfgsOption defaultOption, SearchSpace<LbfgsOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<LbfgsOption>(defaultOption); } return new LbfgsLogisticRegressionOva(defaultOption, searchSpace); } public static LbfgsMaximumEntropyMulti CreateLbfgsMaximumEntropyMulti(LbfgsOption defaultOption, SearchSpace<LbfgsOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<LbfgsOption>(defaultOption); } return new LbfgsMaximumEntropyMulti(defaultOption, searchSpace); } public static LbfgsPoissonRegressionRegression CreateLbfgsPoissonRegressionRegression(LbfgsOption defaultOption, SearchSpace<LbfgsOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<LbfgsOption>(defaultOption); } return new LbfgsPoissonRegressionRegression(defaultOption, searchSpace); } public static SdcaLogisticRegressionBinary CreateSdcaLogisticRegressionBinary(SdcaOption defaultOption, SearchSpace<SdcaOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<SdcaOption>(defaultOption); } return new SdcaLogisticRegressionBinary(defaultOption, searchSpace); } public static SdcaLogisticRegressionOva CreateSdcaLogisticRegressionOva(SdcaOption defaultOption, SearchSpace<SdcaOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<SdcaOption>(defaultOption); } return new SdcaLogisticRegressionOva(defaultOption, searchSpace); } public static SdcaMaximumEntropyMulti CreateSdcaMaximumEntropyMulti(SdcaOption defaultOption, SearchSpace<SdcaOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<SdcaOption>(defaultOption); } return new SdcaMaximumEntropyMulti(defaultOption, searchSpace); } public static SdcaRegression CreateSdcaRegression(SdcaOption defaultOption, SearchSpace<SdcaOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<SdcaOption>(defaultOption); } return new SdcaRegression(defaultOption, searchSpace); } public static MatrixFactorization CreateMatrixFactorization(MatrixFactorizationOption defaultOption, SearchSpace<MatrixFactorizationOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<MatrixFactorizationOption>(defaultOption); } return new MatrixFactorization(defaultOption, searchSpace); } public static ImageClassificationMulti CreateImageClassificationMulti(ImageClassificationOption defaultOption, SearchSpace<ImageClassificationOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<ImageClassificationOption>(defaultOption); } return new ImageClassificationMulti(defaultOption, searchSpace); } public static TextClassificationMulti CreateTextClassificationMulti(TextClassificationOption defaultOption, SearchSpace<TextClassificationOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<TextClassificationOption>(defaultOption); } return new TextClassificationMulti(defaultOption, searchSpace); } public static SentenceSimilarityRegression CreateSentenceSimilarityRegression(SentenceSimilarityOption defaultOption, SearchSpace<SentenceSimilarityOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<SentenceSimilarityOption>(defaultOption); } return new SentenceSimilarityRegression(defaultOption, searchSpace); } public static ObjectDetectionMulti CreateObjectDetectionMulti(ObjectDetectionOption defaultOption, SearchSpace<ObjectDetectionOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<ObjectDetectionOption>(defaultOption); } return new ObjectDetectionMulti(defaultOption, searchSpace); } public static QuestionAnsweringMulti CreateQuestionAnsweringMulti(QuestionAnsweringOption defaultOption, SearchSpace<QuestionAnsweringOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<QuestionAnsweringOption>(defaultOption); } return new QuestionAnsweringMulti(defaultOption, searchSpace); } public static NamedEntityRecognitionMulti CreateNamedEntityRecognitionMulti(NamedEntityRecognitionOption defaultOption, SearchSpace<NamedEntityRecognitionOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<NamedEntityRecognitionOption>(defaultOption); } return new NamedEntityRecognitionMulti(defaultOption, searchSpace); } public static ForecastBySsa CreateForecastBySsa(SsaOption defaultOption, SearchSpace<SsaOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<SsaOption>(defaultOption); } return new ForecastBySsa(defaultOption, searchSpace); } public static Concatenate CreateConcatenate(ConcatOption defaultOption, SearchSpace<ConcatOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<ConcatOption>(defaultOption); } return new Concatenate(defaultOption, searchSpace); } public static Naive CreateNaive(NaiveOption defaultOption, SearchSpace<NaiveOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<NaiveOption>(defaultOption); } return new Naive(defaultOption, searchSpace); } public static OneHotEncoding CreateOneHotEncoding(OneHotOption defaultOption, SearchSpace<OneHotOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<OneHotOption>(defaultOption); } return new OneHotEncoding(defaultOption, searchSpace); } public static OneHotHashEncoding CreateOneHotHashEncoding(OneHotOption defaultOption, SearchSpace<OneHotOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<OneHotOption>(defaultOption); } return new OneHotHashEncoding(defaultOption, searchSpace); } public static LoadRawImageBytes CreateLoadRawImageBytes(LoadImageOption defaultOption, SearchSpace<LoadImageOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<LoadImageOption>(defaultOption); } return new LoadRawImageBytes(defaultOption, searchSpace); } public static MapKeyToValue CreateMapKeyToValue(MapKeyToValueOption defaultOption, SearchSpace<MapKeyToValueOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<MapKeyToValueOption>(defaultOption); } return new MapKeyToValue(defaultOption, searchSpace); } public static ReplaceMissingValues CreateReplaceMissingValues(ReplaceMissingValueOption defaultOption, SearchSpace<ReplaceMissingValueOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<ReplaceMissingValueOption>(defaultOption); } return new ReplaceMissingValues(defaultOption, searchSpace); } public static NormalizeMinMax CreateNormalizeMinMax(NormalizeMinMaxOption defaultOption, SearchSpace<NormalizeMinMaxOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<NormalizeMinMaxOption>(defaultOption); } return new NormalizeMinMax(defaultOption, searchSpace); } public static FeaturizeText CreateFeaturizeText(FeaturizeTextOption defaultOption, SearchSpace<FeaturizeTextOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<FeaturizeTextOption>(defaultOption); } return new FeaturizeText(defaultOption, searchSpace); } public static NormalizeText CreateNormalizeText(NormalizeTextOption defaultOption, SearchSpace<NormalizeTextOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<NormalizeTextOption>(defaultOption); } return new NormalizeText(defaultOption, searchSpace); } public static ConvertType CreateConvertType(ConvertTypeOption defaultOption, SearchSpace<ConvertTypeOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<ConvertTypeOption>(defaultOption); } return new ConvertType(defaultOption, searchSpace); } public static MapValueToKey CreateMapValueToKey(MapValueToKeyOption defaultOption, SearchSpace<MapValueToKeyOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<MapValueToKeyOption>(defaultOption); } return new MapValueToKey(defaultOption, searchSpace); } public static ApplyOnnxModel CreateApplyOnnxModel(ApplyOnnxModelOption defaultOption, SearchSpace<ApplyOnnxModelOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<ApplyOnnxModelOption>(defaultOption); } return new ApplyOnnxModel(defaultOption, searchSpace); } public static ResizeImages CreateResizeImages(ResizeImageOption defaultOption, SearchSpace<ResizeImageOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<ResizeImageOption>(defaultOption); } return new ResizeImages(defaultOption, searchSpace); } public static ExtractPixels CreateExtractPixels(ExtractPixelsOption defaultOption, SearchSpace<ExtractPixelsOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<ExtractPixelsOption>(defaultOption); } return new ExtractPixels(defaultOption, searchSpace); } public static LoadImages CreateLoadImages(LoadImageOption defaultOption, SearchSpace<LoadImageOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<LoadImageOption>(defaultOption); } return new LoadImages(defaultOption, searchSpace); } public static DnnFeaturizerImage CreateDnnFeaturizerImage(DnnFeaturizerImageOption defaultOption, SearchSpace<DnnFeaturizerImageOption> searchSpace = null) { if(searchSpace == null){ searchSpace = new SearchSpace<DnnFeaturizerImageOption>(defaultOption); } return new DnnFeaturizerImage(defaultOption, searchSpace); } } }