Amazon SageMakeri automaatne mudeli häälestamine toetab nüüd SageMakeri koolituseksemplari Fallbacks PlatoBlockchain Data Intelligence'i. Vertikaalne otsing. Ai.

Amazon SageMakeri automaatne mudelihäälestus toetab nüüd SageMakeri koolituseksemplari varuvariante

Täna Amazon SageMaker teatas SageMakeri koolituseksemplari varude toetamisest Amazon SageMakeri automaatne mudeli häälestamine (AMT) mis võimaldavad kasutajatel määrata alternatiivseid arvutusressursside konfiguratsioone.

SageMakeri automaatne mudeli häälestamine leiab mudeli parima versiooni, käivitades teie andmestikul palju koolitustöid, kasutades vahemikud hüperparameetritest, mille oma algoritmi jaoks määrate. Seejärel valib see hüperparameetrite väärtused, mille tulemuseks on mudel, mis toimib kõige paremini, mõõdetuna a-ga meetriline et valite.

Varem said kasutajad määrata ainult ühe eksemplari konfiguratsiooni. See võib põhjustada probleeme, kui määratud eksemplari tüüp pole suure kasutuse tõttu saadaval. Varem ebaõnnestusid teie koolitustööd InsufficientCapacityError (ICE) tõttu. AMT kasutas paljudel juhtudel nende tõrgete vältimiseks nutikaid korduskatsetusi, kuid jäi püsivalt väikese mahutavuse tingimustes jõuetuks.

See uus funktsioon tähendab, et saate määrata eelistuste järjekorras eksemplari konfiguratsioonide loendi, nii et teie AMT töö naaseb vähese võimsuse korral automaatselt loendi järgmisele eksemplarile.

Järgmistes osades käsitleme neid kõrgetasemelisi samme ICE ületamiseks:

  1. Määratlege HyperParameter Tuning Job Configuration
  2. Määratlege koolitustöö parameetrid
  3. Looge hüperparameetrite häälestustöö
  4. Kirjeldage koolitustööd

Määratlege HyperParameter Tuning Job Configuration

. HyperParameterTuningJobConfig objekt kirjeldab häälestustööd, sealhulgas otsingustrateegiat, koolitustööde hindamiseks kasutatavat eesmärgimõõdikut, otsitavate parameetrite vahemikke ja häälestustöö ressursipiiranguid. Tänase funktsiooni väljalaskega seda aspekti ei muudetud. Sellegipoolest läheme selle üle, et tuua täielik näide.

. ResourceLimits objekt määrab selle häälestustöö maksimaalse koolitustööde ja paralleelsete koolitustööde arvu. Selles näites teeme a juhuslik otsing strateegia ja maksimaalselt 10 töökoha määramine (MaxNumberOfTrainingJobs) ja 5 samaaegset tööd (MaxParallelTrainingJobs) korraga.

. ParameterRanges objekt määrab hüperparameetrite vahemikud, mida see häälestustöö otsib. Määrame otsitava hüperparameetri nime, samuti minimaalse ja maksimaalse väärtuse. Selles näites määratleme parameetrite Continuous ja Integer vahemiku minimaalsed ja maksimaalsed väärtused ning hüperparameetri nime (“eta”, “max_depth”).

AmtTuningJobConfig={
            "Strategy": "Random",
            "ResourceLimits": {
              "MaxNumberOfTrainingJobs": 10,
              "MaxParallelTrainingJobs": 5
            },
            "HyperParameterTuningJobObjective": {
              "MetricName": "validation:rmse",
              "Type": "Minimize"
            },
            "ParameterRanges": {
              "CategoricalParameterRanges": [],
              "ContinuousParameterRanges": [
                {
                    "MaxValue": "1",
                    "MinValue": "0",
                    "Name": "eta"
                }
              ],
              "IntegerParameterRanges": [
                {
                  "MaxValue": "6",
                  "MinValue": "2",
                  "Name": "max_depth"
                }
              ]
            }
          }

Määratlege koolitustöö parameetrid

Koolitustöö määratluses määratleme koolitustöö käitamiseks vajaliku sisendi, kasutades meie määratud algoritmi. Pärast koolituse lõppu salvestab SageMaker saadud mudeli artefaktid an Amazon Simple Storage Service (Amazon S3) asukoht, mille määrate.

Varem määrasime eksemplari tüübi, arvu ja mahu suuruse all ResourceConfig parameeter. Kui selle parameetri all olev eksemplar polnud saadaval, ilmus ebapiisava võimsuse tõrge (ICE).

Selle vältimiseks on meil nüüd olemas HyperParameterTuningResourceConfig parameetri all TrainingJobDefinition, kus määrame loendi eksemplaridest, millele tagasi pöörduda. Nende eksemplaride vorming on sama, mis failis ResourceConfig. Töö läbib saadaoleva eksemplari konfiguratsiooni leidmiseks loendi ülalt alla. Kui eksemplar pole saadaval, valitakse ebapiisava võimsuse vea (ICE) asemel loendist järgmine eksemplar, ületades sellega ICE.

