Bagaimana Axfood memungkinkan pembelajaran mesin yang dipercepat di seluruh organisasi menggunakan Amazon SageMaker | Layanan Web Amazon

Bagaimana Axfood memungkinkan pembelajaran mesin yang dipercepat di seluruh organisasi menggunakan Amazon SageMaker | Layanan Web Amazon

Ini adalah postingan tamu yang ditulis oleh Axfood AB. 

Dalam postingan ini, kami berbagi bagaimana Axfood, pengecer makanan besar asal Swedia, meningkatkan operasi dan skalabilitas operasi kecerdasan buatan (AI) dan pembelajaran mesin (ML) mereka yang ada dengan membuat prototipe dalam kolaborasi erat dengan para ahli AWS dan menggunakan Amazon SageMaker.

makanan kapak adalah pengecer makanan terbesar kedua di Swedia, dengan lebih dari 13,000 karyawan dan lebih dari 300 toko. Axfood memiliki struktur dengan beberapa tim ilmu data terdesentralisasi dengan bidang tanggung jawab berbeda. Bersama dengan tim platform data pusat, tim ilmu data menghadirkan inovasi dan transformasi digital melalui solusi AI dan ML ke dalam organisasi. Axfood telah menggunakan Amazon SageMaker untuk mengolah data mereka menggunakan ML dan telah memiliki model dalam produksi selama bertahun-tahun. Akhir-akhir ini, tingkat kecanggihan dan banyaknya model yang diproduksi semakin meningkat secara eksponensial. Namun, meskipun laju inovasi tinggi, tim yang berbeda telah mengembangkan cara kerja mereka sendiri dan mencari praktik terbaik MLOps yang baru.

Tantangan kami

Agar tetap kompetitif dalam hal layanan cloud dan AI/ML, Axfood memilih untuk bermitra dengan AWS dan telah berkolaborasi dengan mereka selama bertahun-tahun.

Dalam salah satu sesi curah pendapat berulang kami dengan AWS, kami mendiskusikan cara terbaik berkolaborasi antar tim untuk meningkatkan laju inovasi dan efisiensi ilmu data dan praktisi ML. Kami memutuskan untuk melakukan upaya bersama untuk membangun prototipe praktik terbaik untuk MLOps. Tujuan dari prototipe ini adalah untuk membuat template model bagi semua tim ilmu data guna membangun model ML yang skalabel dan efisienโ€”yang menjadi landasan bagi platform AI dan ML generasi baru untuk Axfood. Templat ini harus menjembatani dan menggabungkan praktik terbaik dari pakar AWS ML dan model praktik terbaik khusus perusahaanโ€”yang terbaik dari kedua dunia.

Kami memutuskan untuk membuat prototipe dari salah satu model ML yang paling dikembangkan saat ini dalam Axfood: memperkirakan penjualan di toko. Lebih khusus lagi, perkiraan buah dan sayuran dari kampanye mendatang untuk toko retail makanan. Perkiraan harian yang akurat mendukung proses pemesanan toko, meningkatkan keberlanjutan dengan meminimalkan limbah makanan sebagai hasil dari optimalisasi penjualan dengan memprediksi secara akurat tingkat stok yang dibutuhkan di dalam toko. Ini adalah tempat yang tepat untuk memulai prototipe kamiโ€”Axfood tidak hanya akan mendapatkan platform AI/ML baru, namun kami juga akan mendapat kesempatan untuk melakukan tolok ukur kemampuan ML kami dan belajar dari para pakar AWS terkemuka.

Solusi kami: Templat ML baru di Amazon SageMaker Studio

Membangun pipeline ML lengkap yang dirancang untuk kasus bisnis sebenarnya dapat menjadi tantangan. Dalam hal ini, kami sedang mengembangkan model peramalan, jadi ada dua langkah utama yang harus diselesaikan:

  1. Latih model untuk membuat prediksi menggunakan data historis.
  2. Terapkan model terlatih untuk membuat prediksi kejadian di masa depan.

