Logo Zephyrnet

Gunakan berbagi Kartu Model Amazon SageMaker untuk meningkatkan tata kelola model | Layanan Web Amazon

Tanggal:

Seiring dengan semakin populernya teknologi Artificial Intelligence (AI) dan Machine Learning (ML), banyak perusahaan yang berhasil membangun aplikasi bisnis penting yang didukung oleh model ML dalam skala produksi. Namun, karena model ML ini mengambil keputusan bisnis yang penting bagi bisnis, penting bagi perusahaan untuk menambahkan batasan yang tepat di sepanjang siklus hidup ML mereka. Pagar pembatas memastikan bahwa keamanan, privasi, dan kualitas kode, konfigurasi, serta data dan konfigurasi model yang digunakan dalam siklus hidup model dibuat versinya dan dipertahankan.

Penerapan batasan ini semakin sulit bagi perusahaan karena proses dan aktivitas ML di dalam perusahaan menjadi lebih kompleks karena masuknya proses yang melibatkan banyak pihak dan memerlukan kontribusi dari berbagai pemangku kepentingan dan personel. Selain data engineer dan data scientist, terdapat juga penyertaan proses operasional untuk mengotomatisasi & menyederhanakan siklus hidup ML. Selain itu, banyaknya pemangku kepentingan bisnis dan dalam beberapa kasus tinjauan hukum dan kepatuhan memerlukan kemampuan untuk menambahkan transparansi dalam mengelola kontrol akses, pelacakan aktivitas, dan pelaporan di seluruh siklus hidup ML.

Kerangka kerja yang memberikan visibilitas sistematis ke dalam pengembangan, validasi, dan penggunaan model ML disebut tata kelola ML. Selama AWS re:Invent 2022, AWS memperkenalkan alat tata kelola ML baru untuk Amazon SageMaker yang menyederhanakan kontrol akses dan meningkatkan transparansi atas proyek ML Anda. Salah satu alat yang tersedia sebagai bagian dari tata kelola ML adalah Kartu Model Amazon SageMaker, yang memiliki kemampuan untuk menciptakan satu sumber kebenaran untuk informasi model dengan memusatkan dan menstandardisasi dokumentasi di seluruh siklus hidup model.

Kartu model SageMaker memungkinkan Anda menstandardisasi cara model didokumentasikan, sehingga mencapai visibilitas ke dalam siklus hidup model, mulai dari perancangan, pembuatan, pelatihan, dan evaluasi. Kartu model dimaksudkan sebagai sumber kebenaran tunggal untuk metadata bisnis dan teknis tentang model yang dapat digunakan secara andal untuk tujuan audit dan dokumentasi. Mereka memberikan lembar fakta tentang model yang penting bagi tata kelola model.

Saat Anda menskalakan model, proyek, dan tim Anda, sebagai praktik terbaik, kami menyarankan Anda menerapkan strategi multi-akun yang menyediakan isolasi proyek dan tim untuk pengembangan dan penerapan model ML. Untuk informasi selengkapnya tentang meningkatkan tata kelola model ML Anda, lihat Tingkatkan tata kelola model pembelajaran mesin Anda dengan Amazon SageMaker.

Tinjauan arsitektur

Arsitektur diimplementasikan sebagai berikut:

  • Akun Ilmu Data – Ilmuwan Data melakukan eksperimen mereka di Studio SageMaker dan membangun pengaturan MLOps untuk menerapkan model ke lingkungan pementasan/produksi menggunakan Proyek SageMaker.
  • Akun Layanan Bersama ML – MLOps yang disiapkan dari akun Ilmu Data akan memicu pipeline integrasi berkelanjutan dan pengiriman berkelanjutan (CI/CD) menggunakan Komitmen Kode AWS dan Pipa Kode AWS.
  • Akun Dev – Pipeline CI/CD selanjutnya akan memicu pipeline ML di akun ini yang mencakup pra-pemrosesan data, pelatihan model, dan pasca pemrosesan seperti evaluasi dan registrasi model. Output dari pipeline ini akan menerapkan model Titik akhir SageMaker untuk dikonsumsi untuk tujuan inferensi. Bergantung pada persyaratan tata kelola Anda, akun Ilmu Data & Pengembangan dapat digabungkan menjadi satu akun AWS.
  • Akun Data – Pipeline ML yang berjalan di Akun Dev akan mengambil data dari akun ini.
  • Akun Pengujian dan Produksi – Pipeline CI/CD akan melanjutkan penerapan setelah Akun Dev untuk menyiapkan konfigurasi titik akhir SageMaker di akun ini.
  • Keamanan dan Tata Kelola – Layanan seperti AWS Identity and Access Management (IAM), AWS IAM Identity Center, AWS CloudTrail, AWS Key Management Service (AWS KMS), Amazon CloudWatch, dan AWS Security Hub akan digunakan di seluruh akun ini sebagai bagian dari keamanan dan pemerintahan.

