Kuidas Yara kasutab Amazon SageMakeri MLOps-funktsioone energia optimeerimiseks oma ammoniaagitehastes PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.

Kuidas Yara kasutab Amazon SageMakeri MLOps funktsioone oma ammoniaagitehaste energia optimeerimiseks

Yara on maailma juhtiv põllukultuuride toitmise ettevõte ning keskkonna- ja põllumajanduslahenduste pakkuja. Yara ambitsioon on keskendunud looduspositiivse toidu tuleviku kasvatamisele, mis loob väärtust klientidele, aktsionäridele ja ühiskonnale laiemalt ning pakub jätkusuutlikumat toidu väärtusahelat. Toetades meie nägemust näljavabast maailmast ja austatud planeedist, järgib Yara jätkusuutliku väärtuse kasvu strateegiat, edendades kliimasõbralikku põllukultuuride toitumist ja heitmevabasid energialahendusi. Yara on ka maailma suurim ammoniaagi, nitraatide ja NPK väetised. Nende tootmissegment on seetõttu nende missiooni täitmise lahutamatuks ehitusplokiks – selgelt väljendatud ambitsiooniga saada maailmas juhtivaks selliste näitajate osas nagu ohutus, keskkonnajalajälg, kvaliteet ja tootmiskulud. Yara pikaajaline eesmärk on nullheite ja madalate kuludega tulevikutehas.

Lahedale ümberkujundamisele tuginedes keskendub Yara digitaalsetele lahendustele, et aidata neil oma ambitsioone saavutada. Selle jõupingutuse juhtimiseks asutas Yara ülemaailmse üksuse nimega Digital Production. Digitootmise ja selle lahenduste edu on Yara jaoks esmatähtis ning Yara suurendas oma jõupingutusi selles valdkonnas märkimisväärselt. Kriitiline fookusvaldkond on kasutada ära tohutut hulka andmeid, mis nende tegevuse käigus genereeritakse. Seetõttu ehitab Yara andmepõhiseid tooteid, mis aitavad optimeerida tootmist, tõsta toodete kvaliteeti, suurendada tootmiskohtade töökindlust, vähendada heitkoguseid, tõsta töötajate ohutust ja tootlikkust, automatiseerida käsitsi protsesse ja palju muud.

Energia on paljude tootmisettevõtete peamine kulukomponent; seega on energiatõhususel oluline mõju kasumlikkusele. Tihti napib aga kindlaid viiteid selle kohta, kuidas hea sooritus välja näeb ja kuidas sinna jõuda. Yara energiakoormuse kõver (ELC) on lahendus, mis kasutab energiatarbimise parimat ajaloolist jõudlust võrreldes praeguse jõudlusega. Kui praegune tarbimine erineb liiga palju ajaloolisest parimast, annab tööriist operaatoritele soovitusi energiatarbimise suunamiseks.

ELC juurutamiseks tootmistehastes ja selle mitmes kohas üle maailma skaleerimiseks pidi Yara ehitama MLOps platvormi. See tagaks, et Yara koolitab, juurutab ja hooldab mudeleid usaldusväärselt ja tõhusalt. Lisaks pidi Yara selle mitmele saidile skaleerimiseks automatiseerima juurutamis- ja hooldusprotsessid. Selles postituses arutame, kuidas Yara kasutab Amazon SageMaker funktsioonid, sealhulgas mudeliregister, Amazon SageMakeri mudelimonitorja Amazon SageMakeri torujuhtmed masinõppe (ML) elutsükli sujuvamaks muutmiseks, automatiseerides ja standardiseerides MLOps-i tavasid. Anname ülevaate seadistamisest, tutvustades ML-mudelite ehitamise, väljaõppe, juurutamise ja jälgimise protsessi kogu maailmas.

Ülevaade lahendusest

