Pelatihan yang didistribusikan
Jika memungkinkan, Azure Databricks merekomendasikan agar Anda melatih jaringan saraf pada satu mesin; kode terdistribusi untuk pelatihan dan inferensi lebih kompleks daripada kode mesin tunggal dan lebih lambat karena overhead komunikasi. Namun, Anda harus mempertimbangkan pelatihan dan inferensi terdistribusi jika model atau data Anda terlalu besar untuk masuk ke dalam memori pada satu mesin. Untuk beban kerja ini, Databricks Runtime ML mencakup paket TorchDistributor, Horovod, dan spark-tensorflow-distributor.
Azure Databricks juga menawarkan pelatihan terdistribusi untuk model Spark ML dengan pyspark.ml.connect
modul, lihat Melatih model Spark ML di Databricks Connect dengan pyspark.ml.connect.
Catatan
Databricks tidak merekomendasikan menjalankan pelatihan terdistribusi multi-node menggunakan VM nc-series karena kinerja jaringan antar-node yang rendah. Sebagai gantinya, gunakan satu node multi-GPU, atau gunakan ukuran VM GPU yang berbeda seperti seri NCasT4_v3, yang mendukung jaringan yang dipercepat.
Distributor DeepSpeed
Distributor DeepSpeed dibangun di atas TorchDistributor dan merupakan solusi yang direkomendasikan untuk pelanggan dengan model yang membutuhkan daya komputasi yang lebih tinggi, tetapi dibatasi oleh batasan memori. DeepSpeed adalah pustaka sumber terbuka yang dikembangkan oleh Microsoft dan menawarkan penggunaan memori yang dioptimalkan, mengurangi overhead komunikasi, dan paralelisme alur tingkat lanjut. Pelajari selengkapnya tentang Pelatihan terdistribusi dengan distributor DeepSpeed
TorchDistributor
TorchDistributor adalah modul sumber terbuka di PySpark yang membantu pengguna melakukan pelatihan terdistribusi dengan PyTorch pada kluster Spark mereka, sehingga memungkinkan Anda meluncurkan pekerjaan pelatihan PyTorch sebagai pekerjaan Spark. Di bawah tenda, ini menginisialisasi lingkungan dan saluran komunikasi antara pekerja dan menggunakan perintah torch.distributed.run
CLI untuk menjalankan pelatihan terdistribusi di seluruh simpul pekerja. Pelajari selengkapnya tentang Pelatihan terdistribusi dengan TorchDistributor.
spark-tensorflow-distributor
spark-tensorflow-distributor adalah paket asli open-source di TensorFlow untuk pelatihan terdistribusi dengan TensorFlow pada kluster Spark. Pelajari selengkapnya tentang Pelatihan terdistribusi dengan TensorFlow 2.
Ikan pari
Ray adalah kerangka kerja sumber terbuka yang berspesialisasi dalam pemrosesan komputasi paralel untuk menskalakan alur kerja ML dan aplikasi AI. Lihat Apa itu Ray di Azure Databricks?).
Horovod (Tidak digunakan lagi)
Penting
Horovod dan HorovodRunner sekarang tidak digunakan lagi dan tidak akan diinstal sebelumnya di Databricks Runtime 16.0 ML ke atas. Untuk pembelajaran mendalam terdistribusi, Databricks merekomendasikan penggunaan TorchDistributor untuk pelatihan terdistribusi dengan PyTorch atau tf.distribute.Strategy
API untuk pelatihan terdistribusi dengan TensorFlow.
Horovod adalah kerangka pelatihan terdistribusi untuk TensorFlow, Keras, dan PyTorch. Azure Databricks mendukung pelatihan pembelajaran mendalam terdistribusi menggunakan HorovodRunner dan paket horovod.spark
. Untuk aplikasi alur Spark ML menggunakan Keras atau PyTorch, Anda dapat menggunakan horovod.spark
API estimator. Lihat Horovod.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk