Hogyan teszi lehetővé az Axfood a felgyorsított gépi tanulást az egész szervezetben az Amazon SageMaker | segítségével Amazon webszolgáltatások

Hogyan teszi lehetővé az Axfood a felgyorsított gépi tanulást az egész szervezetben az Amazon SageMaker | segítségével Amazon webszolgáltatások

Ez az Axfood AB által írt vendégbejegyzés. 

Ebben a bejegyzésben megosztjuk, hogy az Axfood, egy nagy svéd élelmiszer-kiskereskedő hogyan javította a meglévő mesterséges intelligencia (AI) és gépi tanulási (ML) műveleteinek működését és méretezhetőségét az AWS szakértőivel szoros együttműködésben prototípusok létrehozásával és felhasználásával. Amazon SageMaker.

Axfood Svédország második legnagyobb élelmiszer-kiskereskedője, több mint 13,000 300 alkalmazottal és több mint XNUMX üzlettel. Az Axfood struktúrája több decentralizált adattudományi csapattal rendelkezik, amelyek különböző felelősségi területekkel rendelkeznek. Egy központi adatplatform-csapattal együtt az adattudományi csapatok innovációt és digitális átalakulást hoznak a AI és ML megoldásokon keresztül a szervezetbe. Az Axfood az Amazon SageMaker-t használja adatainak ML segítségével történő feldolgozására, és évek óta gyártanak modelleket. Az utóbbi időben a kifinomultság szintje és a gyártott modellek száma exponenciálisan növekszik. Bár az innováció üteme nagy, a különböző csapatok kidolgozták a saját munkamódszereiket, és egy új MLOps legjobb gyakorlatot kerestek.

A mi kihívásunk

Annak érdekében, hogy versenyképes maradjon a felhőszolgáltatások és az AI/ML terén, az Axfood az AWS-szel való együttműködést választotta, és évek óta együttműködik velük.

Az AWS-szel folytatott egyik ismétlődő ötletbörze során megvitattuk, hogyan lehet a legjobban együttműködni a csapatok között, hogy növeljük az innováció ütemét és az adattudomány és az ML-gyakorlók hatékonyságát. Úgy döntöttünk, hogy közös erőfeszítéseket teszünk annak érdekében, hogy prototípust építsünk az MLOps legjobb gyakorlatára. A prototípus célja az volt, hogy modellsablont hozzon létre az összes adattudományi csapat számára, amelyek méretezhető és hatékony ML modelleket hozhatnak létre – ez az alapja az Axfood számára készült mesterséges intelligencia és ML platformok új generációjának. A sablonnak át kell hidalnia és kombinálnia kell az AWS ML szakértőitől származó bevált gyakorlatokat és a vállalatspecifikus bevált gyakorlati modelleket – mindkét világ legjobbjait.

Úgy döntöttünk, hogy prototípust építünk az Axfood egyik jelenleg legfejlettebb ML modelljéből: az áruházak előrejelzése. Pontosabban, az élelmiszer-kiskereskedelmi üzletek következő kampányainak gyümölcs- és zöldségfélékre vonatkozó előrejelzése. A pontos napi előrejelzés támogatja az üzletek rendelési folyamatát, növelve a fenntarthatóságot az élelmiszer-pazarlás minimalizálásával, az értékesítés optimalizálása eredményeként a szükséges bolti készletszintek pontos előrejelzésével. Ez volt a tökéletes kiindulópont prototípusunk számára – nemcsak az Axfood új AI/ML-platformot szerezne, hanem lehetőségünk nyílik arra is, hogy összehasonlítsuk ML-képességeinket, és tanuljunk a vezető AWS-szakértőktől.

Megoldásunk: egy új ML-sablon az Amazon SageMaker Studio-on

A tényleges üzleti esetre tervezett teljes ML-folyamat felépítése kihívást jelenthet. Ebben az esetben egy előrejelzési modellt fejlesztünk, így két fő lépést kell végrehajtani:

  1. Tanítsd meg a modellt, hogy előrejelzéseket készítsen előzményadatok felhasználásával.
  2. Alkalmazza a betanított modellt a jövőbeli események előrejelzéséhez.

Az Axfood esetében erre a célra már egy jól működő csővezetéket állítottak fel a SageMaker notebookok segítségével, amelyet a harmadik féltől származó Airflow munkafolyamat-kezelő platform hangszerelt. Az ML-platformunk modernizálásának és az arra való átállásnak azonban számos egyértelmű előnye van Amazon SageMaker Studio és a Amazon SageMaker csővezetékek. A SageMaker Stúdióba való áttérés számos előre definiált, készenléti funkciót kínál:

  • A modell és az adatok minőségének monitorozása, valamint a modell magyarázhatósága
  • Beépített integrált fejlesztői környezet (IDE) eszközök, például hibakeresés
  • Költség/teljesítmény monitorozás
  • Modell elfogadási keret
  • Modell nyilvántartás

Az Axfood legfontosabb ösztönzője azonban az, hogy egyéni projektsablonokat hozhat létre Amazon SageMaker projektek tervrajzként használható minden adattudományi csapat és ML-gyakorló számára. Az Axfood csapata már robusztus és kiforrott szintű ML modellezéssel rendelkezett, így a fő hangsúly az új architektúra felépítésén volt.

Megoldás áttekintése

Az Axfood által javasolt új ML keretrendszer két fő folyamat köré épül fel: a modell összeállítási folyamat és a kötegkövetkeztetési folyamat:

  • Ezek a folyamatok két különálló Git-lerakatban vannak verziózva: egy összeépítési lerakatban és egy telepítési (következtetési) lerakatban. Együtt robusztus csővezetéket alkotnak a gyümölcsök és zöldségek előrejelzéséhez.
  • A folyamatok egy egyéni projektsablonba vannak csomagolva a SageMaker Projects használatával, harmadik féltől származó Git-tárral (Bitbucket) és Bitbucket-folyamatokkal integrálva a folyamatos integráció és a folyamatos telepítés (CI/CD) összetevőihez.
  • A SageMaker projektsablon a felépítési és üzembe helyezési folyamatok egyes lépéseinek megfelelő kezdőkódot tartalmaz (ezeket a lépéseket ebben a bejegyzésben később részletesebben tárgyaljuk), valamint a folyamat definícióját – a lépések futtatásának receptjét.
  • Az új projektek felépítésének automatizálása a sablon alapján leegyszerűsödik AWS szolgáltatáskatalógus, ahol egy portfólió jön létre, amely több termék absztrakciójaként szolgál.
  • Minden termék egy AWS felhőképződés sablon, amely akkor kerül telepítésre, amikor egy adattudós új SageMaker-projektet hoz létre az MLOps-tervünk alapján. Ez aktiválja a AWS Lambda függvény, amely egy Bitbucket projektet hoz létre két lerakattal – a modellépítéssel és a modelltelepítéssel –, amelyek tartalmazzák a kezdőkódot.

A következő ábra a megoldás architektúráját mutatja be. Az A munkafolyamat a két modell-csővezeték – az építés és a következtetés – közötti bonyolult áramlást ábrázolja. A B munkafolyamat egy új ML-projekt létrehozásának folyamatát mutatja.

How Axfood enables accelerated machine learning throughout the organization using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Modell felépítési csővezeték

A modell összeállítási folyamata levezényli a modell életciklusát, az előfeldolgozástól kezdve, a betanításon keresztül, és a modellnyilvántartásba való regisztrációval végződik:

  • Előfeldolgozás – Tessék, a SageMaker ScriptProcessor osztályt a jellemzők tervezésére alkalmazzák, ami azt az adatkészletet eredményezi, amelyre a modellt betanítják.
  • Képzés és kötegelt átalakítás – A SageMaker egyedi képzési és következtetési konténerei a modell előzményadatokon való betanítására és a kiértékelési adatokra vonatkozó előrejelzések létrehozására szolgálnak a SageMaker Becslő és Transformer segítségével a megfelelő feladatokhoz.
  • Értékelés – A betanított modell kiértékelésen megy keresztül az értékelési adatokon generált előrejelzések és az alapigazság összehasonlításával. ScriptProcessor.
  • Alapmunkák – A folyamat alapvonalakat hoz létre a bemeneti adatok statisztikái alapján. Ezek nélkülözhetetlenek az adatok és a modellek minőségének, valamint a funkció-hozzárendelések figyeléséhez.
  • Modell nyilvántartás – A betanított modellt későbbi használatra regisztrálták. A modellt kijelölt adattudósok hagyják jóvá, hogy a modellt termelési célokra alkalmazzák.

Éles környezetek esetén az adatbevitelt és az indítómechanizmusokat az elsődleges Airflow-hangszerelés kezeli. Eközben a fejlesztés során a folyamat minden alkalommal aktiválódik, amikor egy új véglegesítés kerül bevezetésre a modell felépítésű Bitbucket adattárba. A következő ábra a modell összeállítási folyamatát mutatja be.

How Axfood enables accelerated machine learning throughout the organization using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Kötegelt következtetési folyamat

A kötegelt következtetési folyamat kezeli a következtetési fázist, amely a következő lépésekből áll:

  • Előfeldolgozás – Az adatok előfeldolgozása a használatával történik ScriptProcessor.
  • Kötegelt átalakítás – A modell az egyéni következtetési tárolót használja a SageMaker Transformerrel, és előrejelzéseket generál a bemeneti előfeldolgozott adatok alapján. A használt modell a modellnyilvántartás legújabb jóváhagyott betanított modellje.
  • Utófeldolgozás – Az előrejelzések egy sor utófeldolgozási lépésen esnek át a használatával ScriptProcessor.
  • megfigyelés – A folyamatos felügyelet elvégzi az adatminőséggel, a modellminőséggel és a funkciók hozzárendelésével kapcsolatos eltolódások ellenőrzését.

Ha eltérések merülnek fel, az utófeldolgozási szkripten belüli üzleti logika felméri, hogy szükséges-e a modell átképzése. A csővezeték a tervek szerint rendszeres időközönként fut majd.

A következő diagram a kötegkövetkeztetési folyamatot mutatja be. Az A munkafolyamat az előfeldolgozásnak, az adatminőségnek és a jellemzők hozzárendelésének eltolódásának ellenőrzésének, a következtetésnek és az utófeldolgozásnak felel meg. A B munkafolyamat a modell minőségi eltolódási ellenőrzéseinek felel meg. Ezek a csővezetékek fel vannak osztva, mert a modell minőségi eltolódásának ellenőrzése csak akkor fut le, ha új alapigazság-adatok állnak rendelkezésre.

How Axfood enables accelerated machine learning throughout the organization using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

SageMaker Model Monitor

A Amazon SageMaker Model Monitor integrált, a csővezetékek a következők valós idejű felügyeletét élvezik:

  • Adat minőség – Figyelemmel kíséri az adatok bármilyen eltolódását vagy következetlenségét
  • Modell minőség – Figyeli a modell teljesítményének ingadozásait
  • Funkció-hozzárendelés – Ellenőrzi, hogy nincs-e eltolódás a jellemzők hozzárendeléseiben

A modell minőségének megfigyeléséhez hozzáférés szükséges az alapigazság-adatokhoz. Bár az alapigazság megszerzése időnként kihívást jelenthet, az adatok vagy a jellemzők hozzárendelésének eltolódása figyelése a modell minőségének kompetens proxyjaként szolgál.

Konkrétan az adatminőség eltolódása esetén a rendszer a következőkre figyel:

  • Fogalom sodródás – Ez a bemenet és a kimenet közötti korreláció változásaira vonatkozik, ami alapigazságot igényel
  • Kovariáns eltolódás – Itt a hangsúly a független bemeneti változók eloszlásának megváltoztatásán van

A SageMaker Model Monitor adatsodródási funkciója aprólékosan rögzíti és alaposan megvizsgálja a bemeneti adatokat, szabályokat és statisztikai ellenőrzéseket alkalmaz. A rendszer minden anomáliát észlel.

Azzal párhuzamosan, hogy az adatminőség-eltolódás-ellenőrzéseket proxyként használja a modell romlásának megfigyelésére, a rendszer a jellemzők hozzárendelési eltolódását is figyeli a normalizált diszkontált kumulatív nyereség (NDCG) pontszám segítségével. Ez a pontszám érzékeny mind a funkciók hozzárendelési sorrendjének változásaira, mind a funkciók nyers hozzárendelési pontszámaira. Az egyedi jellemzők hozzárendelésében és azok relatív fontosságában bekövetkezett eltolódás nyomon követésével egyszerűen észlelhető a modell minőségének romlása.

Modell magyarázhatóság

A modell magyarázhatósága az ML telepítések sarkalatos része, mert biztosítja az előrejelzések átláthatóságát. A részletes megértés érdekében használjuk Amazon SageMaker Clarify.

Globális és lokális modellmagyarázatokat is kínál a Shapley-értékkoncepción alapuló modell-agnosztikus jellemző-hozzárendelési technikán keresztül. Ez arra szolgál, hogy dekódolja, miért készült egy adott előrejelzés a következtetés során. Az ilyen magyarázatok, amelyek eredendően kontrasztosak, a különböző alapvonalak alapján változhatnak. A SageMaker Clarify segít ennek az alapvonalnak a meghatározásában a bemeneti adatkészletben lévő K-középek vagy K-prototípusok használatával, amelyeket ezután hozzáadunk a modell összeállítási folyamatához. Ez a funkció lehetővé teszi számunkra, hogy a jövőben generatív AI-alkalmazásokat építsünk, hogy jobban megértsük a modell működését.

Iparosítás: A prototípustól a gyártásig

Az MLOps projekt magas fokú automatizálást tartalmaz, és mintaként szolgálhat hasonló felhasználási esetekre:

  • Az infrastruktúra teljes egészében újrafelhasználható, míg a kezdőkód adaptálható az egyes feladatokhoz, a legtöbb változtatás a folyamat definíciójára és az előfeldolgozás, a betanítás, a következtetések és az utófeldolgozás üzleti logikájára korlátozódik.
  • A betanító és következtetési szkripteket SageMaker egyéni tárolók tárolják, így számos modell befogadható az adatok és a modellfigyelés vagy a modell magyarázhatósági lépéseinek módosítása nélkül, mindaddig, amíg az adatok táblázatos formátumban vannak.

A prototípuson végzett munka után rátértünk arra, hogyan használjuk a gyártásban. Ehhez úgy éreztük, hogy további módosításokat kell végrehajtanunk az MLOps sablonon:

  • A sablon prototípusában használt eredeti kezdőkód tartalmazta az előfeldolgozási és utófeldolgozási lépéseket, amelyeket az ML alapvető lépései előtt és után futtattak (képzés és következtetés). Ha azonban a sablont a termelésben többszörös felhasználási célokra használja, akkor a beépített elő- és utófeldolgozási lépések a kód általánosságának és reprodukálásának csökkenéséhez vezethetnek.
  • Az általánosság javítása és az ismétlődő kódok minimalizálása érdekében úgy döntöttünk, hogy még tovább szűkítjük a folyamatokat. Ahelyett, hogy az elő- és utófeldolgozási lépéseket az ML-folyamat részeként futtatnánk, ezeket az elsődleges Airflow-hangszerelés részeként futtatjuk az ML-folyamat elindítása előtt és után.
  • Ily módon a felhasználási esetspecifikus feldolgozási feladatok elvonatkoztathatók a sablonból, és marad egy alapvető ML-folyamat, amely több felhasználási esetre általánosan jellemző feladatokat hajt végre minimális kódismétléssel. A felhasználási esetenként eltérő paraméterek bemenetként kerülnek az ML-csővezetékbe az elsődleges Airflow hangszerelésből.