ELC kasutab asjade Interneti (IoT) andurite andmeid tehasest. Need andurid mõõdavad selliseid mõõdikuid nagu tootmise läbilaskevõime, keskkonnatingimused ja tooraine tingimused jne. Neid andmeid kasutatakse energiaennustusmudeli väljaõpetamiseks, mida kasutatakse seejärel tunniennustuste koostamiseks. Tehase operaatorid jälgivad tegelikku energiatarbimist ja võrdlevad seda ELC prognoositud optimaalse tarbimisega. Kui praegune energiatarbimine kaldub optimaalsest liiga palju kõrvale, pakub ELC toimingu sisemiste protsessimuutujate kohandamiseks, et optimeerida analüütiliste mudelite põhjal energiatõhusust.

ELC-d hostitakse pilves. Andurite andmete voogesitamiseks tehasest reaalajas kasutab Yara AWS IoT Greengrass kellega turvaliselt suhelda AWS IoT Core ja eksportida IoT andmed AWS-i pilve. AWS IoT SiteWise on hallatav teenus, mis suudab koguda, korraldada, otsida ja tarbida tööstusseadmete andmeid ulatuslikult. Yara on loonud API-sid kasutades Amazon API värav anduri andmete eksponeerimiseks sellistele rakendustele nagu ELC.

ELC-rakenduse taustaprogramm on juurutatud Amazon ECS-i kaudu ja toidab esiosas olevaid ELC-armatuurlaudu, mida tehase operaatorid kasutavad. ELC rakendus vastutab jaama operaatoritele igatunnise prognoositava energiatarbimise mõõdiku pakkumise eest. Igale tehasele on paigaldatud oma mudel, kuna nende energiatarbimise omadused on erinevad. Lisaks on taimed nende asukoha alusel rühmitatud erinevatesse AWS-i piirkondadesse.

Järgmine diagramm illustreerib seda arhitektuuri.

ELC ehitamiseks ja mitme tehase jaoks skaleerimiseks vajasime MLOps-lahendust, mis toetab järgmist:

  • Skaalautuvus - See võib skaleerida vastusena andmemahtudele. Mõned taimed toodavad rohkem andmeid kui teised; iga tehas suudab toota mitu gigabaiti andmemahtu päevas.
  • Laiendatavus – Seda saab juurutada uutele piirkondadele ja kontodele.
  • Korratavus – Sellel on ühised mallid, mida saame kasutada uue tehase pardale panemiseks.
  • Paindlikkus – See võib muuta juurutamise konfiguratsiooni vastavalt iga tehase vajadustele.
  • Töökindlus ja jälgimine – See suudab katsetada ja omab selget ülevaadet kõigi aktiivsete taimede olekust. Ebaõnnestumise korral võib see tagasi pöörduda eelmisele stabiilsele olekule.
  • hooldus – Lahendusel peab olema madal hoolduskulu. Võimaluse korral peaks see kasutama serverita teenuseid, et vähendada infrastruktuuri jalajälge.

ML-i jaoks otsustas Yara kasutada SageMakerit. SageMaker on täielikult hallatav teenus, mis hõlmab kogu ML-i töövoogu. Järgmised funktsioonid olid SageMakeri valimisel kriitilise tähtsusega:

  • SageMakeri raamistiku konteinerid – Yara oli treeninud TensorFlow ELC ennustavaid mudeleid ning SageMakeri raamistiku konteinerite abil suutis Yara need mudelid minimaalsete koodimuudatustega SageMakerisse tõsta ja nihutada.
  • SageMakeri torujuhtmed - SageMaker Pipelines pakuvad Pythoni liidest andmeteadlastele ML-konveierite kirjutamiseks. Suur osa ELC koodist koosneb treeningust ja järelduste konveierist, mis on defineeritud Pythonis.
  • SageMakeri mudeliregister – SageMakeri mudeliregister võimaldab kataloogida ja versioonikontrolli mudeleid. Lisaks muudab see mudeli metaandmete (nt koolitusmõõdikute) haldamise lihtsaks.
  • SageMakeri mudelimonitor – Yara soovis jälgida nii sissetulevate andmete kvaliteeti ja levikut kui ka ELC mudeli jõudlust. SageMaker Model Monitor API-d pakuvad andmete ja mudelite kvaliteedi jälgimist.

ML torujuhtmete pideva integreerimise ja pideva tarnimise (CI/CD) haldamiseks kasutab Yara Amazoni juurutamise raamistik (ADF). ADF on avatud lähtekoodiga raamistik, mille on välja töötanud AWS, et hallata ja juurutada ressursse mitme AWS-i konto ja piirkonna vahel AWS-i organisatsioonis. ADF võimaldab rakenduste või ressursside etapiviisilist, paralleelset, mitme kontoga ja piirkondadeülest juurutamist jaotises määratletud struktuuri kaudu. AWS-i organisatsioonid, kasutades samal ajal selliseid teenuseid nagu AWS CodePipeline, AWS CodeBuild, AWS CodeCommitja AWS CloudFormation et leevendada raskuste tõstmist ja juhtimist võrreldes traditsioonilise CI/CD seadistusega.

Lahenduse ülevaade

Kogu MLOps platvormi lahendus töötati välja kahe kuu jooksul koostöös AWS-i professionaalsed teenused. Projekti kallal töötav meeskond koosnes andmeteadlastest, andmeinseneridest ja DevOpsi spetsialistidest. Kiirema arengu hõlbustamiseks mitme meeskonnaga keskkonnas otsustas Yara kasutada AWS Landing Zone ja organisatsioonid erinevate AWS-i kontode keskseks loomiseks, haldamiseks ja haldamiseks. Näiteks Yaral on keskne juurutamiskonto ja ta kasutab ärirakenduste hostimiseks töökoormuse kontosid. ELC on protsesside optimeerimise kasutusjuht ja seda kasutatakse töökoormuse kontode optimeerimiseks. Yara Digital Productioni meeskond tegeleb ML-i kasutusjuhtudega ka muudes valdkondades peale optimeerimise. MLOps-i raamistik toetab juurutamist mis tahes töökoormuse kontodele seni, kuni kontod luuakse organisatsioonide kaudu.

Järgmine diagramm illustreerib seda arhitektuuri.

Konto seadistamise organisatsioonid

Keskse juurutuskonto kasutamine muudab levinud artefaktide ja CI/CD torujuhtmete haldamise lihtsaks. Nende levinud artefaktide juurdepääsu haldamise ja turvalisuse osas on see lihtsam disain, kuna lubade piire ja krüpteerimisvõtmeid hallatakse ühes kohas tsentraalselt. Järgmistes jaotistes juhendame teid läbi sammud, mis on vajalikud Yara MLOps platvormi uue kasutusjuhtumi kasutuselevõtmiseks.

Kontostrateegia osas on Yaral liivakasti, DEV-i, TEST-i ja PROD-i seadistus. Liivakasti kontot kasutatakse katsetamiseks ja uute ideede proovimiseks. DEV-konto on CI/CD-konveieri lähtepunkt ja kogu arendus algab siit. Juurutuskonto sisaldab CI/CD konveieri määratlust ja seda saab juurutada DEV-, TEST- ja PROD-kontodele. Seda konto seadistust on kujutatud järgmisel joonisel.

Konto seadistamise MLO-d

Uue kasutusjuhtumi juurutamine

Selle postituse jaoks eeldame, et meil on kasutusjuhtumi töötav prototüüp ja nüüd tahame selle kasutusele võtta. Kui see kasutusjuhtum kuulub uude tootevaldkonda, peame esmalt varustama kontod organisatsioonide abil, mis käivitab automaatselt ADF-i, et need kontod juurutamiseks alglaadida. Yara järgib kontostrateegiat DEV>TEST>PROD; see konfiguratsioon pole aga kohustuslik. Andmekontod paljastavad andmetele juurdepääsuks API-d ja uue kasutusjuhtumi puhul tuleb anda vajalikud rollid AWS-i identiteedi- ja juurdepääsuhaldus (IAM) õigused, et nad pääseksid juurde Data API-dele.

Järgmisena peame määratlema, millistele kontodele see kasutusjuhtum juurutatakse. Seda tehakse ADF-i juurutuskaardi abil. Juurutuskaart on konfiguratsioonifail, mis sisaldab konveieri etappide ja sihtmärkide vastendamist. Juurutuskaardi käitamiseks kasutab ADF CodePipeline'i. ADF pakub paindlikkust parameetrite haldamiseks vastavalt sihtkeskkonnale, kuhu virn on juurutatud. See muudab juurutuste haldamise ja väiksemate eksemplaridega testimise lihtsaks.