Diagram berikut menggambarkan arsitektur ini.

Untuk informasi lebih lanjut tentang pengaturan arsitektur ML multi-akun yang dapat diskalakan, lihat Landasan MLOps untuk perusahaan dengan Amazon SageMaker.

Pelanggan kami memerlukan kemampuan untuk berbagi kartu model di seluruh akun untuk meningkatkan visibilitas dan tata kelola model mereka melalui informasi yang dibagikan dalam kartu model. Kini, dengan berbagi kartu model lintas akun, pelanggan dapat menikmati manfaat dari strategi multi-akun sekaligus memiliki akses ke model kartu yang tersedia di organisasi mereka, sehingga mereka dapat mempercepat kolaborasi dan memastikan tata kelola.

Dalam postingan ini, kami menunjukkan cara menyiapkan dan mengakses kartu model di seluruh akun Model Development Lifecycle (MDLC) menggunakan fitur berbagi lintas akun yang baru pada kartu model. Pertama, kami akan menjelaskan skenario dan arsitektur untuk menyiapkan fitur berbagi lintas akun pada kartu model, lalu mendalami setiap komponen tentang cara menyiapkan dan mengakses kartu model bersama di seluruh akun untuk meningkatkan visibilitas dan tata kelola model.

Ikhtisar solusi

Saat membuat model ML, sebaiknya siapkan arsitektur multi-akun untuk menyediakan isolasi beban kerja yang meningkatkan keamanan, keandalan, dan skalabilitas. Untuk postingan ini, kami akan berasumsi membangun dan menerapkan model untuk kasus penggunaan Customer Churn. Diagram arsitektur berikut menunjukkan salah satu pendekatan yang direkomendasikan – kartu model terpusat – untuk mengelola kartu model dalam arsitektur Machine Learning Model-Development Lifecycle (MDLC) multi-akun. Namun, Anda juga dapat mengadopsi pendekatan lain, yaitu kartu model hub-and-spoke. Dalam postingan ini, kami hanya akan fokus pada pendekatan kartu model terpusat, namun prinsip yang sama dapat diperluas ke pendekatan hub-and-spoke. Perbedaan utamanya adalah setiap akun spoke akan mempertahankan versi kartu modelnya sendiri dan akan ada proses untuk mengumpulkan dan menyalin ke akun terpusat.

Diagram berikut menggambarkan arsitektur ini.

Arsitektur diimplementasikan sebagai berikut:

  1. Ilmuwan Data Utama diberitahu untuk menyelesaikan kasus penggunaan Customer Churn menggunakan ML, dan mereka memulai proyek ML melalui pembuatan kartu model untuk model Customer Churn V1 dalam status Draf di Akun Layanan Bersama ML
  2. Melalui otomatisasi, kartu model tersebut dibagikan dengan Akun Dev ML
  3. Ilmuwan Data membangun model dan mulai mengisi informasi melalui API ke dalam kartu model berdasarkan hasil eksperimennya dan status kartu model disetel ke Pending Review
  4. Melalui otomatisasi, kartu model tersebut dibagikan dengan akun pengujian ML
  5. ML Engineer (MLE) menjalankan pengujian integrasi dan validasi di akun Pengujian ML dan model di registri pusat ditandai dengan Persetujuan Tertunda
  6. Model Approver meninjau hasil model dengan dokumentasi pendukung yang disediakan di kartu model pusat dan menyetujui kartu model untuk penerapan produksi.
  7. Melalui otomatisasi, kartu model tersebut dibagikan dengan akun ML Prod dalam mode hanya baca.

Prasyarat

Sebelum memulai, pastikan Anda memiliki prasyarat berikut:

  • Dua akun AWS.
  • Di kedua akun AWS, peran federasi IAM dengan akses administrator untuk melakukan hal berikut:
    • Membuat, mengedit, melihat, dan menghapus kartu model dalam Amazon SageMaker.
    • Membuat, mengedit, melihat, dan menghapus pembagian sumber daya dalam AWS RAM.

Untuk informasi lebih lanjut, lihat Contoh kebijakan IAM untuk AWS RAM.

Menyiapkan berbagi kartu model

Akun tempat kartu model dibuat adalah akun kartu model. Pengguna di akun kartu model membagikannya dengan akun bersama tempat mereka dapat diperbarui. Pengguna di akun kartu model dapat membagikan kartu model mereka melalui AWS Resource Access Manager (RAM AWS). AWS RAM membantu Anda berbagi sumber daya di seluruh akun AWS.

Di bagian berikut, kami memperlihatkan cara berbagi kartu model.

