Mengelola anggaran, biaya, dan kuota untuk Azure Machine Learning dalam skala organisasi

Ketika Anda mengelola biaya komputasi yang dikeluarkan dari Azure Machine Learning, pada skala organisasi dengan banyak beban kerja, banyak tim, dan pengguna, ada banyak tantangan manajemen dan pengoptimalan untuk dikerjakan.

Pada artikel ini, kami menyajikan praktik terbaik untuk mengoptimalkan biaya, mengelola anggaran, dan berbagi kuota dengan Azure Machine Learning. Hal tersebut mencerminkan pengalaman dan pelajaran yang didapat dari menjalankan tim pembelajaran mesin secara internal di Microsoft dan saat bermitra dengan pelanggan kami. Anda akan mempelajari cara:

Optimalkan komputasi untuk memenuhi persyaratan beban kerja

Ketika Anda memulai proyek pembelajaran mesin baru, pekerjaan eksplorasi mungkin diperlukan untuk mendapatkan gambaran yang baik tentang persyaratan komputasi. Bagian ini memberikan rekomendasi tentang bagaimana Anda dapat menentukan pilihan SKU mesin virtual (VM) yang tepat untuk pelatihan, untuk menyimpulkan, atau sebagai tempat kerja.

Menentukan ukuran komputasi untuk pelatihan

Persyaratan perangkat keras untuk beban kerja pelatihan Anda mungkin bervariasi dari proyek ke proyek. Untuk memenuhi persyaratan ini, komputasi Azure Machine Learning menawarkan berbagai jenis mesin virtual:

  • Tujuan umum: Rasio CPU seimbang terhadap memori.
  • Memori yang dioptimalkan: Rasio memori tinggi terhadap CPU.
  • Komputasi dioptimalkan: Rasio CPU tinggi terhadap memori.
  • Komputasi performa tinggi: Memberikan performa kelas kepemimpinan, skalabilitas, dan efisiensi biaya untuk berbagai beban kerja HPC di dunia nyata.
  • Instans dengan GPU: Mesin virtual khusus yang ditargetkan untuk perenderan grafis berat dan pengeditan video, serta pelatihan model dan inferensi (ND) dengan pembelajaran mendalam.

Anda mungkin belum tahu apa saja persyaratan komputasi Anda. Dalam skenario ini, Anda sebaiknya memulai dengan salah satu opsi default hemat biaya berikut. Opsi ini diarahkan untuk pengujian ringan dan untuk beban kerja pelatihan.

Jenis Ukuran Mesin Virtual Spesifikasi
CPU Standard_DS3_v2 4 inti, 14 gigabyte (GB) RAM, penyimpanan 28-GB
GPU Standar_NC6 6 inti, RAM 56 gigabyte (GB), penyimpanan 380 GB, NVIDIA Tesla K80 GPU

Opsi ini mungkin terdiri dari percobaan dan kesalahan agar dapat memperoleh ukuran mesin virtual terbaik pada skenario Anda. Berikut adalah beberapa aspek yang perlu dipertimbangkan.

  • Jika Anda membutuhkan CPU:
    • Gunakan mesin virtual dengan memori optimal jika Anda berlatih pada himpunan data besar.
    • Gunakan mesin virtual dengan komputasi optimal jika Anda melakukan inferensi real time atau tugas sensitif latensi lainnya.
    • Gunakan mesin virtual dengan lebih banyak inti dan RAM untuk mempercepat waktu pelatihan.
  • Jika Anda memerlukan GPU, lihat ukuran VM yang dioptimalkan GPU untuk informasi tentang memilih VM.
    • Jika Anda melakukan pelatihan terdistribusi, gunakan ukuran mesin virtual yang memiliki beberapa GPU.
    • Jika Anda melakukan pelatihan terdistribusi di beberapa node, gunakan GPU yang memiliki koneksi NVLink.

Saat Anda memilih tipe mesin virtual dan SKU yang paling sesuai dengan beban kerja Anda, evaluasi SKU mesin virtual yang sebanding sebagai upaya untuk menyeimbangkan performa dan harga CPU dan GPU. Dari perspektif manajemen biaya, pekerjaan mungkin berjalan cukup baik pada beberapa SKU.

GPU tertentu seperti keluarga NC, terutama SKU NC_Promo, memiliki kemampuan yang mirip dengan GPU lain seperti latensi rendah dan kemampuan untuk mengelola beberapa beban kerja komputasi secara paralel. Semua ini tersedia dengan harga diskon dibandingkan dengan beberapa GPU lainnya. Pemilihan SKU mesin virtual dengan cermat untuk beban kerja pada akhirnya dapat menghemat biaya secara signifikan.

Sebagai pengingat, pemanfaatan perlu dilakukan karena penggunaan sejumlah besar GPU tidak selalu berjalan dengan hasil yang lebih cepat. Sebaliknya, pastikan GPU sepenuhnya dimanfaatkan. Misalnya, periksa kembali kebutuhan NVIDIA CUDA. Meskipun NVIDIA CUDA mungkin diperlukan untuk eksekusi GPU berperforma tinggi, pekerjaan Anda mungkin tidak bergantung padanya.

Menentukan ukuran komputasi untuk pelatihan

Persyaratan komputasi untuk skenario inferensi berbeda dari skenario pelatihan. Opsi yang tersedia berbeda berdasarkan apakah skenario Anda menuntut inferensi offline dalam batch atau memerlukan inferensi online secara real time.

Untuk skenario inferensi real time pertimbangkan saran berikut:

  • Gunakan kemampuan pembuatan profil pada model Anda dengan Azure Machine Learning untuk menentukan berapa banyak CPU dan memori yang perlu Anda alokasikan untuk model saat menyebarkannya sebagai layanan web.
  • Jika Anda melakukan inferensi real time tetapi tidak memerlukan ketersediaan tinggi, sebarkan ke Azure Container Instances (tanpa pilihan SKU).
  • Jika Anda melakukan inferensi real time tetapi membutuhkan ketersediaan tinggi, sebarkan ke Azure Kubernetes Service.
    • Jika Anda menggunakan model pembelajaran mesin tradisional dan menerima < 10 kueri/detik, mulailah dengan SKU SPU. SKU seri F umumnya bekerja dengan baik.
    • Jika Anda menggunakan model pembelajaran mendalam dan menerima > 10 kueri/detik, cobalah SKU GPU NVIDIA (NCasT4_v3 umumnya berfungsi dengan baik) dengan Triton.

Untuk skenario inferensi batch pertimbangkan saran berikut:

  • Saat Anda menggunakan alur Azure Machine Learning untuk menyimpulkan batch, ikuti panduan dalam Menentukan ukuran komputasi untuk pelatihan saat memilih ukuran mesin virtual awal Anda.
  • Optimalkan biaya dan performa dengan melakukan penskalaan secara horizontal. Salah satu metode utama untuk mengoptimalkan biaya dan performa adalah dengan paralelisasi beban kerja dengan bantuan langkah eksekusi paralel di Azure Machine Learning. Langkah alur ini memungkinkan Anda menggunakan banyak simpul yang lebih kecil untuk menjalankan tugas secara paralel, sehingga Anda dapat melakukan penskalaan secara horizontal. Ada overhead untuk paralelisasi. Tergantung pada beban kerja dan tingkat paralelisme yang dapat dicapai, langkah eksekusi paralel bisa saja menjadi pilihan.

Menentukan ukuran untuk instans komputasi

Untuk pengembangan interaktif, instans komputasi Azure Machine Learning direkomendasikan. Penawaran instans komputasi (CI) menghadirkan komputasi node tunggal yang terikat pada satu pengguna dan dapat digunakan sebagai ruang kerja cloud.

Beberapa organisasi melarang penggunaan data produksi pada ruang kerja lokal, telah memberlakukan pembatasan pada lingkungan ruang kerja, atau membatasi pemasangan paket dan dependensi di lingkungan TI perusahaan. Instans komputasi dapat digunakan sebagai ruang kerja untuk mengatasi keterbatasan. Opsi ini menawarkan lingkungan aman dengan akses data produksi, dan berjalan pada gambar yang disertai paket dan alat populer untuk ilmu data yang terpasang.

Saat instans komputasi berjalan, pengguna ditagih untuk komputasi mesin virtual, Standard Load Balancer (termasuk aturan lb/outbound, dan data yang diproses), disk OS (Disk P10 yang dikelola SSD Premium), disk sementara (tipe disk sementara tergantung pada ukuran mesin virtual yang dipilih), dan alamat IP publik. Untuk menghemat biaya, kami sarankan pengguna mempertimbangkan:

  • Mulai dan hentikan instans komputasi saat tidak digunakan.
  • Gunakan sampel data Anda pada instans komputasi dan lakukan peluasan skala ke kluster komputasi agar dapat memanfaatkan set data lengkap Anda
  • Kirimkan pekerjaan eksperimen dalam mode target komputasi lokal pada instans komputasi saat mengembangkan atau menguji, atau saat Anda beralih ke kapasitas komputasi bersama saat Anda mengirimkan pekerjaan dalam skala penuh. Misalnya, banyak periode, set data lengkap, dan pencarian hyperparameter.

Jika Anda menghentikan instans komputasi, hal tersebut akan menghentikan penagihan untuk jam komputasi mesin virtual, disk sementara, dan biaya pemrosesan data Standard Azure Load Balancer. Pengguna Note masih membayar untuk disk OS dan Standard Azure Load Balancer termasuk aturan lb/outbound bahkan ketika instans komputasi dihentikan. Setiap data yang disimpan pada disk OS dipertahankan melalui stop dan hidupkan ulang.

Menyetel ukuran mesin virtual yang dipilih dengan memantau pemanfaatan komputasi

Anda dapat melihat informasi tentang penggunaan dan pemanfaatan komputasi Azure Machine Learning Anda melalui Azure Monitor. Anda dapat melihat detail tentang penyebaran dan pendaftaran model, detail kuota seperti node aktif dan siaga, menjalankan detail seperti proses yang dibatalkan dan diselesaikan, dan menghitung pemanfaatan untuk GPU dan pemanfaatan CPU.

Berdasarkan wawasan dari detail pemantauan, Anda dapat merencanakan atau menyesuaikan penggunaan sumber daya dengan lebih baik di seluruh tim. Misalnya, jika Anda melihat banyak node siaga selama seminggu terakhir, Anda dapat bekerja dengan pemilik ruang kerja yang sesuai untuk memperbarui konfigurasi kluster komputasi untuk mencegah biaya tambahan ini. Manfaat menganalisis pola pemanfaatan dapat membantu memperkirakan biaya dan memperbaiki anggaran.

Anda dapat mengakses metrik ini langsung dari portal Microsoft Azure. Buka ruang kerja Azure Machine Learning Anda, dan pilih Metrik di bawah bagian pemantauan di panel kiri. Kemudian, Anda dapat memilih detail tentang apa yang ingin Anda lihat, seperti metrik, agregasi, dan periode waktu. Untuk informasi selengkapnya, lihat halaman dokumentasi Memantau Azure Machine Learning.

Diagram metrik Azure Monitor untuk Azure Machine Learning

Beralih antara komputasi cloud lokal, node tunggal, dan node majemuk saat Anda melakukan pengembangan

Tersedia berbagai persyaratan komputasi dan perkakas di seluruh siklus hidup pembelajaran mesin. Azure Machine Learning dapat dihubungkan melalui antarmuka SDK dan CLI dari hampir semua konfigurasi ruang kerja pilihan untuk memenuhi persyaratan ini.

Untuk menghemat biaya dan bekerja secara produktif, disarankan untuk:

  • Mengkloning basis kode eksperimen Anda secara lokal dengan menggunakan Git dan mengirimkan pekerjaan ke komputasi cloud menggunakan SDK atau CLI Azure Machine Learning.
  • Jika himpunan data Anda besar, pertimbangkan untuk mengelola sampel data Anda di ruang kerja lokal Anda, sambil menyimpan himpunan data lengkap pada penyimpanan cloud.
  • Buat parameter untuk basis kode eksperimen Anda sehingga Anda dapat mengkonfigurasi pekerjaan Anda untuk dijalankan dengan berbagai jumlah periode atau pada himpunan data dengan ukuran yang berbeda.
  • Jangan membuat kode keras untuk jalur folder dari himpunan data Anda. Anda kemudian dapat dengan mudah menggunakan kembali basis kode yang sama dengan himpunan data yang berbeda, dan di bawah konteks eksekusi lokal dan cloud.
  • Bootstrap pekerjaan eksperimen Anda dalam mode target komputasi lokal saat Anda mengembangkan atau menguji, atau ketika Anda beralih ke kapasitas kluster komputasi bersama ketika Anda mengirimkan pekerjaan dalam skala penuh.
  • Jika himpunan data Anda besar, gunakan sampel data pada ruang kerja instans lokal atau komputasi Anda, saat penskalaan ke komputasi cloud dalam Azure Machine Learning agar dapat bekerja dengan kumpulan data lengkap Anda.
  • Ketika pekerjaan Anda membutuhkan waktu eksekusi yang panjang, pertimbangkan untuk mengoptimalkan basis kode Anda untuk pelatihan terdistribusi agar penskalaan secara horizontal dapat dilakukan.
  • Rancang beban kerja pelatihan terdistribusi Anda untuk elastisitas node, untuk memungkinkan penggunaan komputasi node tunggal dan node jamak yang fleksibel, dan kemudahan penggunaan komputasi yang dapat didahulukan.

Menggabungkan tipe komputasi menggunakan alur Azure Machine Learning

Saat mengatur alur kerja pembelajaran mesin, Anda dapat menentukan alur dengan beberapa langkah. Setiap langkah dalam alur dapat berjalan pada tipe komputasinya sendiri. Hal ini memungkinkan Anda mengoptimalkan performa dan biaya untuk memenuhi berbagai persyaratan komputasi di seluruh siklus hidup pembelajaran mesin.

Dorong penggunaan anggaran tim sebaik mungkin

Sementara keputusan alokasi anggaran mungkin berada di luar rentang kendali masing-masing tim, tim biasanya diberdayakan untuk menggunakan anggaran yang dialokasikan untuk kebutuhan terbaik mereka. Dengan menyeimbangkan prioritas pekerjaan versus performa dan biaya secara bijak, tim dapat mencapai pemanfaatan kluster yang lebih tinggi, menurunkan biaya keseluruhan, dan menggunakan jumlah jam komputasi yang lebih besar dari anggaran yang sama. Hal ini dapat mengakibatkan peningkatan produktivitas tim.

Mengoptimalkan biaya sumber daya komputasi bersama

Kunci untuk mengoptimalkan biaya sumber daya komputasi bersama adalah memastikan bahwa mereka digunakan dengan kapasitas penuh. Berikut adalah beberapa tips untuk mengoptimalkan biaya sumber daya bersama Anda:

  • Saat Anda menggunakan instans komputasi, cukup aktifkan instans tersebut jika Anda memiliki kode untuk dijalankan. Matikan instans komputasi ketika mereka tidak digunakan.
  • Saat Anda menggunakan kluster komputasi, atur jumlah node minimum ke 0 dan jumlah node maksimum ke angka yang dievaluasi berdasarkan batasan anggaran Anda. Gunakan kalkulator harga Azure untuk menghitung biaya pemanfaatan penuh satu node mesin virtual dari SKU mesin virtual pilihan Anda. Penskalaan otomatis akan menurunkan skala semua node komputasi ketika tidak ada yang menggunakannya. Langkah ini hanya akan meningkatkan skala jumlah node yang anggarannya Anda miliki. Anda dapat mengonfigurasi penskalaan otomatis untuk menurunkan skala semua node komputasi.
  • Pantau pemanfaatan sumber daya Anda seperti pemanfaatan CPU dan pemanfaatan GPU saat melatih model. Jika sumber daya tidak sepenuhnya digunakan, ubah kode Anda untuk menggunakan sumber daya dengan lebih baik atau menurunkan skalanya ke ukuran mesin virtual yang lebih kecil atau lebih murah.
  • Evaluasi apakah Anda dapat membuat sumber daya komputasi bersama untuk tim Anda agar dapat menghindari inefisiensi komputasi yang disebabkan oleh operasi penskalaan kluster.
  • Optimalkan kebijakan batas waktu penskalaan otomatis kluster komputasi berdasarkan metrik penggunaan.
  • Gunakan kuota ruang kerja untuk mengontrol jumlah sumber daya komputasi yang dapat diakses oleh masing-masing ruang kerja.

Memperkenalkan prioritas penjadwalan dengan membuat kluster untuk beberapa SKU mesin virtual

Bertindak sesuai batasan kuota dan anggaran, tim harus menyeimbangkan eksekusi pekerjaan yang tepat waktu versus biaya, untuk memastikan pekerjaan penting berjalan tepat waktu dan anggaran digunakan dengan sebaik mungkin.

Untuk mendukung pemanfaatan komputasi terbaik, tim sebaiknya membuat kluster dengan berbagai ukuran dan dengan prioritas mesin virtual prioritas rendah dan khusus. Komputasi prioritas rendah menggunakan kapasitas surplus di Azure dan karenanya dilengkapi dengan tarif diskon. Pada sisi negatifnya, mesin ini dapat didahulukan kapan saja permintaan prioritas yang lebih tinggi masuk.

Gagasan tentang prioritas penjadwalan dapat diterapkan dengan menggunakan kluster dengan berbagai ukuran dan prioritas. Misalnya, ketika pekerjaan eksperimental dan produksi bersaing untuk kuota GPU NC yang sama, pekerjaan produksi mungkin memiliki preferensi untuk menjalankan pekerjaan eksperimental. Dalam hal ini, jalankan pekerjaan produksi pada kluster komputasi khusus, dan pekerjaan eksperimental pada kluster komputasi prioritas rendah. Ketika kuota kurang, pekerjaan eksperimental akan didahulukan demi pekerjaan produksi.

Di samping prioritas mesin virtual, pertimbangkan untuk menjalankan pekerjaan di berbagai SKU mesin virtual. Mungkin pekerjaan membutuhkan waktu lebih lama untuk dijalankan pada instans mesin virtual dengan GPU P40 daripada pada GPU V100. Namun, karena instans mesin virtual V100 mungkin ditempati atau kuota sepenuhnya digunakan, waktu untuk menyelesaikan P40 mungkin masih lebih cepat dari perspektif throughput pekerjaan. Anda juga dapat mempertimbangkan untuk menjalankan pekerjaan dengan prioritas yang lebih rendah pada instans mesin virtual yang kurang berperforma dan lebih murah dari perspektif manajemen biaya.

Hentikan eksekusi lebih awal saat latihan tidak menyatu

Ketika Anda terus bereksperimen untuk meningkatkan model berdasarkan garis besarnya, Anda mungkin menjalankan berbagai eksekusi eksperimen, masing-masing dengan konfigurasi yang sedikit berbeda. Untuk satu kali eksekusi, Anda dapat mengubah himpunan data input. Untuk eksekusi lain, Anda mungkin membuat perubahan hyperparameter. Tidak semua perubahan mungkin seefektif yang lain. Anda mendeteksi dini bahwa perubahan tidak memiliki efek yang dimaksudkan pada kualitas pelatihan model Anda. Untuk mendeteksi apakah pelatihan tidak menyatu, pantau kemajuan pelatihan selama eksekusi. Misalnya, dengan mencatat metrik performa setelah setiap periode pelatihan. Pertimbangkan untuk mengakhiri pekerjaan lebih awal untuk membebaskan sumber daya dan anggaran untuk percobaan lain.

Merencanakan, mengelola, dan berbagi anggaran, biaya, dan kuota

Ketika sebuah organisasi meningkatkan jumlah kasus penggunaan dan tim pembelajaran mesin, dibutuhkan peningkatan kematangan operasi dari TI dan keuangan serta koordinasi antara tim pembelajaran mesin individu untuk memastikan operasi yang efisien. Kapasitas skala perusahaan dan manajemen kuota menjadi hal yang diperlukan untuk mengatasi langkanya sumber daya komputasi dan mengatasi overhead manajemen.

Bagian ini membahas praktik terbaik untuk merencanakan, mengelola, dan berbagi anggaran, biaya, dan kuota dalam skala perusahaan. Ini didasarkan pada pembelajaran dari mengelola banyak sumber daya pelatihan GPU untuk pembelajaran mesin secara internal di Microsoft.

Memahami pengeluaran sumber daya dengan Azure Machine Learning

Salah satu tantangan terbesar sebagai administrator untuk merencanakan kebutuhan komputasi adalah memulai yang baru tanpa informasi historis sebagai perkiraan mengenai garis besarnya. Pada pengertian praktis, sebagian besar proyek akan dimulai dari anggaran kecil sebagai langkah pertama.

Untuk memahami alokasi anggaran tersebut, penting untuk mengetahui dari mana biaya Azure Machine Learning berasal:

  • Azure Machine Learning hanya mengenakan biaya untuk infrastruktur komputasi yang digunakan dan tidak menambahkan biaya tambahan pada biaya komputasi.
  • Saat ruang kerja Azure Machine Learning dibuat, ada juga beberapa sumber daya lain yang dibuat untuk mengaktifkan Azure Machine Learning: Azure Key Vault, Application Insights, Azure Storage, dan Azure Container Registry. Sumber daya ini digunakan dalam Azure Machine Learning dan Anda akan membayar sumber daya ini.
  • Ada biaya yang terkait dengan komputasi terkelola seperti kluster pelatihan, instans komputasi, dan titik akhir inferensi terkelola. Dengan sumber daya komputasi terkelola ini, ada biaya infrastruktur berikut yang harus dipertanggungjawabkan: mesin virtual, jaringan virtual, penyeimbang beban, bandwidth, dan penyimpanan.

Melacak pola pengeluaran dan mencapai pelaporan yang lebih baik dengan pemberian tag

Administrator sering ingin dapat melacak biaya pada sumber daya yang berbeda di Azure Machine Learning. Pemberian tag adalah solusi alami untuk masalah ini dan selaras dengan pendekatan umum yang digunakan oleh Azure dan banyak penyedia layanan cloud lainnya. Dengan dukungan tag, Anda sekarang dapat melihat perincian biaya di tingkat komputasi, oleh karena itu memberi Anda akses ke tampilan yang lebih terperinci untuk membantu pemantauan biaya yang lebih baik, pelaporan yang ditingkatkan, dan transparansi yang lebih besar.

Pemberian tag memungkinkan Anda menempatkan tag yang disesuaikan di ruang kerja dan komputasi Anda (dari templat Azure Resource Manager dan studio Azure Machine Learning) untuk memfilter lebih lanjut sumber daya ini di Azure Cost Management berdasarkan tag ini untuk mengamati pola pengeluaran. Fungsionalitas ini dapat paling baik digunakan untuk skenario charge-back internal. Selain itu, tag dapat berguna untuk menangkap metadata atau detail yang terkait dengan komputasi, misalnya proyek, tim, kode penagihan tertentu, dll. Ini membuat pemberian tag sangat bermanfaat untuk mengukur berapa banyak uang yang Anda belanjakan untuk sumber daya yang berbeda dan oleh karena itu, mendapatkan wawasan yang lebih dalam tentang pola biaya dan pengeluaran Anda di seluruh tim atau proyek.

Ada juga tag yang disuntikkan sistem yang ditempatkan pada komputasi yang memungkinkan Anda memfilter di halaman Analisis Biaya menurut tag "Jenis komputasi" untuk melihat perincian bijak komputasi dari total pengeluaran Anda dan menentukan kategori sumber daya komputasi apa yang mungkin mengakibatkan sebagian besar biaya Anda. Ini sangat berguna untuk mendapatkan lebih banyak visibilitas ke dalam pola biaya pelatihan vs inferensi Anda.

Cuplikan layar tampilan analitik biaya yang difilter menurut jenis komputasi.

Mengatur dan membatasi penggunaan komputasi berdasarkan kebijakan

Saat Anda mengelola lingkungan Azure dengan banyak beban kerja, melacak pengeluaran sumber daya dapat menjadi tantangan. Azure Policy dapat membantu mengontrol dan mengatur pembelanjaan sumber daya, dengan membatasi pola penggunaan tertentu di seluruh lingkungan Azure.

Secara khusus untuk Azure Machine Learning, sebaiknya siapkan kebijakan yang hanya mengizinkan penggunaan SKU mesin virtual tertentu. Kebijakan dapat membantu mencegah dan mengontrol pemilihan mesin virtual yang mahal. Kebijakan juga dapat digunakan untuk menerapkan penggunaan SKU mesin virtual prioritas rendah.

Mengalokasikan dan mengelola kuota berdasarkan prioritas bisnis

Azure memungkinkan Anda menetapkan batas alokasi kuota pada tingkat langganan dan ruang kerja Azure Machine Learning. Membatasi siapa yang dapat mengelola kuota melalui kontrol akses berbasis peran (RBAC) Azure dapat membantu memastikan pemanfaatan sumber daya dan prediktabilitas biaya.

Ketersediaan kuota GPU bisa langka di seluruh langganan Anda. Untuk memastikan pemanfaatan kuota yang tinggi di seluruh beban kerja, sebaiknya pantau apakah kuota paling baik digunakan dan ditetapkan di seluruh beban kerja.

Microsoft secara berkala menentukan apakah kuota GPU paling baik digunakan dan dialokasikan di seluruh tim pembelajaran mesin dengan mengevaluasi kebutuhan kapasitas terhadap prioritas bisnis.

Terapkan kapasitas lebih cepat

Jika Anda memiliki perkiraan yang baik tentang berapa banyak komputasi yang akan digunakan tahun depan atau beberapa tahun ke depan, Anda dapat membeli Azure Reserved VM Instances dengan biaya diskon. Tersedia persyaratan pembelian satu tahun atau tiga tahun. Karena Azure Reserved VM Instances didiskon, mungkin ada penghematan biaya yang signifikan dibandingkan dengan harga bayar sesuai pemakaian.

Azure Machine Learning mendukung instans komputasi yang dipesan. Diskon secara otomatis diterapkan terhadap komputasi terkelola Azure Machine Learning.

Mengelola retensi data

Setiap kali alur pembelajaran mesin dijalankan, himpunan data perantara dapat dihasilkan pada setiap langkah alur untuk penembolokan dan penggunaan ulang data. Pertumbuhan data sebagai output dari alur pembelajaran mesin ini dapat menjadi titik kesulitan bagi organisasi yang menjalankan banyak eksperimen pembelajaran mesin.

Ilmuwan data biasanya tidak menghabiskan waktu mereka untuk membersihkan himpunan data perantara yang dihasilkan. Seiring waktu, jumlah data yang dihasilkan akan bertambah. Azure Storage dilengkapi dengan kemampuan untuk meningkatkan manajemen siklus hidup data. Menggunakan manajemen siklus hidup Azure Blob Storage, Anda dapat menyiapkan kebijakan umum untuk memindahkan data yang tidak digunakan ke tingkat penyimpanan yang lebih dingin dan menghemat biaya.

Pertimbangan optimalisasi biaya infrastruktur

Jaringan

Biaya jaringan Azure dikeluarkan oleh bandwidth outbound dari pusat data Azure. Semua data inbound ke pusat data Azure gratis. Kunci untuk mengurangi biaya jaringan adalah dengan menyebarkan semua sumber daya Anda di wilayah pusat data yang sama bila memungkinkan. Jika Anda dapat menyebarkan ruang kerja Azure Machine Learning dan menghitung di wilayah yang sama yang memiliki data Anda, Anda dapat menikmati biaya yang lebih rendah dan performa yang lebih tinggi.

Anda mungkin ingin memiliki koneksi pribadi antara jaringan lokal dan jaringan Azure Anda untuk mendapatkan lingkungan cloud hibrid. ExpressRoute memungkinkan Anda untuk melakukan itu tetapi mengingat tingginya biaya ExpressRoute, mungkin lebih hemat biaya untuk beralih dari penyiapan cloud hibrid dan memindahkan semua sumber daya ke cloud Azure.

Azure Container Registry

Untuk Azure Container Registry, faktor penentu untuk pengoptimalan biaya meliputi:

  • Throughput yang diperlukan untuk unduhan gambar Docker dari registri kontainer ke Azure Machine Learning
  • Persyaratan untuk fitur keamanan perusahaan, seperti Azure Private Link

Untuk skenario produksi yang memerlukan throughput tinggi atau keamanan perusahaan, SKU Premium Azure Container Registry direkomendasikan.

Untuk skenario dev/test yang tidak terlalu memerlukan throughput dan keamanan, kami merekomendasikan SKU Standar atau SKU Premium.

SKU Dasar Azure Container Registry tidak direkomendasikan untuk Azure Machine Learning. Ini tidak dianjurkan karena throughputnya yang rendah dan penyimpanan yang disertakan rendah, yang dapat dengan cepat dilampaui oleh gambar Docker berukuran relatif besar (1+ GB) Azure Machine Learning.

Pertimbangkan ketersediaan jenis komputasi saat memilih wilayah Azure

Saat Anda memilih wilayah untuk komputasi Anda, ingatlah ketersediaan kuota komputasi. Wilayah populer dan lebih besar seperti AS Timur, AS Barat, dan Eropa Barat cenderung memiliki nilai kuota default yang lebih tinggi dan ketersediaan yang lebih besar dari sebagian besar CPU dan GPU, dibandingkan dengan beberapa wilayah lain dengan pembatasan kapasitas yang lebih ketat.

Pelajari lebih lanjut

Melacak biaya di seluruh unit bisnis, lingkungan, atau proyek dengan menggunakan Cloud Adoption Framework

Langkah berikutnya

Informasi lengkap tentang cara mengatur dan menyiapkan lingkungan Azure Machine Learning bisa dilihat di Mengatur dan menyiapkan lingkungan Azure Machine Learning.

Untuk mempelajari praktik terbaik di Pembelajaran Mesin DevOps dengan Azure Machine Learning, lihat Panduan Pembelajaran Mesin DevOps.