Amazon SageMaker JumpStart -mallit ja -algoritmit ovat nyt saatavilla API PlatoBlockchain Data Intelligencen kautta. Pystysuuntainen haku. Ai.

Amazon SageMaker JumpStart -mallit ja -algoritmit ovat nyt saatavilla API:n kautta

Joulukuussa 2020, AWS ilmoitti yleisestä saatavuudesta of Amazon SageMaker JumpStart, kyky Amazon Sage Maker jonka avulla pääset nopeasti ja helposti alkuun koneoppimisen (ML) kanssa. JumpStart tarjoaa yhdellä napsautuksella hienosäätöä ja laajan valikoiman valmiiksi koulutettuja malleja yleisiin ML-tehtäviin sekä valikoiman päästä päähän -ratkaisuja, jotka ratkaisevat yleisiä liiketoimintaongelmia. Nämä ominaisuudet poistavat raskasta nostoa ML-prosessin jokaisesta vaiheesta, mikä helpottaa korkealaatuisten mallien kehittämistä ja lyhentää käyttöönottoon kuluvaa aikaa.

Aikaisemmin kaikki JumpStart-sisältö oli saatavilla vain kautta Amazon SageMaker Studio, joka tarjoaa a käyttäjäystävällinen graafinen käyttöliittymä olla vuorovaikutuksessa ominaisuuden kanssa. Tänään olemme iloisia voidessamme ilmoittaa helppokäyttöisen julkaisun julkaisemisesta JumpStart API:t SageMaker Python SDK:n laajennuksena. Näiden sovellusliittymien avulla voit ottaa ohjelmallisesti käyttöön ja hienosäätää laajan valikoiman JumpStart-tuettuja esikoulutettuja malleja omissa tietojoukoissasi. Tämä julkaisu vapauttaa JumpStart-ominaisuuksien käytön koodityönkuluissa, MLOps-putkissa ja missä tahansa muualla, jossa olet vuorovaikutuksessa SageMakerin kanssa SDK:n kautta.

Tässä viestissä tarjoamme päivityksen JumpStartin ominaisuuksien nykytilasta ja opastamme sinut JumpStart API:n käyttökulkuun esimerkin avulla.

JumpStart yleiskatsaus

JumpStart on monipuolinen tuote, joka sisältää erilaisia ​​ominaisuuksia, joiden avulla pääset nopeasti alkuun ML:n kanssa SageMakerissa. Kirjoitushetkellä JumpStart antaa sinun tehdä seuraavat:

  • Ota käyttöön esikoulutettuja malleja yleisiin ML-tehtäviin – JumpStartin avulla voit ratkaista yleisiä ML-tehtäviä ilman kehitysponnisteluja tarjoamalla helposti käyttöönotettuja malleja, jotka on esikoulutettu julkisesti saatavilla oleville suurille tietojoukoille. ML-tutkijayhteisö on tehnyt paljon vaivaa saattaakseen suurimman osan äskettäin kehitetyistä malleista julkisesti saataville. JumpStart isännöi yli 300 mallin kokoelmaa, jotka kattavat 15 suosituinta ML-tehtävää, kuten objektien havaitseminen, tekstin luokittelu ja tekstin luominen, mikä tekee niiden käyttämisestä helppoa aloittelijalle. Nämä mallit ovat peräisin suosituista mallikeskittimistä, kuten TensorFlow, PyTorch, Hugging Face ja MXNet Hub.
  • Hienosäädä esikoulutettuja malleja – JumpStartin avulla voit hienosäätää esikoulutettuja malleja ilman, että sinun tarvitsee kirjoittaa omaa harjoitusalgoritmiasi. ML:ssä kutsutaan kykyä siirtää yhdeltä toimialueelta opittua tietoa toiselle alueelle siirrä oppimista. Voit käyttää siirtooppimista tuottaaksesi tarkkoja malleja pienemmille tietojoukoillesi paljon pienemmillä koulutuskustannuksilla kuin alkuperäisen mallin opetuksessa alusta alkaen. JumpStart sisältää myös suosittuja LightGBM-, CatBoost-, XGBoost- ja Scikit-learniin perustuvia harjoitusalgoritmeja, joita voit harjoitella alusta alkaen tietojen taulukkomuotoista regressiota ja luokittelua varten.
  • Käytä valmiita ratkaisuja – JumpStart tarjoaa joukon 17 valmiiksi rakennettua ratkaisua yleisiin ML-käyttötapauksiin, kuten kysynnän ennustamiseen sekä teollisuus- ja taloussovelluksiin, jotka voit ottaa käyttöön vain muutamalla napsautuksella. Ratkaisut ovat päästä päähän ML-sovelluksia, jotka yhdistävät erilaisia ​​AWS-palveluita tietyn yrityskäyttötilanteen ratkaisemiseksi. He käyttävät AWS-pilven muodostuminen mallit ja viitearkkitehtuurit nopeaa käyttöönottoa varten, mikä tarkoittaa, että ne ovat täysin muokattavissa.
  • Käytä muistikirjan esimerkkejä SageMaker-algoritmeille – SageMaker tarjoaa sarjan sisäänrakennetut algoritmit auttaa datatieteilijöitä ja ML-harjoittajia pääsemään nopeasti alkuun ML-mallien koulutuksessa ja käyttöönotossa. JumpStart tarjoaa mallimuistikirjoja, joiden avulla voit käyttää näitä algoritmeja nopeasti.
  • Hyödynnä koulutusvideot ja blogit – JumpStart tarjoaa myös lukuisia blogikirjoituksia ja videoita, jotka opettavat käyttämään SageMakerin eri toimintoja.

