// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.azure.resourcemanager.machinelearning.generated;

import com.azure.core.util.BinaryData;
import com.azure.resourcemanager.machinelearning.models.EarlyTerminationPolicy;
import com.azure.resourcemanager.machinelearning.models.ImageClassificationBase;
import com.azure.resourcemanager.machinelearning.models.ImageLimitSettings;
import com.azure.resourcemanager.machinelearning.models.ImageModelDistributionSettingsClassification;
import com.azure.resourcemanager.machinelearning.models.ImageModelSettingsClassification;
import com.azure.resourcemanager.machinelearning.models.ImageSweepSettings;
import com.azure.resourcemanager.machinelearning.models.InputDeliveryMode;
import com.azure.resourcemanager.machinelearning.models.LearningRateScheduler;
import com.azure.resourcemanager.machinelearning.models.MLFlowModelJobInput;
import com.azure.resourcemanager.machinelearning.models.MLTableJobInput;
import com.azure.resourcemanager.machinelearning.models.SamplingAlgorithmType;
import com.azure.resourcemanager.machinelearning.models.StochasticOptimizer;
import java.time.Duration;
import java.util.Arrays;
import org.junit.jupiter.api.Assertions;

public final class ImageClassificationBaseTests {
    @org.junit.jupiter.api.Test
    public void testDeserialize() throws Exception {
        ImageClassificationBase model =
            BinaryData
                .fromString(
                    "{\"modelSettings\":{\"trainingCropSize\":632161025,\"validationCropSize\":1319895932,\"validationResizeSize\":1773341425,\"weightedLoss\":2065297037,\"advancedSettings\":\"a\",\"amsGradient\":true,\"augmentations\":\"nhsenwphpzfng\",\"beta1\":24.413616,\"beta2\":87.05071,\"checkpointFrequency\":304312927,\"checkpointModel\":{\"jobInputType\":\"mlflow_model\",\"mode\":\"Download\",\"uri\":\"wjjufwbe\",\"description\":\"k\"},\"checkpointRunId\":\"rhtssr\",\"distributed\":false,\"earlyStopping\":true,\"earlyStoppingDelay\":1979060010,\"earlyStoppingPatience\":1774020224,\"enableOnnxNormalization\":true,\"evaluationFrequency\":853491099,\"gradientAccumulationStep\":1971606507,\"layersToFreeze\":323558985,\"learningRate\":42.430317,\"learningRateScheduler\":\"Step\",\"modelName\":\"zwxiytx\",\"momentum\":51.025497,\"nesterov\":true,\"numberOfEpochs\":1378257495,\"numberOfWorkers\":1753150962,\"optimizer\":\"Adam\",\"randomSeed\":1914645473,\"stepLRGamma\":97.39071,\"stepLRStepSize\":218117716,\"trainingBatchSize\":1079594168,\"validationBatchSize\":2132424945,\"warmupCosineLRCycles\":66.13355,\"warmupCosineLRWarmupEpochs\":568274703,\"weightDecay\":67.716774},\"searchSpace\":[{\"trainingCropSize\":\"egmmuteyxe\",\"validationCropSize\":\"uqi\",\"validationResizeSize\":\"jiitnspxlzdesygr\",\"weightedLoss\":\"waiufanra\",\"amsGradient\":\"fueqfrojs\",\"augmentations\":\"grhydk\",\"beta1\":\"ywezskiecafyg\",\"beta2\":\"xieqv\",\"distributed\":\"makli\",\"earlyStopping\":\"cahyhx\",\"earlyStoppingDelay\":\"ybxawoijpodtblx\",\"earlyStoppingPatience\":\"kwjdjodqhy\",\"enableOnnxNormalization\":\"ncn\",\"evaluationFrequency\":\"mehllizhceu\",\"gradientAccumulationStep\":\"qodkadppyibngql\",\"layersToFreeze\":\"ywrxw\",\"learningRate\":\"dtluvvadswzsn\",\"learningRateScheduler\":\"emlowuowhl\",\"modelName\":\"nwyrmouv\",\"momentum\":\"gmokzkltrfowt\",\"nesterov\":\"rfmvlihcvjdrqcrj\",\"numberOfEpochs\":\"h\",\"numberOfWorkers\":\"ukvhd\",\"optimizer\":\"wyojbfqzdkfnjyi\",\"randomSeed\":\"afr\",\"stepLRGamma\":\"qxmbjroumzzn\",\"stepLRStepSize\":\"l\",\"trainingBatchSize\":\"rhuzgfxonjtpu\",\"validationBatchSize\":\"l\",\"warmupCosineLRCycles\":\"pvti\",\"warmupCosineLRWarmupEpochs\":\"zbpdbo\",\"weightDecay\":\"gryfqiuasig\"},{\"trainingCropSize\":\"wsocnequygdjbo\",\"validationCropSize\":\"rmtqjkqevadr\",\"validationResizeSize\":\"wiu\",\"weightedLoss\":\"vcmjzkxiidisczsk\",\"amsGradient\":\"woqiqazugamxzkrr\",\"augmentations\":\"iisb\",\"beta1\":\"nppcce\",\"beta2\":\"ztdsbeza\",\"distributed\":\"f\",\"earlyStopping\":\"zxuizhyhnepkpe\",\"earlyStoppingDelay\":\"arxqiubx\",\"earlyStoppingPatience\":\"kecpxdazvdh\",\"enableOnnxNormalization\":\"mmkoszudb\",\"evaluationFrequency\":\"s\",\"gradientAccumulationStep\":\"rpcaqkiofkbtf\",\"layersToFreeze\":\"kl\",\"learningRate\":\"l\",\"learningRateScheduler\":\"vcb\",\"modelName\":\"ezyquw\",\"momentum\":\"qxutrpbrruyuua\",\"nesterov\":\"lmbjwcolbmxlbnw\",\"numberOfEpochs\":\"cpahprzrvxhm\",\"numberOfWorkers\":\"hocn\",\"optimizer\":\"cmj\",\"randomSeed\":\"gxnoqrxtdis\",\"stepLRGamma\":\"evhdlmydid\",\"stepLRStepSize\":\"epfwwt\",\"trainingBatchSize\":\"doesxxhmwcdb\",\"validationBatchSize\":\"yo\",\"warmupCosineLRCycles\":\"xkxhnegknjzrbhtm\",\"warmupCosineLRWarmupEpochs\":\"lvukaobrlb\",\"weightDecay\":\"snbagnchjhg\"},{\"trainingCropSize\":\"uowakyw\",\"validationCropSize\":\"hjym\",\"validationResizeSize\":\"gqtagd\",\"weightedLoss\":\"lss\",\"amsGradient\":\"jomevtfycnlb\",\"augmentations\":\"jcodkkgjiiytssi\",\"beta1\":\"z\",\"beta2\":\"ufqbvntnr\",\"distributed\":\"qsorh\",\"earlyStopping\":\"kxgnlykmxcpwzvmd\",\"earlyStoppingDelay\":\"sqdtiwlwxlbon\",\"earlyStoppingPatience\":\"bazqicqchygtvxby\",\"enableOnnxNormalization\":\"nepubdpkxyqvgx\",\"evaluationFrequency\":\"od\",\"gradientAccumulationStep\":\"vohkxdxuws\",\"layersToFreeze\":\"fmcwnosb\",\"learningRate\":\"ehgcvkbcknjo\",\"learningRateScheduler\":\"jy\",\"modelName\":\"pvelszerqze\",\"momentum\":\"o\",\"nesterov\":\"intxwa\",\"numberOfEpochs\":\"glzoblqwa\",\"numberOfWorkers\":\"r\",\"optimizer\":\"lhm\",\"randomSeed\":\"qb\",\"stepLRGamma\":\"vafjrqpjiyrqj\",\"stepLRStepSize\":\"gaxwmzwdfkbnrzo\",\"trainingBatchSize\":\"dltb\",\"validationBatchSize\":\"tqjfgxxsaet\",\"warmupCosineLRCycles\":\"dgvpyig\",\"warmupCosineLRWarmupEpochs\":\"qqil\",\"weightDecay\":\"cduwjoedx\"}],\"limitSettings\":{\"maxConcurrentTrials\":1780634429,\"maxTrials\":899036768,\"timeout\":\"PT30H59M40S\"},\"sweepSettings\":{\"earlyTermination\":{\"policyType\":\"EarlyTerminationPolicy\",\"delayEvaluation\":1408151149,\"evaluationInterval\":505810781},\"samplingAlgorithm\":\"Random\"},\"validationData\":{\"jobInputType\":\"mltable\",\"mode\":\"Direct\",\"uri\":\"jqqacdmkx\",\"description\":\"dcvjwc\"},\"validationDataSize\":47.866367600253014}")
                .toObject(ImageClassificationBase.class);
        Assertions.assertEquals(1780634429, model.limitSettings().maxConcurrentTrials());
        Assertions.assertEquals(899036768, model.limitSettings().maxTrials());
        Assertions.assertEquals(Duration.parse("PT30H59M40S"), model.limitSettings().timeout());
        Assertions.assertEquals(1408151149, model.sweepSettings().earlyTermination().delayEvaluation());
        Assertions.assertEquals(505810781, model.sweepSettings().earlyTermination().evaluationInterval());
        Assertions.assertEquals(SamplingAlgorithmType.RANDOM, model.sweepSettings().samplingAlgorithm());
        Assertions.assertEquals("dcvjwc", model.validationData().description());
        Assertions.assertEquals(InputDeliveryMode.DIRECT, model.validationData().mode());
        Assertions.assertEquals("jqqacdmkx", model.validationData().uri());
        Assertions.assertEquals(47.866367600253014D, model.validationDataSize());
        Assertions.assertEquals("a", model.modelSettings().advancedSettings());
        Assertions.assertEquals(true, model.modelSettings().amsGradient());
        Assertions.assertEquals("nhsenwphpzfng", model.modelSettings().augmentations());
        Assertions.assertEquals(24.413616F, model.modelSettings().beta1());
        Assertions.assertEquals(87.05071F, model.modelSettings().beta2());
        Assertions.assertEquals(304312927, model.modelSettings().checkpointFrequency());
        Assertions.assertEquals("k", model.modelSettings().checkpointModel().description());
        Assertions.assertEquals(InputDeliveryMode.DOWNLOAD, model.modelSettings().checkpointModel().mode());
        Assertions.assertEquals("wjjufwbe", model.modelSettings().checkpointModel().uri());
        Assertions.assertEquals("rhtssr", model.modelSettings().checkpointRunId());
        Assertions.assertEquals(false, model.modelSettings().distributed());
        Assertions.assertEquals(true, model.modelSettings().earlyStopping());
        Assertions.assertEquals(1979060010, model.modelSettings().earlyStoppingDelay());
        Assertions.assertEquals(1774020224, model.modelSettings().earlyStoppingPatience());
        Assertions.assertEquals(true, model.modelSettings().enableOnnxNormalization());
        Assertions.assertEquals(853491099, model.modelSettings().evaluationFrequency());
        Assertions.assertEquals(1971606507, model.modelSettings().gradientAccumulationStep());
        Assertions.assertEquals(323558985, model.modelSettings().layersToFreeze());
        Assertions.assertEquals(42.430317F, model.modelSettings().learningRate());
        Assertions.assertEquals(LearningRateScheduler.STEP, model.modelSettings().learningRateScheduler());
        Assertions.assertEquals("zwxiytx", model.modelSettings().modelName());
        Assertions.assertEquals(51.025497F, model.modelSettings().momentum());
        Assertions.assertEquals(true, model.modelSettings().nesterov());
        Assertions.assertEquals(1378257495, model.modelSettings().numberOfEpochs());
        Assertions.assertEquals(1753150962, model.modelSettings().numberOfWorkers());
        Assertions.assertEquals(StochasticOptimizer.ADAM, model.modelSettings().optimizer());
        Assertions.assertEquals(1914645473, model.modelSettings().randomSeed());
        Assertions.assertEquals(97.39071F, model.modelSettings().stepLRGamma());
        Assertions.assertEquals(218117716, model.modelSettings().stepLRStepSize());
        Assertions.assertEquals(1079594168, model.modelSettings().trainingBatchSize());
        Assertions.assertEquals(2132424945, model.modelSettings().validationBatchSize());
        Assertions.assertEquals(66.13355F, model.modelSettings().warmupCosineLRCycles());
        Assertions.assertEquals(568274703, model.modelSettings().warmupCosineLRWarmupEpochs());
        Assertions.assertEquals(67.716774F, model.modelSettings().weightDecay());
        Assertions.assertEquals(632161025, model.modelSettings().trainingCropSize());
        Assertions.assertEquals(1319895932, model.modelSettings().validationCropSize());
        Assertions.assertEquals(1773341425, model.modelSettings().validationResizeSize());
        Assertions.assertEquals(2065297037, model.modelSettings().weightedLoss());
        Assertions.assertEquals("fueqfrojs", model.searchSpace().get(0).amsGradient());
        Assertions.assertEquals("grhydk", model.searchSpace().get(0).augmentations());
        Assertions.assertEquals("ywezskiecafyg", model.searchSpace().get(0).beta1());
        Assertions.assertEquals("xieqv", model.searchSpace().get(0).beta2());
        Assertions.assertEquals("makli", model.searchSpace().get(0).distributed());
        Assertions.assertEquals("cahyhx", model.searchSpace().get(0).earlyStopping());
        Assertions.assertEquals("ybxawoijpodtblx", model.searchSpace().get(0).earlyStoppingDelay());
        Assertions.assertEquals("kwjdjodqhy", model.searchSpace().get(0).earlyStoppingPatience());
        Assertions.assertEquals("ncn", model.searchSpace().get(0).enableOnnxNormalization());
        Assertions.assertEquals("mehllizhceu", model.searchSpace().get(0).evaluationFrequency());
        Assertions.assertEquals("qodkadppyibngql", model.searchSpace().get(0).gradientAccumulationStep());
        Assertions.assertEquals("ywrxw", model.searchSpace().get(0).layersToFreeze());
        Assertions.assertEquals("dtluvvadswzsn", model.searchSpace().get(0).learningRate());
        Assertions.assertEquals("emlowuowhl", model.searchSpace().get(0).learningRateScheduler());
        Assertions.assertEquals("nwyrmouv", model.searchSpace().get(0).modelName());
        Assertions.assertEquals("gmokzkltrfowt", model.searchSpace().get(0).momentum());
        Assertions.assertEquals("rfmvlihcvjdrqcrj", model.searchSpace().get(0).nesterov());
        Assertions.assertEquals("h", model.searchSpace().get(0).numberOfEpochs());
        Assertions.assertEquals("ukvhd", model.searchSpace().get(0).numberOfWorkers());
        Assertions.assertEquals("wyojbfqzdkfnjyi", model.searchSpace().get(0).optimizer());
        Assertions.assertEquals("afr", model.searchSpace().get(0).randomSeed());
        Assertions.assertEquals("qxmbjroumzzn", model.searchSpace().get(0).stepLRGamma());
        Assertions.assertEquals("l", model.searchSpace().get(0).stepLRStepSize());
        Assertions.assertEquals("rhuzgfxonjtpu", model.searchSpace().get(0).trainingBatchSize());
        Assertions.assertEquals("l", model.searchSpace().get(0).validationBatchSize());
        Assertions.assertEquals("pvti", model.searchSpace().get(0).warmupCosineLRCycles());
        Assertions.assertEquals("zbpdbo", model.searchSpace().get(0).warmupCosineLRWarmupEpochs());
        Assertions.assertEquals("gryfqiuasig", model.searchSpace().get(0).weightDecay());
        Assertions.assertEquals("egmmuteyxe", model.searchSpace().get(0).trainingCropSize());
        Assertions.assertEquals("uqi", model.searchSpace().get(0).validationCropSize());
        Assertions.assertEquals("jiitnspxlzdesygr", model.searchSpace().get(0).validationResizeSize());
        Assertions.assertEquals("waiufanra", model.searchSpace().get(0).weightedLoss());
    }