Kõigi artefaktide, nagu kood, andmed ja mudelifailid, krüptimiseks loome AWS-i võtmehaldusteenus (AWS KMS) võti. Võite kasutada ka serveripoolset krüptimist. Kuna aga mõnele loodud artefaktile pääseb juurde kontode kaudu, peame kontoülese juurdepääsu andmiseks looma oma võtme ja haldama selle lubade eeskirju.

Lõpuks peame looma mudelipakettide rühma, et rühmitada mudeli erinevad versioonid, kasutades SageMakeri mudeliregistrit, mis on SageMakeri võimalus mudelite jälgimiseks ja haldamiseks, kui need liiguvad läbi ML-i elutsükli.

Koolitustoru mudel

Iga uue ELC jaoks kaasatud tehase jaoks loome uue SageMakeri koolitustorustiku. See konveier koosneb andmete eeltöötlusest ja mudeli väljaõppe etappidest. SageMakeri torujuhtmed sobivad Yara jaoks hästi, kuna need pakuvad Pythoni liidest ML-i töövoo määratlemiseks. Lisaks saab töövoo erinevaid etappe konfigureerida erinevalt skaleerima. Näiteks saate koolituse jaoks määrata palju suurema eksemplari kui mudeli hindamise etapi jaoks. Konveieri iga etapi sisend- ja väljundparameetrid salvestatakse, mis muudab iga käitamise ja selle väljundite jälgimise lihtsaks. Koolituse töövoo kõrgetasemeline ülevaade on järgmine.

SageMakeri koolitustoru

Mudeli hindamise etapi osana kasutatakse hindamisandmestikku, et luua mõõdikuid, nagu täpsus ja ruutkeskmise vea (RMSE) kõrvalekalle koolitatud mudelis. Need mõõdikud lisatakse mudeli metaandmetele enne mudeli registreerimist mudeliregistrisse. Praegu viiakse mudelid käsitsi kõrgematesse keskkondadesse üle ja mudeli kinnitaja saab vaadata mudelimõõdikuid, et tagada uue versiooni parem toimivus kui praegune mudel.

Mudelite versiooni kontrollitakse mudeliregistri abil, kusjuures igal tehasel on oma mudelipakettide rühm. Lisaks saate mudeliregistri abil jälgida, millised mudeliversioonid millistesse keskkondadesse juurutatakse. Mudel võib olla a Tõrjutud, Käsitsi kinnitamise ootelvõi Kinnitatud olekus ja ainult mudelid, mis on Kinnitatud olekut saab kasutusele võtta. See pakub ka kaitset mudeli heakskiitmata versiooni juhusliku juurutamise eest.

Mudeli järeldus- ja seirekonveier

Mudeli juurutamiseks ja mudeli jälgimise seadistamiseks seadistasime teise SageMakeri torujuhtme. ELC rakendus pakub tehase operaatoritele nõudmisel ennustusi, seetõttu pääseb mudelitele juurde ELC taustaprogrammist tehtud API-kõnede kaudu. SageMakeri järelduse lõpp-punktid pakuvad täielikult hallatud mudeli hostimislahendust koos API kihiga; lõpp-punktid võtavad mudeli sisendi kasuliku koormuse ja tagastamise ennustustena. Kuna latentsusaeg on oluline tegur ka lõppkasutajate jaoks, kes ei taha värskendatud ennustuste saamisega kaua oodata, valis Yara SageMakeri reaalajas järelduse lõpp-punktid, mis on eriti sobivad väga madalate latentsusnõuetega töökoormuse jaoks. Lõpuks, kuna ELC-rakendusel ei saa värskendatud mudelite juurutamise ajal olla seisakuid, tugineb see SageMakeri reaalajas lõpp-punktide sinise/rohelise juurutamise võimalusele, et tagada vana mudeli versioon jätkab prognooside teenindamist kuni uue versiooni juurutamiseni. .