JumpStart hyväksyy mukautetut VPC-asetukset ja KMS-salausavaimet, jotta voit käyttää saatavilla olevia malleja ja ratkaisuja turvallisesti yritysympäristössäsi. Voit siirtää suojausasetukset JumpStartiin SageMaker Studiossa tai SageMaker Python SDK:n kautta.

JumpStart-tuetut ML-tehtävät ja API-esimerkkimuistikirjat

JumpStart tukee tällä hetkellä 15 suosituinta ML-tehtävää; Näistä 13 on visio- ja NLP-pohjaisia ​​tehtäviä, joista 8 tukee kooditonta hienosäätöä. Se tukee myös neljää suosittua taulukkomuotoisen tietojen mallintamisalgoritmia. Tehtävät ja linkit heidän mallimuistikirjoihin on yhteenveto seuraavassa taulukossa.

Tehtävä Päätelmä esikoulutetuista malleista Mukautetun tietojoukon koulutus Tuetut puitteet Esimerkkikannettavat
Kuvien luokittelu Joo Joo PyTorch, TensorFlow Johdatus JumpStartiin – kuvien luokittelu
Objektin tunnistus Joo Joo PyTorch, TensorFlow, MXNet Johdatus JumpStartiin – Objektin tunnistus
Semanttinen segmentointi Joo Joo MX Net Johdatus JumpStartiin – semanttinen segmentointi
Esimerkki segmentointi Joo Nro MX Net Johdatus JumpStartiin – ilmentymien segmentointi
Kuvan upottaminen Joo Nro TensorFlow, MXNet Johdatus JumpStartiin – kuvien upottaminen
Tekstiluokitus Joo Joo TensorFlow Johdatus JumpStartiin – Tekstin luokittelu
Lauseparien luokittelu Joo Joo TensorFlow, halaavat kasvot Johdatus JumpStartiin – lauseparien luokittelu
Kysymykseen vastaaminen Joo Joo PyTorch JumpStartin esittely – Kysymyksiin vastaaminen
Nimeltään entiteetin tunnustaminen Joo Nro Halaaminen kasvot Johdatus JumpStartiin – Nimettyjen entiteettien tunnistus
Tekstin yhteenveto Joo Nro Halaaminen kasvot JumpStartin esittely – Tekstin yhteenveto
Tekstin luominen Joo Nro Halaaminen kasvot Johdatus JumpStartiin – Tekstin luominen
Konekäännös Joo Nro Halaaminen kasvot Johdatus JumpStartiin – Konekäännös
Tekstin upottaminen Joo Nro TensorFlow, MXNet Johdatus JumpStartiin – Tekstin upottaminen
Taulukkoluokitus Joo Joo LightGBM, CatBoost, XGBoost, lineaarinen oppija Johdatus JumpStartiin – Taulukkoluokitus – LightGBM, CatBoost
Johdatus JumpStartiin – Taulukkoluokitus – XGBoost, Lineaarinen oppija
Taulukkoregressio Joo Joo LightGBM, CatBoost, XGBoost, lineaarinen oppija Johdatus JumpStartiin – Taulukkoregressio – LightGBM, CatBoost
Johdatus JumpStartiin – Taulukkoregressio – XGBoost, Lineaarinen oppija

