Melatih model pembelajaran mesin - Amazon SageMaker

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Melatih model pembelajaran mesin

Tahap pelatihan siklus hidup pembelajaran mesin (ML) lengkap mencakup dari mengakses kumpulan data pelatihan Anda hingga menghasilkan model akhir dan memilih model berkinerja terbaik untuk penerapan. Bagian berikut memberikan gambaran umum tentang fitur SageMaker pelatihan yang tersedia dan sumber daya dengan informasi teknis yang mendalam untuk masing-masing.

Alur kerja pelatihan paling sederhana di SageMaker

Jika Anda menggunakan SageMaker untuk pertama kalinya dan ingin menemukan solusi ML cepat untuk melatih model pada kumpulan data Anda, pertimbangkan untuk menggunakan solusi tanpa kode atau kode rendah seperti SageMaker Canvas, JumpStartdalam SageMaker Studio Classic, atau Autopilot. SageMaker

Untuk pengalaman pengkodean menengah, pertimbangkan untuk menggunakan notebook SageMaker Studio Classic atau Instans SageMaker Notebook. Untuk memulai, ikuti petunjuk di Langkah 4: Latih Model panduan SageMaker Memulai. Kami merekomendasikan ini untuk kasus penggunaan di mana Anda membuat model dan skrip pelatihan Anda sendiri menggunakan kerangka kerja HTML.

Diagram arsitektur berikut menunjukkan cara SageMaker mengelola pekerjaan pelatihan ML dan menyediakan instans Amazon EC2 atas nama pengguna. SageMaker Anda sebagai SageMaker pengguna dapat membawa kumpulan data pelatihan Anda sendiri, menyimpannya ke Amazon S3. Anda dapat memilih pelatihan model ML dari algoritme SageMaker bawaan yang tersedia, atau membawa skrip pelatihan Anda sendiri dengan model yang dibuat dengan kerangka kerja pembelajaran mesin yang populer.

Tampilan penuh alur kerja dan fitur SageMaker Pelatihan

Perjalanan penuh pelatihan ML melibatkan tugas-tugas di luar konsumsi data ke model ML, model pelatihan tentang instance komputasi, dan memperoleh artefak dan output model. Anda perlu mengevaluasi setiap fase sebelum, selama, dan setelah pelatihan untuk memastikan model Anda dilatih dengan baik untuk memenuhi akurasi target untuk tujuan Anda.

Diagram alir berikut menunjukkan ikhtisar tingkat tinggi dari tindakan Anda (dalam kotak biru) dan fitur SageMaker Pelatihan yang tersedia (dalam kotak biru muda) selama fase pelatihan siklus hidup ML.

Sebelum pelatihan, Anda harus menyiapkan data Anda, memilih algoritma atau kerangka kerja, mengelola penyimpanan data, dan mengatur akses ke data pelatihan. Secara opsional, Anda dapat menggunakan file manifes tambahan untuk menyalurkan data Anda dan menganalisis bias. Selama pelatihan, Anda harus mengatur infrastruktur dan mengevaluasi model Anda. Anda dapat mengatur pelatihan terdistribusi secara opsional untuk menjalankan pekerjaan paralel, menggunakan SageMaker Eksperimen untuk mengelola uji coba ML Anda. Setelah evaluasi model, Anda dapat menggunakan penyetelan model SageMaker otomatis untuk mengoptimalkan kinerja model. Untuk pekerjaan pembelajaran mendalam, Anda mungkin ingin mempertimbangkan untuk menggunakan Amazon SageMaker Debugger dan SageMaker Training Compiler untuk mengoptimalkan pekerjaan Anda. Setelah pelatihan, Anda harus terlebih dahulu mendapatkan model dasar. Selanjutnya, Anda dapat menganalisis metrik yang dipancarkan oleh model dan menggunakan CloudWatch Metrik untuk mengatur peringatan. Setelah mendapatkan prediksi model, Anda juga dapat menggunakan Amazon SageMaker Clarify untuk menganalisis model dan data Anda untuk bias dan penjelasan.

Bagian-bagian berikut memandu Anda melalui setiap fase pelatihan yang digambarkan dalam diagram alir sebelumnya dan fitur berguna yang ditawarkan oleh SageMaker seluruh tiga sub-tahap pelatihan ML.

Sebelum pelatihan

Ada sejumlah skenario pengaturan sumber daya data dan akses yang perlu Anda pertimbangkan sebelum pelatihan. Lihat diagram berikut dan detail dari setiap tahap sebelum pelatihan untuk memahami keputusan apa yang perlu Anda buat.

Diagram alir yang menunjukkan tugas sebelum pelatihan dan SageMaker fitur terkait

Selama pelatihan

Selama pelatihan, Anda perlu terus meningkatkan stabilitas pelatihan, kecepatan pelatihan, efisiensi pelatihan sambil menskalakan sumber daya komputasi, pengoptimalan biaya, dan, yang paling penting, kinerja model. Baca terus untuk informasi lebih lanjut tentang tahapan pelatihan selama dan fitur SageMaker Pelatihan yang relevan.

Diagram alir yang menunjukkan tugas selama pelatihan dan SageMaker fitur terkait
  • Siapkan infrastruktur: Pilih jenis instans dan alat manajemen infrastruktur yang tepat untuk kasus penggunaan Anda. Anda dapat memulai dari contoh kecil dan meningkatkan tergantung pada beban kerja Anda. Untuk melatih model pada kumpulan data tabular, mulailah dengan instance CPU terkecil dari keluarga instance C4 atau C5. Untuk melatih model besar untuk visi komputer atau pemrosesan bahasa alami, mulailah dengan instance GPU terkecil dari keluarga instance P2, P3, G4dn atau G5. Anda juga dapat mencampur berbagai jenis instance dalam klaster, atau menyimpan instance di kolam hangat menggunakan alat manajemen instance berikut yang ditawarkan oleh SageMaker. Anda juga dapat menggunakan cache persisten untuk mengurangi latensi dan waktu yang dapat ditagih pada pekerjaan pelatihan berulang selama pengurangan latensi dari kolam hangat saja. Untuk mempelajari lebih lanjut, lihat topik berikut.

    Anda harus memiliki kuota yang cukup untuk menjalankan pekerjaan pelatihan. Jika Anda menjalankan pekerjaan pelatihan Anda pada contoh di mana Anda memiliki kuota yang tidak mencukupi, Anda akan menerima ResourceLimitExceeded kesalahan. Untuk memeriksa kuota yang tersedia saat ini di akun Anda, gunakan konsol Service Quotas Anda. Untuk mempelajari cara meminta peningkatan kuota, lihat Wilayah dan Kuota yang Didukung. Juga, untuk menemukan informasi harga dan jenis instans yang tersedia tergantung pada Wilayah AWS, cari tabel di halaman SageMaker Harga Amazon.

  • Jalankan pekerjaan pelatihan dari kode lokal: Anda dapat membuat anotasi kode lokal Anda dengan dekorator jarak jauh untuk menjalankan kode Anda sebagai pekerjaan SageMaker pelatihan dari dalam Amazon SageMaker Studio Classic, SageMaker notebook Amazon, atau dari lingkungan pengembangan terintegrasi lokal Anda. Untuk informasi selengkapnya, lihat Jalankan kode lokal Anda sebagai pekerjaan SageMaker pelatihan.

  • Lacak pekerjaan pelatihan: Pantau dan lacak pekerjaan pelatihan Anda menggunakan SageMaker Eksperimen, SageMaker Debugger, atau Amazon. CloudWatch Anda dapat menonton kinerja model dalam hal akurasi dan konvergensi, dan menjalankan analisis komparatif metrik antara beberapa pekerjaan pelatihan dengan menggunakan Eksperimen. SageMaker Anda dapat menonton tingkat pemanfaatan sumber daya komputasi dengan menggunakan alat profil SageMaker Debugger atau Amazon. CloudWatch Untuk mempelajari lebih lanjut, lihat topik berikut.

    Selain itu, untuk tugas pembelajaran mendalam, gunakan alat SageMaker debugging model Amazon Debugger dan aturan bawaan untuk mengidentifikasi masalah yang lebih kompleks dalam proses konvergensi model dan pembaruan bobot.

  • Pelatihan terdistribusi: Jika pekerjaan pelatihan Anda memasuki tahap yang stabil tanpa putus karena kesalahan konfigurasi infrastruktur atau out-of-memory masalah pelatihan, Anda mungkin ingin menemukan lebih banyak opsi untuk meningkatkan skala pekerjaan Anda dan menjalankan dalam jangka waktu yang lama selama berhari-hari dan bahkan berbulan-bulan. Saat Anda siap untuk meningkatkan, pertimbangkan pelatihan terdistribusi. SageMaker menyediakan berbagai opsi untuk komputasi terdistribusi dari beban kerja ML ringan hingga beban kerja pembelajaran mendalam yang berat.

    Untuk tugas pembelajaran mendalam yang melibatkan pelatihan model yang sangat besar pada kumpulan data yang sangat besar, pertimbangkan untuk menggunakan salah satu strategi pelatihan SageMaker terdistribusi untuk meningkatkan dan mencapai paralelisme data, paralelisme model, atau kombinasi keduanya. Anda juga dapat menggunakan SageMaker Training Compiler untuk mengkompilasi dan mengoptimalkan grafik model pada instance GPU. SageMaker Fitur-fitur ini mendukung kerangka pembelajaran mendalam seperti PyTorch, TensorFlow, dan Hugging Face Transformers.

  • Penyetelan hiperparameter model: Setel hiperparameter model Anda menggunakan Penyetelan Model Otomatis dengan. SageMaker SageMaker menyediakan metode penyetelan hiperparameter seperti pencarian kisi dan pencarian Bayesian, meluncurkan pekerjaan penyetelan hiperparameter paralel dengan fungsionalitas penghentian awal untuk pekerjaan penyetelan hiperparameter yang tidak meningkatkan.

  • Checkpointing dan penghematan biaya dengan instans Spot: Jika waktu pelatihan bukan masalah besar, Anda dapat mempertimbangkan untuk mengoptimalkan biaya pelatihan model dengan instans Spot terkelola. Perhatikan bahwa Anda harus mengaktifkan checkpointing untuk pelatihan Spot agar tetap memulihkan dari jeda pekerjaan intermiten karena penggantian instans Spot. Anda juga dapat menggunakan fungsionalitas pos pemeriksaan untuk mencadangkan model Anda jika terjadi pemutusan hubungan kerja pelatihan yang tidak terduga. Untuk mempelajari lebih lanjut, lihat topik berikut.

Setelah pelatihan

Setelah pelatihan, Anda mendapatkan artefak model akhir untuk digunakan untuk penerapan dan inferensi model. Ada tindakan tambahan yang terlibat dalam fase setelah pelatihan seperti yang ditunjukkan pada diagram berikut.

Diagram alir yang menunjukkan tugas setelah pelatihan dan SageMaker fitur terkait
  • Dapatkan model dasar: Setelah Anda memiliki artefak model, Anda dapat mengaturnya sebagai model dasar. Pertimbangkan tindakan pasca-pelatihan berikut dan gunakan SageMaker fitur sebelum beralih ke penerapan model ke produksi.

  • Periksa kinerja model dan periksa bias: Gunakan CloudWatch Metrik Amazon dan SageMaker Klarifikasi untuk bias pasca-pelatihan untuk mendeteksi bias apa pun dalam data dan model yang masuk dari waktu ke waktu terhadap baseline. Anda perlu mengevaluasi data baru dan prediksi model Anda terhadap data baru secara teratur atau secara real time. Dengan menggunakan fitur-fitur ini, Anda dapat menerima peringatan tentang perubahan atau anomali akut, serta perubahan bertahap atau penyimpangan dalam data dan model.

  • Anda juga dapat menggunakan fungsionalitas Pelatihan Inkremental SageMaker untuk memuat dan memperbarui model Anda (atau menyempurnakan) dengan kumpulan data yang diperluas.

  • Anda dapat mendaftarkan pelatihan model sebagai langkah dalam SageMakerPipeline Anda atau sebagai bagian dari fitur Alur Kerja lain yang ditawarkan oleh SageMaker untuk mengatur siklus hidup ML penuh.