Pertama, buat kartu model untuk kasus penggunaan Customer Churn seperti yang dijelaskan sebelumnya. Di konsol Amazon SageMaker, perluas bagian Tata Kelola dan pilih Kartu model.

Kami membuat kartu model Draf status dengan nama Kartu-Model-Churn-Pelanggan. Untuk informasi lebih lanjut, lihat Buat kartu model. Dalam demonstrasi ini, Anda dapat mengosongkan sisa bidang dan membuat kartu model.

Alternatifnya, Anda dapat menggunakan perintah AWS CLI berikut untuk membuat kartu model:

aws sagemaker create-model-card --model-card-name Customer-Churn-Model-Card --content "{"model_overview": {"model_owner": "model-owner","problem_type": "Customer Churn Model"}}" --model-card-status Draft

Sekarang, buat pembagian lintas akun menggunakan AWS RAM. Di konsol AWS RAM, pilih Buat pembagian sumber daya.

Masukkan nama untuk berbagi sumber daya, misalnya “Customer-Churn-Model-Card-Share”. Di Sumber Daya – opsional bagian, pilih jenis sumber daya sebagai Kartu Model SageMaker. Kartu model yang kita buat pada langkah sebelumnya akan muncul di daftar.

Pilih model itu dan model itu akan muncul di bagian Sumber daya yang dipilih. Pilih sumber daya itu lagi seperti yang ditunjukkan pada langkah-langkah berikut dan pilih Selanjutnya.

Di halaman berikutnya, Anda dapat memilih Izin terkelola. Anda dapat membuat izin khusus atau menggunakan opsi default “AWSRAMPermissionSageMakerModelCards” dan pilih Selanjutnya. Untuk informasi lebih lanjut, lihat Mengelola izin di AWS RAM.

Di halaman berikutnya, Anda dapat memilih Kepala Sekolah. Di bawah Pilih jenis utama, pilih Akun AWS dan masukkan ID akun berbagi kartu model. Pilih Add dan lanjutkan ke halaman berikutnya.

Di halaman terakhir, tinjau informasinya dan pilih “Buat berbagi sumber daya”. Alternatifnya, Anda dapat menggunakan yang berikut ini AWS CLI perintah untuk membuat pembagian sumber daya:

aws ram create-resource-share --name <Name of the Model Card> aws ram associate-resource-share --resource-share-arn <ARN of resource share create from the previous command> --resource-arns <ARN of the Model Card>

Di konsol AWS RAM, Anda melihat atribut pembagian sumber daya. Pastikan bahwa Sumber daya bersama, Izin terkelola, dan Prinsipal bersama ada di “Associatedstatusnya.

Setelah Anda menggunakan AWS RAM untuk membuat pembagian sumber daya, entitas utama yang ditentukan dalam pembagian sumber daya dapat diberikan akses ke sumber daya pembagian tersebut.

  • Jika Anda mengaktifkan berbagi AWS RAM dengan AWS Organizations, dan entitas utama yang Anda bagikan berada dalam organisasi yang sama dengan akun berbagi, entitas utama tersebut dapat menerima akses segera setelah administrator akun mereka memberikan izin kepada mereka.
  • Jika Anda tidak mengaktifkan berbagi AWS RAM dengan Organisasi, Anda masih dapat berbagi sumber daya dengan masing-masing akun AWS yang ada di organisasi Anda. Administrator di akun penggunaan menerima undangan untuk bergabung dengan berbagi sumber daya, dan mereka harus menerima undangan tersebut sebelum entitas utama yang ditentukan dalam berbagi sumber daya dapat mengakses sumber daya bersama.
  • Anda juga dapat berbagi dengan akun di luar organisasi Anda jika jenis sumber daya mendukungnya. Administrator di akun penggunaan menerima undangan untuk bergabung dengan berbagi sumber daya, dan mereka harus menerima undangan tersebut sebelum entitas utama yang ditentukan dalam berbagi sumber daya dapat mengakses sumber daya bersama.

Untuk informasi lebih lanjut tentang AWS RAM, lihat Syarat dan konsep untuk AWS RAM.

Mengakses kartu model bersama

Sekarang kita dapat masuk ke akun AWS bersama untuk mengakses kartu model. Pastikan Anda mengakses konsol AWS menggunakan izin IAM (IAM role) yang mengizinkan akses ke AWS RAM.

Dengan AWS RAM, Anda dapat melihat pembagian sumber daya yang telah Anda tambahkan, sumber daya bersama yang dapat Anda akses, dan akun AWS yang telah berbagi sumber daya dengan Anda. Anda juga dapat meninggalkan sumber daya bersama ketika Anda tidak lagi memerlukan akses ke sumber daya bersama tersebut.