Tehtävästä riippuen edellisessä taulukossa linkitetyt mallimuistikirjat voivat opastaa sinua kaikissa tai osassa seuraavista prosesseista:

  • Valitse tehtävääsi varten JumpStartin tukema esikoulutettu malli.
  • Isännöi esikoulutettu malli, hanki siitä reaaliaikaisia ​​ennusteita ja näytä tulokset asianmukaisesti.
  • Hienosäädä esikoulutettu malli omalla hyperparametrivalikoimallasi ja ota se käyttöön päätelmien tekemiseen.

Hienosäädä ja ota käyttöön objektintunnistusmalli JumpStart API:illa

Seuraavissa osioissa tarjoamme vaiheittaisen esittelyn siitä, kuinka uusia JumpStart API:ita käytetään edustavaan objektien havaitsemiseen. Näytämme, kuinka käyttää esiopetettua objektintunnistusmallia objektien tunnistamiseen ennalta määritetyistä luokkien joukosta kuvassa, jossa on rajauslaatikot. Lopuksi näytämme, kuinka voit hienosäätää valmiiksi koulutettua mallia omassa tietojoukossasi tunnistamaan kuvissa yrityksesi tarpeisiin sopivia kohteita yksinkertaisesti tuomalla omat tietosi. Tarjoamme an mukana oleva muistikirja tätä läpikäyntiä varten.

Käymme läpi seuraavat korkean tason vaiheet:

  1. Tee johtopäätös esikoulutetusta mallista.
    1. Hae JumpStart-artefaktit ja ota käyttöön päätepiste.
    2. Tee kysely päätepisteestä, jäsennä vastaus ja näytä malliennusteet.
  2. Hienosäädä esikoulutettu malli omalla tietojoukollasi.
    1. Hae harjoitusartefaktit.
    2. Juokse koulutus.

Tee johtopäätös esikoulutetusta mallista

Tässä osiossa valitsemme JumpStartissa sopivan esiopetetun mallin, otamme tämän mallin käyttöön SageMaker-päätepisteeseen ja näytämme, kuinka päättely suoritetaan käyttöönotetusta päätepisteestä. Kaikki vaiheet ovat saatavilla osoitteessa mukana Jupyter-muistikirja.

Hae JumpStart-artefaktit ja ota käyttöön päätepiste

SageMaker on Docker-säiliöihin perustuva alusta. JumpStart käyttää saatavilla olevaa kehyskohtaista SageMaker Deep Learning -säiliöt (DLC:t). Haemme mahdolliset lisäpaketit sekä komentosarjat koulutuksen ja johtopäätösten käsittelemiseksi valitulle tehtävälle. Lopuksi esiopetetut malliesineet haetaan erikseen model_uris, joka tarjoaa alustalle joustavuutta. Voit käyttää mitä tahansa mallia, jotka on esikoulutettu samaan tehtävään yhdellä harjoitus- tai päättelykomentosarjalla. Katso seuraava koodi:

infer_model_id, infer_model_version = "pytorch-od-nvidia-ssd", "*" # Retrieve the inference docker container uri. This is the base container PyTorch image for the model selected above. deploy_image_uri = image_uris.retrieve(region=None, framework=None, image_scope="inference",model_id=infer_model_id, model_version=infer_model_version, instance_type=inference_instance_type) # Retrieve the inference script uri. This includes all dependencies and scripts for model loading, inference handling etc.
deploy_source_uri = script_uris.retrieve(model_id=infer_model_id, model_version=infer_model_version, script_scope="inference") # Retrieve the base model uri. This includes the pre-trained nvidia-ssd model and parameters.
base_model_uri = model_uris.retrieve(model_id=infer_model_id, model_version=infer_model_version, model_scope="inference")

Seuraavaksi syötämme resurssit a SageMaker malli esiintyy ja ota käyttöön päätepiste:

# Create the SageMaker model instance
model = Model(image_uri=deploy_image_uri, source_dir=deploy_source_uri, model_data=base_model_uri, entry_point="inference.py", role=aws_role, predictor_cls=Predictor, name=endpoint_name) # deploy the Model. Note that we need to pass Predictor class when we deploy model through Model class for being able to run inference through the sagemaker API.
base_model_predictor = model.deploy(initial_instance_count=1, instance_type=inference_instance_type, predictor_cls=Predictor, endpoint_name=endpoint_name)

Päätepisteen käyttöönotto voi kestää muutaman minuutin.

Tee kysely päätepisteestä, jäsennä vastaus ja näytä ennusteet

Päätelmien saamiseksi käyttöönotetusta mallista syötekuva on toimitettava binäärimuodossa hyväksymistyypin kanssa. JumpStartissa voit määrittää palautettavien rajausruutujen määrän. Seuraavassa koodinpätkässä ennustamme kymmenen rajausruutua kuvaa kohden liittämällä ;n_predictions=10 että Accept. Jos haluat ennustaa xx-laatikoita, voit muuttaa sen muotoon ;n_predictions=xx tai saat kaikki ennustetut ruudut jättämällä pois ;n_predictions=xx täysin.

def query(model_predictor, image_file_name): with open(image_file_name, "rb") as file: input_img_rb = file.read() return model_predictor.predict(input_img_rb,{ "ContentType": "application/x-image", "Accept": "application/json;verbose;n_predictions=10"}) query_response = query(base_model_predictor, Naxos_Taverna)

Seuraava koodinpätkä antaa sinulle välähdyksen siitä, miltä kohteen tunnistus näyttää. Jokaiselle objektiluokalle ennustettu todennäköisyys visualisoidaan yhdessä sen rajauslaatikon kanssa. Käytämme parse_response ja display_predictions aputoiminnot, jotka on määritelty mukana muistikirja.

normalized_boxes, classes_names, confidences = parse_response(query_response)
display_predictions(Naxos_Taverna, normalized_boxes, classes_names, confidences)

Seuraavassa kuvakaappauksessa näkyy kuvan tulos ennustetarroineen ja rajauslaatikoineen.

Amazon SageMaker JumpStart -mallit ja -algoritmit ovat nyt saatavilla API PlatoBlockchain Data Intelligencen kautta. Pystysuuntainen haku. Ai.

Hienosäädä esikoulutettu malli omalla tietojoukollasi

Olemassa olevat JumpStartin objektientunnistusmallit on esikoulutettu joko COCO- tai VOC-tietojoukoissa. Jos sinun on kuitenkin tunnistettava objektiluokkia, joita ei ole alkuperäisessä esiopetustietojoukossa, sinun on hienosäädettävä mallia uudessa tietojoukossa, joka sisältää nämä uudet objektityypit. Jos esimerkiksi sinun on tunnistettava keittiövälineet ja suoritettava päätelmiä käyttöön otetusta esikoulutetusta SSD-mallista, malli ei tunnista uusien kuvatyyppien ominaisuuksia ja siksi tulos on virheellinen.

Tässä osiossa osoitamme, kuinka helppoa on hienosäätää esikoulutettu malli tunnistamaan uudet objektiluokat JumpStart API:iden avulla. Täydellinen koodiesimerkki lisätietoineen on saatavilla osoitteessa mukana oleva muistikirja.

Hae harjoitusartefaktit

Koulutusartefaktit ovat samanlaisia ​​kuin edellisessä osiossa käsitellyt päättelyartefaktit. Koulutus vaatii Docker-perussäiliön, nimittäin seuraavan esimerkkikoodin MXNet-kontin. Kaikki koulutukseen tarvittavat lisäpaketit sisältyvät koulutusskripteihin train_sourcer_uri. Esikoulutettu malli ja sen parametrit pakataan erikseen.

train_model_id, train_model_version, train_scope = "mxnet-od-ssd-512-vgg16-atrous-coco","*","training"
training_instance_type = "ml.p2.xlarge" # Retrieve the docker image. This is the base container MXNet image for the model selected above. train_image_uri = image_uris.retrieve(region=None, framework=None, model_id=train_model_id, model_version=train_model_version, image_scope=train_scope,instance_type=training_instance_type) # Retrieve the training script and dependencies. This contains all the necessary files including data processing, model training etc.
train_source_uri = script_uris.retrieve(model_id=train_model_id, model_version=train_model_version, script_scope=train_scope) # Retrieve the pre-trained model tarball to further fine-tune
train_model_uri = model_uris.retrieve(
model_id=train_model_id, model_version=train_model_version, model_scope=train_scope)

Juokse koulutus

Harjoittelun suorittamiseksi syötämme tarvittavat artefaktit ja joitain lisäparametreja a SageMaker estimaattori ja soita .fit toiminto:

# Create SageMaker Estimator instance
od_estimator = Estimator( role=aws_role, image_uri=train_image_uri, source_dir=train_source_uri, model_uri=train_model_uri, entry_point="transfer_learning.py", # Entry-point file in source_dir and present in train_source_uri. instance_count=1, instance_type=training_instance_type, max_run=360000, hyperparameters=hyperparameters, output_path=s3_output_location,
) # Launch a SageMaker Training job by passing s3 path of the training data
od_estimator.fit({"training": training_dataset_s3_path}, logs=True)

Algoritmin harjoittelun aikana voit seurata sen edistymistä joko SageMaker-muistikirjassa, jossa käytät itse koodia, tai amazonin pilvikello. Kun koulutus on suoritettu, hienosäädetyt malliesineet ladataan tiedostoon Amazonin yksinkertainen tallennuspalvelu (Amazon S3) lähtöpaikka määritetty koulutuskokoonpanossa. Voit nyt ottaa mallin käyttöön samalla tavalla kuin esikoulutettu malli. Voit seurata prosessin loppua kohdassa mukana oleva muistikirja.

Yhteenveto

Tässä viestissä kuvailimme äskettäin julkaistujen JumpStart API:iden arvoa ja niiden käyttöä. Annoimme linkit 17 esimerkkimuistikirjaan JumpStartin tukemiin erilaisiin ML-tehtäviin ja opastimme sinut objektintunnistusmuistikirjan läpi.

Odotamme innolla kuulevasi, kun kokeilet JumpStartia.


Tietoja Tekijät

Amazon SageMaker JumpStart -mallit ja -algoritmit ovat nyt saatavilla API PlatoBlockchain Data Intelligencen kautta. Pystysuuntainen haku. Ai.Tohtori Vivek Madan on soveltuva tutkija Amazon SageMaker JumpStart -tiimin kanssa. Hän sai tohtorin tutkinnon Illinoisin yliopistosta Urbana-Champaignissa ja oli tutkijatohtorina Georgia Techissä. Hän on aktiivinen koneoppimisen ja algoritmisuunnittelun tutkija ja julkaissut julkaisuja EMNLP-, ICLR-, COLT-, FOCS- ja SODA-konferensseissa.

Amazon SageMaker JumpStart -mallit ja -algoritmit ovat nyt saatavilla API PlatoBlockchain Data Intelligencen kautta. Pystysuuntainen haku. Ai.João Moura on AI/ML Specialist Solutions -arkkitehti Amazon Web Servicesissä. Hän keskittyy enimmäkseen NLP-käyttötapauksiin ja auttaa asiakkaita optimoimaan Deep Learning -mallin koulutusta ja käyttöönottoa.

Amazon SageMaker JumpStart -mallit ja -algoritmit ovat nyt saatavilla API PlatoBlockchain Data Intelligencen kautta. Pystysuuntainen haku. Ai.Tohtori Ashish Khetan on vanhempi soveltuva tutkija Amazon SageMaker JumpStart ja Amazon SageMakerin sisäänrakennetut algoritmit ja auttaa kehittämään koneoppimisalgoritmeja. Hän on aktiivinen koneoppimisen ja tilastollisen päättelyn tutkija ja on julkaissut monia artikkeleita NeurIPS-, ICML-, ICLR-, JMLR- ja ACL-konferensseissa.

Aikaleima:

Lisää aiheesta AWS-koneoppiminen