Dalam kasus Axfood, saluran yang berfungsi dengan baik untuk tujuan ini telah disiapkan menggunakan notebook SageMaker dan diatur oleh platform manajemen alur kerja pihak ketiga, Airflow. Namun, ada banyak manfaat yang jelas dari memodernisasi platform ML kami dan beralih ke platform tersebut Studio Amazon SageMaker dan Pipa Amazon SageMaker. Pindah ke SageMaker Studio menyediakan banyak fitur siap pakai yang telah ditentukan sebelumnya:

  • Memantau model dan kualitas data serta kemampuan menjelaskan model
  • Alat lingkungan pengembangan terintegrasi (IDE) bawaan seperti debugging
  • Pemantauan biaya/kinerja
  • Kerangka penerimaan model
  • Registri model

Namun, insentif terpenting bagi Axfood adalah kemampuan untuk membuat templat proyek khusus menggunakan Proyek Amazon SageMaker untuk digunakan sebagai cetak biru bagi semua tim ilmu data dan praktisi ML. Tim Axfood telah memiliki tingkat pemodelan ML yang kuat dan matang, sehingga fokus utamanya adalah membangun arsitektur baru.

Ikhtisar solusi

Kerangka kerja ML baru yang diusulkan Axfood disusun berdasarkan dua jalur utama: alur pembuatan model dan alur inferensi batch:

  • Pipeline ini dibuat versinya dalam dua repositori Git terpisah: satu repositori build dan satu repositori penerapan (inferensi). Bersama-sama, mereka membentuk saluran yang kuat untuk meramalkan buah-buahan dan sayuran.
  • Alur dikemas ke dalam templat proyek khusus menggunakan Proyek SageMaker yang terintegrasi dengan repositori Git pihak ketiga (Bitbucket) dan alur Bitbucket untuk komponen integrasi berkelanjutan dan penerapan berkelanjutan (CI/CD).
  • Templat proyek SageMaker menyertakan kode awal yang sesuai dengan setiap langkah pembuatan dan penerapan alur (kita akan membahas langkah-langkah ini secara lebih rinci nanti di postingan ini) serta definisi alurโ€”resep tentang bagaimana langkah-langkah tersebut harus dijalankan.
  • Otomatisasi pembuatan proyek baru berdasarkan templat disederhanakan Katalog Layanan AWS, tempat portofolio dibuat, berfungsi sebagai abstraksi untuk beberapa produk.
  • Setiap produk diterjemahkan menjadi Formasi AWS Cloud templat, yang diterapkan saat data scientist membuat proyek SageMaker baru dengan cetak biru MLOps kami sebagai fondasinya. Ini mengaktifkan AWS Lambda fungsi yang membuat proyek Bitbucket dengan dua repositoriโ€”pembuatan model dan penerapan modelโ€”berisi kode benih.

Diagram berikut menggambarkan arsitektur solusi. Alur Kerja A menggambarkan aliran rumit antara dua alur modelโ€”pembangunan dan inferensi. Alur Kerja B menunjukkan alur untuk membuat proyek ML baru.

Bagaimana Axfood memungkinkan pembelajaran mesin yang dipercepat di seluruh organisasi menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Pipa pembuatan model

Alur pembuatan model mengatur siklus hidup model, mulai dari prapemrosesan, berlanjut hingga pelatihan, dan berpuncak pada pendaftaran di registri model:

  • Pemrosesan awal โ€“ Ini, SageMaker ScriptProcessor kelas digunakan untuk rekayasa fitur, sehingga menghasilkan kumpulan data tempat model akan dilatih.
  • Pelatihan dan transformasi batch โ€“ Wadah pelatihan dan inferensi khusus dari SageMaker dimanfaatkan untuk melatih model pada data historis dan membuat prediksi pada data evaluasi menggunakan Estimator dan Transformator SageMaker untuk masing-masing tugas.
  • Evaluasi โ€“ Model yang dilatih menjalani evaluasi dengan membandingkan prediksi yang dihasilkan pada data evaluasi dengan penggunaan kebenaran dasar ScriptProcessor.
  • Pekerjaan dasar โ€“ Pipeline membuat garis dasar berdasarkan statistik pada data masukan. Ini penting untuk memantau kualitas data dan model, serta atribusi fitur.
  • Registri model โ€“ Model yang dilatih didaftarkan untuk digunakan di masa mendatang. Model tersebut akan disetujui oleh ilmuwan data yang ditunjuk untuk menerapkan model tersebut untuk digunakan dalam produksi.

