9 Mart 2020 Pazartesi

Data Science Çalışmaları için Microsoft Çözümleri

Data Science (Veri Bilimi) çalışmaları yapan kişiye Data Scientist (Veri Bilimcisi) dendiği malumunuz. Veri Bilimcilerinin temel odağı bazı tiplere ayrılmış tahminleme problemlerinin çözümleri için matematiksel bir model oluşturmaktır. Veri Bilimcileri modelleri eğitmek ve başarısını test etmek için veriyi detaylıca incelemeleri gerekir.

Veri Bilimi çalışmalarının başarıyla sürdürülebilmesi için farklı farklı araçlar, platformlar ve diller tercih edilebilir. Bu araçların neredeyse tamamı açık kaynaktır. Microsoft da uzun zamandır açık kaynak dünyasının gelişimine, kendi çözümleriyle katkı sunarak destek vermektedir. 

Microsoft, Veri Bilimi alanında çeşitli araçları, platformları ve kütüphaneleri hem yerel hem de bulut çözümleri olarak kullanıma sunmaktadır.

Bu çözümlerin neler olduğuna bir göz atalım:

Şirket içi Çözümler:
  • SQL Server Machine Learning Services: SQL Server kurulumu sırasında seçebildiğiniz bir özellik. SQL Server 2016'dan beri geliştirilmekte. Daha önceleri sadece R dili ile çalışılabiliyordu ve kurulumda R in DB adıyla anılıyordu. SQL Server 2019 ile birlikte R, Python ve Java dilleri ile çalışılabiliyor. Kurulum sırasında Machine Learning Service isimli bu özelliği seçip yükleyebilirsiniz. Bu özellik sayesinde SQL Server içerisinde bir procedure yardımıyla R, Pyhon, Java dillerini kullanarak veri bilimi çalışmaları yapmak mümkün. Machine Learning Service tek başını kurulamıyor. Mutlaka Database Engine ile birlikte kurmanız gerekli. Bu konudaki serimizin son yazısına şu linkten bir göz atabilirsiniz: http://www.abdullahkise.com/2020/02/sql-server-2019-uzerinde-makine_22.html
  • SQL Server Machine Learning Server: Daha güçlü çalışmalar yapmak için Database Enginedan bağımsız olarak Machine Learning Server kurabilirsiniz. Bu şekilde kurmanın bir çok avantajı var. Hem performans açısından daha güçlü bir yapı hem de ölçeklendirebilmek ve webservice yapabilmek gibi ek avantajları mevcut.

Bulut tabanlı çözümler:
  • Azure Machine Learning Studio (Classic): Sürükle bırak ile hiç kod yazmadan Machine Learning yapma imkanı veren bir Azure hizmeti. Kullanımı oldukça kolay. Notebooklar oluşturmak, arayüzler ile çalışarak verinin hazırlanması, modelin eğitilmesi, test edilmesi ve eğitilmiş bir modelin web service haline getirilerek yayınlanması oldukça kolay. Bu servisin sunduğu hazır araçlar size yeterli gelmezse R ve Python dillerinde kod yazabileceğiniz modüllerden faydalanabilirsiniz. Bu hizmet daha çok makine öğrenimi konusuna hızlıca giriş yapmak, öğrenmek ve küçük-orta ölçekli projeler geliştirmek için ideal. Azure aboneliğine gerek olmadan https://studio.azureml.net/ adresinden giriş yaparak ücretsiz hesap açabilirsiniz. Bu hizmet ile çalışırken çalışma alanınızın bulunduğu bölgedeki işlem gücünü ortak kullanmaktasınız.

  • Azure Machine Learning: Bu hizmeti aktif etmek için Azure aboneliğiniz olması gerekir. Herhangi bir araç ile Python kodlarını kullanarak bu hizmetten faydalanabilirsiniz. Hem Azure ML kütüphanelerini hem de Tensorflow, Scikit-learn, Pytorch, Keras vs. gibi açık kaynak kütüphaneleri kullanabilirsiniz. Hizmetin Basic ve Enterprise seçenekleri mevcut. Enterprise seçeneğinde Azure ML Studioya benzer şekilde çalışabileceğiniz Designer ile AutoML ve veri etiketleme gibi ek özellikler geliyor. Notebooklar oluşturabilir, hem arayüz hem kodlar ile model eğitebilir, bu modelleri kaydedip versiyonlayabilir, eğitilmiş modellerinizi web service haline getirip yayınlayabilirsiniz. AutoML ve HyperDrive özellikleri sayesinde ML çalışmalarındaki değiştir-dene-gör adımlarını sizin için Azure'un atmasını sağlayabilirsiniz. Ayrıca ekiplerinizin birlikte çalışabileceği bir veri etiketleme projesi başlatabilirsiniz. Tüm işlemleriniz için gereken işlem gücünüzü kendiniz oluşturup yönetebilirsiniz. Web servicelerinizi, imageleri oluşturup Azure Kubernetes Services, Azure Container Instance gibi hizmetler üzerinden yayınlayabilirsiniz.

  • Azure Databricks: Spark tabanlı analitik platform olan Databricks, Azure üzerinden kolayca aktif edilip kullanılabilir. Spark SQL, Spark ML, GraphX, Spark Streaming bileşenleri ile bulutta kendi yönettiğiniz işlem gücü ve kullanışlı arayüzler sayesinde Big Data problemlerine çözümler bulabilirsiniz. Arayüzler, Azure hizmetleri ile entegre olması ve dahili notebook, işleri oldukça kolaylaştırıyor. Bu sayede clusterların yönetimine değil de kendi problemlerinize odaklanabiliyorsunuz. Notebooklar üzerinde R, Pyhon, Scala, SQL ve shell komutları ile verilerinizi hazırlayabilir ML modelleri eğitip test edebilirsiniz.
  • Azure Data Science Virtual Machine (DSVMs): Azure üzerinde önceden hazırlanmış sanal makineleri ifade etmektedir. Bu VM'lerin Windows ve Linux versiyonları mevcut. Bir çok popüler ML aracı yüklenmiş bu makineleri, ortam hazırlamayla vakit kaybetmeden kolayca aktif edip kullanabilirsiniz. VM'ler içerisinde çok çeşitli araçların en güncel versiyonu hazır geliyor. Dilerseniz GPU desteği olan VM'leri de aktif edebiliyorsunuz.
  • Azure Cognitive Services: Uygulamalarınızın insan gibi duymasını, görmesini, yorumlamasını ve mesela bir chatbot olarak kullanıcılar ile iletişim kurmasını istiyorsanız bu başlık altındaki hizmetler tam size göre. Vision, Speech, Decision, Search, Language başlıklarında çözüm sunan bir çok servisi kolayca aktif edip kullanabilirsiniz. Servislerin çoğunu eğitim aşamasına gerek olmadan direk kullanabiliyorsunuz. Bazılarını ise kendi verilerinizle eğitebiliyorsunuz. Bu servislere HTTP REST çağrıları ile erişip uygulamalarınızı akıllandırabilirsiniz.

Diğer Çözümler:
  • ML.NET: .NET uygulamaları içerisinde Machine Learning yapma imkanı veren açık kaynak frameworktür.
  • Windows ML: Windows 10 cihazlarda Machine Learning yapma imkanı veren bir enginedır.
  • MMLSpark: Spark ekosistemine derin öğrenme ve veri bilimi araçları konusunda yeni yetenekler kazandıran açık kaynak kütüphanedir.
  • Azure HDInsight: Hadoop platformunun Azure üzerindeki halidir. Bu hizmet ile Hadoop ve Spark yeteneklerini birlikte kullanabilirsiniz.

Hiç yorum yok:

Yorum Gönder