Untuk melihat kartu model di akun AWS bersama:

  1. Arahkan ke folder Dibagikan dengan saya: Sumber daya bersama halaman di konsol AWS RAM.
  2. Pastikan Anda beroperasi di wilayah AWS yang sama dengan tempat berbagi dibuat.
  3. Model yang dibagikan dari akun model akan tersedia dalam daftar. Jika ada daftar sumber daya yang panjang, Anda dapat menerapkan filter untuk menemukan sumber daya bersama tertentu. Anda dapat menerapkan beberapa filter untuk mempersempit pencarian Anda.
  4. Informasi berikut tersedia:
    1. ID Sumber Daya – ID sumber daya. Ini adalah nama model kartu yang kita buat tadi pada akun kartu model.
    2. Jenis sumber daya – Jenis sumber daya.
    3. Tanggal pembagian terakhir – Tanggal sumber daya dibagikan kepada Anda.
    4. Berbagi sumber daya – Jumlah pembagian sumber daya yang mencakup sumber daya tersebut. Pilih nilai untuk melihat pembagian sumber daya.
    5. ID Pemilik – ID kepala sekolah yang memiliki sumber daya.

Anda juga dapat mengakses kartu model menggunakan opsi AWS CLI. Untuk kebijakan AWS IAM yang dikonfigurasi dengan kredensial yang benar, pastikan Anda memiliki izin untuk membuat, mengedit, dan menghapus kartu model dalam Amazon SageMaker. Untuk informasi lebih lanjut, lihat Konfigurasikan AWS CLI.

Anda dapat menggunakan kebijakan izin AWS IAM berikut sebagai templat:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sagemaker:DescribeModelCard", "sagemaker:UpdateModelCard", "sagemaker:CreateModelCardExportJob", "sagemaker:ListModelCardVersions", "sagemaker:DescribeModelCardExportJob" ], "Resource": [ "arn:aws:sagemaker:AWS-Region:AWS-model-card-account-id:model-card/example-model-card-name-0", "arn:aws:sagemaker:AWS-Region:AWS-model-card-account-id:model-card/example-model-card-name-1/*" ] }, { "Effect": "Allow", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::Amazon-S3-bucket-storing-the-pdf-of-the-model-card/model-card-name/*" } ]
}

Anda dapat menjalankan perintah AWS CLI berikut untuk mengakses detail kartu model bersama.

aws sagemaker describe-model-card --model-card-name <ARN of the model card>

Sekarang Anda dapat membuat perubahan pada model kartu ini dari akun ini.

aws sagemaker update-model-card --model-card-name <ARN of the Model Card> --content "{"model_overview": {"model_owner": "model-owner","problem_type": "Customer Churn Model"}}"

Setelah Anda melakukan perubahan, kembali ke akun kartu model untuk melihat perubahan yang kami lakukan pada akun bersama ini.

Jenis masalah telah diperbarui menjadi “Customer Churn Model” yang kami sediakan sebagai bagian dari input perintah AWS CLI.

Membersihkan

Anda sekarang dapat menghapus kartu model yang Anda buat. Pastikan Anda menghapus berbagi sumber daya AWS RAM yang Anda buat untuk berbagi kartu model.

Kesimpulan

Dalam postingan ini, kami memberikan ikhtisar arsitektur multi-akun untuk menskalakan dan mengatur beban kerja ML Anda dengan aman dan andal. Kami membahas pola arsitektur untuk menyiapkan model berbagi kartu dan mengilustrasikan cara kerja pola berbagi kartu model terpusat. Terakhir, kami menyiapkan model berbagi kartu di beberapa akun untuk meningkatkan visibilitas dan tata kelola dalam siklus pengembangan model Anda. Kami mendorong Anda mencoba fitur berbagi kartu model baru dan memberi tahu kami tanggapan Anda.


Tentang penulis

Vishal Naik adalah Arsitek Solusi Senior di Amazon Web Services (AWS). Dia adalah pembangun yang senang membantu pelanggan memenuhi kebutuhan bisnis mereka dan menyelesaikan tantangan kompleks dengan solusi dan praktik terbaik AWS. Area fokus utamanya meliputi Machine Learning, DevOps, dan Containers. Di waktu luangnya, Vishal suka membuat film pendek tentang perjalanan waktu dan tema alam semesta alternatif.

Ram VitalRam Vital adalah Arsitek Solusi ML Utama di AWS. Dia memiliki lebih dari 20 tahun pengalaman merancang dan membangun aplikasi terdistribusi, hybrid, dan cloud. Dia bersemangat membangun solusi AI/ML dan data besar yang aman dan terukur untuk membantu pelanggan perusahaan dalam perjalanan adopsi dan pengoptimalan cloud guna meningkatkan hasil bisnis mereka. Di waktu senggangnya, ia mengendarai sepeda motor dan berjalan-jalan bersama anak dombanya yang berumur 2 tahun!

tempat_img

Intelijen Terbaru

tempat_img