Az eredmény: Gyors és hatékony megközelítés a modell felépítéséhez és telepítéséhez

A prototípus az AWS-szel együttműködve egy MLOps-sablont eredményezett, amely a jelenlegi bevált gyakorlatokat követi, és mostantól az Axfood összes adattudományi csapata számára elérhető. Egy új SageMaker projekt létrehozásával a SageMaker Stúdión belül az adattudósok gyorsan és zökkenőmentesen kezdhetik meg az új ML projekteket a termelésbe való átállással, ami hatékonyabb időgazdálkodást tesz lehetővé. Ezt az unalmas, ismétlődő MLOps feladatok automatizálása teszi lehetővé a sablon részeként.

Ezen túlmenően számos új funkcióval bővült automatizált módon az ML-beállításunk. Ezek a nyereségek a következők:

  • Modellfigyelés – Elsodródási ellenőrzéseket végezhetünk a modell és az adatok minőségére, valamint a modell magyarázhatóságára
  • Modell és adatsor – Most már pontosan nyomon követhető, hogy melyik modellhez milyen adatokat használtak fel
  • Modell nyilvántartás – Ez segít a gyártási modellek katalógusában és a modellverziók kezelésében

Következtetés

Ebben a bejegyzésben megvitattuk, hogyan javította az Axfood meglévő AI és ML műveleteink működését és méretezhetőségét az AWS szakértőivel együttműködve, valamint a SageMaker és a kapcsolódó termékek használatával.

Ezek a fejlesztések segíteni fogják az Axfood adattudományi csapatait az ML munkafolyamatok szabványosabb kialakításában, és nagymértékben leegyszerűsítik a termelésben lévő modellek elemzését és nyomon követését – ezzel biztosítva a csapataink által épített és karbantartott ML modellek minőségét.

Kérjük, hagyjon visszajelzést vagy kérdést a megjegyzés rovatban.


A szerzőkről

How Axfood enables accelerated machine learning throughout the organization using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Dr. Björn Blomqvist az Axfood AB mesterséges intelligencia-stratégiájának vezetője. Mielőtt csatlakozott volna az Axfood AB-hez, egy Data Scientist csapatot vezetett az Axfoodhoz tartozó Dagabnál, akik innovatív gépi tanulási megoldásokat építettek ki azzal a küldetéssel, hogy jó és fenntartható élelmiszereket biztosítsanak az embereknek szerte Svédországban. Björn Svédország északi részén született és nőtt fel, szabadidejében havas hegyekre és nyílt tengerekre kalandozik.

How Axfood enables accelerated machine learning throughout the organization using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Oskar Klang Senior Data Scientist a Dagab analitikai osztályán, ahol szívesen dolgozik az analitikával és a gépi tanulással kapcsolatos mindennel, például az ellátási lánc műveleteinek optimalizálásával, előrejelzési modellek felépítésével és újabban a GenAI-alkalmazásokkal. Elkötelezte magát amellett, hogy korszerűbb gépi tanulási folyamatokat építsen, javítva a hatékonyságot és a méretezhetőséget.

How Axfood enables accelerated machine learning throughout the organization using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Pavel Maslov Senior DevOps és ML mérnök az Analytic Platforms csapatban. Pavel kiterjedt tapasztalattal rendelkezik a keretrendszerek, infrastruktúra és eszközök fejlesztésében a DevOps és az ML/AI területén az AWS platformon. Pavel volt az egyik kulcsszereplője az Axfood ML-en belüli alapvető képességeinek kiépítésében.

How Axfood enables accelerated machine learning throughout the organization using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Joakim Berg a csapatvezető és terméktulajdonos elemző platform, amelynek székhelye Svédország Stockholmban található. Egy Data Platform végű DevOps/MLOps mérnökökből álló csapatot vezet, amely adat- és ML platformokat biztosít a Data Science csapatok számára. Joakim sok éves tapasztalattal rendelkezik különböző iparágak vezető fejlesztési és építészeti csapatainak vezetésében.

Időbélyeg:

Még több AWS gépi tanulás