Järgmine diagramm illustreerib juurutamise ja jälgimise seadistust.

SageMakeri järelduste konveier

Mudeli jälgimiseks kasutab Yara SageMakerit andmete kvaliteedi, mudeli kvaliteetja mudeli seletatavus jälgimine. Andmete kvaliteedi jälgimine kontrollib järjepidevust ja genereerib andmete levitamise statistikat. Mudeli kvaliteedi jälgimine kontrollib mudeli jõudlust ja võrdleb mudeli täpsust treeningmõõdikutega. Mudelseire aruanded genereeritakse tunnipõhiselt. Neid aruandeid kasutatakse mudeli jõudluse jälgimiseks tootmises. Mudeli seletatavuse seiret kasutatakse selleks, et mõista, millised funktsioonid ennustamisele kõige rohkem panustavad.

Neid mudeli seletatavuse tulemusi jagatakse ELC armatuurlaual, et anda tehase operaatoritele rohkem konteksti selle kohta, mis energiatarbimist juhib. See toetab ka sisemise protsessi reguleerimise toimingu määramist juhul, kui energiatarbimine kaldub optimaalsest punktist kõrvale.

CI/CD voog

Treeningu torujuhtmete CI/CD voog algab DEV-kontol. Yara järgib funktsioonipõhist arendusmudelit ja uue funktsiooni väljatöötamisel liidetakse funktsiooniharu pagasiruumi, mis alustab juurutamist. ELC-mudeleid koolitatakse DEV-kontol ning pärast mudeli koolitamist ja hindamist registreeritakse see mudeliregistris. Mudeli kinnitaja kontrollib enne mudeli oleku värskendamist Kinnitatud. See toiming genereerib sündmuse, mis käivitab mudeli järelduskonveieri juurutamise. Mudeli järelduse konveier juurutab uue mudeliversiooni DEV-i SageMakeri lõpp-punkti.

Pärast lõpp-punkti juurutamist käivitatakse häälestuse käitumise kontrollimise testid. Testimiseks kasutab Yara CodeBuildi testiaruanded. See funktsioon võimaldab arendajatel käivitada seadmeteste, konfiguratsiooniteste ja funktsionaalseid teste enne ja pärast juurutamist. Sel juhul käivitab Yara funktsionaalseid teste, edastades testi kasulikud koormused SageMakeri lõpp-punktidele ja hinnates vastust. Pärast nende testide läbimist jätkab torujuhe SageMakeri lõpp-punktide juurutamist TEST-i. ELC-taustaprogramm on juurutatud ka TEST-i, mis muudab rakenduse täieliku testimise selles keskkonnas võimalikuks. Lisaks käivitab Yara testis TEST kasutajate aktsepteerimise testi. TEST-st PROD-i juurutamise käivitaja on käsitsi kinnitatav toiming. Pärast seda, kui uus mudeliversioon on testis TEST läbinud nii funktsionaalsuse kui ka kasutajate aktsepteerimise testi, kiidab insenerimeeskond heaks mudeli juurutamise PROD-s.

Järgmine joonis illustreerib seda töövoogu.

CodePipeline'i plaan

Levinud komponendid

ELC jaoks kasutame mitmeid komponente, mis on ühised kõigi juurutamisetappide (DEV, TEST, PROD) ja mudelite jaoks. Need komponendid asuvad meie juurutuskontol ja hõlmavad mudeli versiooni juhtimist, konteineri kujutiste hoidlat, krüpteerimisvõtit ja ämbrit levinud artefaktide salvestamiseks.

Kuidas Yara kasutab Amazon SageMakeri MLOps-funktsioone energia optimeerimiseks oma ammoniaagitehastes PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.

Tavaliste artefaktide kasutamisel on mitmeid eeliseid. Näiteks ei pea ressursse looma iga konto jaoks, mis tagab kontode ühilduvuse. See tähendab, et loome konteineri kujutised ühe korra ja kasutame neid uuesti kõigil sihtkontodel, vähendades sellega koostamisaega.

