Ilmu data dan pembelajaran mesin dengan Azure Databricks

Azure Databricks
Azure Data Lake Storage
Azure Kubernetes Service (AKS)
Azure Machine Learning

Ide solusi

Artikel ini adalah ide solusi. Jika Anda ingin kami memperluas konten dengan informasi lebih lanjut, seperti potensi kasus penggunaan, layanan alternatif, pertimbangan implementasi, atau panduan harga, beri tahu kami dengan memberikan umpan balik GitHub.

Arsitektur ini menunjukkan bagaimana Anda dapat meningkatkan operasi dengan menggunakan Azure Databricks, Delta Lake, dan MLflow untuk ilmu data dan pembelajaran mesin. Anda dapat meningkatkan efisiensi keseluruhan dan pengalaman pelanggan dengan mengembangkan, melatih, dan menyebarkan model pembelajaran mesin.

Arsitektur

Architecture diagram showing how Azure Databricks works with data storage services to refine and analyze data and make it available for other services.

Diagram berisi tiga persegi panjang abu-abu: satu label Process, satu label Serve, dan satu label Store. Persegi panjang Process dan Serve bersebelahan di bagian atas diagram. Persegi panjang Serve berisi kotak putih dengan ikon untuk Machine Learning dan Azure Kubernetes Service. Kotak putih mengetengahi persegi panjang Process dan Serve. Ini berisi ikon untuk Azure Databricks dan MLflow. Tanda panah menunjuk dari kotak itu ke kotak putih di persegi panjang Serve. Di bawah persegi panjang Process adalah persegi panjang Store. Ini berisi kotak putih dengan ikon untuk Data Lake Storage, Delta Lake, dan tiga tabel database berlabel Bronze, Silver, dan Gold. Tiga baris menghubungkan persegi panjang Process dan Store, dengan tanda panah di setiap ujung masing-masing baris.

Unduh file Visio arsitektur ini.

Solusinya menyimpan, memproses, dan menyajikan data:

Aliran data

Bursa

Data Lake Storage menyimpan data dalam format Delta Lake. Delta Lake membentuk lapisan yang dikuratori dari data lake. Arsitektur medali mengatur data menjadi tiga lapisan:

  • Tabel Bronze menyimpan data mentah.
  • Tabel Silver berisi data yang dibersihkan dan difilter.
  • Tabel Gold menyimpan data agregat yang siap dianalisis dan dilaporkan.

Proses

  • Kode dari berbagai bahasa, kerangka kerja, dan pustaka mempersiapkan, memperbaiki, dan membersihkan data mentah (1). Kemungkinan pengodean meliputi Python, R, SQL, Spark, Panda, dan Koala.

  • Azure Databricks menjalankan beban kerja ilmu data. Platform ini juga membangun dan melatih model pembelajaran mesin (2). Azure Databricks menggunakan pustaka pra-instal yang dioptimalkan. Contohnya termasuk scikit-learn, TensorFlow, PyTorch, dan XGBoost.

  • Pelacakan MLflow mengambil eksperimen pembelajaran mesin, eksekusi model, dan hasil (3). Saat model terbaik siap untuk produksi, Azure Databricks menyebarkan model tersebut ke repositori model MLflow. Registri terpusat ini menyimpan informasi tentang model produksi. Registri juga membuat model tersedia untuk komponen lain:

    • Alur Spark dan Python dapat menyerap model. Alur ini menangani beban kerja batch atau proses ETL streaming.
    • REST API menyediakan akses ke model untuk berbagai tujuan. Contohnya termasuk pengujian dan penilaian interaktif dalam aplikasi seluler dan web.

Serve

Azure Databricks dapat menyebarkan model ke layanan lain, seperti Machine Learning dan AKS (4).

Komponen

  • Azure Databricks adalah platform analisis data. Kluster Spark yang dikelola sepenuhnya menjalankan beban kerja ilmu data. Azure Databricks juga menggunakan pustaka pra-instal dan optimal untuk membangun dan melatih model pembelajaran mesin. Integrasi MLflow dengan Azure Databricks menyediakan cara untuk melacak eksperimen, menyimpan model dalam repositori, dan membuat model tersedia untuk layanan lain. Azure Databricks menawarkan skalabilitas:

    • Kluster komputasi simpul tunggal menangani himpunan data kecil dan eksekusi model tunggal.
    • Untuk himpunan data besar, kluster komputasi multi-simpul atau kluster unit pemrosesan grafis (GPU) tersedia. Kluster ini menggunakan pustaka dan kerangka kerja seperti HorovodRunner dan Hyperopt untuk eksekusi model paralel.
  • Data Lake Storageadalah data lake yang skalabel dan aman untuk beban kerja analitik berperforma tinggi. Layanan ini mengelola beberapa petabyte informasi sekaligus mempertahankan ratusan gigabit throughput. Data dapat memiliki karakteristik ini:

    • Terstruktur, semi terstruktur, atau tidak terstruktur.
    • Berasal dari beberapa sumber heterogen seperti log, file, dan media.
    • Jadilah statis, dari batch, atau streaming.
  • Delta Lake adalah lapisan penyimpanan yang menggunakan format file terbuka. Lapisan ini berjalan di atas penyimpanan cloud seperti Data Lake Storage. Delta Lake dioptimalkan untuk mengubah dan membersihkan data streaming dan batch. Platform ini mendukung fitur dan fungsi berikut:

    • Penerapan versi data dan pemutaran kembali.
    • Transaksi atomisitas, konsistensi, isolasi, dan ketahanan (ACID) untuk keandalan.
    • Standar yang konsisten untuk persiapan data, pelatihan model, dan penyajian model.
    • Perjalanan waktu untuk snapshot data sumber yang konsisten. Ilmuwan data dapat melatih model pada snapshot, bukan membuat salinan terpisah.
  • MLflow adalah platform sumber terbuka untuk siklus hidup pembelajaran mesin. Komponen MLflow memantau model pembelajaran mesin selama pelatihan dan eksekusi. Informasi yang disimpan mencakup kode, data, informasi konfigurasi, dan hasil. MLflow juga menyimpan model dan memuatnya dalam produksi. Karena MLflow menggunakan kerangka kerja terbuka, berbagai layanan, aplikasi, kerangka kerja, dan alat dapat menggunakan model.

  • Pembelajaran Mesin adalah lingkungan berbasis cloud yang membantu Anda membangun, menyebarkan, dan mengelola solusi analisis prediktif. Dengan model ini, Anda dapat memprakirakan perilaku, hasil, dan tren.

  • AKS adalah layanan Kubernetes yang sangat tersedia, aman, dan dikelola sepenuhnya. AKS memudahkan Anda menyebarkan dan mengelola aplikasi kontainer.

Detail skenario

Karena organisasi Anda mengetahui kekuatan ilmu data dan pembelajaran mesin, Anda dapat meningkatkan efisiensi, meningkatkan pengalaman pelanggan, dan memprediksi perubahan. Untuk mencapai tujuan ini dalam kasus penggunaan kritis bisnis, Anda memerlukan pola yang konsisten dan dapat diandalkan untuk:

  • Melacak eksperimen.
  • Mereproduksi hasil.
  • Menerapkan model pembelajaran mesin ke dalam produksi.

Artikel ini menguraikan solusi untuk kerangka kerja pembelajaran mesin yang konsisten dan andal. Azure Databricks membentuk inti arsitektur. Lapisan penyimpanan Delta Lake dan platform pembelajaran mesin MLflow juga memainkan peran penting. Komponen ini terintegrasi secara lancar dengan layanan lain seperti Azure Data Lake Storage, Azure Machine Learning, dan Azure Kubernetes Service (AKS).

Bersama-sama, layanan ini memberikan solusi untuk ilmu data dan pembelajaran mesin yaitu:

  • Sederhana: Data lake terbuka menyederhanakan arsitektur. Data lake berisi lapisan yang dikuratori, Delta Lake. Lapisan itu menyediakan akses ke data dalam format sumber terbuka.

  • Terbuka: Solusi ini mendukung kode sumber terbuka, standar terbuka, dan kerangka kerja terbuka. Pendekatan ini meminimalkan kebutuhan akan pembaruan di masa mendatang. Azure Databricks dan Machine Learning mendukung MLflow dan Delta Lake secara native. Bersama-sama, komponen ini menyediakan operasi pembelajaran mesin (MLOps) terkemuka dalam industri, atau DevOps untuk pembelajaran mesin. Berbagai alat penyebaran terintegrasi dengan format model standar solusi.

  • Kolaboratif: Tim ilmu data dan MLOps bekerja sama dengan solusi ini. Tim ini menggunakan pelacakan MLflow untuk merekam dan mengkueri eksperimen. Tim juga menyebarkan model ke registri model MLflow pusat. Teknisi data kemudian menyebarkan model yang digunakan dalam proses penyerapan data, ekstrak-transformasi-muat (ETL), dan alur streaming.

Kemungkinan kasus penggunaan

Platform yang dibangun AGL untuk prakiraan energi menginspirasi solusi ini. Platform tersebut menyediakan pelatihan, pengembangan, dan pengelolaan siklus hidup yang cepat dan hemat biaya untuk ribuan model paralel.

Selain penyedia energi, solusi ini dapat menguntungkan setiap organisasi yang:

  • Menggunakan ilmu data.
  • Membangun dan melatih model pembelajaran mesin.
  • Menjalankan model pembelajaran mesin dalam produksi.

Contohnya termasuk organisasi dalam:

  • Ritel dan e-niaga.
  • Perbankan dan keuangan.
  • Layanan kesehatan dan ilmu pengetahuan alam.
  • Industri otomotif dan manufaktur.

Langkah berikutnya

  • AGL Energy membangun platform standar untuk ribuan model paralel. Platform ini menyediakan pelatihan, penyebaran, dan pengelolaan siklus hidup yang cepat dan hemat biaya untuk model.
  • Open Grid Europe (OGE) menggunakan model kecerdasan buatan untuk memantau pipa gas. OGE menggunakan Azure Databricks dan MLflow untuk mengembangkan model.
  • Scandinavian Airlines (SAS) menggunakan Azure Databricks selama tahap penelitian kolaboratif. Maskapai ini juga menggunakan Azure Machine Learning untuk mengembangkan model prediktif. Dengan mengidentifikasi pola dalam data perusahaan, model meningkatkan operasi sehari-hari.