Dokumen dalam Framework yang Dirancang dengan Baik: Perspektif AI dan ML ini memberikan ringkasan prinsip dan rekomendasi untuk membantu Anda mengoptimalkan performa workload AI dan ML di Google Cloud. Rekomendasi dalam dokumen ini selaras dengan pilar pengoptimalan performa dari Google Cloud Framework yang Dirancang dengan Baik.
Sistem AI dan ML memungkinkan kemampuan otomatisasi dan pengambilan keputusan baru untuk organisasi Anda. Performa sistem ini dapat secara langsung memengaruhi pendorong bisnis Anda seperti pendapatan, biaya, dan kepuasan pelanggan. Untuk mewujudkan potensi penuh sistem AI dan ML Anda, Anda perlu mengoptimalkan performanya berdasarkan sasaran bisnis dan persyaratan teknis Anda. Proses pengoptimalan performa sering kali melibatkan kompromi tertentu. Misalnya, pilihan desain yang memberikan performa yang diperlukan dapat menyebabkan biaya yang lebih tinggi. Rekomendasi dalam dokumen ini memprioritaskan performa daripada pertimbangan lain seperti biaya.
Untuk mengoptimalkan performa AI dan ML, Anda perlu membuat keputusan terkait faktor-faktor seperti arsitektur model, parameter, dan strategi pelatihan. Saat membuat keputusan ini, pertimbangkan seluruh siklus proses sistem AI dan ML serta lingkungan deployment-nya. Misalnya, LLM yang sangat besar dapat memiliki performa yang sangat tinggi pada infrastruktur pelatihan yang besar, tetapi model yang sangat besar mungkin tidak memiliki performa yang baik di lingkungan dengan kapasitas terbatas seperti perangkat seluler.
Menerjemahkan sasaran bisnis menjadi tujuan performa
Untuk membuat keputusan arsitektur yang mengoptimalkan performa, mulailah dengan serangkaian sasaran bisnis yang jelas. Desain sistem AI dan ML yang memberikan performa teknis yang diperlukan untuk mendukung sasaran dan prioritas bisnis Anda. Tim teknis Anda harus memahami pemetaan antara tujuan performa dan sasaran bisnis.
Pertimbangkan rekomendasi berikut:
- Terjemahkan tujuan bisnis menjadi persyaratan teknis: Terjemahkan tujuan bisnis sistem AI dan ML Anda menjadi persyaratan performa teknis yang spesifik dan nilai efek jika persyaratan tersebut tidak terpenuhi. Misalnya, untuk aplikasi yang memprediksi penghentian pelanggan, model ML harus berperforma baik pada metrik standar, seperti akurasi dan perolehan, dan aplikasi harus memenuhi persyaratan operasional seperti latensi rendah.
- Pantau performa di semua tahap siklus proses model: Selama eksperimen dan pelatihan setelah deployment model, pantau indikator performa utama (KPI) dan amati penyimpangan dari tujuan bisnis.
- Mengotomatiskan evaluasi agar dapat direproduksi dan distandardisasi: Dengan platform dan metodologi yang distandardisasi dan dapat dibandingkan untuk evaluasi eksperimen, engineer Anda dapat meningkatkan kecepatan peningkatan performa.
Menjalankan dan melacak eksperimen yang sering dilakukan
Untuk mengubah inovasi dan kreativitas menjadi peningkatan performa, Anda memerlukan budaya dan platform yang mendukung eksperimen. Peningkatan performa adalah proses berkelanjutan karena teknologi AI dan ML terus berkembang dengan cepat. Untuk mempertahankan proses iteratif yang cepat, Anda perlu memisahkan ruang eksperimen dari platform pelatihan dan penayangan Anda. Proses eksperimen yang standar dan andal sangat penting.
Pertimbangkan rekomendasi berikut:
- Membangun lingkungan eksperimen: Peningkatan performa memerlukan lingkungan khusus, canggih, dan interaktif yang mendukung eksperimen dan pengembangan kolaboratif pipeline ML.
- Tanamkan eksperimen sebagai budaya: Jalankan eksperimen sebelum deployment produksi apa pun. Rilis versi baru secara berulang dan selalu kumpulkan data performa. Bereksperimenlah dengan berbagai jenis data, transformasi fitur, algoritma, dan hyperparameter.
Membangun dan mengotomatiskan layanan pelatihan dan penyajian
Pelatihan dan inferensi model AI adalah komponen inti dari layanan AI Anda. Anda memerlukan platform dan praktik yang andal yang mendukung pembuatan, deployment, dan penayangan model AI yang cepat dan andal. Luangkan waktu dan upaya untuk membuat platform dasar bagi tugas pelatihan dan inferensi AI inti Anda. Platform dasar ini membantu mengurangi waktu dan upaya tim Anda serta meningkatkan kualitas output dalam jangka menengah dan panjang.
Pertimbangkan rekomendasi berikut:
- Menggunakan komponen layanan pelatihan yang khusus untuk AI: Komponen tersebut mencakup komputasi berperforma tinggi dan komponen MLOps seperti penyimpanan fitur, registry model, penyimpanan metadata, dan layanan evaluasi performa model.
- Menggunakan komponen layanan prediksi yang khusus untuk AI: Komponen tersebut menyediakan resource berperforma tinggi dan dapat diskalakan, mendukung pemantauan fitur, dan memungkinkan pemantauan performa model. Untuk mencegah dan mengelola penurunan performa, terapkan strategi deployment dan rollback yang andal.
Menyesuaikan pilihan desain dengan persyaratan performa
Saat membuat pilihan desain untuk meningkatkan performa, nilai dengan cermat apakah pilihan tersebut mendukung persyaratan bisnis Anda atau boros dan kontraproduktif. Untuk memilih infrastruktur, model, atau konfigurasi yang tepat, identifikasi hambatan performa dan nilai bagaimana hambatan tersebut terkait dengan ukuran performa Anda. Misalnya, bahkan pada akselerator GPU yang sangat canggih, tugas pelatihan Anda dapat mengalami bottleneck performa karena masalah I/O data dari lapisan penyimpanan atau karena batasan performa model itu sendiri.
Pertimbangkan rekomendasi berikut:
- Mengoptimalkan konsumsi hardware berdasarkan sasaran performa: Untuk melatih dan menayangkan model ML yang memenuhi persyaratan performa Anda, Anda perlu mengoptimalkan infrastruktur di lapisan komputasi, penyimpanan, dan jaringan. Anda harus mengukur dan memahami variabel yang memengaruhi sasaran performa Anda. Variabel ini berbeda untuk pelatihan dan inferensi.
- Berfokus pada persyaratan khusus workload: Fokuskan upaya pengoptimalan performa Anda pada persyaratan unik workload AI dan ML Anda. Mengandalkan layanan terkelola untuk performa infrastruktur dasar.
- Pilih strategi pelatihan yang sesuai: Beberapa model dasar dan terlatih tersedia, dan model lainnya yang serupa sering dirilis. Pilih strategi pelatihan yang dapat memberikan performa optimal untuk tugas Anda. Tentukan apakah Anda harus membuat model sendiri, menyesuaikan model terlatih sebelumnya pada data Anda, atau menggunakan API model terlatih sebelumnya.
- Menyadari bahwa strategi pengoptimalan performa dapat memiliki pengurangan hasil: Jika strategi pengoptimalan performa tertentu tidak memberikan nilai bisnis inkremental yang dapat diukur, hentikan penggunaan strategi tersebut.
Menghubungkan metrik performa dengan pilihan desain dan konfigurasi
Untuk berinovasi, memecahkan masalah, dan menyelidiki masalah performa, buat kaitan yang jelas antara pilihan desain dan hasil performa. Selain eksperimen, Anda harus mencatat silsilah aset, deployment, output model, serta konfigurasi dan input yang menghasilkan output secara andal.
Pertimbangkan rekomendasi berikut:
- Bangun sistem silsilah data dan model: Semua aset yang di-deploy dan metrik performanya harus ditautkan kembali ke data, konfigurasi, kode, dan pilihan yang menghasilkan sistem yang di-deploy. Selain itu, output model harus ditautkan ke versi model tertentu dan cara output dihasilkan.
- Menggunakan alat penjelasan untuk meningkatkan performa model: Terapkan dan standarisasi alat serta tolok ukur untuk eksplorasi dan penjelasan model. Alat ini membantu engineer ML Anda memahami perilaku model dan meningkatkan performa atau menghilangkan bias.
Kontributor
Penulis:
- Benjamin Sadik | AI and ML Specialist Customer Engineer
- Filipe Gracio, PhD | Customer Engineer
Kontributor lainnya:
- Kumar Dhanagopal | Cross-Product Solution Developer
- Marwan Al Shawi | Partner Customer Engineer
- Zach Seils | Networking Specialist