Questo post è stato scritto in collaborazione con Santosh Waddi e Nanda Kishore Thatikonda di BigBasket.
BigBasket è il più grande negozio di generi alimentari e alimentari online dell'India. Operano in più canali di e-commerce come commercio rapido, consegna programmata e abbonamenti giornalieri. Puoi anche acquistare dai loro negozi fisici e dai distributori automatici. Offrono un vasto assortimento di oltre 50,000 prodotti di 1,000 marchi e operano in più di 500 città e paesi. BigBasket serve oltre 10 milioni di clienti.
In questo post, discutiamo di come viene utilizzato BigBasket Amazon Sage Maker per addestrare il proprio modello di visione artificiale per l'identificazione dei prodotti di beni di largo consumo (FMCG), riducendo i tempi di formazione di circa il 50% e risparmiando sui costi del 20%.
Sfide del cliente
Oggi, la maggior parte dei supermercati e dei negozi fisici in India forniscono il pagamento manuale alla cassa. Ciò comporta due problemi:
- Richiede manodopera aggiuntiva, adesivi per pesi e formazione ripetuta per il team operativo del negozio man mano che cresce.
- Nella maggior parte dei negozi, il banco cassa è diverso dai banchi di pesatura, il che aumenta l'attrito nel percorso di acquisto del cliente. Spesso i clienti perdono l'etichetta del peso e devono tornare ai banchi di pesatura per ritirarne uno nuovo prima di procedere con il processo di pagamento.
Procedura di pagamento automatico
BigBasket ha introdotto nei propri negozi fisici un sistema di pagamento basato sull'intelligenza artificiale che utilizza fotocamere per distinguere gli articoli in modo univoco. La figura seguente fornisce una panoramica del processo di pagamento.
Il team di BigBasket stava eseguendo algoritmi ML interni e open source per il riconoscimento degli oggetti di visione artificiale per potenziare il checkout abilitato all'intelligenza artificiale presso i propri clienti. Fresco negozi (fisici). Stavamo affrontando le seguenti sfide per gestire la loro configurazione esistente:
- Con la continua introduzione di nuovi prodotti, il modello di visione artificiale necessitava di incorporare continuamente nuove informazioni sui prodotti. Il sistema doveva gestire un ampio catalogo di oltre 12,000 unità di stock Keeping (SKU), con l'aggiunta continua di nuovi SKU a una velocità di oltre 600 al mese.
- Per stare al passo con i nuovi prodotti, ogni mese veniva prodotto un nuovo modello utilizzando i dati di addestramento più recenti. Addestrare frequentemente i modelli per adattarli ai nuovi prodotti era costoso e richiedeva molto tempo.
- BigBasket desiderava inoltre ridurre il tempo del ciclo di formazione per migliorare il time-to-market. A causa dell'aumento degli SKU, il tempo impiegato dal modello aumentava in modo lineare, il che influiva sul time-to-market poiché la frequenza di formazione era molto elevata e richiedeva molto tempo.
- L'aumento dei dati per l'addestramento del modello e la gestione manuale dell'intero ciclo di addestramento end-to-end aggiungevano notevoli spese generali. BigBasket lo eseguiva su una piattaforma di terze parti, che comportava costi significativi.
Panoramica della soluzione
Per affrontare queste sfide, abbiamo consigliato a BigBasket di riprogettare la soluzione esistente di rilevamento e classificazione dei prodotti di largo consumo utilizzando SageMaker. Prima di passare alla produzione su vasta scala, BigBasket ha provato un progetto pilota su SageMaker per valutare i parametri di prestazioni, costi e convenienza.
Il loro obiettivo era mettere a punto un modello esistente di machine learning (ML) di visione artificiale per il rilevamento degli SKU. Abbiamo utilizzato un'architettura di rete neurale convoluzionale (CNN) con ResNet152 per la classificazione delle immagini. Per l'addestramento del modello è stato stimato un set di dati considerevole di circa 300 immagini per SKU, per un totale di oltre 4 milioni di immagini di addestramento. Per alcuni SKU, abbiamo aumentato i dati per comprendere una gamma più ampia di condizioni ambientali.
Il diagramma seguente illustra l'architettura della soluzione.
Il processo completo può essere riassunto nei seguenti passaggi di alto livello:
- Eseguire la pulizia, l'annotazione e l'aumento dei dati.
- Archiviare i dati in un file Servizio di archiviazione semplice Amazon (Amazon S3) secchio.
- Usa SageMaker e Amazon FSx per Lustre per un efficiente aumento dei dati.
- Suddividi i dati in set di training, convalida e test. Abbiamo utilizzato FSx per Lustre e Servizio di database relazionale Amazon (Amazon RDS) per un rapido accesso parallelo ai dati.
- Usa un'abitudine PyTorch Contenitore Docker che include altre librerie open source.
- Usa il Parallelismo dei dati distribuiti SageMaker (SMDDP) per la formazione distribuita accelerata.
- Registrare le metriche di addestramento del modello.
- Copia il modello finale in un bucket S3.
BigBasket usato Taccuini SageMaker per addestrare i propri modelli ML e sono stati in grado di trasferire facilmente il PyTorch open source esistente e altre dipendenze open source su un contenitore SageMaker PyTorch ed eseguire la pipeline senza problemi. Questo è stato il primo vantaggio notato dal team di BigBasket, perché non era necessaria alcuna modifica al codice per renderlo compatibile per l'esecuzione in un ambiente SageMaker.
La rete modello è costituita da un'architettura ResNet 152 seguita da livelli completamente connessi. Abbiamo congelato i feature layer di basso livello e mantenuto i pesi acquisiti tramite l'apprendimento del trasferimento dal modello ImageNet. I parametri totali del modello erano 66 milioni, costituiti da 23 milioni di parametri addestrabili. Questo approccio basato sull'apprendimento del trasferimento li ha aiutati a utilizzare meno immagini al momento della formazione, ha inoltre consentito una convergenza più rapida e ha ridotto il tempo totale di formazione.
Costruire e addestrare il modello interno Amazon Sage Maker Studio ha fornito un ambiente di sviluppo integrato (IDE) con tutto il necessario per preparare, costruire, addestrare e ottimizzare i modelli. L'aumento dei dati di addestramento utilizzando tecniche come il ritaglio, la rotazione e il capovolgimento delle immagini ha contribuito a migliorare i dati di addestramento del modello e la precisione del modello.
L'addestramento del modello è stato accelerato del 50% attraverso l'uso della libreria SMDDP, che include algoritmi di comunicazione ottimizzati progettati specificamente per l'infrastruttura AWS. Per migliorare le prestazioni di lettura/scrittura dei dati durante l'addestramento del modello e l'aumento dei dati, abbiamo utilizzato FSx for Lustre per un throughput ad alte prestazioni.
La dimensione iniziale dei dati di addestramento era superiore a 1.5 TB. Ne abbiamo usati due Cloud di calcolo elastico di Amazon (Amazon EC2) p4d.24 istanze di grandi dimensioni con 8 GPU e 40 GB di memoria GPU. Per la formazione distribuita SageMaker, le istanze devono trovarsi nella stessa regione AWS e zona di disponibilità. Inoltre, i dati di addestramento archiviati in un bucket S3 devono trovarsi nella stessa zona di disponibilità. Questa architettura consente inoltre a BigBasket di passare ad altri tipi di istanza o di aggiungere più istanze all'architettura attuale per soddisfare qualsiasi crescita significativa dei dati o ottenere un'ulteriore riduzione dei tempi di addestramento.
In che modo la libreria SMDDP ha contribuito a ridurre i tempi, i costi e la complessità della formazione
Nel tradizionale training sui dati distribuiti, il framework di training assegna i ranghi alle GPU (worker) e crea una replica del modello su ciascuna GPU. Durante ogni iterazione del training, il batch di dati globali viene diviso in parti (shard batch) e una parte viene distribuita a ciascun lavoratore. Ogni lavoratore procede quindi con il passaggio in avanti e all'indietro definito nello script di formazione su ciascuna GPU. Infine, i pesi e i gradienti del modello delle diverse repliche del modello vengono sincronizzati alla fine dell'iterazione attraverso un'operazione di comunicazione collettiva denominata AllReduce. Dopo che ciascun lavoratore e GPU hanno una replica sincronizzata del modello, inizia l'iterazione successiva.
La libreria SMDDP è una libreria di comunicazione collettiva che migliora le prestazioni di questo processo di formazione parallela dei dati distribuiti. La libreria SMDDP riduce il sovraccarico di comunicazione delle principali operazioni di comunicazione collettiva come AllReduce. La sua implementazione di AllReduce è progettata per l'infrastruttura AWS e può accelerare la formazione sovrapponendo l'operazione AllReduce con il passaggio all'indietro. Questo approccio raggiunge un'efficienza di scalabilità quasi lineare e una maggiore velocità di addestramento ottimizzando le operazioni del kernel tra CPU e GPU.
Nota i seguenti calcoli:
- La dimensione del batch globale è (numero di nodi in un cluster) * (numero di GPU per nodo) * (per frammento batch)
- Uno shard batch (piccolo batch) è un sottoinsieme del set di dati assegnato a ciascuna GPU (worker) per iterazione
BigBasket ha utilizzato la libreria SMDDP per ridurre il tempo complessivo di formazione. Con FSx for Lustre, abbiamo ridotto il throughput di lettura/scrittura dei dati durante l'addestramento del modello e l'aumento dei dati. Grazie al parallelismo dei dati, BigBasket è riuscita a ottenere una formazione quasi il 50% più veloce e il 20% più economica rispetto ad altre alternative, offrendo le migliori prestazioni su AWS. SageMaker chiude automaticamente la pipeline di formazione dopo il completamento. Il progetto è stato completato con successo con tempi di formazione più rapidi del 50% in AWS (4.5 giorni in AWS rispetto a 9 giorni sulla piattaforma legacy).
Al momento della stesura di questo post, BigBasket ha eseguito la soluzione completa in produzione per più di 6 mesi e ha ampliato il sistema soddisfacendo nuove città e aggiungiamo nuovi negozi ogni mese.
“La nostra partnership con AWS sulla migrazione alla formazione distribuita utilizzando la loro offerta SMDDP è stata una grande vittoria. Non solo ha ridotto i tempi di formazione del 50%, ma è stato anche più economico del 20%. In tutta la nostra partnership, AWS ha stabilito nuovi standard in termini di ossessione per il cliente e fornitura di risultati, lavorando con noi in ogni momento per realizzare i vantaggi promessi."
– Keshav Kumar, responsabile dell'ingegneria presso BigBasket.
Conclusione
In questo post, abbiamo discusso di come BigBasket ha utilizzato SageMaker per addestrare il proprio modello di visione artificiale per l'identificazione dei prodotti di largo consumo. L’implementazione di un sistema di cassa automatica automatizzato basato sull’intelligenza artificiale offre una migliore esperienza del cliente al dettaglio attraverso l’innovazione, eliminando al contempo gli errori umani nel processo di pagamento. Accelerare l'onboarding di nuovi prodotti utilizzando la formazione distribuita di SageMaker riduce i tempi e i costi di onboarding degli SKU. L'integrazione di FSx for Lustre consente un rapido accesso parallelo ai dati per una riqualificazione efficiente del modello con centinaia di nuovi SKU mensili. Nel complesso, questa soluzione di checkout automatico basata sull'intelligenza artificiale offre un'esperienza di acquisto migliorata priva di errori di checkout sul frontend. L'automazione e l'innovazione hanno trasformato le operazioni di cassa e onboarding al dettaglio.
SageMaker fornisce funzionalità di sviluppo, distribuzione e monitoraggio ML end-to-end, come un ambiente notebook SageMaker Studio per la scrittura di codice, l'acquisizione dei dati, il tagging dei dati, l'addestramento dei modelli, l'ottimizzazione dei modelli, la distribuzione, il monitoraggio e molto altro. Se la tua azienda si trova ad affrontare una delle sfide descritte in questo post e desidera risparmiare tempo sul mercato e migliorare i costi, contatta il team dell'account AWS nella tua regione e inizia con SageMaker.
Informazioni sugli autori
Santosh Waddi è un ingegnere principale presso BigBasket e vanta oltre un decennio di esperienza nella risoluzione delle sfide legate all'intelligenza artificiale. Con una solida esperienza in visione artificiale, scienza dei dati e deep learning, ha conseguito un diploma post-laurea presso l'IIT di Bombay. Santosh è autore di importanti pubblicazioni IEEE e, in qualità di esperto autore di blog tecnologici, ha anche dato un contributo significativo allo sviluppo di soluzioni di visione artificiale durante il suo mandato presso Samsung.
Nanda Kishore Thatikonda è un Engineering Manager che guida l'ingegneria dei dati e l'analisi presso BigBasket. Nanda ha creato molteplici applicazioni per il rilevamento di anomalie e ha un brevetto depositato in uno spazio simile. Ha lavorato alla creazione di applicazioni di livello aziendale, alla creazione di piattaforme dati in più organizzazioni e piattaforme di reporting per semplificare le decisioni supportate dai dati. Nanda ha oltre 18 anni di esperienza di lavoro in Java/J2EE, tecnologie Spring e framework per big data utilizzando Hadoop e Apache Spark.
Odio Sudhanshu è uno specialista principale di AI e ML presso AWS e lavora con i clienti per consigliarli sul loro percorso MLOps e sull'intelligenza artificiale generativa. Nel suo ruolo precedente, ha concettualizzato, creato e guidato team per costruire una piattaforma di gamification e intelligenza artificiale open source, basata su open source, e l'ha commercializzata con successo con oltre 100 clienti. Sudhanshu ha al suo attivo un paio di brevetti; ha scritto 2 libri, diversi articoli e blog; e ha presentato il suo punto di vista in vari forum. È stato un leader di pensiero e oratore ed opera nel settore da quasi 25 anni. Ha lavorato con clienti Fortune 1000 in tutto il mondo e più recentemente sta lavorando con clienti nativi digitali in India.
Ayush Kumar è Solutions Architect presso AWS. Collabora con un'ampia gamma di clienti AWS, aiutandoli ad adottare le applicazioni moderne più recenti e a innovare più rapidamente con le tecnologie native del cloud. Lo troverai a sperimentare in cucina nel tempo libero.
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- PlatoData.Network Generativo verticale Ai. Potenzia te stesso. Accedi qui.
- PlatoAiStream. Intelligenza Web3. Conoscenza amplificata. Accedi qui.
- PlatoneESG. Carbonio, Tecnologia pulita, Energia, Ambiente, Solare, Gestione dei rifiuti. Accedi qui.
- Platone Salute. Intelligence sulle biotecnologie e sulle sperimentazioni cliniche. Accedi qui.
- Fonte: https://aws.amazon.com/blogs/machine-learning/how-bigbasket-improved-ai-enabled-checkout-at-their-physical-stores-using-amazon-sagemaker/
- :ha
- :È
- :non
- $10 milioni
- $ SU
- 000
- 1
- 10
- 100
- 12
- 120
- 13
- 152
- 23
- 24
- 25
- 300
- 40
- 50
- 500
- 600
- 66
- 7
- 8
- 80
- 9
- 98
- a
- capace
- accelerata
- accelerando
- accesso
- Il mio account
- precisione
- Raggiungere
- Realizza
- acquisito
- acquisizione
- operanti in
- adattare
- aggiungere
- aggiunto
- l'aggiunta di
- aggiuntivo
- indirizzo
- Aggiunge
- adottare
- aiutarti
- Dopo shavasana, sedersi in silenzio; saluti;
- ancora
- AI
- AI-alimentato
- Algoritmi
- consente
- quasi
- anche
- alternative
- Amazon
- Amazon EC2
- Amazon RDS
- Amazon Sage Maker
- Amazon Web Services
- an
- analitica
- ed
- rilevamento anomalie
- in qualsiasi
- Apache
- applicazioni
- approccio
- circa
- architettura
- SONO
- in giro
- AS
- addetto
- assortimento
- At
- aumentata
- autore
- Authored
- Automatizzata
- automaticamente
- Automazione
- disponibilità
- AWS
- precedente
- Backed
- sfondo
- bar
- BE
- perché
- stato
- prima
- inizia
- essendo
- beneficio
- vantaggi
- MIGLIORE
- fra
- Big
- Big Data
- Blog
- blog
- Libri
- marche
- Porta
- più ampia
- costruire
- Costruzione
- costruito
- affari
- Acquistare
- by
- calcoli
- detto
- telecamere
- Materiale
- funzionalità
- catalogo
- approvvigionare
- ristorazione
- certo
- sfide
- il cambiamento
- Modifiche
- canali
- più economico
- Procedi all'acquisto
- Città
- classificazione
- clienti
- Cluster
- CNN
- codice
- raccogliere
- Collective
- Commercio
- Comunicazione
- rispetto
- compatibile
- completamento di una
- Completato
- Calcolare
- computer
- Visione computerizzata
- condizioni
- collegato
- Consistente
- consiste
- Consumer
- consumo
- Contenitore
- continuamente
- continuo
- continuamente
- contributi
- comodità
- Convergenza
- Costo
- costoso
- Costi
- contatore
- contatori
- Coppia
- creato
- crea
- credito
- Corrente
- costume
- cliente
- esperienza del cliente
- Clienti
- taglio
- ciclo
- alle lezioni
- dati
- l'accesso ai dati
- scienza dei dati
- Banca Dati
- Giorni
- decennio
- decisioni
- deep
- apprendimento profondo
- definito
- Laurea
- consegna
- fornisce un monitoraggio
- consegna
- dipendenze
- deployment
- descritta
- progettato
- rivelazione
- Mercato
- diagramma
- DID
- diverso
- digitale
- discutere
- discusso
- distinguere
- distribuito
- formazione distribuita
- Diviso
- docker
- giù
- dovuto
- durante
- ogni
- facilmente
- ecommerce
- efficienza
- efficiente
- eliminando
- abilitato
- Abilita
- circondare
- fine
- da un capo all'altro
- ingegnere
- Ingegneria
- migliorata
- di livello enterprise
- Intero
- Ambiente
- ambientale
- errori
- stimato
- valutare
- Ogni
- qualunque cosa
- esistente
- esperienza
- sperimentazione
- competenza
- di fronte
- FAST
- che si muove velocemente
- più veloce
- caratteristica
- meno
- figura
- depositata
- finale
- Infine
- Trovate
- Nome
- fmcg
- seguito
- i seguenti
- cibo
- Nel
- Fortune
- forum
- Avanti
- Contesto
- quadri
- Frequenza
- frequentemente
- attrito
- da
- Frontend
- su vasta scala
- completamente
- ulteriormente
- gamification
- generativo
- AI generativa
- ottenere
- globali
- globo
- Go
- merce
- GPU
- GPU
- gradienti
- grande
- Crescita
- maniglia
- Avere
- he
- capo
- aiutato
- aiutare
- Alta
- alto livello
- Alte prestazioni
- lui
- il suo
- detiene
- Come
- HTML
- http
- HTTPS
- umano
- centinaia
- Identificazione
- IEEE
- if
- illustra
- Immagine
- Classificazione delle immagini
- immagini
- impattato
- implementazione
- competenze
- migliorata
- migliora
- in
- disponibile
- inclusi
- Compreso
- incorporare
- Aumenta
- crescente
- sostenute
- India
- industria
- informazioni
- Infrastruttura
- innovare
- Innovazione
- esempio
- integrato
- Integrazione
- ai miglioramenti
- introdotto
- Introduzione
- sicurezza
- IT
- elementi
- iterazione
- SUO
- viaggio
- jpg
- mantenere
- conservazione
- Le
- Kumar
- grandi
- maggiore
- con i più recenti
- galline ovaiole
- leader
- principale
- apprendimento
- Guidato
- Eredità
- biblioteche
- Biblioteca
- piace
- Lunghi
- a lungo
- perdere
- macchina
- machine learning
- macchine
- fatto
- make
- direttore
- gestione
- Manuale
- manualmente
- Rappresentanza
- Memorie
- Metrica
- migrazione
- milione
- ML
- MLOp
- modello
- modelli
- moderno
- monitoraggio
- Mese
- mensile
- mese
- Scopri di più
- maggior parte
- in movimento
- molti
- multiplo
- nativo
- quasi
- Bisogno
- di applicazione
- esigenze
- Rete
- neurale
- rete neurale
- New
- nuovo prodotto
- prodotti nuovi
- GENERAZIONE
- nodo
- nodi
- notevole
- taccuino
- numero
- oggetto
- obiettivo
- of
- offrire
- offerta
- di frequente
- on
- Procedura di Onboarding
- ONE
- online
- esclusivamente
- aprire
- open source
- operare
- operativo
- operazione
- operativa
- Operazioni
- ottimizzati
- ottimizzazione
- or
- organizzazioni
- Altro
- nostro
- su
- ancora
- complessivo
- alto
- panoramica
- Pace
- documenti
- Parallel
- parametri
- Partnership
- passare
- brevetto
- Brevetti
- per
- performance
- Fisico
- pezzo
- pezzi
- pilota
- conduttura
- piattaforma
- Piattaforme
- Platone
- Platone Data Intelligence
- PlatoneDati
- punto
- Punto di vista
- Post
- postlaurea
- energia
- Preparare
- presentata
- precedente
- Direttore
- ricavo
- processi
- Prodotto
- Prodotto
- Informazioni sul prodotto
- Produzione
- Prodotti
- progetto
- promesso
- fornire
- purché
- fornisce
- pubblicazioni
- Acquista
- pytorch
- Presto
- gamma
- ranghi
- tasso
- raggiungere
- rendersi conto
- recentemente
- riconoscimento
- raccomandato
- ridurre
- Ridotto
- riduce
- riduzione
- regione
- ripetuto
- replica
- Reportistica
- richiede
- risultante
- nello specifico retail
- Ruolo
- Correre
- running
- sagemaker
- stesso
- Samsung
- Risparmi
- Scala
- scala
- Scienze
- copione
- senza soluzione di continuità
- condito
- visto
- serve
- Servizi
- set
- Set
- flessibile.
- alcuni
- Shopping
- chiude
- significativa
- simile
- Un'espansione
- considerevole
- Taglia
- piccole
- soluzione
- Soluzioni
- Soluzione
- Fonte
- lo spazio
- Scintilla
- Speaker
- specialista
- in particolare
- velocità
- primavera
- iniziato
- Di partenza
- Passi
- adesivi
- azione
- conservazione
- Tornare al suo account
- memorizzati
- negozi
- snellire
- forte
- studio
- abbonamenti
- Con successo
- tale
- sistema
- preso
- team
- le squadre
- Tech
- tecniche
- Tecnologie
- test
- di
- che
- Il
- loro
- Li
- poi
- Là.
- Strumenti Bowman per analizzare le seguenti finiture:
- di
- di parti terze standard
- questo
- pensiero
- Attraverso
- portata
- tempo
- volte
- a
- ha preso
- Totale
- città
- tradizionale
- Treni
- Training
- trasferimento
- trasformato
- provato
- sintonizzare
- sintonia
- seconda
- Tipi di
- univocamente
- unità
- us
- uso
- utilizzato
- usa
- utilizzando
- convalida
- varietà
- vario
- molto
- Visualizza
- visione
- vs
- ricercato
- vuole
- Prima
- Modo..
- we
- sito web
- servizi web
- pesatura
- peso
- sono stati
- quale
- while
- tutto
- largo
- vincere
- con
- entro
- lavorato
- lavoratore
- lavoratori
- lavoro
- lavori
- scrittura
- scritto
- anni
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro
- zona