In Osa 1 Tämän sarjan osalta laadimme arkkitehtuurin päästä-päähän MLOps-putkilinjalle visuaalista laaduntarkastuksen käyttötapausta varten reunassa. Se on suunniteltu automatisoimaan koko koneoppimisprosessi (ML) datamerkinnöistä mallin koulutukseen ja käyttöönottoon reunalla. Keskittyminen hallittuihin ja palvelimettomiin palveluihin vähentää tarvetta käyttää infrastruktuuria putkistossasi ja mahdollistaa nopean käytön.
Tässä postauksessa perehdymme syvästi siihen, miten putkilinjan merkintä- ja mallinrakennus- ja koulutusosat toteutetaan. Jos olet erityisen kiinnostunut arkkitehtuurin reuna-käyttöönotosta, voit siirtyä eteenpäin Osa 3. Tarjoamme myös mukana GitHub repo jos haluat ottaa käyttöön ja kokeilla tätä itse.
Ratkaisun yleiskatsaus
Tässä sarjassa käytetty esimerkkikäyttötapaus on visuaalinen laaduntarkastusratkaisu, joka pystyy havaitsemaan metallilappujen viat, joita voidaan käyttää osana valmistusprosessia. Seuraava kaavio näyttää MLOps-liukuhihnan korkean tason arkkitehtuurin, jonka määritimme tämän sarjan alussa. Jos et ole vielä lukenut sitä, suosittelemme tutustumaan Osa 1.
Tietojen merkitsemisen automatisointi
Tietojen merkitseminen on luonnostaan työvoimavaltainen tehtävä, joka edellyttää ihmisten (merkitsijöiden) merkitsemistä tietojen merkitsemiseen. Merkintä käyttötapauksessamme tarkoittaa kuvan tarkastamista ja rajoituslaatikoiden piirtämistä jokaisen näkyvän vian varalta. Tämä saattaa kuulostaa yksinkertaiselta, mutta meidän on huolehdittava useista asioista automatisoidaksemme tämän:
- Tarjoa tarrakirjoittajille työkalu rajausruutujen piirtämiseen
- Hallitse etiketöijien työvoimaa
- Varmista etiketin hyvä laatu
- Hallinnoi ja versioi tietojamme ja tunnisteitamme
- Orkesteroi koko prosessi
- Integroi se CI/CD-järjestelmään
Voimme tehdä tämän kaiken AWS-palveluilla. Merkintöjen helpottamiseksi ja työvoimamme hallitsemiseksi käytämme Amazon SageMaker Ground Totuus, tietojen merkintäpalvelu, jonka avulla voit rakentaa ja hallita omia tietomerkintöjen työnkulkuja ja työvoimaa. Voit hallita omaa yksityistä etiketöijien työvoimaasi tai käyttää ulkoisten etiketöijien voimaa Amazon Mechanical Turk tai kolmannen osapuolen tarjoajat.
Tämän lisäksi koko prosessi voidaan määrittää ja hallita AWS SDK:n kautta, jota käytämme merkintätyön ohjaamiseen osana CI/CD-putkistoamme.
Merkintätöitä käytetään merkintätyönkulkujen hallintaan. SageMaker Ground Truth tarjoaa käyttövalmiita malleja monille erilaisille merkintätehtävätyypeille, mukaan lukien rajoitusruutujen piirtämiseen. Katso lisätietoja merkintätyön määrittämisestä rajoituslaatikkotehtäville Virtaviivaistaa tietojen merkitsemistä YOLO-objektien havaitsemiseen Amazon SageMaker Ground Truthissa. Käyttötapauksemme mukautamme tehtävämalli rajauslaatikon tehtäviin ja käytä Mechanical Turkin tarjoamia ihmismerkintöjä kuviemme merkitsemiseen oletusarvoisesti. Seuraava kuvakaappaus näyttää, mitä tarrain näkee, kun hän työskentelee kuvan parissa.
Puhutaan seuraavaksi etiketin laadusta. Tarrojen laatu vaikuttaa ML-mallimme laatuun. Kun kuvien merkitseminen automatisoidaan ulkopuolisella ihmistyövoimalla, kuten Mechanical Turkilla, on haasteellista varmistaa hyvä ja tasainen tarralaatu, koska alueosaamisen puute. Joskus tarvitaan toimialueen asiantuntijoiden yksityistä työvoimaa. Esimerkkiratkaisussamme käytämme kuitenkin Mechanical Turkia kuviemme automaattiseen merkitsemiseen.
On monia tapoja varmistaa hyvä etiketin laatu. Lisätietoja parhaista käytännöistä on AWS re:Invent 2019 -keskustelussa, Luo tarkkoja harjoitustietojoukkoja Amazon SageMaker Ground Truthin avulla. Osana tätä esimerkkiratkaisua päätimme keskittyä seuraaviin:
Lopuksi meidän on pohdittava, kuinka säilyttää tarramme, jotta niitä voidaan käyttää myöhemmin koulutuksessa ja mahdollistaa käytettyjen mallien koulutustietojen jäljitettävyys. The SageMaker Ground Truth -merkintätyön tulos on JSON-lines-muodossa oleva tiedosto, joka sisältää tunnisteet ja lisämetatiedot. Päätimme käyttää offline-myymälä of Amazon SageMaker -ominaisuuskauppa tarrojemme säilyttämiseen. Verrattuna pelkkään tarrojen säilyttämiseen Amazonin yksinkertainen tallennuspalvelu (Amazon S3), se tarjoaa meille muutamia selkeitä etuja:
- Se tallentaa täydellisen historian ominaisuusarvoista yhdistettynä ajankohtaisiin kyselyihin. Näin voimme helposti versioida tietojoukomme ja varmistaa jäljitettävyyden.
- Keskeisenä ominaisuuskauppana se edistää tietojemme uudelleenkäytettävyyttä ja näkyvyyttä.
Katso esittely SageMaker Feature Storesta Aloittaminen Amazon SageMaker Feature Storen kanssa. SageMaker Feature Store tukee ominaisuuksien tallentamista taulukkomuodossa. Esimerkissämme tallennamme seuraavat ominaisuudet jokaiselle merkitylle kuvalle:
- Paikka, johon kuva on tallennettu Amazon S3:ssa
- Kuvan mitat
- Rajauslaatikon koordinaatit ja luokka-arvot
- Tilalippu, joka osoittaa, onko tarra hyväksytty käytettäväksi koulutuksessa
- Tarran luomiseen käytetty tarratyön nimi
Seuraava kuvakaappaus näyttää, miltä tyypillinen ominaisuuskaupan merkintä saattaa näyttää.
Tämän muodon avulla voimme helposti tehdä kyselyjä ominaisuussäilön kautta ja työskennellä tuttujen työkalujen, kuten Pandas, kanssa luodaksemme tietojoukon, jota käytetään myöhemmin harjoitteluun.
Tietojen merkintöjen järjestäminen
Lopuksi on aika automatisoida ja organisoida jokainen merkintäprosessimme vaihe! Tätä varten käytämme AWS-vaihetoiminnot, palvelimeton työnkulkupalvelu, joka tarjoaa meille API-integraatioita työnkulkumme vaiheiden nopeaan organisointiin ja visualisointiin. Käytämme myös sarjaa AWS Lambda toimii joissakin monimutkaisemmissa vaiheissa, erityisesti seuraavissa:
- Tarkista, onko Amazon S3:ssa uusia kuvia, jotka vaativat merkitsemisen
- Valmistele tiedot vaaditussa syöttömuodossa ja aloita merkintätyö
- Valmistele tiedot vaaditussa syöttömuodossa ja aloita tarran tarkistustyö
- Kirjoita lopullinen tarrasarja ominaisuuskauppaan
Seuraava kuva näyttää miltä Step Functions -merkintätilakone näyttää.
Merkintä: Infrastruktuurin käyttöönotto ja integrointi CI/CD:hen
Viimeinen vaihe on integroida Step Functions -työnkulku CI/CD-järjestelmäämme ja varmistaa, että otamme käyttöön tarvittavan infrastruktuurin. Tämän tehtävän suorittamiseksi käytämme AWS Cloud Development Kit (AWS CDK) luodaksesi kaiken tarvittavan infrastruktuurin, kuten Lambda-toiminnot ja Step Functions -työnkulun. Kanssa CDK-putkistot, AWS CDK:n moduuli, luomme liukuhihnan AWS-koodiputki joka ottaa käyttöön muutoksia infrastruktuuriimme ja käynnistää lisäputken Step Functions -työnkulun käynnistämiseksi. The Step Functions -integraatio CodePipeline tekee tästä tehtävästä erittäin helppoa. Käytämme Amazon EventBridge ja CodePipeline Source -toiminnot varmistaakseen, että liukuhihna käynnistyy aikataulussa sekä silloin, kun muutoksia työnnetään gitiin.
Seuraava kaavio näyttää yksityiskohtaisesti, miltä CI/CD-arkkitehtuuri merkintöjä varten näyttää.
Kertaus automatisoidusta tietojen merkitsemisestä
Meillä on nyt toimiva putki, jonka avulla voimme luoda automaattisesti tarroja merkitsemättömistä metallitunnisteiden kuvista SageMaker Ground Truthin avulla. Kuvat poimitaan Amazon S3:sta ja syötetään SageMaker Ground Truth -merkintätyöhön. Kun kuvat on merkitty, teemme laaduntarkistuksen tarran varmistustyöllä. Lopuksi tarrat tallennetaan ominaisuusryhmään SageMaker Feature Storessa. Jos haluat kokeilla toimivaa esimerkkiä itse, tutustu oheiseen GitHub-arkisto. Katsotaan seuraavaksi, kuinka mallinrakennus automatisoidaan!
Automaattinen mallinrakennus
Samoin kuin merkinnät, katsotaanpa perusteellisesti mallinrakennusprosessiamme. Meidän on organisoitava ainakin seuraavat vaiheet:
- Hae uusimmat ominaisuudet ominaisuuskaupasta
- Valmistele tiedot mallikoulutukseen
- Harjoittele mallia
- Arvioi mallin suorituskykyä
- Versio ja tallenna malli
- Hyväksy malli käyttöönottoa varten, jos suorituskyky on hyväksyttävä
Mallinrakennusprosessia ohjaa yleensä datatieteilijä, ja se on tulos joukosta kokeita, jotka on tehty muistikirjoilla tai Python-koodilla. Voimme seurata yksinkertaista kolmivaiheista prosessia kokeen muuntamiseksi täysin automatisoiduksi MLOps-putkilinjaksi:
- Muunna olemassa oleva esikäsittely-, koulutus- ja arviointikoodi komentorivikomentosarjaksi.
- Luo SageMaker-putkilinjan määritelmä mallinrakennuksen järjestämiseksi. Käytä vaiheessa yksi luotuja skriptejä osana käsittely- ja koulutusvaiheita.
- Integroi liukuhihna CI/CD-työnkulkuun.
Tämä kolmivaiheinen prosessi on yleinen ja sitä voidaan käyttää missä tahansa malliarkkitehtuurissa ja valitsemassasi ML-kehyksessä. Noudatetaan sitä ja aloitetaan vaiheesta 1 luodaksesi seuraavat skriptit:
- preprocess.py – Tämä hakee merkittyjä kuvia SageMaker Feature Storesta, jakaa tietojoukon ja muuntaa sen mallimme harjoittamista varten vaadittuun muotoon, tässä tapauksessa YOLOv8:n syöttömuotoon.
- train.py – Tämä kouluttaa Ultralytics YOLOv8 objektintunnistusmalli PyTorchin avulla metallitunnisteiden kuvien naarmujen havaitseminen
Orkestroiva mallirakennus
Vaiheessa 2 niputamme nämä komentosarjat koulutus- ja käsittelytöiksi ja määritämme lopullisen SageMaker-putkilinjan, joka näyttää seuraavalta kuvalta.
Se koostuu seuraavista vaiheista:
- ProcessingStep uusimpien ominaisuuksien lataamiseksi SageMaker Feature Storesta; jakaa tietojoukko koulutus-, validointi- ja testisarjoiksi; ja tallentaa tietojoukot tarballina harjoittelua varten.
- TrainingStep mallin kouluttamiseen koulutus-, validointi- ja testitietojoukon avulla ja mallin keskimääräisen tarkkuuden (mAP) vieminen.
- ConditionStep, jolla arvioidaan, ylittääkö opetetun mallin mAP-mittarin arvo määritetyn kynnyksen. Jos näin on, suoritetaan RegisterModel-vaihe, joka rekisteröi koulutetun mallin SageMaker-mallirekisteriin.
Jos olet kiinnostunut yksityiskohtaisesta putkikoodista, tarkista putkilinjan määritelmä näytevarastossamme.
Koulutus: Infrastruktuurin käyttöönotto ja integrointi CI/CD:hen
Nyt on vaiheen 3 aika: integrointi CI/CD-työnkulkuun. CI/CD-putkistomme noudattaa samaa kaavaa, joka on kuvattu aiemmin etiketöintiosiossa. Käytämme AWS CDK:ta ottamaan käyttöön tarvittavat putkistot CodePipelinesta. Ainoa ero on, että käytämme Amazon SageMaker -putkistot askeltoimintojen sijaan. SageMaker-liukuhihnan määritelmä muodostetaan ja käynnistetään osana CodeBuild-toimintoa CodePipelinessa.
Yhteenveto
Meillä on nyt täysin automatisoitu merkintä- ja mallikoulutuksen työnkulku SageMakerin avulla. Aloitimme luomalla komentorivikomentosarjat kokeilukoodista. Sitten käytimme SageMaker Pipelines -ohjelmistoa kunkin mallin koulutustyönkulun vaiheen järjestämiseen. Komentorivikomentosarjat integroitiin osana koulutus- ja käsittelyvaiheita. Valmistelun lopussa koulutettu malli versioitetaan ja rekisteröidään SageMaker-mallirekisteriin.
Tarkista Osa 3 tämän sarjan, jossa tarkastellaan lähemmin MLOps-työnkulkumme viimeistä vaihetta. Luomme putkilinjan, joka kokoaa ja ottaa käyttöön mallin reunalaitteeseen käyttämällä AWS IoT Vihreä ruoho!
Tietoja kirjoittajista
Michael Roth on AWS:n vanhempi ratkaisuarkkitehti, joka tukee valmistusasiakkaita Saksassa ratkaisemaan liiketoimintahaasteitaan AWS-teknologian avulla. Työn ja perheen lisäksi hän on kiinnostunut urheiluautoista ja nauttii italialaista kahvia.
Jörg Wöhrle on ratkaisuarkkitehti AWS:ssä ja työskentelee valmistusasiakkaiden kanssa Saksassa. Intohimona automaatiota kohtaan Joerg on työskennellyt ohjelmistokehittäjänä, DevOps-insinöörinä ja sivuston luotettavuusinsinöörinä ennen AWS:ää. Pilvien lisäksi hän on kunnianhimoinen juoksija ja nauttii laatuajasta perheensä kanssa. Joten jos sinulla on DevOps-haaste tai haluat mennä lenkille: kerro hänelle.
Johannes Langer on AWS:n vanhempi ratkaisuarkkitehti, joka työskentelee yritysasiakkaiden kanssa Saksassa. Johannes on intohimoinen koneoppimisen soveltamisesta todellisten yritysongelmien ratkaisemiseen. Yksityiselämässään Johannes nauttii kodin kunnostusprojekteista ja ulkoilusta perheen kanssa.
- SEO-pohjainen sisällön ja PR-jakelu. Vahvista jo tänään.
- PlatoData.Network Vertical Generatiivinen Ai. Vahvista itseäsi. Pääsy tästä.
- PlatoAiStream. Web3 Intelligence. Tietoa laajennettu. Pääsy tästä.
- PlatoESG. hiili, CleanTech, energia, ympäristö, Aurinko, Jätehuolto. Pääsy tästä.
- PlatonHealth. Biotekniikan ja kliinisten kokeiden älykkyys. Pääsy tästä.
- Lähde: https://aws.amazon.com/blogs/machine-learning/build-an-end-to-end-mlops-pipeline-for-visual-quality-inspection-at-the-edge-part-2/
- :on
- :On
- :missä
- $ YLÖS
- 1
- 150
- 2019
- 7
- a
- Meistä
- edellä
- suorittaa
- tarkka
- Toiminta
- toimet
- sopeuttaa
- lisä-
- etuja
- vaikuttaa
- Jälkeen
- eteenpäin
- Kaikki
- sallia
- mahdollistaa
- Myös
- Amazon
- Amazon Sage Maker
- Amazon Web Services
- kunnianhimoinen
- an
- ja
- Kaikki
- api
- Hakeminen
- hyväksytty
- arkkitehtuuri
- OVAT
- AS
- ulkomuoto
- At
- automatisoida
- Automatisoitu
- automaattisesti
- automatisointi
- Automaatio
- keskimäärin
- AWS
- AWS uudelleen: keksintö
- BE
- ollut
- ennen
- Alku
- lisäksi
- PARAS
- parhaat käytännöt
- Jälkeen
- Laatikko
- laatikot
- rakentaa
- Rakentaminen
- Niputtaa
- liiketoiminta
- mutta
- by
- CAN
- joka
- autot
- tapaus
- keskeinen
- haaste
- haasteet
- haastava
- Muutokset
- tarkastaa
- tarkkailun
- valinta
- luokka
- lähempänä
- pilvi
- koodi
- kahvi
- yhdistetty
- verrattuna
- täydellinen
- monimutkainen
- määritetty
- johdonmukainen
- muodostuu
- rakentaa
- muuntaa
- voisi
- luoda
- luotu
- Luominen
- Asiakkaat
- tiedot
- tietojen tutkija
- aineistot
- päätti
- syvä
- oletusarvo
- määritellä
- määritelty
- määritelmä
- kaivaa
- sijoittaa
- käyttöön
- käyttöönotto
- lauennut
- yksityiskohta
- yksityiskohtainen
- yksityiskohdat
- havaita
- Detection
- Kehittäjä
- Kehitys
- laite
- ero
- eri
- selvä
- do
- verkkotunnuksen
- tehty
- laadittiin
- piirtää
- piirustus
- ajanut
- kaksi
- kukin
- helposti
- helppo
- reuna
- mahdollistaa
- loppu
- päittäin
- insinööri
- varmistaa
- yritys
- Koko
- merkintä
- arvioida
- arviointi
- esimerkki
- olemassa
- kokeilu
- kokeiluja
- asiantuntemus
- asiantuntijat
- vienti
- ulkoinen
- helpottamaan
- tuttu
- perhe
- Ominaisuus
- Ominaisuudet
- Fed
- harvat
- Kuva
- filee
- lopullinen
- Vihdoin
- Keskittää
- seurata
- jälkeen
- seuraa
- varten
- muoto
- Puitteet
- alkaen
- koko
- täysin
- tehtävät
- Saksa
- saada
- mennä
- Go
- hyvä
- Maa
- Ryhmä
- Olla
- korkean tason
- häntä
- hänen
- historia
- Etusivu
- Miten
- Miten
- Kuitenkin
- HTML
- http
- HTTPS
- ihmisen
- Ihmiset
- if
- kuva
- kuvien
- toteuttaa
- täytäntöön
- parannus
- in
- perusteellinen
- Mukaan lukien
- tiedot
- Infrastruktuuri
- luonnostaan
- panos
- sen sijaan
- yhdistää
- integroitu
- integraatio
- integraatiot
- kiinnostunut
- tulee
- esittely
- Esineiden internet
- IT
- italialainen
- Job
- Työpaikat
- jpg
- Tietää
- Merkki
- merkinnät
- tarrat
- Lack
- myöhemmin
- uusin
- oppiminen
- antaa
- elämä
- pitää
- linja
- kuormitus
- sijainti
- katso
- näyttää joltakin
- ulkonäkö
- kone
- koneoppiminen
- tehdä
- TEE
- hoitaa
- onnistui
- valmistus
- monet
- kartta
- Saattaa..
- tarkoittaa
- välineet
- mekaaninen
- Metadata
- metalli-
- metrinen
- Michael
- ehkä
- minimi
- ML
- MLOps
- malli
- Moduulit
- lisää
- nimi
- Tarve
- Uusi
- seuraava
- nyt
- numero
- objekti
- Objektin tunnistus
- of
- on
- ONE
- vain
- käyttää
- or
- tilata
- meidän
- ulos
- Tulos
- ulkona
- oma
- pandas
- osa
- erityisesti
- osat
- intohimo
- intohimoinen
- Kuvio
- suorituskyky
- henkilöstö
- poimitaan
- putki
- Platon
- Platonin tietotieto
- PlatonData
- Kirje
- teho
- käytännöt
- Tarkkuus
- yksityinen
- ongelmia
- prosessi
- käsittely
- hankkeet
- edistää
- toimittaa
- mikäli
- tarjoajat
- tarjoaa
- Vetää
- työntää
- Python
- pytorch
- laatu
- kyselyt
- nopeasti
- RE
- Lue
- todellinen
- suositella
- vähentää
- katso
- kirjattu
- rekisterit
- rekisterin
- luotettavuus
- säilytyspaikka
- edellyttää
- tarvitaan
- ajaa
- juoksija
- sagemaker
- SageMaker-putkistot
- sama
- aikataulu
- Tiedemies
- skriptejä
- sdk
- Osa
- näkee
- vanhempi
- Sarjat
- serverless
- palvelu
- Palvelut
- setti
- Setit
- Näytä
- Yksinkertainen
- yksinkertaisesti
- paikka
- So
- Tuotteemme
- ratkaisu
- Ratkaisumme
- SOLVE
- jonkin verran
- kuulostaa
- lähde
- erityisesti
- menot
- jakaa
- splits
- Urheilu
- Alkaa
- alkoi
- Osavaltio
- Tila
- Vaihe
- Askeleet
- Levytila
- verkkokaupasta
- tallennettu
- varastot
- tallentamiseksi
- suora
- Tukea
- Tukee
- varma
- järjestelmä
- ottaa
- Puhua
- Tehtävä
- tehtävät
- Elektroniikka
- sapluuna
- malleja
- testi
- että
- -
- heidän
- sitten
- Siellä.
- Nämä
- ne
- asiat
- ajatella
- kolmannen osapuolen
- tätä
- kolmivaiheinen
- kynnys
- Kautta
- aika
- että
- työkalu
- työkalut
- ylin
- Jäljitettävyys
- Juna
- koulutettu
- koulutus
- junat
- muunnoksia
- laukeaa
- Totuus
- yrittää
- tyypit
- tyypillinen
- ui
- us
- käyttää
- käyttölaukku
- käytetty
- käyttämällä
- yleensä
- validointi
- arvo
- arvot
- Vahvistus
- versio
- hyvin
- kautta
- näkyvyys
- näkyvä
- havainnollistaa
- haluta
- tavalla
- we
- verkko
- verkkopalvelut
- HYVIN
- olivat
- Mitä
- kun
- onko
- joka
- koko
- tulee
- with
- Referenssit
- työskenteli
- työnkulku
- työnkulkuja
- työvoima
- työskentely
- vielä
- Yolo
- Voit
- Sinun
- itse
- youtube
- zephyrnet