    @org.junit.jupiter.api.Test
    public void testSerialize() throws Exception {
        ImageClassificationBase model =
            new ImageClassificationBase()
                .withLimitSettings(
                    new ImageLimitSettings()
                        .withMaxConcurrentTrials(1780634429)
                        .withMaxTrials(899036768)
                        .withTimeout(Duration.parse("PT30H59M40S")))
                .withSweepSettings(
                    new ImageSweepSettings()
                        .withEarlyTermination(
                            new EarlyTerminationPolicy()
                                .withDelayEvaluation(1408151149)
                                .withEvaluationInterval(505810781))
                        .withSamplingAlgorithm(SamplingAlgorithmType.RANDOM))
                .withValidationData(
                    new MLTableJobInput()
                        .withDescription("dcvjwc")
                        .withMode(InputDeliveryMode.DIRECT)
                        .withUri("jqqacdmkx"))
                .withValidationDataSize(47.866367600253014D)
                .withModelSettings(
                    new ImageModelSettingsClassification()
                        .withAdvancedSettings("a")
                        .withAmsGradient(true)
                        .withAugmentations("nhsenwphpzfng")
                        .withBeta1(24.413616F)
                        .withBeta2(87.05071F)
                        .withCheckpointFrequency(304312927)
                        .withCheckpointModel(
                            new MLFlowModelJobInput()
                                .withDescription("k")
                                .withMode(InputDeliveryMode.DOWNLOAD)
                                .withUri("wjjufwbe"))
                        .withCheckpointRunId("rhtssr")
                        .withDistributed(false)
                        .withEarlyStopping(true)
                        .withEarlyStoppingDelay(1979060010)
                        .withEarlyStoppingPatience(1774020224)
                        .withEnableOnnxNormalization(true)
                        .withEvaluationFrequency(853491099)
                        .withGradientAccumulationStep(1971606507)
                        .withLayersToFreeze(323558985)
                        .withLearningRate(42.430317F)
                        .withLearningRateScheduler(LearningRateScheduler.STEP)
                        .withModelName("zwxiytx")
                        .withMomentum(51.025497F)
                        .withNesterov(true)
                        .withNumberOfEpochs(1378257495)
                        .withNumberOfWorkers(1753150962)
                        .withOptimizer(StochasticOptimizer.ADAM)
                        .withRandomSeed(1914645473)
                        .withStepLRGamma(97.39071F)
                        .withStepLRStepSize(218117716)
                        .withTrainingBatchSize(1079594168)
                        .withValidationBatchSize(2132424945)
                        .withWarmupCosineLRCycles(66.13355F)
                        .withWarmupCosineLRWarmupEpochs(568274703)
                        .withWeightDecay(67.716774F)
                        .withTrainingCropSize(632161025)
                        .withValidationCropSize(1319895932)
                        .withValidationResizeSize(1773341425)
                        .withWeightedLoss(2065297037))
                .withSearchSpace(
                    Arrays
                        .asList(
                            new ImageModelDistributionSettingsClassification()
                                .withAmsGradient("fueqfrojs")
                                .withAugmentations("grhydk")
                                .withBeta1("ywezskiecafyg")
                                .withBeta2("xieqv")
                                .withDistributed("makli")
                                .withEarlyStopping("cahyhx")
                                .withEarlyStoppingDelay("ybxawoijpodtblx")
                                .withEarlyStoppingPatience("kwjdjodqhy")
                                .withEnableOnnxNormalization("ncn")
                                .withEvaluationFrequency("mehllizhceu")
                                .withGradientAccumulationStep("qodkadppyibngql")
                                .withLayersToFreeze("ywrxw")
                                .withLearningRate("dtluvvadswzsn")
                                .withLearningRateScheduler("emlowuowhl")
                                .withModelName("nwyrmouv")
                                .withMomentum("gmokzkltrfowt")
                                .withNesterov("rfmvlihcvjdrqcrj")
                                .withNumberOfEpochs("h")
                                .withNumberOfWorkers("ukvhd")
                                .withOptimizer("wyojbfqzdkfnjyi")
                                .withRandomSeed("afr")
                                .withStepLRGamma("qxmbjroumzzn")
                                .withStepLRStepSize("l")
                                .withTrainingBatchSize("rhuzgfxonjtpu")
                                .withValidationBatchSize("l")
                                .withWarmupCosineLRCycles("pvti")
                                .withWarmupCosineLRWarmupEpochs("zbpdbo")
                                .withWeightDecay("gryfqiuasig")
                                .withTrainingCropSize("egmmuteyxe")
                                .withValidationCropSize("uqi")
                                .withValidationResizeSize("jiitnspxlzdesygr")
                                .withWeightedLoss("waiufanra"),
                            new ImageModelDistributionSettingsClassification()
                                .withAmsGradient("woqiqazugamxzkrr")
                                .withAugmentations("iisb")
                                .withBeta1("nppcce")
                                .withBeta2("ztdsbeza")
                                .withDistributed("f")
                                .withEarlyStopping("zxuizhyhnepkpe")
                                .withEarlyStoppingDelay("arxqiubx")
                                .withEarlyStoppingPatience("kecpxdazvdh")
                                .withEnableOnnxNormalization("mmkoszudb")
                                .withEvaluationFrequency("s")
                                .withGradientAccumulationStep("rpcaqkiofkbtf")
                                .withLayersToFreeze("kl")
                                .withLearningRate("l")
                                .withLearningRateScheduler("vcb")
                                .withModelName("ezyquw")
                                .withMomentum("qxutrpbrruyuua")
                                .withNesterov("lmbjwcolbmxlbnw")
                                .withNumberOfEpochs("cpahprzrvxhm")
                                .withNumberOfWorkers("hocn")
                                .withOptimizer("cmj")
                                .withRandomSeed("gxnoqrxtdis")
                                .withStepLRGamma("evhdlmydid")
                                .withStepLRStepSize("epfwwt")
                                .withTrainingBatchSize("doesxxhmwcdb")
                                .withValidationBatchSize("yo")
                                .withWarmupCosineLRCycles("xkxhnegknjzrbhtm")
                                .withWarmupCosineLRWarmupEpochs("lvukaobrlb")
                                .withWeightDecay("snbagnchjhg")
                                .withTrainingCropSize("wsocnequygdjbo")
                                .withValidationCropSize("rmtqjkqevadr")
                                .withValidationResizeSize("wiu")
                                .withWeightedLoss("vcmjzkxiidisczsk"),
                            new ImageModelDistributionSettingsClassification()
                                .withAmsGradient("jomevtfycnlb")
                                .withAugmentations("jcodkkgjiiytssi")
                                .withBeta1("z")
                                .withBeta2("ufqbvntnr")
                                .withDistributed("qsorh")
                                .withEarlyStopping("kxgnlykmxcpwzvmd")
                                .withEarlyStoppingDelay("sqdtiwlwxlbon")
                                .withEarlyStoppingPatience("bazqicqchygtvxby")
                                .withEnableOnnxNormalization("nepubdpkxyqvgx")
                                .withEvaluationFrequency("od")
                                .withGradientAccumulationStep("vohkxdxuws")
                                .withLayersToFreeze("fmcwnosb")
                                .withLearningRate("ehgcvkbcknjo")
                                .withLearningRateScheduler("jy")
                                .withModelName("pvelszerqze")
                                .withMomentum("o")
                                .withNesterov("intxwa")
                                .withNumberOfEpochs("glzoblqwa")
                                .withNumberOfWorkers("r")
                                .withOptimizer("lhm")
                                .withRandomSeed("qb")
                                .withStepLRGamma("vafjrqpjiyrqj")
                                .withStepLRStepSize("gaxwmzwdfkbnrzo")
                                .withTrainingBatchSize("dltb")
                                .withValidationBatchSize("tqjfgxxsaet")
                                .withWarmupCosineLRCycles("dgvpyig")
                                .withWarmupCosineLRWarmupEpochs("qqil")
                                .withWeightDecay("cduwjoedx")
                                .withTrainingCropSize("uowakyw")
                                .withValidationCropSize("hjym")
                                .withValidationResizeSize("gqtagd")
                                .withWeightedLoss("lss")));
        model = BinaryData.fromObject(model).toObject(ImageClassificationBase.class);
        Assertions.assertEquals(1780634429, model.limitSettings().maxConcurrentTrials());
        Assertions.assertEquals(899036768, model.limitSettings().maxTrials());
        Assertions.assertEquals(Duration.parse("PT30H59M40S"), model.limitSettings().timeout());
        Assertions.assertEquals(1408151149, model.sweepSettings().earlyTermination().delayEvaluation());
        Assertions.assertEquals(505810781, model.sweepSettings().earlyTermination().evaluationInterval());
        Assertions.assertEquals(SamplingAlgorithmType.RANDOM, model.sweepSettings().samplingAlgorithm());
        Assertions.assertEquals("dcvjwc", model.validationData().description());
        Assertions.assertEquals(InputDeliveryMode.DIRECT, model.validationData().mode());
        Assertions.assertEquals("jqqacdmkx", model.validationData().uri());
        Assertions.assertEquals(47.866367600253014D, model.validationDataSize());
        Assertions.assertEquals("a", model.modelSettings().advancedSettings());
        Assertions.assertEquals(true, model.modelSettings().amsGradient());
        Assertions.assertEquals("nhsenwphpzfng", model.modelSettings().augmentations());
        Assertions.assertEquals(24.413616F, model.modelSettings().beta1());
        Assertions.assertEquals(87.05071F, model.modelSettings().beta2());
        Assertions.assertEquals(304312927, model.modelSettings().checkpointFrequency());
        Assertions.assertEquals("k", model.modelSettings().checkpointModel().description());
        Assertions.assertEquals(InputDeliveryMode.DOWNLOAD, model.modelSettings().checkpointModel().mode());
        Assertions.assertEquals("wjjufwbe", model.modelSettings().checkpointModel().uri());
        Assertions.assertEquals("rhtssr", model.modelSettings().checkpointRunId());
        Assertions.assertEquals(false, model.modelSettings().distributed());
        Assertions.assertEquals(true, model.modelSettings().earlyStopping());
        Assertions.assertEquals(1979060010, model.modelSettings().earlyStoppingDelay());
        Assertions.assertEquals(1774020224, model.modelSettings().earlyStoppingPatience());
        Assertions.assertEquals(true, model.modelSettings().enableOnnxNormalization());
        Assertions.assertEquals(853491099, model.modelSettings().evaluationFrequency());
        Assertions.assertEquals(1971606507, model.modelSettings().gradientAccumulationStep());
        Assertions.assertEquals(323558985, model.modelSettings().layersToFreeze());
        Assertions.assertEquals(42.430317F, model.modelSettings().learningRate());
        Assertions.assertEquals(LearningRateScheduler.STEP, model.modelSettings().learningRateScheduler());
        Assertions.assertEquals("zwxiytx", model.modelSettings().modelName());
        Assertions.assertEquals(51.025497F, model.modelSettings().momentum());
        Assertions.assertEquals(true, model.modelSettings().nesterov());
        Assertions.assertEquals(1378257495, model.modelSettings().numberOfEpochs());
        Assertions.assertEquals(1753150962, model.modelSettings().numberOfWorkers());
        Assertions.assertEquals(StochasticOptimizer.ADAM, model.modelSettings().optimizer());
        Assertions.assertEquals(1914645473, model.modelSettings().randomSeed());
        Assertions.assertEquals(97.39071F, model.modelSettings().stepLRGamma());
        Assertions.assertEquals(218117716, model.modelSettings().stepLRStepSize());
        Assertions.assertEquals(1079594168, model.modelSettings().trainingBatchSize());
        Assertions.assertEquals(2132424945, model.modelSettings().validationBatchSize());
        Assertions.assertEquals(66.13355F, model.modelSettings().warmupCosineLRCycles());
        Assertions.assertEquals(568274703, model.modelSettings().warmupCosineLRWarmupEpochs());
        Assertions.assertEquals(67.716774F, model.modelSettings().weightDecay());
        Assertions.assertEquals(632161025, model.modelSettings().trainingCropSize());
        Assertions.assertEquals(1319895932, model.modelSettings().validationCropSize());
        Assertions.assertEquals(1773341425, model.modelSettings().validationResizeSize());
        Assertions.assertEquals(2065297037, model.modelSettings().weightedLoss());
        Assertions.assertEquals("fueqfrojs", model.searchSpace().get(0).amsGradient());
        Assertions.assertEquals("grhydk", model.searchSpace().get(0).augmentations());
        Assertions.assertEquals("ywezskiecafyg", model.searchSpace().get(0).beta1());
        Assertions.assertEquals("xieqv", model.searchSpace().get(0).beta2());
        Assertions.assertEquals("makli", model.searchSpace().get(0).distributed());
        Assertions.assertEquals("cahyhx", model.searchSpace().get(0).earlyStopping());
        Assertions.assertEquals("ybxawoijpodtblx", model.searchSpace().get(0).earlyStoppingDelay());
        Assertions.assertEquals("kwjdjodqhy", model.searchSpace().get(0).earlyStoppingPatience());
        Assertions.assertEquals("ncn", model.searchSpace().get(0).enableOnnxNormalization());
        Assertions.assertEquals("mehllizhceu", model.searchSpace().get(0).evaluationFrequency());
        Assertions.assertEquals("qodkadppyibngql", model.searchSpace().get(0).gradientAccumulationStep());
        Assertions.assertEquals("ywrxw", model.searchSpace().get(0).layersToFreeze());
        Assertions.assertEquals("dtluvvadswzsn", model.searchSpace().get(0).learningRate());
        Assertions.assertEquals("emlowuowhl", model.searchSpace().get(0).learningRateScheduler());
        Assertions.assertEquals("nwyrmouv", model.searchSpace().get(0).modelName());
        Assertions.assertEquals("gmokzkltrfowt", model.searchSpace().get(0).momentum());
        Assertions.assertEquals("rfmvlihcvjdrqcrj", model.searchSpace().get(0).nesterov());
        Assertions.assertEquals("h", model.searchSpace().get(0).numberOfEpochs());
        Assertions.assertEquals("ukvhd", model.searchSpace().get(0).numberOfWorkers());
        Assertions.assertEquals("wyojbfqzdkfnjyi", model.searchSpace().get(0).optimizer());
        Assertions.assertEquals("afr", model.searchSpace().get(0).randomSeed());
        Assertions.assertEquals("qxmbjroumzzn", model.searchSpace().get(0).stepLRGamma());
        Assertions.assertEquals("l", model.searchSpace().get(0).stepLRStepSize());
        Assertions.assertEquals("rhuzgfxonjtpu", model.searchSpace().get(0).trainingBatchSize());
        Assertions.assertEquals("l", model.searchSpace().get(0).validationBatchSize());
        Assertions.assertEquals("pvti", model.searchSpace().get(0).warmupCosineLRCycles());
        Assertions.assertEquals("zbpdbo", model.searchSpace().get(0).warmupCosineLRWarmupEpochs());
        Assertions.assertEquals("gryfqiuasig", model.searchSpace().get(0).weightDecay());
        Assertions.assertEquals("egmmuteyxe", model.searchSpace().get(0).trainingCropSize());
        Assertions.assertEquals("uqi", model.searchSpace().get(0).validationCropSize());
        Assertions.assertEquals("jiitnspxlzdesygr", model.searchSpace().get(0).validationResizeSize());
        Assertions.assertEquals("waiufanra", model.searchSpace().get(0).weightedLoss());
    }
}
