Luncurkan eksperimen Amazon SageMaker Autopilot langsung dari dalam Amazon SageMaker Pipelines untuk mengotomatiskan alur kerja MLOps dengan mudah PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Luncurkan eksperimen Amazon SageMaker Autopilot langsung dari dalam Amazon SageMaker Pipelines untuk mengotomatiskan alur kerja MLOps dengan mudah

Autopilot Amazon SageMaker, layanan low-code machine learning (ML) yang secara otomatis membuat, melatih, dan menyetel model ML terbaik berdasarkan data tabular, kini terintegrasi dengan Pipa Amazon SageMaker, layanan continuous integration and continuous delivery (CI/CD) pertama yang dibuat khusus untuk ML. Hal ini memungkinkan otomatisasi aliran end-to-end dalam membangun model ML menggunakan Autopilot dan mengintegrasikan model ke dalam langkah CI/CD berikutnya.

Sejauh ini, untuk meluncurkan eksperimen Autopilot dalam Pipelines, Anda harus membuat alur kerja pembuatan model dengan menulis kode integrasi khusus dengan Pipelines Lambda or Pengolahan Langkah. Untuk informasi lebih lanjut, lihat Pindahkan model Amazon SageMaker Autopilot ML dari eksperimen ke produksi menggunakan Amazon SageMaker Pipelines.

Dengan dukungan Autopilot sebagai langkah asli dalam Pipelines, kini Anda dapat menambahkan langkah pelatihan otomatis (Langkah Otomatis) di Pipelines dan aktifkan eksperimen Autopilot dengan Merakit mode pelatihan. Misalnya, jika Anda sedang membangun alur kerja pelatihan dan evaluasi ML untuk kasus penggunaan deteksi penipuan dengan Pipelines, kini Anda dapat meluncurkan eksperimen Autopilot menggunakan langkah AutoML, yang secara otomatis menjalankan beberapa uji coba untuk menemukan model terbaik pada set data masukan tertentu . Setelah model terbaik dibuat menggunakan Langkah model, kinerjanya dapat dievaluasi pada data uji menggunakan Langkah transformasi dan Langkah Pengolahan untuk skrip evaluasi khusus dalam Pipelines. Pada akhirnya, model dapat didaftarkan ke dalam registri model SageMaker menggunakan Langkah model dalam kombinasi dengan a Langkah kondisi.

Dalam postingan ini, kami menunjukkan cara membuat alur kerja ML end-to-end untuk melatih dan mengevaluasi model ML yang dihasilkan SageMaker menggunakan langkah AutoML yang baru diluncurkan di Pipelines dan mendaftarkannya ke registri model SageMaker. Model ML dengan performa terbaik dapat diterapkan ke titik akhir SageMaker.

Ikhtisar kumpulan data

Kami menggunakan yang tersedia untuk umum Kumpulan data Pendapatan Sensus Dewasa UCI 1994 untuk memprediksi jika seseorang memiliki pendapatan tahunan lebih besar dari $50,000 per tahun. Ini adalah masalah klasifikasi biner; opsi untuk variabel target pendapatan adalah 50K.

Dataset berisi 32,561 baris untuk pelatihan dan validasi dan 16,281 baris untuk pengujian dengan masing-masing 15 kolom. Ini termasuk informasi demografis tentang individu dan class sebagai kolom target yang menunjukkan kelas pendapatan.