See konveier salvestab erinevad mudeliversioonid juurutuskonto ühises mudeliregistris. Sellest kesksest asukohast saab mudeleid juurutada kõikidel kontodel ilma neid üle kandmata. Samamoodi muudab keskselt salvestatud krüpteerimisvõtme kasutamine võtme ja kontoüleste lubade haldamise lihtsamaks.

Levinud artefaktide kasutamise üks puudus on see, et uue kasutusjuhtumi kasutuselevõtt võib muutuda keerukamaks. Uue kasutusjuhtumi kasutuselevõtmiseks tuleb luua uus mudeliregister ja vajadusel uus konteineri kujutiste hoidla. Samuti soovitame luua uue krüpteerimisvõtme, et ressursse ja salvestatud andmeid rangelt eraldada.

Järeldus

Selles postituses näitasime, kuidas Yara kasutas SageMakerit ja ADF-i väga skaleeritava MLOps-platvormi loomiseks. ML on funktsionaalne funktsioon ja meeskonnad juurutavad mudeleid erinevatele äriüksuste kontodele. Seetõttu muudab ADF, mis pakub natiivset integreerimist organisatsioonidega, ideaalseks kandidaadiks kontode alglaadimiseks CI/CD torujuhtmete seadistamiseks. Toimivalt töötavad ADF-i torujuhtmed kesksel juurutuskontol, mis muudab juurutuste üldise terviseülevaate hankimise lihtsaks. Lõpuks kasutab ADF AWS-i hallatavaid teenuseid, nagu CodeBuild, CodeDeploy, CodePipeline ja CloudFormation, muutes selle konfigureerimise ja hooldamise lihtsaks.

SageMaker pakub laia valikut ML-võimalusi, mis võimaldab meeskondadel keskenduda rohkem äriprobleemide lahendamisele ja vähem infrastruktuuri ehitamisele ja hooldamisele. Lisaks pakub SageMaker Pipelines rikkalikku API-de komplekti ML-i töövoogude loomiseks, värskendamiseks ja juurutamiseks, mistõttu sobib see suurepäraselt MLO-de jaoks.

Lõpuks pakub MLOps parimaid tavasid ML-mudelite usaldusväärseks ja tõhusaks juurutamiseks ja hooldamiseks tootmises. See on kriitilise tähtsusega meeskondade jaoks, kes loovad ja juurutavad ML-lahendusi ulatuslikult MLO-de rakendamiseks. Yara puhul vähendab MLOps märkimisväärselt jõupingutusi, mis on vajalikud uue tehase pardale asumiseks, ELC värskenduste juurutamiseks ja mudelite kvaliteedi jälgimiseks.

Lisateabe saamiseks selle kohta, kuidas rakendusi ADF-i abil juurutada, vaadake näited.


Autoritest

Kuidas Yara kasutab Amazon SageMakeri MLOps-funktsioone energia optimeerimiseks oma ammoniaagitehastes PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai. Shaheer Mansoor on AWS-i andmeteadlane. Tema tähelepanu keskmes on masinõppeplatvormide loomine, mis suudavad AI-lahendusi ulatuslikult majutada. Tema huvivaldkonnad on MLOps, funktsioonipoed, mudelite hostimine ja mudelite jälgimine.

Kuidas Yara kasutab Amazon SageMakeri MLOps-funktsioone energia optimeerimiseks oma ammoniaagitehastes PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.Tim Becker on Yara Internationali vanemandmeteadlane. Digital Productionis keskendub ta ammoniaagi ja lämmastikhappe tootmise protsessi optimeerimisele. Tal on doktorikraad termodünaamikas ja ta on kirglik protsessitehnoloogia ja masinõppe ühendamise vastu.

Kuidas Yara kasutab Amazon SageMakeri MLOps-funktsioone energia optimeerimiseks oma ammoniaagitehastes PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.Yongyos Kaewpitakkun on Yara Internationali digitaaltootmise meeskonna vanemandmeteadlane. Tal on doktorikraad tehisintellekti/masinõppe alal ning paljude aastate praktiline kogemus masinõppe, arvutinägemise ja loomuliku keele töötlemise mudelite kasutamises keeruliste äriprobleemide lahendamisel.

Ajatempel:

Veel alates AWS-i masinõpe