Azure Databricks ile veri bilimi ve makine öğrenmesi

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

Çözüm fikirleri

Bu makale bir çözüm fikridir. İçeriği olası kullanım örnekleri, alternatif hizmetler, uygulama konuları veya fiyatlandırma yönergeleri gibi daha fazla bilgiyle genişletmemizi isterseniz GitHub geri bildirimi sağlayarak bize bildirin.

Bu mimaride veri bilimi ve makine öğrenmesi için Azure Databricks, Delta Lake ve MLflow kullanarak işlemleri nasıl geliştirebileceğiniz gösterilmektedir. Makine öğrenmesi modelleri geliştirerek, eğiterek ve dağıtarak genel verimliliğinizi ve müşteri deneyiminizi geliştirebilirsiniz.

Mimari

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

Diyagramda üç gri dikdörtgen bulunur: biri İşlem, biri Hizmet ve biri mağaza etiketli. İşlem ve Hizmet Dikdörtgenleri, diyagramın üst kısmında yan yanadır. Hizmet sunma dikdörtgeni, Machine Learning ve Azure Kubernetes Service simgelerinin bulunduğu beyaz bir kutu içerir. Başka bir beyaz kutu İşlem ve Hizmet dikdörtgenlerini sarıyor. Azure Databricks ve MLflow simgeleri içerir. Bu kutudan Hizmet dikdörtgenindeki beyaz kutuya işaret eden bir ok. İşlem dikdörtgeninin altında Mağaza dikdörtgeni yer alır. Data Lake Depolama, Delta Lake simgelerinin ve Bronz, Gümüş ve Altın etiketli üç veritabanı tablosunun bulunduğu beyaz bir kutu içerir. İşlem ve Depolama dikdörtgenlerini her satırın her ucunda oklarla üç çizgi birbirine bağlar.

Bu mimarinin bir Visio dosyasını indirin.

Çözüm verileri depolar, işler ve sunar:

Veri akışı

Store

Data Lake Depolama verileri Delta Lake biçiminde depolar. Delta Lake, veri gölünün seçilmiş katmanını oluşturur. Madalyon mimarisi verileri üç katman halinde düzenler:

  • Bronz tablolar ham verileri barındırır.
  • Gümüş tablolar temizlenmiş, filtrelenmiş veriler içerir.
  • Altın renkli tablolar, analiz ve raporlama için hazır olan toplu verileri depolar.

İşlem

  • Çeşitli dillerden, çerçevelerden ve kitaplıklardan alınan kod ham verileri hazırlar, iyileştirilir ve temizler (1). Kodlama olanakları python, R, SQL, Spark, Pandas ve Koalas'tır.

  • Azure Databricks, veri bilimi iş yüklerini çalıştırır. Bu platform ayrıca makine öğrenmesi modelleri (2) derleyip eğitmektedir. Azure Databricks önceden yüklenmiş, iyileştirilmiş kitaplıkları kullanır. Örnek olarak scikit-learn, TensorFlow, PyTorch ve XGBoost verilebilir.

  • MLflow izlemesi makine öğrenmesi denemelerini, model çalıştırmalarını ve sonuçları yakalar (3). En iyi model üretim için hazır olduğunda Azure Databricks bu modeli MLflow model deposuna dağıtır. Bu merkezi kayıt defteri, üretim modelleriyle ilgili bilgileri depolar. Kayıt defteri ayrıca modelleri diğer bileşenler için de kullanılabilir hale getirir:

    • Spark ve Python işlem hatları modelleri alabilir. Bu işlem hatları toplu iş yüklerini veya akış ETL işlemlerini işler.
    • REST API'leri birçok amaçla modellere erişim sağlar. Örnek olarak mobil ve web uygulamalarında test ve etkileşimli puanlama verilebilir.

Hizmet

Azure Databricks, Machine Learning ve AKS (4) gibi diğer hizmetlere model dağıtabilir.

Components

  • Azure Databricks bir veri analizi platformudur. Tam olarak yönetilen Spark kümeleri veri bilimi iş yüklerini çalıştırır. Azure Databricks ayrıca makine öğrenmesi modelleri oluşturmak ve eğitmek için önceden yüklenmiş, iyileştirilmiş kitaplıklar kullanır. Azure Databricks ile MLflow tümleştirmesi, denemeleri izlemenin, modelleri depolarda depolamanın ve modelleri diğer hizmetlerin kullanımına sunmanın bir yolunu sağlar. Azure Databricks ölçeklenebilirlik sunar:

    • Tek düğümlü işlem kümeleri küçük veri kümelerini ve tek modelli çalıştırmaları işler.
    • Büyük veri kümeleri için çok düğümlü işlem kümeleri veya grafik işleme birimi (GPU) kümeleri kullanılabilir. Bu kümeler paralel model çalıştırmaları için HorovodRunner ve Hyperopt gibi kitaplıkları ve çerçeveleri kullanır.
  • Data Lake Depolama, yüksek performanslı analiz iş yükleri için ölçeklenebilir ve güvenli bir veri gölüdür. Bu hizmet, yüzlerce gigabit aktarım hızı sağlarken birden çok petabayt bilgiyi yönetir. Veriler şu özelliklere sahip olabilir:

    • Yapılandırılmış, yarı yapılandırılmış veya yapılandırılmamış olmalıdır.
    • Günlükler, dosyalar ve medya gibi birden çok heterojen kaynaktan gelir.
    • Toplu işlerden veya akıştan statik olun.
  • Delta Lake , açık dosya biçimi kullanan bir depolama katmanıdır. Bu katman Data Lake Depolama gibi bulut depolama alanı üzerinde çalışır. Delta Lake, toplu iş ve akış verilerini dönüştürmek ve temizlemek için iyileştirilmiştir. Bu platform şu özellikleri ve işlevleri destekler:

    • Veri sürümü oluşturma ve geri alma.
    • Güvenilirlik için bölünmezlik, tutarlılık, yalıtım ve dayanıklılık (ACID) işlemleri.
    • Veri hazırlama, model eğitimi ve model sunma için tutarlı bir standart.
    • Kaynak verilerin tutarlı anlık görüntüleri için zaman yolculuğu. Veri bilimciler, ayrı kopyalar oluşturmak yerine modelleri anlık görüntülerde eğitebilir.
  • MLflow , makine öğrenmesi yaşam döngüsü için açık kaynak bir platformdur. MLflow bileşenleri, eğitim ve çalıştırma sırasında makine öğrenmesi modellerini izler. Depolanan bilgiler kod, veri, yapılandırma bilgileri ve sonuçları içerir. MLflow ayrıca modelleri depolar ve üretim ortamında yükler. MLflow açık çerçeveler kullandığından, çeşitli hizmetler, uygulamalar, çerçeveler ve araçlar modelleri kullanabilir.

  • Machine Learning , tahmine dayalı analiz çözümleri oluşturmanıza, dağıtmanıza ve yönetmenize yardımcı olan bulut tabanlı bir ortamdır. Bu modellerle davranışları, sonuçları ve eğilimleri tahmin edebilirsiniz.

  • AKS yüksek oranda kullanılabilir, güvenli ve tam olarak yönetilen bir Kubernetes hizmetidir. AKS, kapsayıcılı uygulamaları dağıtmayı ve yönetmeyi kolaylaştırır.

Senaryo ayrıntıları

Kuruluşunuz veri biliminin ve makine öğrenmesinin gücünü fark ettikçe verimliliği artırabilir, müşteri deneyimlerini geliştirebilir ve değişiklikleri tahmin edebilirsiniz. İş açısından kritik kullanım örneklerinde bu hedeflere ulaşmak için tutarlı ve güvenilir bir desene ihtiyacınız vardır:

  • denemeleri izleme.
  • Sonuçlar yeniden üretildi.
  • Makine öğrenmesi modellerini üretim ortamına dağıtma.

Bu makalede tutarlı ve güvenilir bir makine öğrenmesi çerçevesi için bir çözüm özetlenmektedir. Azure Databricks, mimarinin temelini oluşturur. Delta Lake depolama katmanı ve makine öğrenmesi platformu MLflow da önemli roller oynar. Bu bileşenler Azure Data Lake Depolama, Azure Machine Learning ve Azure Kubernetes Service (AKS) gibi diğer hizmetlerle sorunsuz bir şekilde tümleştirilir.

Bu hizmetler birlikte veri bilimi ve makine öğrenmesi için şu çözümler sunar:

  • Basit: Açık bir veri gölü mimariyi basitleştirir. Veri gölü, delta lake adlı seçilmiş bir katman içerir. Bu katman, verilere açık kaynak biçiminde erişim sağlar.

  • Açık: Çözüm açık kaynak kodunu, açık standartları ve açık çerçeveleri destekler. Bu yaklaşım, gelecekteki güncelleştirmelere olan ihtiyacı en aza indirir. Azure Databricks ve Machine Learning, MLflow ve Delta Lake'i yerel olarak destekler. Bu bileşenler birlikte sektör lideri makine öğrenmesi işlemleri (MLOps) veya makine öğrenmesi için DevOps sağlar. Çok çeşitli dağıtım araçları, çözümün standartlaştırılmış model biçimiyle tümleştirilir.

  • İşbirliğine dayalı: Veri bilimi ve MLOps ekipleri bu çözümle birlikte çalışır. Bu ekipler, denemeleri kaydetmek ve sorgulamak için MLflow izlemeyi kullanır. Ekipler ayrıca modelleri merkezi MLflow model kayıt defterine dağıtır. Veri mühendisleri daha sonra veri alımı, ayıklama-dönüştürme-yükleme (ETL) işlemleri ve akış işlem hatlarında dağıtılan modelleri kullanır.

Olası kullanım örnekleri

AGL'nin enerji tahmini için oluşturduğu bir platform bu çözüme ilham verdi. Bu platform, binlerce paralel model için hızlı ve uygun maliyetli eğitim, dağıtım ve yaşam döngüsü yönetimi sağlar.

Enerji sağlayıcılarının yanı sıra, bu çözüm şu kuruluşlara da fayda sağlayabilir:

  • Veri bilimini kullanır.
  • Makine öğrenmesi modellerini derler ve eğiter.
  • Makine öğrenmesi modellerini üretimde çalıştırır.

Örnekler şunlardır:

  • Perakende ve e-ticaret.
  • Bankacılık ve finans.
  • Sağlık ve yaşam bilimleri.
  • Otomotiv sektörleri ve üretim.

Sonraki adımlar

  • AGL Energy , binlerce paralel model için standartlaştırılmış bir platform oluşturur. Platform, modeller için hızlı ve uygun maliyetli eğitim, dağıtım ve yaşam döngüsü yönetimi sağlar.
  • Open Grid Europe (OGE), gaz boru hatlarını izlemek için yapay zeka modellerini kullanır. OGE, modelleri geliştirmek için Azure Databricks ve MLflow kullanır.
  • scandinavian Airlines (SAS), işbirliğine dayalı bir araştırma aşamasında Azure Databricks'i kullanır. Havayolu şirketi tahmine dayalı modeller geliştirmek için Machine Learning'i de kullanır. Modeller, şirket verilerindeki desenleri tanımlayarak günlük işlemleri geliştirir.