Nama kolom Deskripsi Produk
usia Kontinu
kelas kerja Swasta, Self-emp-not-inc, Self-emp-inc, Federal-gov, Local-gov, State-gov, Tanpa gaji, Tidak pernah bekerja
fnlwgt Kontinu
pendidikan Sarjana, Beberapa perguruan tinggi, 11th, HS-grad, Prof-school, Assoc-acdm, Assoc-voc, 9th, 7th-8th, 12th, Masters, 1st-4th, 10th, Doktor, 5th-6th, Prasekolah
pendidikan-nomor Kontinu
status pernikahan Menikah-suami-suami, Bercerai, Belum pernah menikah, Terpisah, Janda, Menikah-pasangan-absen, Menikah-AF-pasangan
pekerjaan Dukungan teknis, Perbaikan kerajinan, Layanan lain, Penjualan, Eksekutif-manajerial, Prof-spesialis, Pembersih-penangan, Mesin-op-inspeksi, Adm-klerikal, Pertanian-memancing, Pemindahan transportasi, Layanan rumah pribadi, Pelindung-pelayan, Angkatan Bersenjata
hubungan Istri, Anak sendiri, Suami, Tidak berkeluarga, Kerabat lain, Belum menikah
ras Putih, Asia-Pac-Islander, Amer-India-Eskimo, Lainnya, Hitam
seks Wanita Pria
keuntungan dalam bentuk uang Kontinu
kerugian modal Kontinu
jam per minggu Kontinu
negara Asal Amerika Serikat, Kamboja, Inggris, Puerto-Riko, Kanada, Jerman, Outlying-US(Guam-USVI-etc), India, Jepang, Yunani, Selatan, Cina, Kuba, Iran, Honduras, Filipina, Italia, Polandia, Jamaika , Vietnam, Meksiko, Portugal, Irlandia, Prancis, Republik Dominika, Laos, Ekuador, Taiwan, Haiti, Kolumbia, Hungaria, Guatemala, Nikaragua, Skotlandia, Thailand, Yugoslavia, El-Salvador, Trinadad&Tobago, Peru, Hong, Belanda-Belanda
kelas Kelas pendapatan, baik 50K

Ikhtisar solusi

Kami menggunakan Pipelines untuk mengatur berbagai hal langkah pipa diperlukan untuk melatih model Autopilot. Kami membuat dan menjalankan Eksperimen autopilot sebagai bagian dari langkah AutoML seperti yang dijelaskan dalam tutorial ini.

Langkah-langkah berikut diperlukan untuk proses pelatihan Autopilot end-to-end ini:

  • Buat dan pantau tugas pelatihan Autopilot menggunakan AutoMLStep.
  • Buat model SageMaker menggunakan ModelStep. Langkah ini mengambil metadata dan artefak model terbaik yang dirender oleh Autopilot di langkah sebelumnya.
  • Mengevaluasi model Autopilot terlatih pada set data uji menggunakan TransformStep.
  • Bandingkan output dari proses sebelumnya TransformStep dengan label target yang sebenarnya menggunakan ProcessingStep.
  • Daftarkan model ML ke Registri model SageMaker menggunakan ModelStep, jika metrik evaluasi yang diperoleh sebelumnya melebihi ambang batas yang telah ditentukan di ConditionStep.
  • Terapkan model ML sebagai titik akhir SageMaker untuk tujuan pengujian.

Arsitektur

Diagram arsitektur di bawah mengilustrasikan langkah-langkah pipeline berbeda yang diperlukan untuk mengemas semua langkah dalam pipeline pelatihan SageMaker Autopilot yang dapat direproduksi, otomatis, dan dapat diskalakan. File data dibaca dari bucket S3 dan langkah-langkah pipeline dipanggil secara berurutan.

Walkthrough

Posting ini memberikan penjelasan rinci tentang langkah-langkah pipa. Kami meninjau kode dan mendiskusikan komponen dari setiap langkah. Untuk menyebarkan solusi, lihat contoh notebook, yang memberikan petunjuk langkah demi langkah untuk menerapkan alur kerja Autopilot MLOps menggunakan Pipelines.

Prasyarat

Lengkapi prasyarat berikut:

Saat set data siap digunakan, kita perlu menyiapkan Pipelines untuk membuat proses berulang guna membuat dan melatih model ML secara otomatis menggunakan Autopilot. Kami menggunakan SDK SageMaker untuk secara terprogram menentukan, menjalankan, dan melacak alur pelatihan ML menyeluruh.

Langkah Pipa

Di bagian berikut, kita membahas berbagai langkah dalam pipeline SageMaker, termasuk pelatihan AutoML, pembuatan model, inferensi batch, evaluasi, dan pendaftaran bersyarat dari model terbaik. Diagram berikut mengilustrasikan seluruh aliran pipa.

Luncurkan eksperimen Amazon SageMaker Autopilot langsung dari dalam Amazon SageMaker Pipelines untuk mengotomatiskan alur kerja MLOps dengan mudah PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Langkah pelatihan AutoML

