Ta objava je napisana skupaj s Santoshom Waddijem in Nando Kishore Thatikonda iz BigBasketa.
BigBasket je največja indijska spletna trgovina s hrano in živili. Delujejo v več kanalih e-trgovine, kot so hitra trgovina, dostava v režah in dnevne naročnine. Kupujete lahko tudi v njihovih fizičnih trgovinah in na avtomatih. Ponujajo širok izbor več kot 50,000 izdelkov v 1,000 blagovnih znamkah in delujejo v več kot 500 mestih. BigBasket služi več kot 10 milijonom strank.
V tej objavi razpravljamo o uporabi BigBasketa Amazon SageMaker usposobiti svoj model računalniškega vida za identifikacijo izdelkov hitre potrošnje (FMCG), kar jim je pomagalo zmanjšati čas usposabljanja za približno 50 % in prihraniti stroške za 20 %.
Izzivi strank
Danes večina supermarketov in fizičnih trgovin v Indiji omogoča ročno plačevanje na blagajni. To ima dve težavi:
- Zahteva dodatno delovno silo, nalepke s težo in ponavljajoče se usposabljanje za operativno ekipo v trgovini, ko se meri.
- V večini trgovin se blagajniški števec razlikuje od tehtalnih števcev, kar povečuje trenje na nakupovalni poti kupca. Stranke pogosto izgubijo nalepko s težo in se morajo vrniti k tehtalnim pultom, da jo ponovno prevzamejo, preden nadaljujejo s postopkom blagajne.
Postopek samokontrole
BigBasket je v svojih fizičnih trgovinah predstavil sistem blagajne, ki ga poganja AI, ki uporablja kamere za edinstveno razlikovanje artiklov. Naslednja slika prikazuje pregled postopka blagajne.
Ekipa BigBasket je izvajala odprtokodne interne algoritme ML za prepoznavanje objektov z računalniškim vidom, da bi omogočila AI omogočeno blagajno na njihovem sveže (fizične) trgovine. Pri upravljanju njihove obstoječe namestitve smo se soočili z naslednjimi izzivi:
- Z nenehnim uvajanjem novih izdelkov je moral model računalniškega vida nenehno vključevati nove informacije o izdelku. Sistem je potreboval obdelovanje velikega kataloga z več kot 12,000 enotami za vzdrževanje zaloge (SKU), pri čemer so se nove SKU nenehno dodajale s hitrostjo več kot 600 na mesec.
- Da bi bili v koraku z novimi izdelki, je bil vsak mesec izdelan nov model z uporabo najnovejših podatkov o usposabljanju. Pogosto usposabljanje modelov za prilagajanje novim izdelkom je bilo drago in zamudno.
- BigBasket je prav tako želel skrajšati čas cikla usposabljanja, da bi izboljšal čas do trženja. Zaradi povečanja SKU-jev se je čas, ki ga je porabil model, povečeval linearno, kar je vplivalo na njihov čas do trženja, ker je bila pogostost usposabljanja zelo visoka in je trajalo dolgo.
- Povečanje podatkov za modelno usposabljanje in ročno upravljanje celotnega cikla usposabljanja od konca do konca je povzročilo precejšnje stroške. BigBasket je to izvajal na platformi tretje osebe, kar je povzročilo znatne stroške.
Pregled rešitev
Priporočili smo, da BigBasket preoblikuje svojo obstoječo rešitev za odkrivanje in razvrščanje izdelkov široke potrošnje z uporabo SageMaker za reševanje teh izzivov. Pred prehodom na proizvodnjo v polnem obsegu je BigBasket poskusil s pilotnim projektom na SageMakerju, da bi ocenil meritve učinkovitosti, stroškov in priročnosti.
Njihov cilj je bil natančno prilagoditi obstoječi model strojnega učenja računalniškega vida (ML) za odkrivanje SKU. Uporabili smo arhitekturo konvolucijske nevronske mreže (CNN). ResNet152 za klasifikacijo slik. Za usposabljanje modela je bil ocenjen obsežen nabor podatkov s približno 300 slikami na SKU, kar je povzročilo več kot 4 milijone skupnih slik za usposabljanje. Za nekatere SKU-je smo razširili podatke, da bi zajeli širši obseg okoljskih pogojev.
Naslednji diagram prikazuje arhitekturo rešitev.
Celoten postopek je mogoče povzeti v naslednje korake na visoki ravni:
- Izvedite čiščenje podatkov, označevanje in povečanje.
- Shranite podatke v Preprosta storitev shranjevanja Amazon (Amazon S3) vedro.
- Uporabite SageMaker in Amazon FSx za Luster za učinkovito povečevanje podatkov.
- Podatke razdelite na nize za usposabljanje, validacijo in teste. Uporabili smo FSx za Luster in Služba za relacijske baze podatkov Amazon (Amazon RDS) za hiter vzporedni dostop do podatkov.
- Uporabite po meri PyTorch Vsebnik Docker, vključno z drugimi odprtokodnimi knjižnicami.
- Uporaba Paralelizem porazdeljenih podatkov SageMaker (SMDDP) za pospešeno porazdeljeno usposabljanje.
- Zabeležite metrike usposabljanja modela.
- Kopirajte končni model v vedro S3.
Rabljena BigBasket Prenosniki SageMaker za usposabljanje njihovih modelov ML in so lahko preprosto prenesli svoj obstoječi odprtokodni PyTorch in druge odprtokodne odvisnosti v vsebnik SageMaker PyTorch ter nemoteno zagnali cevovod. To je bila prva prednost, ki jo je opazila ekipa BigBasketa, saj ni bilo potrebnih nobenih sprememb kode, da bi bila združljiva z izvajanjem v okolju SageMaker.
Omrežje modela je sestavljeno iz arhitekture ResNet 152, ki ji sledijo popolnoma povezane plasti. Zamrznili smo značilne plasti nizke ravni in obdržali uteži, pridobljene s prenosom učenja iz modela ImageNet. Skupni parametri modela so bili 66 milijonov, sestavljeni iz 23 milijonov parametrov, ki jih je mogoče učiti. Ta pristop, ki temelji na prenosu učenja, jim je pomagal uporabiti manj slik v času usposabljanja, poleg tega pa je omogočil hitrejšo konvergenco in skrajšal skupni čas usposabljanja.
Gradnja in usposabljanje modela znotraj Amazon SageMaker Studio zagotovil integrirano razvojno okolje (IDE) z vsem, kar je potrebno za pripravo, gradnjo, usposabljanje in prilagajanje modelov. Povečanje podatkov o usposabljanju s tehnikami, kot so obrezovanje, vrtenje in obračanje slik, je pomagalo izboljšati podatke o usposabljanju modela in natančnost modela.
Usposabljanje modela je bilo pospešeno za 50 % z uporabo knjižnice SMDDP, ki vključuje optimizirane komunikacijske algoritme, zasnovane posebej za infrastrukturo AWS. Za izboljšanje zmogljivosti branja/pisanja podatkov med usposabljanjem modela in povečevanjem podatkov smo uporabili FSx za Luster za visoko zmogljivo prepustnost.
Njihova velikost začetnih podatkov o usposabljanju je bila več kot 1.5 TB. Uporabili smo dva Amazonski elastični računalniški oblak (Amazon EC2) p4d.24 velikih primerkov z 8 GPU in 40 GB GPU pomnilnika. Za porazdeljeno usposabljanje SageMaker morajo biti instance v isti regiji AWS in v istem območju razpoložljivosti. Poleg tega morajo biti podatki o usposabljanju, shranjeni v vedru S3, v istem območju razpoložljivosti. Ta arhitektura tudi omogoča, da BigBasket spremeni druge vrste instanc ali doda več instanc trenutni arhitekturi, da poskrbi za kakršno koli znatno rast podatkov ali doseže nadaljnje zmanjšanje časa usposabljanja.
Kako je knjižnica SMDDP pomagala zmanjšati čas, stroške in kompleksnost usposabljanja
Pri tradicionalnem usposabljanju s porazdeljenimi podatki ogrodje za usposabljanje dodeli range GPE (delavcem) in ustvari repliko vašega modela na vsaki GPE. Med vsako ponovitvijo usposabljanja je globalni paket podatkov razdeljen na dele (paketni delci) in del je razdeljen vsakemu delavcu. Vsak delavec nato nadaljuje s prehodom naprej in nazaj, definiranim v vašem skriptu za usposabljanje na vsaki GPE. Končno se uteži in gradienti modela iz različnih replik modela sinhronizirajo na koncu iteracije prek skupne komunikacijske operacije, imenovane AllReduce. Ko imata vsak delavec in GPE sinhronizirano repliko modela, se začne naslednja ponovitev.
Knjižnica SMDDP je kolektivna komunikacijska knjižnica, ki izboljšuje zmogljivost tega procesa vzporednega usposabljanja s porazdeljenimi podatki. Knjižnica SMDDP zmanjša komunikacijske stroške ključnih skupnih komunikacijskih operacij, kot je AllReduce. Njegova implementacija AllReduce je zasnovana za infrastrukturo AWS in lahko pospeši usposabljanje s prekrivanjem operacije AllReduce s prehodom nazaj. Ta pristop dosega skoraj linearno učinkovitost skaliranja in večjo hitrost usposabljanja z optimizacijo operacij jedra med CPE in GPE.
Upoštevajte naslednje izračune:
- Velikost globalnega paketa je (število vozlišč v gruči) * (število grafičnih procesorjev na vozlišče) * (na šard paketa)
- Serijski del (majhna serija) je podmnožica nabora podatkov, dodeljena vsakemu GPE (delavcu) na ponovitev
BigBasket je uporabil knjižnico SMDDP za skrajšanje celotnega časa usposabljanja. S FSx za Lustre smo zmanjšali prepustnost branja/pisanja podatkov med usposabljanjem modela in povečevanjem podatkov. S paralelizmom podatkov je BigBasket lahko dosegel skoraj 50 % hitrejše in 20 % cenejše usposabljanje v primerjavi z drugimi alternativami, kar je zagotovilo najboljšo zmogljivost na AWS. SageMaker samodejno zaustavi cevovod usposabljanja po zaključku. Projekt se je uspešno zaključil s 50 % hitrejšim časom usposabljanja v AWS (4.5 dni v AWS v primerjavi z 9 dnevi na njihovi podedovani platformi).
V času pisanja te objave je BigBasket izvajal celotno rešitev v proizvodnji že več kot 6 mesecev in prilagaja sistem tako, da skrbi za nova mesta, vsak mesec pa dodajamo nove trgovine.
»Naše partnerstvo z AWS pri prehodu na porazdeljeno usposabljanje z uporabo njihove ponudbe SMDDP je bila velika zmaga. Ne samo, da nam je čas treninga skrajšal za 50 %, bil je tudi 20 % cenejši. V našem celotnem partnerstvu je AWS postavil mejo obsedenosti s strankami in doseganja rezultatov – z nami je sodeloval do konca, da bi uresničili obljubljene koristi.«
– Keshav Kumar, vodja inženiringa pri BigBasketu.
zaključek
V tej objavi smo razpravljali o tem, kako je BigBasket uporabil SageMaker za usposabljanje svojega modela računalniškega vida za identifikacijo izdelkov FMCG. Implementacija avtomatiziranega sistema za samoplačniško blagajno, ki ga poganja umetna inteligenca, zagotavlja izboljšano izkušnjo maloprodajnih kupcev z inovacijami, hkrati pa odpravlja človeške napake v procesu blagajne. Pospeševanje uvajanja novih izdelkov z uporabo porazdeljenega usposabljanja SageMaker zmanjša čas in stroške uvajanja SKU. Integracija FSx za Luster omogoča hiter vzporedni dostop do podatkov za učinkovito ponovno usposabljanje modela s stotinami novih SKU-jev mesečno. Na splošno ta rešitev za samoplačniško blagajno, ki temelji na umetni inteligenci, zagotavlja izboljšano nakupovalno izkušnjo brez napak pri nakupovanju na sprednji strani. Avtomatizacija in inovacije so preoblikovale njihovo maloprodajno blagajno in vkrcanje.
SageMaker zagotavlja celovit razvoj ML, uvajanje in zmogljivosti spremljanja, kot je okolje prenosnika SageMaker Studio za pisanje kode, pridobivanje podatkov, označevanje podatkov, usposabljanje modela, prilagajanje modela, uvajanje, spremljanje in še veliko več. Če se vaše podjetje sooča s katerim od izzivov, opisanih v tej objavi, in želi prihraniti čas na trgu ter izboljšati stroške, se obrnite na skupino za račune AWS v vaši regiji in začnite uporabljati SageMaker.
O avtorjih
Santosh Waddi je glavni inženir pri BigBasketu, prinaša več kot desetletje strokovnega znanja pri reševanju izzivov AI. Z močnim ozadjem na področju računalniškega vida, znanosti o podatkih in poglobljenega učenja ima podiplomski študij na IIT Bombay. Santosh je avtor pomembnih publikacij IEEE in je kot izkušen avtor tehnološkega bloga pomembno prispeval k razvoju rešitev računalniškega vida med svojim službovanjem pri Samsungu.
Nanda Kishore Thatikonda je vodja inženiringa, ki vodi podatkovni inženiring in analitiko pri BigBasketu. Nanda je zgradil več aplikacij za odkrivanje nepravilnosti in ima vložen patent v podobnem prostoru. Delal je na gradnji aplikacij za podjetja, gradnji podatkovnih platform v več organizacijah in platformah za poročanje za racionalizacijo odločitev, podprtih s podatki. Nanda ima več kot 18 let izkušenj z delom na področju tehnologij Java/J2EE, Spring in ogrodij velikih podatkov z uporabo Hadoop in Apache Spark.
Sudhanshu Hate je glavni strokovnjak za AI & ML pri AWS in sodeluje s strankami, da jim svetuje na njihovem potovanju z MLO in generativno AI. V svoji prejšnji vlogi je konceptualiziral, ustvaril in vodil ekipe za izgradnjo temeljne, odprtokodne platforme za umetno inteligenco in igrifikacijo ter jo uspešno komercializiral z več kot 100 strankami. Sudhanshu ima nekaj patentov; je napisal 2 knjigi, več člankov in blogov; in je predstavil svoje stališče na različnih forumih. Bil je vodja misli in govornik ter je v industriji že skoraj 25 let. Delal je s strankami Fortune 1000 po vsem svetu, nazadnje pa dela z domačimi digitalnimi strankami v Indiji.
Ayush Kumar je arhitekt rešitev pri AWS. Sodeluje z najrazličnejšimi strankami AWS in jim pomaga pri sprejemanju najnovejših sodobnih aplikacij ter hitrejšem inoviranju s tehnologijami, ki izvirajo iz oblaka. Našli ga boste, kako v prostem času eksperimentira v kuhinji.
- Distribucija vsebine in PR s pomočjo SEO. Okrepite se še danes.
- PlatoData.Network Vertical Generative Ai. Opolnomočite se. Dostopite tukaj.
- PlatoAiStream. Web3 Intelligence. Razširjeno znanje. Dostopite tukaj.
- PlatoESG. Ogljik, CleanTech, Energija, Okolje, sončna energija, Ravnanje z odpadki. Dostopite tukaj.
- PlatoHealth. Obveščanje o biotehnologiji in kliničnih preskušanjih. Dostopite tukaj.
- vir: https://aws.amazon.com/blogs/machine-learning/how-bigbasket-improved-ai-enabled-checkout-at-their-physical-stores-using-amazon-sagemaker/
- :ima
- : je
- :ne
- $ 10 milijonov
- $GOR
- 000
- 1
- 10
- 100
- 12
- 120
- 13
- 152
- 23
- 24
- 25
- 300
- 40
- 50
- 500
- 600
- 66
- 7
- 8
- 80
- 9
- 98
- a
- Sposobna
- pospešeno
- pospeševanje
- dostop
- Račun
- natančnost
- Doseči
- Dosega
- pridobljenih
- pridobitev
- čez
- prilagodijo
- dodajte
- dodano
- dodajanje
- Dodatne
- Naslov
- Dodaja
- sprejme
- svetuje
- po
- spet
- AI
- Z AI napajanjem
- algoritmi
- omogoča
- skoraj
- Prav tako
- alternative
- Amazon
- Amazon EC2
- Amazon RDS
- Amazon SageMaker
- Amazon Web Services
- an
- analitika
- in
- odkrivanje anomalije
- kaj
- Apache
- aplikacije
- pristop
- približno
- Arhitektura
- SE
- okoli
- AS
- dodeljena
- izbor
- At
- Povečana
- Avtor
- avtor
- Avtomatizirano
- samodejno
- Avtomatizacija
- razpoložljivost
- AWS
- nazaj
- Backed
- ozadje
- bar
- BE
- ker
- bilo
- pred
- se začne
- počutje
- koristi
- Prednosti
- BEST
- med
- Big
- Big Podatki
- Blog
- blogi
- knjige
- blagovne znamke
- Prinaša
- širši
- izgradnjo
- Building
- zgrajena
- poslovni
- nakup
- by
- Izračuni
- se imenuje
- kamere
- CAN
- Zmogljivosti
- Katalog
- poskrbi
- gostinstvo
- nekatere
- izzivi
- spremenite
- Spremembe
- kanali
- cenejša
- Na blagajno
- Mesta
- Razvrstitev
- stranke
- Grozd
- CNN
- Koda
- zbiranje
- Kolektivna
- Trgovina
- Komunikacija
- v primerjavi z letom
- združljiv
- dokončanje
- Končana
- Izračunajte
- računalnik
- Računalniška vizija
- Pogoji
- povezane
- Sestavljeno
- vsebuje
- Potrošnik
- porabijo
- Posoda
- stalno
- neprekinjeno
- stalno
- prispevkov
- udobje
- Konvergenca
- strošek
- drago
- stroški
- Števec
- števci
- par
- ustvaril
- ustvari
- kredit
- Trenutna
- po meri
- stranka
- Izkušnje s strankami
- Stranke, ki so
- Cut
- cikel
- vsak dan
- datum
- dostop do podatkov
- znanost o podatkih
- Baze podatkov
- Dnevi
- desetletje
- odločitve
- globoko
- globoko učenje
- opredeljen
- Stopnja
- dostavo
- daje
- dostava
- odvisnosti
- uvajanje
- opisano
- zasnovan
- Odkrivanje
- Razvoj
- diagram
- DID
- drugačen
- digitalni
- razpravlja
- razpravljali
- razlikovati
- porazdeljena
- razdeljeno usposabljanje
- deljeno
- Lučki delavec
- navzdol
- 2
- med
- vsak
- enostavno
- elektronskem poslovanju
- učinkovitosti
- učinkovite
- odstranjevanje
- omogočena
- omogoča
- obsegajo
- konec
- konec koncev
- inženir
- Inženiring
- okrepljeno
- podjetniškega razreda
- Celotna
- okolje
- okolja
- napake
- ocenjeni
- oceniti
- Tudi vsak
- vse
- obstoječih
- izkušnje
- eksperimentiranje
- strokovno znanje
- s katerimi se sooča
- FAST
- hitro gibljiv
- hitreje
- Feature
- manj
- Slika
- vložena
- končna
- končno
- Najdi
- prva
- fmcg
- sledili
- po
- hrana
- za
- Fortune
- forumi
- Naprej
- Okvirni
- okviri
- frekvenca
- pogosto
- trenja
- iz
- začelje
- v polnem obsegu
- v celoti
- nadalje
- gamification
- generativno
- Generativna AI
- dobili
- Globalno
- globus
- Go
- blago
- GPU
- Grafične kartice
- gradienti
- veliko
- Rast
- ročaj
- Imajo
- he
- Glava
- pomagal
- pomoč
- visoka
- na visoki ravni
- visokozmogljivo
- ga
- njegov
- drži
- Kako
- HTML
- http
- HTTPS
- človeškega
- Stotine
- Identifikacija
- IEEE
- if
- ponazarja
- slika
- Razvrstitev slik
- slike
- prizadeti
- Izvajanje
- izboljšanje
- izboljšalo
- izboljšuje
- in
- v trgovini
- vključuje
- Vključno
- vključi
- Poveča
- narašča
- nastali
- india
- Industrija
- Podatki
- Infrastruktura
- inovacije
- Inovacije
- primer
- integrirana
- Povezovanje
- v
- Uvedeno
- Predstavitev
- Vprašanja
- IT
- Izdelkov
- ponovitev
- ITS
- Potovanje
- jpg
- Imejte
- vzdrževanje
- Ključne
- Kumar
- velika
- Največji
- Zadnji
- plasti
- Vodja
- vodi
- učenje
- Led
- Legacy
- knjižnice
- Knjižnica
- kot
- Long
- dolgo časa
- izgubiti
- stroj
- strojno učenje
- Stroji
- je
- Znamka
- upravitelj
- upravljanje
- Navodilo
- ročno
- Tržna
- Spomin
- Meritve
- migracije
- milijonov
- ML
- MLOps
- Model
- modeli
- sodobna
- spremljanje
- mesec
- mesečno
- mesecev
- več
- Najbolj
- premikanje
- veliko
- več
- materni
- skoraj
- Nimate
- potrebna
- potrebe
- mreža
- Živčne
- nevronska mreža
- Novo
- Nov izdelek
- novi izdelki
- Naslednja
- Vozel
- vozlišča
- opazen
- prenosnik
- Številka
- predmet
- Cilj
- of
- ponudba
- ponujanje
- pogosto
- on
- Na vkrcanje
- ONE
- na spletu
- samo
- odprite
- open source
- deluje
- deluje
- Delovanje
- operativno
- operacije
- optimizirana
- optimizacijo
- or
- organizacije
- Ostalo
- naši
- ven
- več
- Splošni
- režijske
- pregled
- Pace
- članki
- vzporedno
- parametri
- Partnerstvo
- mimo
- patent
- Patenti
- za
- performance
- fizično
- kos
- kosov
- pilot
- plinovod
- platforma
- Platforme
- platon
- Platonova podatkovna inteligenca
- PlatoData
- Točka
- Pogled na točko
- Prispevek
- podiplomski
- moč
- Pripravimo
- predstavljeni
- prejšnja
- , ravnateljica
- izkupiček
- Postopek
- Proizvedeno
- Izdelek
- Podatki o izdelku
- proizvodnja
- Izdelki
- Projekt
- obljubil
- zagotavljajo
- če
- zagotavlja
- publikacije
- nakup
- pitorha
- Hitri
- območje
- uvršča
- Oceniti
- dosežejo
- uresničitev
- Pred kratkim
- Priznanje
- priporočeno
- zmanjša
- Zmanjšana
- zmanjšuje
- Zmanjšanje
- okolica
- ponovi
- odgovori
- Poročanje
- zahteva
- rezultat
- Trgovina na drobno
- vloga
- Run
- tek
- sagemaker
- Enako
- Samsung
- Shrani
- Lestvica
- skaliranje
- Znanost
- script
- brez težav
- začinjeno
- videl
- služi
- Storitve
- nastavite
- Kompleti
- nastavitev
- več
- Nakupovalna
- Zapri
- pomemben
- Podoben
- Enostavno
- veliko
- Velikosti
- majhna
- Rešitev
- rešitve
- Reševanje
- vir
- Vesolje
- Spark
- Zvočniki
- specialist
- posebej
- hitrost
- pomlad
- začel
- Začetek
- Koraki
- nalepke
- zaloge
- shranjevanje
- trgovina
- shranjeni
- trgovine
- racionalizirati
- močna
- studio
- naročnine
- Uspešno
- taka
- sistem
- sprejeti
- skupina
- Skupine
- tech
- tehnike
- Tehnologije
- Test
- kot
- da
- O
- njihove
- Njih
- POTEM
- Tukaj.
- te
- jih
- tretjih oseb
- ta
- mislil
- skozi
- pretočnost
- čas
- krat
- do
- vzel
- Skupaj za plačilo
- mestih
- tradicionalna
- Vlak
- usposabljanje
- prenos
- preoblikovati
- Poskušal
- melodija
- tuning
- dva
- Vrste
- edinstveno
- enote
- us
- uporaba
- Rabljeni
- uporablja
- uporabo
- potrjevanje
- raznolikost
- različnih
- zelo
- Poglej
- Vizija
- vs
- hotel
- želi
- je
- način..
- we
- web
- spletne storitve
- tehtanje
- teža
- so bili
- ki
- medtem
- celoti
- široka
- zmago
- z
- v
- delal
- delavec
- delavci
- deluje
- deluje
- pisanje
- pisni
- let
- Vi
- Vaša rutina za
- zefirnet
- cona