Untuk lingkungan produksi, penyerapan data dan mekanisme pemicu dikelola melalui orkestrasi Aliran Udara utama. Sementara itu, selama pengembangan, pipeline diaktifkan setiap kali penerapan baru diperkenalkan ke repositori Bitbucket build model. Gambar berikut memvisualisasikan alur pembuatan model.

Bagaimana Axfood memungkinkan pembelajaran mesin yang dipercepat di seluruh organisasi menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Pipa inferensi batch

Pipeline inferensi batch menangani fase inferensi, yang terdiri dari langkah-langkah berikut:

  • Pemrosesan awal โ€“ Data diproses terlebih dahulu menggunakan ScriptProcessor.
  • Transformasi batch โ€“ Model ini menggunakan wadah inferensi khusus dengan SageMaker Transformer dan menghasilkan prediksi berdasarkan masukan data yang telah diproses sebelumnya. Model yang digunakan adalah model terlatih terbaru yang disetujui dalam registri model.
  • Pengolahan pasca โ€“ Prediksi menjalani serangkaian langkah pascapemrosesan menggunakan ScriptProcessor.
  • Pemantauan โ€“ Pengawasan berkelanjutan menyelesaikan pemeriksaan penyimpangan terkait kualitas data, kualitas model, dan atribusi fitur.

Jika terjadi perbedaan, logika bisnis dalam skrip pascapemrosesan menilai apakah pelatihan ulang model diperlukan. Jalur pipa dijadwalkan berjalan secara berkala.

Diagram berikut mengilustrasikan alur inferensi batch. Alur Kerja A berkaitan dengan prapemrosesan, kualitas data, dan pemeriksaan penyimpangan atribusi fitur, inferensi, dan pascapemrosesan. Alur kerja B sesuai dengan pemeriksaan penyimpangan kualitas model. Jalur pipa ini terbagi karena pemeriksaan penyimpangan kualitas model hanya akan berjalan jika data kebenaran lapangan yang baru tersedia.

Bagaimana Axfood memungkinkan pembelajaran mesin yang dipercepat di seluruh organisasi menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Monitor Model SageMaker

Dengan Monitor Model Amazon SageMaker terintegrasi, jalur pipa mendapatkan keuntungan dari pemantauan real-time sebagai berikut:

  • Kualitas data โ€“ Memantau penyimpangan atau ketidakkonsistenan data
  • Kualitas model โ€“ Mengawasi fluktuasi apa pun dalam performa model
  • Atribusi fitur โ€“ Memeriksa penyimpangan dalam atribusi fitur

Pemantauan kualitas model memerlukan akses terhadap data kebenaran dasar. Meskipun memperoleh kebenaran dasar terkadang sulit, penggunaan pemantauan penyimpangan atribusi data atau fitur berfungsi sebagai proksi yang kompeten untuk kualitas model.

Khususnya, jika terjadi penyimpangan kualitas data, sistem akan memperhatikan hal-hal berikut:

  • Penyimpangan konsep โ€“ Hal ini berkaitan dengan perubahan korelasi antara masukan dan keluaran, yang memerlukan kebenaran dasar
  • Pergeseran kovariat โ€“ Di sini, penekanannya adalah pada perubahan distribusi variabel input independen

Fungsi penyimpangan data SageMaker Model Monitor dengan cermat menangkap dan meneliti data masukan, menerapkan aturan, dan pemeriksaan statistik. Peringatan dimunculkan setiap kali anomali terdeteksi.

Sejalan dengan penggunaan pemeriksaan penyimpangan kualitas data sebagai proksi untuk memantau degradasi model, sistem juga memantau penyimpangan atribusi fitur menggunakan skor perolehan kumulatif diskon yang dinormalisasi (NDCG). Skor ini sensitif terhadap perubahan urutan peringkat atribusi fitur serta skor atribusi mentah fitur. Dengan memantau penyimpangan dalam atribusi fitur individual dan kepentingan relatifnya, Anda dapat dengan mudah menemukan penurunan kualitas model.

Penjelasan model

Keterjelasan model adalah bagian penting dari penerapan ML, karena memastikan transparansi dalam prediksi. Untuk pemahaman rinci, kami menggunakan Memperjelas Amazon SageMaker.

Ini menawarkan penjelasan model global dan lokal melalui teknik atribusi fitur model-agnostik berdasarkan konsep nilai Shapley. Ini digunakan untuk memecahkan kode mengapa prediksi tertentu dibuat selama inferensi. Penjelasan-penjelasan tersebut, yang pada dasarnya bersifat kontras, dapat bervariasi berdasarkan landasan yang berbeda. SageMaker Clarify membantu dalam menentukan garis dasar ini menggunakan K-means atau K-prototipe dalam kumpulan data masukan, yang kemudian ditambahkan ke alur pembuatan model. Fungsi ini memungkinkan kami membangun aplikasi AI generatif di masa depan untuk meningkatkan pemahaman tentang cara kerja model.

Industrialisasi: Dari prototipe hingga produksi

Proyek MLOps mencakup otomatisasi tingkat tinggi dan dapat berfungsi sebagai cetak biru untuk kasus penggunaan serupa:

  • Infrastruktur dapat digunakan kembali seluruhnya, sedangkan kode awal dapat disesuaikan untuk setiap tugas, dengan sebagian besar perubahan terbatas pada definisi alur dan logika bisnis untuk prapemrosesan, pelatihan, inferensi, dan pascapemrosesan.
  • Skrip pelatihan dan inferensi dihosting menggunakan wadah khusus SageMaker, sehingga berbagai model dapat diakomodasi tanpa perubahan pada data dan langkah-langkah pemantauan model atau penjelasan model, selama data berada dalam format tabel.

Setelah menyelesaikan pengerjaan prototipe, kami beralih ke bagaimana kami harus menggunakannya dalam produksi. Untuk melakukannya, kami merasa perlu melakukan beberapa penyesuaian tambahan pada template MLOps:

  • Kode awal asli yang digunakan dalam prototipe templat mencakup langkah prapemrosesan dan pascapemrosesan yang dijalankan sebelum dan sesudah langkah inti ML (pelatihan dan inferensi). Namun, ketika meningkatkan penggunaan template untuk beberapa kasus penggunaan dalam produksi, langkah prapemrosesan dan pascapemrosesan bawaan dapat menyebabkan penurunan keumuman dan reproduksi kode.
  • Untuk meningkatkan sifat umum dan meminimalkan kode yang berulang, kami memilih untuk lebih memperkecil pipeline. Daripada menjalankan langkah-langkah prapemrosesan dan pascapemrosesan sebagai bagian dari pipeline ML, kami menjalankannya sebagai bagian dari orkestrasi Aliran Udara utama sebelum dan sesudah memicu pipeline ML.
  • Dengan cara ini, tugas pemrosesan khusus kasus penggunaan disarikan dari templat, dan yang tersisa adalah pipeline inti ML yang menjalankan tugas umum di beberapa kasus penggunaan dengan pengulangan kode yang minimal. Parameter yang berbeda antar kasus penggunaan diberikan sebagai masukan ke pipeline ML dari orkestrasi Aliran Udara utama.

Hasilnya: Pendekatan yang cepat & efisien untuk pembuatan & penerapan model