An objek AutoML digunakan untuk menentukan proses pelatihan Autopilot yang dijalankan dan dapat ditambahkan ke pipeline SageMaker dengan menggunakan AutoMLStep kelas, seperti yang ditunjukkan pada kode berikut. Mode pelatihan ansambel perlu ditentukan, tetapi parameter lain dapat disesuaikan sesuai kebutuhan. Misalnya, alih-alih membiarkan tugas AutoML menyimpulkan ML secara otomatis jenis masalah dan metrik objektif, ini dapat di-hardcode dengan menentukan problem_type dan job_objective parameter diteruskan ke objek AutoML.

automl = AutoML(
    role=execution_role,
    target_attribute_name=target_attribute_name,
    sagemaker_session=pipeline_session,
    total_job_runtime_in_seconds=max_automl_runtime,
    mode="ENSEMBLING",
)
train_args = automl.fit(
    inputs=[
        AutoMLInput(
            inputs=s3_train_val,
            target_attribute_name=target_attribute_name,
            channel_type="training",
        )
    ]
)
step_auto_ml_training = AutoMLStep(
    name="AutoMLTrainingStep",
    step_args=train_args,
)

Langkah pembuatan model

Langkah AutoML menangani pembuatan berbagai kandidat model ML, menggabungkannya, dan mendapatkan model ML terbaik. Artefak model dan metadata disimpan secara otomatis dan dapat diperoleh dengan memanggil get_best_auto_ml_model() pada langkah pelatihan AutoML. Ini kemudian dapat digunakan untuk membuat model SageMaker sebagai bagian dari langkah Model:

best_auto_ml_model = step_auto_ml_training.get_best_auto_ml_model(
    execution_role, sagemaker_session=pipeline_session
)
step_args_create_model = best_auto_ml_model.create(instance_type=instance_type)
step_create_model = ModelStep(name="ModelCreationStep", step_args=step_args_create_model)

Langkah-langkah transformasi dan evaluasi batch

Kami menggunakan Objek transformator untuk inferensi kelompok pada dataset uji, yang kemudian dapat digunakan untuk tujuan evaluasi. Prediksi keluaran dibandingkan dengan label kebenaran aktual atau dasar menggunakan fungsi metrik belajar-Scikit. Kami mengevaluasi hasil kami berdasarkan Skor F1. Metrik kinerja disimpan ke file JSON, yang direferensikan saat mendaftarkan model di langkah berikutnya.

Langkah pendaftaran bersyarat

Pada langkah ini, kami mendaftarkan model Autopilot baru kami ke registri model SageMaker, jika melebihi ambang metrik evaluasi yang ditentukan sebelumnya.

Buat dan jalankan pipeline

Setelah kami menentukan langkah-langkahnya, kami menggabungkannya ke dalam pipeline SageMaker:

pipeline = Pipeline(
    name="AutoMLTrainingPipeline",
    parameters=[
        instance_count,
        instance_type,
        max_automl_runtime,
        model_approval_status,
        model_package_group_name,
        model_registration_metric_threshold,
        s3_bucket,
        target_attribute_name,
    ],
    steps=[
        step_auto_ml_training,
        step_create_model,
        step_batch_transform,
        step_evaluation,
        step_conditional_registration,
    ],
    sagemaker_session=pipeline_session,
)

Langkah-langkah dijalankan secara berurutan. Pipeline menjalankan semua langkah untuk tugas AutoML menggunakan Autopilot dan Pipelines untuk pelatihan, evaluasi model, dan pendaftaran model.

Anda dapat melihat model baru dengan membuka registri model di konsol Studio dan membukanya AutoMLModelPackageGroup. Pilih versi tugas pelatihan apa pun untuk melihat metrik objektif di Kualitas model Tab.

Luncurkan eksperimen Amazon SageMaker Autopilot langsung dari dalam Amazon SageMaker Pipelines untuk mengotomatiskan alur kerja MLOps dengan mudah PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Anda dapat melihat laporan penjelasan di Dapat dijelaskan tab untuk memahami prediksi model Anda.

Luncurkan eksperimen Amazon SageMaker Autopilot langsung dari dalam Amazon SageMaker Pipelines untuk mengotomatiskan alur kerja MLOps dengan mudah PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Untuk melihat eksperimen Autopilot yang mendasari semua model yang dibuat di AutoMLStep, navigasikan ke ML Otomatis halaman dan pilih nama pekerjaan.

Luncurkan eksperimen Amazon SageMaker Autopilot langsung dari dalam Amazon SageMaker Pipelines untuk mengotomatiskan alur kerja MLOps dengan mudah PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Menyebarkan model

Setelah kami meninjau kinerja model ML secara manual, kami dapat menerapkan model yang baru kami buat ke titik akhir SageMaker. Untuk ini, kita dapat menjalankan sel di notebook yang membuat titik akhir model menggunakan konfigurasi model yang disimpan di registri model SageMaker.

Perhatikan bahwa skrip ini dibagikan untuk tujuan demonstrasi, tetapi disarankan untuk mengikuti pipeline CI/CD yang lebih kuat untuk penerapan produksi untuk inferensi ML. Untuk informasi lebih lanjut, lihat Membangun, mengotomatiskan, mengelola, dan menskalakan alur kerja ML menggunakan Amazon SageMaker Pipelines.

Kesimpulan

Postingan ini menjelaskan pendekatan pipeline ML yang mudah digunakan untuk melatih model ML tabular (AutoML) secara otomatis menggunakan Autopilot, Pipelines, dan Studio. AutoML meningkatkan efisiensi praktisi ML, mempercepat jalur dari eksperimen ML ke produksi tanpa memerlukan keahlian ML yang ekstensif. Kami menguraikan langkah-langkah alur masing-masing yang diperlukan untuk pembuatan, evaluasi, dan pendaftaran model ML. Mulailah dengan mencoba contoh notebook untuk melatih dan menerapkan model AutoML kustom Anda sendiri.

Untuk informasi selengkapnya tentang Autopilot dan Pipeline, lihat Otomatiskan pengembangan model dengan Amazon SageMaker Autopilot dan Pipa Amazon SageMaker.

Terima kasih khusus kepada semua orang yang berkontribusi pada peluncuran: Shenghua Yue, John He, Ao Guo, Xinlu Tu, Tian Qin, Yanda Hu, Zhankui Lu, dan Dewen Qi.


Tentang Penulis

Luncurkan eksperimen Amazon SageMaker Autopilot langsung dari dalam Amazon SageMaker Pipelines untuk mengotomatiskan alur kerja MLOps dengan mudah PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Janisha Anand adalah Manajer Produk Senior di tim ML Rendah/Tanpa Kode SageMaker, yang mencakup SageMaker Autopilot. Dia menikmati kopi, tetap aktif, dan menghabiskan waktu bersama keluarganya.

Luncurkan eksperimen Amazon SageMaker Autopilot langsung dari dalam Amazon SageMaker Pipelines untuk mengotomatiskan alur kerja MLOps dengan mudah PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Marcelo Aberle adalah Insinyur ML di AWS AI. Dia menolong Lab Solusi Amazon ML pelanggan membangun sistem dan kerangka kerja ML(-Ops) yang dapat diskalakan. Di waktu luangnya, dia menikmati hiking dan bersepeda di San Francisco Bay Area.

Luncurkan eksperimen Amazon SageMaker Autopilot langsung dari dalam Amazon SageMaker Pipelines untuk mengotomatiskan alur kerja MLOps dengan mudah PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Geremy Cohen adalah Arsitek Solusi dengan AWS di mana dia membantu pelanggan membangun solusi mutakhir berbasis cloud. Di waktu luangnya, ia menikmati jalan-jalan singkat di pantai, menjelajahi daerah teluk bersama keluarganya, memperbaiki barang-barang di sekitar rumah, memecahkan barang-barang di sekitar rumah, dan BBQing.

Luncurkan eksperimen Amazon SageMaker Autopilot langsung dari dalam Amazon SageMaker Pipelines untuk mengotomatiskan alur kerja MLOps dengan mudah PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Shenhua Yue adalah Insinyur Pengembangan Perangkat Lunak di Amazon SageMaker. Dia berfokus pada pembuatan alat dan produk ML untuk pelanggan. Di luar pekerjaan, dia menikmati alam bebas, yoga, dan hiking.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS