Share via


SynapseML nedir?

SynapseML (eski adıyla MMLSpark), yüksek düzeyde ölçeklenebilir makine öğrenmesi (ML) işlem hatlarının oluşturulmasını basitleştiren bir açık kaynak kitaplıktır. SynapseML metin analizi, görüntü işleme, anomali algılama gibi çok çeşitli makine öğrenmesi görevleri için basit, birleştirilebilir ve dağıtılmış API'ler sağlar. SynapseML, Apache Spark dağıtılmış bilgi işlem çerçevesi üzerine kurulmuştur ve SparkML/MLLib kitaplığıyla aynı API'yi paylaşarak SynapseML modellerini mevcut Apache Spark iş akışlarına sorunsuz bir şekilde eklemenizi sağlar.

SynapseML ile anomali algılama, görüntü işleme, derin öğrenme, metin analizi gibi etki alanlarındaki zorlukları çözmek için ölçeklenebilir ve akıllı sistemler oluşturabilirsiniz. SynapseML tek düğümlü, çok düğümlü ve esnek olarak yeniden boyutlandırılabilir bilgisayar kümelerinde modelleri eğitebilir ve değerlendirebilir. Bu, kaynakları boşa harcamadan çalışmanızı ölçeklendirmenize olanak tanır. SynapseML Python, R, Scala, Java ve .NET genelinde kullanılabilir. Ayrıca API'si, verilerin nerede bulunduğuna bakılmaksızın denemeleri basitleştirmek için çok çeşitli veritabanlarını, dosya sistemlerini ve bulut veri depolarını özetler.

SynapseML için Scala 2.12, Spark 3.0+ ve Python 3.6+ gerekir.

SynapseML'nin temel özellikleri

Model oluşturma, eğitma ve puanlama için birleşik BIR API

SynapseML, hataya dayanıklı dağıtılmış programlar geliştirmeyi kolaylaştıran birleşik bir API sunar. SynapseML özellikle ölçeklenebilir, veri ve dilden bağımsız olan ve toplu iş, akış ve uygulamalar için çalışan tek bir API altında birçok farklı makine öğrenmesi çerçevesini kullanıma sunar.

Birleşik API birçok aracı, çerçeveyi, algoritmayı standartlaştırır ve dağıtılmış makine öğrenmesi deneyimini kolaylaştırır. Geliştiricilerin farklı makine öğrenmesi çerçevelerini hızla oluşturmasını, kodu temiz tutarak birden fazla çerçeve gerektiren iş akışlarını etkinleştirmesini sağlar. Örneğin, web denetimli öğrenme veya arama altyapısı oluşturma gibi iş akışları birden çok hizmet ve çerçeve gerektirir. SynapseML, kullanıcıları bu fazladan karmaşıklıktan korur.

Önceden oluşturulmuş akıllı modelleri kullanma

SynapseML'deki birçok araç için büyük etiketli eğitim veri kümesi gerekmez. Bunun yerine SynapseML, hem iş hem de araştırmayla ilgili büyük ölçekli yapay zeka zorluklarını hızla çözmek için Azure AI hizmetleri gibi önceden oluşturulmuş akıllı hizmetlere yönelik basit API'ler sağlar. SynapseML, geliştiricilerin sistemlerine ve veritabanlarına doğrudan 50'den fazla farklı en yeni ML hizmetini eklemesini sağlar. Bu kullanıma hazır algoritmalar çok çeşitli belgeleri ayrıştırabilir, çok konuşmacılı konuşmaların dökümünü gerçek zamanlı olarak alabilir ve metni 100'den fazla farklı dile çevirebilir. Görevleri hızla çözmek için önceden oluşturulmuş yapay zekanın nasıl kullanılacağına ilişkin daha fazla örnek için SynapseML "bilişsel" örneklerine bakın.

SynapseML'nin Azure AI hizmetleriyle tümleştirmesini hızlı ve verimli hale getirmek için SynapseML, hizmet odaklı iş akışları için birçok iyileştirme sunar. Özellikle SynapseML, işlerin arka uç hizmetlerini aşırı kullanmadığından emin olmak için yaygın azaltma yanıtlarını otomatik olarak ayrıştırır. Ayrıca, güvenilir olmayan ağ bağlantılarını ve başarısız yanıtları işlemek için üstel geri almaları kullanır. Son olarak, Spark'ın çalışan makineleri Spark için yeni zaman uyumsuz paralellik temelleriyle meşgul kalır. Zaman uyumsuz paralellik, çalışan makinelerinin sunucudan yanıt beklerken istek göndermesine olanak tanır ve aktarım hızındaki on kat artışa neden olabilir.

ONNX ile geniş ekosistem uyumluluğu

SynapseML, geliştiricilerin Açık Nöral Ağ Değişimi (ONNX) çerçevesi aracılığıyla birçok farklı ML ekosisteminden model kullanmasını sağlar. Bu tümleştirmeyle, yalnızca birkaç kod satırıyla geniş ölçekte çok çeşitli klasik ve derin öğrenme modelleri yürütebilirsiniz. SynapseML, ONNX modellerini çalışan düğümlerine dağıtmayı, yüksek aktarım hızı için giriş verilerini toplu işleyip arabelleğe almayı ve donanım hızlandırıcılarında çalışmayı zamanlamayı otomatik olarak işler.

ONNX'i Spark'a getirmek geliştiricilerin derin öğrenme modellerini ölçeklendirmesine yardımcı olmakla kalmaz, aynı zamanda çok çeşitli ML ekosistemleri arasında dağıtılmış çıkarım sağlar. Özellikle ONNXMLTools, SynapseML kullanarak hızlandırılmış ve dağıtılmış çıkarım için TensorFlow, scikit-learn, Core ML, LightGBM, XGBoost, H2O ve PyTorch modellerini ONNX'e dönüştürür.

Sorumlu yapay zeka sistemleri oluşturma

Bir model derledikten sonra, araştırmacıların ve mühendislerin dağıtımdan önce sınırlamalarını ve davranışını anlaması şarttır. SynapseML, modellerin neden belirli tahminlerde bulunduğunu ve yanlılıkları ortadan kaldırmak için eğitim veri kümesinin nasıl geliştirildiğini ortaya koyan yeni araçlar sunarak geliştiricilerin ve araştırmacıların sorumlu yapay zeka sistemleri oluşturmasına yardımcı olur. SynapseML, geliştiricilerin yüzlerce makine arasında hesaplama dağıtmasını sağlayarak kullanıcının eğitilmiş modelini anlama sürecini önemli ölçüde hızlandırır. Daha açık belirtmek gerekirse SynapseML; görme, metin ve tablosal model tahminlerini açıklamak için Shapley Eklenebilir Açıklamaları (SHAP) ve Yerel Olarak Yorumlanabilir Model-Agnostic Açıklamaları (LIME) uygulamalarını içerir. Ayrıca, bağımsız koşullu beklenti (ICE) ve tanınan taraflı veri kümelerine kısmi bağımlılık analizi gibi araçlar da içerir.

Azure Synapse Analytics'te kurumsal destek

SynapseML, kurumsal destekle Azure Synapse Analytics'te genel olarak kullanılabilir. Azure AI hizmetleri, LightGBM, ONNX ve seçili diğer SynapseML özelliklerini kullanarak büyük ölçekli makine öğrenmesi işlem hatları oluşturabilirsiniz. Görsel arama motorları, tahmine dayalı bakım işlem hatları, belge çevirisi ve daha fazlası gibi dağıtılmış makine öğrenmesi sistemlerinin prototiplerini hızlı bir şekilde almak için şablonlar bile içerir.

Sonraki adımlar