TrainingJobDefinition={
            "HyperParameterTuningResourceConfig": {
      		"InstanceConfigs": [
            		{
                		"InstanceType": "ml.m4.xlarge",
                		"InstanceCount": 1,
                		"VolumeSizeInGB": 5
            		},
            		{
                		"InstanceType": "ml.m5.4xlarge",
                		"InstanceCount": 1,
                		"VolumeSizeInGB": 5
            		}
        		 ]
    		  },
            "AlgorithmSpecification": {
              "TrainingImage": "433757028032.dkr.ecr.us-west-2.amazonaws.com/xgboost:latest",
              "TrainingInputMode": "File"
            },
            "InputDataConfig": [
              {
                "ChannelName": "train",
                "CompressionType": "None",
                "ContentType": "json",
                "DataSource": {
                  "S3DataSource": {
                    "S3DataDistributionType": "FullyReplicated",
                    "S3DataType": "S3Prefix",
                    "S3Uri": "s3://<bucket>/test/"
                  }
                },
                "RecordWrapperType": "None"
              }
            ],
            "OutputDataConfig": {
              "S3OutputPath": "s3://<bucket>/output/"
            },
            "RoleArn": "arn:aws:iam::340308762637:role/service-role/AmazonSageMaker-ExecutionRole-20201117T142856",
            "StoppingCondition": {
              "MaxRuntimeInSeconds": 259200
            },
            "StaticHyperParameters": {
              "training_script_loc": "q2bn-sagemaker-test_6"
            },
          }

Käivitage hüperparameetrite häälestustöö

Selles etapis loome ja käitame hüperparameetrite häälestustöö ülal määratletud hüperparameetrite häälestusressursi konfiguratsiooniga.

Initsialiseerime SageMakeri kliendi ja loome töö, määrates häälestamise konfiguratsiooni, koolitustöö määratluse ja töö nime.

import boto3
sm = boto3.client('sagemaker')     
                    
sm.create_hyper_parameter_tuning_job(
    HyperParameterTuningJobName="my-job-name",
    HyperParameterTuningJobConfig=AmtTuningJobConfig,
    TrainingJobDefinition=TrainingJobDefinition) 

AMT-töö käitamine SageMakeri koolituseksemplari varude toel annab kasutajale võimaluse ebapiisavast võimsusest ise üle saada, vähendades seeläbi töö ebaõnnestumise võimalust.

Kirjeldage koolitustöid

Järgmine funktsioon loetleb kõik katse ajal kasutatud eksemplaritüübid ja seda saab kasutada kontrollimaks, kas SageMakeri koolituseksemplar on ressursside eraldamise ajal automaatselt loendis järgmise eksemplari juurde langenud.

def list_instances(name):
    job_list = []
    instances = []
    def _get_training_jobs(name, next=None):
        if next:
            list = sm.list_training_jobs_for_hyper_parameter_tuning_job(
            HyperParameterTuningJobName=name, NextToken=next)
        else:
            list = sm.list_training_jobs_for_hyper_parameter_tuning_job(
            HyperParameterTuningJobName=name)
        for jobs in list['TrainingJobSummaries']:
            job_list.append(jobs['TrainingJobName'])
        next = list.get('NextToken', None)
        if next:
            _get_training_jobs(name, next=next)
            pass
        else:
            pass
    _get_training_jobs(name)


    for job_name in job_list:
        ec2 = sm.describe_training_job(
        TrainingJobName=job_name
        )
        instances.append(ec2['ResourceConfig'])
    return instances

list_instances("my-job-name")  

Ülaltoodud funktsiooni väljund kuvab kõik eksemplarid, mida AMT töö katse käitamiseks kasutab.

Järeldus

Selles postituses näitasime, kuidas saate nüüd määratleda juhtumite kogumi, millele teie AMT eksperiment võib tagasi langeda, kui InsufficientCapacityError. Nägime, kuidas määratleda hüperparameetrite häälestustöö konfiguratsioon, samuti määrata maksimaalne koolitustööde arv ja maksimaalne paralleelsete tööde arv. Lõpuks nägime, kuidas ületada InsufficientCapacityError kasutades HyperParameterTuningResourceConfig parameeter, mille saab määrata koolitustöö määratluse all.

AMT kohta lisateabe saamiseks külastage Amazon SageMakeri automaatne mudeli häälestamine.


Autoritest

Amazon SageMakeri automaatne mudeli häälestamine toetab nüüd SageMakeri koolituseksemplari Fallbacks PlatoBlockchain Data Intelligence'i. Vertikaalne otsing. Ai.Doug Mbaya on vanempartnerlahenduste arhitekt, kes keskendub andmetele ja analüüsile. Doug teeb tihedat koostööd AWS-i partneritega, aidates neil integreerida andmeid ja analüüsilahendusi pilve.

Amazon SageMakeri automaatne mudeli häälestamine toetab nüüd SageMakeri koolituseksemplari Fallbacks PlatoBlockchain Data Intelligence'i. Vertikaalne otsing. Ai.Kruthi Jayasimha Rao on Scale-PSA meeskonna partnerlahenduste arhitekt. Kruthi viib partnerite jaoks läbi tehnilisi valideerimisi, mis võimaldavad neil partneriteel edasi liikuda.

Amazon SageMakeri automaatne mudeli häälestamine toetab nüüd SageMakeri koolituseksemplari Fallbacks PlatoBlockchain Data Intelligence'i. Vertikaalne otsing. Ai.Bernard Jollans on Amazon SageMakeri automaatse mudeli häälestamise tarkvaraarenduse insener.

Ajatempel:

Veel alates AWS-i masinõpe