Prototipe yang berkolaborasi dengan AWS telah menghasilkan templat MLOps yang mengikuti praktik terbaik saat ini dan kini tersedia untuk digunakan oleh semua tim ilmu data Axfood. Dengan membuat proyek SageMaker baru dalam SageMaker Studio, data scientist dapat memulai proyek ML baru dengan cepat dan bertransisi ke produksi dengan lancar, sehingga memungkinkan manajemen waktu yang lebih efisien. Hal ini dimungkinkan dengan mengotomatiskan tugas MLOps yang membosankan dan berulang sebagai bagian dari templat.

Selain itu, beberapa fungsi baru telah ditambahkan secara otomatis ke pengaturan ML kami. Keuntungan ini meliputi:

  • Pemantauan model โ€“ Kami dapat melakukan pemeriksaan penyimpangan untuk model dan kualitas data serta kemampuan menjelaskan model
  • Model dan silsilah data โ€“ Kini dimungkinkan untuk melacak dengan tepat data mana yang telah digunakan untuk model tertentu
  • Registri model โ€“ Ini membantu kami membuat katalog model untuk produksi dan mengelola versi model

Kesimpulan

Dalam postingan ini, kami membahas bagaimana Axfood meningkatkan operasi dan skalabilitas operasi AI dan ML kami yang ada melalui kolaborasi dengan pakar AWS dan dengan menggunakan SageMaker serta produk terkaitnya.

Peningkatan ini akan membantu tim ilmu data Axfood membangun alur kerja ML dengan cara yang lebih terstandarisasi dan akan sangat menyederhanakan analisis dan pemantauan model dalam produksiโ€”memastikan kualitas model ML yang dibuat dan dikelola oleh tim kami.

Silakan tinggalkan umpan balik atau pertanyaan di bagian komentar.


Tentang Penulis

Bagaimana Axfood memungkinkan pembelajaran mesin yang dipercepat di seluruh organisasi menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Dr.Bjรถrn Blomqvist adalah Kepala Strategi AI di Axfood AB. Sebelum bergabung dengan Axfood AB, dia memimpin tim Ilmuwan Data di Dagab, bagian dari Axfood, membangun solusi pembelajaran mesin inovatif dengan misi menyediakan makanan yang baik dan berkelanjutan bagi masyarakat di seluruh Swedia. Lahir dan besar di utara Swedia, di waktu luangnya Bjรถrn bertualang ke pegunungan bersalju dan laut lepas.

Bagaimana Axfood memungkinkan pembelajaran mesin yang dipercepat di seluruh organisasi menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Oscar Klang adalah Ilmuwan Data Senior di departemen analitik di Dagab, tempat dia senang bekerja dengan semua analisis dan pembelajaran mesin, misalnya mengoptimalkan operasi rantai pasokan, membuat model perkiraan, dan, yang terbaru, aplikasi GenAI. Dia berkomitmen untuk membangun jalur pembelajaran mesin yang lebih efisien, meningkatkan efisiensi dan skalabilitas.

Bagaimana Axfood memungkinkan pembelajaran mesin yang dipercepat di seluruh organisasi menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Pavel Maslov adalah Senior DevOps dan insinyur ML di tim Platform Analitik. Pavel memiliki pengalaman luas dalam pengembangan kerangka kerja, infrastruktur, dan alat di domain DevOps dan ML/AI di platform AWS. Pavel telah menjadi salah satu pemain kunci dalam membangun kemampuan dasar ML di Axfood.

Bagaimana Axfood memungkinkan pembelajaran mesin yang dipercepat di seluruh organisasi menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.Joakim Berg adalah Platform Analitik Pemimpin Tim dan Pemilik Produk, yang berbasis di Stockholm Swedia. Dia memimpin tim insinyur DevOps/MLOps akhir Platform Data yang menyediakan platform Data dan ML untuk tim Ilmu Data. Joakim memiliki pengalaman bertahun-tahun memimpin tim pengembangan dan arsitektur senior dari berbagai industri.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS