Meningkatkan stabilitas dan fleksibilitas pipeline ML di Amazon Packaging Innovation dengan Amazon SageMaker Pipelines PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Meningkatkan stabilitas dan fleksibilitas pipeline ML di Amazon Packaging Innovation dengan Amazon SageMaker Pipelines

Untuk memuaskan pelanggan dan meminimalkan pemborosan kemasan, Amazon harus memilih jenis kemasan yang optimal untuk miliaran paket yang dikirim setiap tahun. Jika terlalu sedikit perlindungan digunakan untuk barang yang mudah pecah seperti cangkir kopi, barang tersebut akan tiba dalam keadaan rusak dan Amazon mempertaruhkan kepercayaan pelanggan mereka. Menggunakan terlalu banyak perlindungan akan mengakibatkan peningkatan biaya dan tempat sampah daur ulang yang terlalu penuh. Dengan ratusan juta produk yang tersedia, mekanisme keputusan yang dapat diskalakan diperlukan untuk terus belajar dari pengujian produk dan umpan balik pelanggan.

Untuk mengatasi masalah ini, tim Amazon Packaging Innovation mengembangkan model pembelajaran mesin (ML) yang mengklasifikasikan apakah produk cocok untuk jenis kemasan Amazon seperti surat, tas, atau kotak, atau bahkan dapat dikirim tanpa kemasan tambahan. Sebelumnya, tim mengembangkan jalur pipa khusus berdasarkan Fungsi Langkah AWS untuk melakukan pelatihan mingguan dan pekerjaan inferensi harian atau bulanan. Namun, seiring berjalannya waktu, pipeline tidak memberikan fleksibilitas yang memadai untuk meluncurkan model dengan arsitektur baru. Pengembangan untuk jaringan pipa baru menghadirkan overhead dan koordinasi yang diperlukan antara ilmuwan data dan pengembang. Untuk mengatasi kesulitan ini dan meningkatkan kecepatan penerapan model dan arsitektur baru, tim memilih untuk mengatur pelatihan dan inferensi model dengan Pipa Amazon SageMaker.

Dalam postingan ini, kami membahas arsitektur orkestrasi sebelumnya berdasarkan Step Functions, menguraikan pelatihan dan arsitektur inferensi menggunakan Pipelines, dan menyoroti fleksibilitas yang dicapai oleh tim Amazon Packaging Innovation.

Tantangan saluran ML sebelumnya di Amazon Packaging Innovation

Untuk memasukkan umpan balik berkelanjutan tentang kinerja paket, model baru dilatih setiap minggu menggunakan label yang jumlahnya terus bertambah. Inferensi untuk seluruh inventaris produk dilakukan setiap bulan, dan inferensi harian dilakukan untuk memberikan prediksi tepat waktu untuk inventaris yang baru ditambahkan.

Untuk mengotomatiskan proses pelatihan beberapa model dan memberikan prediksi, tim telah mengembangkan alur kustom berdasarkan Step Functions untuk mengatur langkah-langkah berikut:

  • Persiapan data untuk pekerjaan pelatihan dan inferensi dan pemuatan prediksi ke database (Pergeseran Merah Amazon) Dengan Lem AWS.
  • Model pelatihan dan inferensi dengan Amazon SageMaker.
  • Perhitungan metrik kinerja model pada set validasi dengan Batch AWS.
  • Menggunakan Amazon DynamoDB untuk menyimpan konfigurasi model (seperti rasio pemisahan data untuk pelatihan dan validasi, lokasi artefak model, jenis model, dan jumlah instans untuk pelatihan dan inferensi), metrik performa model, dan versi model terbaru yang berhasil dilatih.
  • Perhitungan perbedaan skor kinerja model, perubahan distribusi label pelatihan, dan membandingkan ukuran data input antara versi model sebelumnya dan baru dengan AWS Lambda fungsi.
  • Mengingat banyaknya langkah, pipeline juga membutuhkan sistem alarm yang andal di setiap langkah untuk mengingatkan pemangku kepentingan tentang masalah apa pun. Ini dicapai melalui kombinasi dari Layanan Antrian Sederhana Amazon (Amazon SQS) dan Layanan Pemberitahuan Sederhana Amazon (Amazon SNS). Alarm dibuat untuk memberi tahu pemangku kepentingan bisnis, ilmuwan data, dan pengembang tentang langkah-langkah yang gagal dan penyimpangan besar dalam model dan metrik data.

Setelah menggunakan solusi ini selama hampir 2 tahun, tim menyadari bahwa implementasi ini hanya bekerja dengan baik untuk alur kerja ML biasa di mana satu model dilatih dan diberi skor pada set data validasi. Namun, solusinya tidak cukup fleksibel untuk model yang rumit dan tidak tahan terhadap kegagalan. Misalnya, arsitektur tidak mudah mengakomodasi pelatihan model berurutan. Sulit untuk menambah atau menghapus langkah tanpa menduplikasi seluruh jalur pipa dan memodifikasi infrastruktur. Bahkan perubahan sederhana dalam langkah pemrosesan data seperti menyesuaikan rasio pemisahan data atau memilih kumpulan fitur yang berbeda memerlukan koordinasi dari ilmuwan data dan pengembang. Ketika pipa gagal pada langkah mana pun, itu harus dimulai kembali dari awal, yang mengakibatkan pengoperasian berulang dan peningkatan biaya. Untuk menghindari proses berulang dan harus memulai ulang dari langkah yang gagal, tim akan membuat salinan baru dari mesin status yang diringkas. Pemecahan masalah ini menyebabkan proliferasi mesin negara, masing-masing dimulai dari langkah-langkah yang biasanya gagal. Terakhir, jika tugas pelatihan mengalami penyimpangan dalam distribusi label, skor model, atau jumlah label, ilmuwan data harus meninjau model dan metriknya secara manual. Kemudian ilmuwan data akan mengakses tabel DynamoDB dengan versi model dan memperbarui tabel untuk memastikan bahwa model yang benar digunakan untuk tugas inferensi berikutnya.

Pemeliharaan arsitektur ini membutuhkan setidaknya satu sumber daya khusus dan sumber daya penuh waktu tambahan untuk pengembangan. Mengingat kesulitan memperluas saluran untuk mengakomodasi kasus penggunaan baru, para ilmuwan data telah mulai mengembangkan alur kerja mereka sendiri, yang pada gilirannya menyebabkan basis kode yang berkembang, beberapa tabel data dengan skema data serupa, dan pemantauan model terdesentralisasi. Akumulasi dari masalah ini telah mengakibatkan produktivitas tim yang lebih rendah dan peningkatan overhead.

Untuk mengatasi tantangan ini, tim Amazon Packaging Innovation mengevaluasi solusi lain yang ada untuk MLOps, termasuk SageMaker Pipelines (Pengumuman rilis Desember 2020). Pipelines adalah kemampuan SageMaker untuk membuat, mengelola, mengotomatisasi, dan menskalakan alur kerja ML menyeluruh. Pipeline memungkinkan Anda mengurangi jumlah langkah di seluruh alur kerja ML dan cukup fleksibel untuk memungkinkan ilmuwan data menentukan alur kerja ML khusus. Dibutuhkan pemantauan dan pencatatan langkah-langkah. Itu juga dilengkapi dengan registri model yang secara otomatis membuat versi model baru. Registri model memiliki alur kerja persetujuan bawaan untuk memilih model untuk inferensi dalam produksi. Pipelines juga memungkinkan langkah-langkah caching yang dipanggil dengan argumen yang sama. Jika proses sebelumnya ditemukan, cache dibuat, yang memungkinkan untuk memulai ulang dengan mudah alih-alih menghitung ulang langkah-langkah yang berhasil diselesaikan.

Dalam proses evaluasi, Pipeline menonjol dari solusi lain karena fleksibilitas dan ketersediaan fitur untuk mendukung dan memperluas alur kerja saat ini dan masa depan. Beralih ke Pipelines membebaskan waktu pengembang dari pemeliharaan platform dan pemecahan masalah serta mengalihkan perhatian ke penambahan fitur baru. Dalam postingan ini, kami menyajikan desain alur kerja pelatihan dan inferensi di tim Amazon Packaging Innovation menggunakan Pipelines. Kami juga membahas manfaat dan pengurangan biaya yang direalisasikan tim dengan beralih ke Pipelines.

Jalur pelatihan

Tim Inovasi Pengemasan Amazon melatih model untuk setiap jenis paket menggunakan semakin banyak label. Diagram berikut menguraikan seluruh proses.

Alur kerja dimulai dengan mengekstrak label dan fitur dari database Amazon Redshift dan membongkar data ke Layanan Penyimpanan Sederhana Amazon (Amazon S3) melalui tugas ekstrak, transformasi, dan muat (ETL) terjadwal. Bersamaan dengan input data, objek file dengan tipe model dan parameter ditempatkan di bucket S3. File ini berfungsi sebagai pemicu pipeline melalui fungsi Lambda.

Langkah selanjutnya sepenuhnya dapat disesuaikan dan ditentukan sepenuhnya oleh ilmuwan data menggunakan SageMaker Python SDK for Pipelines. Dalam skenario yang kami sajikan dalam postingan ini, data input dibagi menjadi set pelatihan dan validasi dan disimpan kembali dalam bucket S3 dengan meluncurkan tugas Pemrosesan SageMaker.

Saat data sudah siap di Amazon S3, tugas pelatihan SageMaker dimulai. Setelah model berhasil dilatih dan dibuat, langkah evaluasi model dilakukan pada data validasi melalui tugas transformasi batch SageMaker. Metrik model kemudian dibandingkan dengan metrik model minggu sebelumnya menggunakan tugas Pemrosesan SageMaker. Tim telah menetapkan beberapa kriteria khusus untuk mengevaluasi penyimpangan dalam performa model. Model ditolak atau disetujui berdasarkan kriteria ini. Jika model ditolak, model yang disetujui sebelumnya digunakan untuk pekerjaan inferensi berikutnya. Jika model disetujui, versinya akan didaftarkan dan model tersebut digunakan untuk pekerjaan inferensi. Para pemangku kepentingan menerima pemberitahuan tentang hasilnya melalui amazoncloudwatch alarm.

Tangkapan layar berikut dari Studio Amazon SageMaker menunjukkan langkah-langkah alur pelatihan.

Packaging Innovation-SMP-training

Pipelines melacak setiap proses pipeline, yang dapat Anda pantau di Studio. Atau, Anda dapat menanyakan kemajuan proses menggunakan bot3 atau itu Antarmuka Baris Perintah AWS (AWS CLI). Anda dapat memvisualisasikan metrik model di Studio dan membandingkan berbagai versi model.

Pipa inferensi

Tim Amazon Packaging Innovation memperbarui prediksi untuk seluruh inventaris produk setiap bulan. Prediksi harian dihasilkan untuk memberikan rekomendasi pengemasan tepat waktu untuk inventaris yang baru ditambahkan menggunakan model terlatih terbaru. Ini membutuhkan pipa inferensi untuk berjalan setiap hari dengan volume data yang berbeda. Diagram berikut mengilustrasikan alur kerja ini.

Pengemasan Inovasi-inferensi-arsitektur

Serupa dengan pipeline pelatihan, inferensi dimulai dengan membongkar data dari Amazon Redshift ke bucket S3. Objek file yang ditempatkan di Amazon S3 memicu fungsi Lambda yang memulai pipa inferensi. Fitur disiapkan untuk inferensi dan data dibagi menjadi file dengan ukuran yang sesuai menggunakan tugas Pemrosesan SageMaker. Berikutnya, pipeline mengidentifikasi model terbaru yang disetujui untuk menjalankan prediksi dan memuatnya ke bucket S3. Terakhir, prediksi dimuat kembali ke Amazon Redshift menggunakan API data boto3 dalam tugas Pemrosesan SageMaker.

Tangkapan layar berikut dari Studio menunjukkan detail pipa inferensi.

Meningkatkan stabilitas dan fleksibilitas pipeline ML di Amazon Packaging Innovation dengan Amazon SageMaker Pipelines PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Manfaat memilih merancang alur kerja ML dengan SageMaker Pipelines

Di bagian ini, kami membahas keuntungan yang direalisasikan oleh tim Amazon Packaging Innovation dengan beralih ke Pipelines untuk pelatihan dan inferensi model.

Fitur MLOps tingkat produksi siap pakai

Saat membandingkan berbagai solusi internal dan eksternal untuk solusi pipeline ML berikutnya, seorang data scientist dapat membuat prototipe dan mengembangkan versi lengkap alur kerja ML dengan Pipelines di lingkungan Studio Jupyter dalam waktu kurang dari 3 minggu. Bahkan pada tahap pembuatan prototipe, menjadi jelas bahwa Pipelines menyediakan semua komponen infrastruktur yang diperlukan untuk alur kerja tingkat produksi: versi model, caching, dan alarm. Ketersediaan segera dari fitur-fitur ini berarti tidak ada waktu tambahan yang dihabiskan untuk mengembangkan dan menyesuaikannya. Ini adalah demonstrasi nilai yang jelas, yang meyakinkan tim Amazon Packaging Innovation bahwa Pipelines adalah solusi yang tepat.

Fleksibilitas dalam mengembangkan model ML

Keuntungan terbesar bagi ilmuwan data dalam tim adalah kemampuan untuk bereksperimen dengan mudah dan melakukan iterasi melalui model yang berbeda. Terlepas dari framework apa yang mereka sukai untuk pekerjaan ML mereka dan jumlah langkah serta fitur yang terlibat, Pipeline mengakomodasi kebutuhan mereka. Data scientist diberdayakan untuk bereksperimen tanpa harus menunggu sprint pengembangan perangkat lunak untuk menambahkan fitur atau langkah tambahan.

Mengurangi Biaya

Kemampuan Pipeline dari SageMaker adalah gratis: Anda hanya membayar sumber daya komputasi dan penyimpanan yang terkait dengan pelatihan dan inferensi. Namun, saat memikirkan tentang biaya, Anda perlu memperhitungkan tidak hanya biaya layanan yang digunakan, tetapi juga jam pengembang yang diperlukan untuk memelihara alur kerja, men-debug, dan menambalnya. Mengorkestrasi dengan Pipelines lebih sederhana karena terdiri dari lebih sedikit bagian dan infrastruktur yang familiar. Sebelumnya, menambahkan fitur baru membutuhkan setidaknya dua orang (ilmuwan data dan insinyur perangkat lunak) di tim Amazon Packaging Innovation untuk mengimplementasikannya. Dengan pipeline yang didesain ulang, upaya rekayasa kini diarahkan ke infrastruktur khusus tambahan di sekitar pipeline, seperti pembuatan repositori tunggal untuk pelacakan kode pembelajaran mesin, penyederhanaan penerapan model di seluruh akun AWS, pengembangan tugas ETL terintegrasi dan umum fungsi yang dapat digunakan kembali.

Kemampuan untuk meng-cache langkah-langkah dengan input yang serupa juga berkontribusi pada pengurangan biaya, karena tim cenderung menjalankan kembali seluruh pipeline. Sebaliknya, mereka dapat dengan mudah memulainya dari titik kegagalan.

Kesimpulan

Tim Amazon Packaging Innovation melatih model ML setiap bulan dan secara teratur memperbarui prediksi untuk jenis kemasan produk yang direkomendasikan. Rekomendasi ini membantu mereka mencapai berbagai tujuan tim dan seluruh perusahaan dengan mengurangi pemborosan dan menyenangkan pelanggan dengan setiap pesanan. Saluran pelatihan dan inferensi harus berjalan dengan andal secara teratur namun tetap memungkinkan peningkatan model secara konstan.

Transisi ke Pipelines memungkinkan tim menerapkan empat arsitektur model multimodal baru ke produksi dalam waktu kurang dari 2 bulan. Menerapkan model baru menggunakan arsitektur sebelumnya akan membutuhkan 5 hari (dengan arsitektur model yang sama) hingga 1 bulan (dengan arsitektur model baru). Menerapkan model yang sama menggunakan Pipeline memungkinkan tim untuk mengurangi waktu pengembangan menjadi 4 jam dengan arsitektur model yang sama dan menjadi 5 hari dengan arsitektur model baru. Itu setara dengan penghematan hampir 80% dari jam kerja.

Sumber daya tambahan

Untuk informasi lebih lanjut, lihat sumber daya berikut:


Tentang Penulis

Penulis Ankur-ShuklaAnkur Shukla adalah Ilmuwan Data Utama di AWS-ProServe yang berbasis di Palo Alto. Ankur memiliki lebih dari 15 tahun pengalaman konsultasi bekerja langsung dengan pelanggan dan membantu mereka memecahkan masalah bisnis dengan teknologi. Dia memimpin beberapa inisiatif sains terapan dan ML-Ops global di dalam AWS. Di waktu luangnya, ia senang membaca dan menghabiskan waktu bersama keluarga.

Akash-Singla-penulisAkash Singa adalah Sr. System Dev Engineer dengan tim Amazon Packaging Innovation. Dia memiliki lebih dari 17 tahun pengalaman memecahkan masalah bisnis kritis melalui teknologi untuk beberapa vertikal bisnis. Dia saat ini berfokus pada pemutakhiran infrastruktur NAWS untuk berbagai aplikasi sentris pengemasan untuk menskalakannya dengan lebih baik.

Vitalina-Komashko-penulisVitalina Komashko adalah Ilmuwan Data dengan Layanan Profesional AWS. Dia memegang gelar PhD dalam Farmakologi dan Toksikologi tetapi beralih ke ilmu data dari pekerjaan eksperimental karena dia ingin "memiliki pembuatan data dan interpretasi hasil". Di awal karirnya, dia bekerja dengan perusahaan biotek dan farmasi. Di AWS, dia senang memecahkan masalah bagi pelanggan dari berbagai industri dan belajar tentang tantangan unik mereka.

Prasanth-Meiyappan-penulisPrasanth Meiyappan adalah Ilmuwan Terapan Senior dengan Amazon Packaging Innovation selama 4+ tahun. Dia memiliki 6+ tahun pengalaman industri dalam pembelajaran mesin dan telah mengirimkan produk untuk meningkatkan pengalaman pencarian pelanggan dan meningkatkan pengalaman pengemasan pelanggan. Prasanth bersemangat tentang keberlanjutan dan memiliki gelar PhD dalam pemodelan statistik perubahan iklim.

Matthew-Bales-penulisMatius Bales adalah Sr. Research Scientist yang bekerja untuk mengoptimalkan pemilihan jenis paket menggunakan umpan balik pelanggan dan pembelajaran mesin. Sebelum di Amazon, Matt bekerja sebagai postdoc yang melakukan simulasi fisika partikel di Jerman dan di kehidupan sebelumnya, manajer produksi perangkat implan medis radioaktif di sebuah startup. Dia memegang gelar Ph.D. dalam Fisika dari University of Michigan.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS