Veritabanı İçi Makine Öğrenimini Destekleyen En İyi Veritabanları

Güncelleme: 20 Mayıs 2021
Veritabanı İçi Makine Öğrenimini Destekleyen En İyi Veritabanları

Ağustos 2020 tarihli "Bulut Makine Öğrenimi platformu nasıl seçilir?" başlıklı makalemde platform seçerken ilk kılavuzum "Verilerinize yakın olun" idi. Işık hızı iletim hızlarını sınırladığından, gecikmeyi düşük tutmak için kodun veriye yakın tutulması gerekir. Sonuçta, makine öğrenimi - özellikle de derin öğrenme - tüm verilerinizi birden çok kez gözden geçirme eğilimindedir (her geçişe, çağ).

O zamanlar çok büyük veri kümeleri için ideal durumun, modeli verinin zaten bulunduğu yerde oluşturmak olduğunu, böylece toplu veri aktarımına gerek kalmayacağını söylemiştim. Çeşitli veritabanları bunu sınırlı ölçüde desteklemektedir. Bir sonraki doğal soru, hangi veritabanlarının dahili makine öğrenimini desteklediği ve bunu nasıl yaptıklarıdır. Bu veritabanlarını alfabetik sıraya göre tartışacağım.

Amazon Kırmızıya Kaydırma

Amazon Redshift, mevcut iş zekası araçlarınızı kullanarak tüm verilerinizi analiz etmeyi basit ve uygun maliyetli hale getirmek için tasarlanmış, yönetilen, petabayt ölçekli bir veri ambarı hizmetidir. Birkaç yüz gigabayttan bir petabayta veya daha fazlasına kadar değişen veri kümeleri için optimize edilmiştir ve maliyeti terabayt başına yıllık 1,000 dolardan azdır.

Amazon Redshift ML, SQL kullanıcılarının SQL komutlarını kullanarak makine öğrenimi modelleri oluşturmasını, eğitmesini ve dağıtmasını kolaylaştırmak için tasarlanmıştır. Redshift SQL'deki CREATE MODEL komutu, eğitim için kullanılacak verileri ve hedef sütunu tanımlar, ardından verileri aynı bölgedeki şifreli bir Amazon S3 klasörü aracılığıyla eğitim için Amazon SageMaker Autopilot'a aktarır.

AutoML eğitiminin ardından Redshift ML en iyi modeli derler ve bunu Redshift kümenizde bir tahmin SQL işlevi olarak kaydeder. Daha sonra SELECT ifadesinin içindeki tahmin işlevini çağırarak modeli çıkarım için çağırabilirsiniz.

Özet: Redshift ML, bir S3 klasörüne çıkarılan bir SQL ifadesi aracılığıyla belirttiğiniz verilerden otomatik olarak tahmin modelleri oluşturmak için SageMaker Autopilot'u kullanır. Bulunan en iyi tahmin fonksiyonu Redshift kümesinde kayıtlıdır.

yanan SQL

BlazingSQL, RAPIDS ekosisteminin üzerine inşa edilmiş, GPU ile hızlandırılmış bir SQL motorudur; açık kaynaklı bir proje ve ücretli bir hizmet olarak mevcuttur. RAPIDS, Nvidia tarafından geliştirilmiş, CUDA kullanan ve Apache Arrow sütunlu bellek formatını temel alan bir açık kaynaklı yazılım kitaplıkları ve API'ler paketidir. RAPIDS'in bir parçası olan CuDF, verileri yüklemek, birleştirmek, toplamak, filtrelemek ve başka şekilde işlemek için Pandas benzeri bir GPU DataFrame kitaplığıdır.

Dask, Python paketlerini birden fazla makineye ölçeklendirebilen açık kaynaklı bir araçtır. Dask, verileri ve hesaplamayı aynı sistemde veya çok düğümlü bir kümede birden fazla GPU üzerinden dağıtabilir. Dask, GPU ile hızlandırılmış veri analitiği ve makine öğrenimi için RAPIDS cuDF, XGBoost ve RAPIDS cuML ile entegre olur.

Özet: BlazingSQL, Amazon S3'teki veri göllerinde GPU hızlandırmalı sorgular çalıştırabilir, elde edilen DataFrames'i veri işleme için cuDF'ye aktarabilir ve son olarak RAPIDS XGBoost ve cuML ile makine öğrenimi ve PyTorch ve TensorFlow ile derin öğrenme gerçekleştirebilir.

Google Bulut BigQuery

BigQuery, Google Cloud'un yönetilen, petabayt ölçekli veri ambarıdır ve büyük miktarlarda veri üzerinde neredeyse gerçek zamanlı analizler yürütmenize olanak tanır. BigQuery ML, SQL sorgularını kullanarak BigQuery'de makine öğrenimi modelleri oluşturmanıza ve yürütmenize olanak tanır.

BigQuery ML, tahmin için doğrusal regresyonu destekler; sınıflandırma için ikili ve çok sınıflı lojistik regresyon; K-veri segmentasyonu için kümeleme anlamına gelir; ürün öneri sistemleri oluşturmak için matris çarpanlarına ayırma; anormallikler, mevsimsellik ve tatiller dahil olmak üzere zaman serisi tahminlerini gerçekleştirmek için zaman serileri; XGBoost sınıflandırması ve regresyon modelleri; Sınıflandırma ve regresyon modelleri için TensorFlow tabanlı derin sinir ağları; AutoML Tabloları; ve TensorFlow modelinin içe aktarılması. Eğitim ve tahmin amacıyla birden fazla BigQuery veri kümesindeki verileri içeren bir modeli kullanabilirsiniz. BigQuery ML, verileri veri ambarından çıkarmaz. CREATE MODEL ifadenizdeki TRANSFORM yan tümcesini kullanarak BigQuery ML ile özellik mühendisliği gerçekleştirebilirsiniz.

Özet: BigQuery ML, verileri veri ambarından çıkarmadan, Google Cloud Machine Learning'in gücünün büyük bir kısmını SQL söz dizimi ile BigQuery veri ambarına taşır.

IBM Db2 Deposu

IBM Db2 Warehouse on Cloud, yönetilen bir genel bulut hizmetidir. Ayrıca IBM Db2 Warehouse'u kendi donanımınızla şirket içinde veya özel bir bulutta da kurabilirsiniz. Bir veri ambarı olarak, çevrimiçi analitik işleme için bellek içi veri işleme ve sütunlu tablolar gibi özellikleri içerir. Onun Netezza'sı teknoloji Sorguyu verimli bir şekilde verilere taşımak için tasarlanmış güçlü bir analiz seti sağlar. Çeşitli kitaplıklar ve işlevler, ihtiyacınız olan kesin bilgilere ulaşmanıza yardımcı olur.

Db2 Warehouse, Python, R ve SQL'de veritabanı içi makine öğrenimini destekler. IDAX modül varyans analizi, birliktelik kuralları, veri dönüşümü, karar ağaçları, teşhis önlemleri, ayrıklaştırma ve momentler, K-ortalama kümeleme, k-en yakın komşular, doğrusal regresyon, meta veri yönetimi, saf Bayes sınıflandırması, temel bileşen analizi dahil olmak üzere analitik saklı prosedürleri içerir. olasılık dağılımları, rastgele örnekleme, regresyon ağaçları, sıralı modeller ve kurallar ve hem parametrik hem de parametrik olmayan istatistikler.

Özet: IBM Db2 Warehouse, bazı temel makine öğrenimi işlevlerinin yanı sıra R ve Python için veritabanı içi desteği içeren geniş bir veritabanı içi SQL analitiği kümesi içerir.

Oracle Veritabanı

Kinetica Streaming Data Warehouse, geçmiş ve akışlı veri analizini konum zekası ve yapay zeka ile tümüne API ve SQL aracılığıyla erişilebilen tek bir platformda birleştirir. Kinetica, filtreleme, görselleştirme ve toplama işlevlerine sahip, çok hızlı, dağıtılmış, sütunlu, bellek öncelikli, GPU ile hızlandırılmış bir veritabanıdır.

Kinetica, geniş ölçekte gerçek zamanlı tahmine dayalı analizler için makine öğrenimi modellerini ve algoritmalarını verilerinizle bütünleştirir. Veri işlem hatlarınızı ve analizlerinizin, makine öğrenimi modellerinizin ve veri mühendisliğinizin yaşam döngüsünü kolaylaştırmanıza ve akışla özellikleri hesaplamanıza olanak tanır. Kinetica, GPU'lar tarafından hızlandırılan makine öğrenimi için tam bir yaşam döngüsü çözümü sunar: yönetilen Jupyter dizüstü bilgisayarlar, RAPIDS aracılığıyla model eğitimi ve Kinetica platformunda otomatik model dağıtımı ve çıkarımı.

Özet: Kinetica, GPU'lar tarafından hızlandırılan makine öğrenimi için eksiksiz bir veritabanı içi yaşam döngüsü çözümü sağlar ve akış verilerinden özellikleri hesaplayabilir.

Microsoft SQL Server

Microsoft SQL Server Machine Learning Services, SQL Server RDBMS'de R, Python, Java, PREDICT T-SQL komutunu ve rx_Predict saklı prosedürünü ve SQL Server Büyük Veri Kümelerinde SparkML'yi destekler. R ve Python dillerinde Microsoft, makine öğrenimi için çeşitli paketler ve kitaplıklar içerir. Eğitilen modellerinizi veritabanında veya harici olarak saklayabilirsiniz. Azure SQL Yönetilen Örneği, önizleme olarak Python ve R için Machine Learning Hizmetlerini destekler.

Microsoft R, hem diskteki hem de bellekteki verileri işlemesine izin veren uzantılara sahiptir. SQL Server, R, Python ve Java kodunun SQL Server verilerini ve işlevlerini kullanabilmesi için bir uzantı çerçevesi sağlar. SQL Server Büyük Veri Kümeleri, Kubernetes'te SQL Server, Spark ve HDFS'yi çalıştırır. SQL Server Python kodunu çağırdığında Azure Machine Learning'i çağırabilir ve ortaya çıkan modeli tahminlerde kullanılmak üzere veritabanına kaydedebilir.

Özet: SQL Server'ın mevcut sürümleri birden fazla programlama dilinde makine öğrenimi modellerini eğitebilir ve çıkarımını yapabilir.

Oracle Veritabanı

Oracle Bulut Altyapısı (OCI) Veri Bilimi, veri bilimi ekiplerinin Oracle Autonomous Database ve Oracle Autonomous Data Warehouse dahil olmak üzere Oracle Cloud Infrastructure'ı kullanarak makine öğrenimi modelleri oluşturmasına, eğitmesine ve yönetmesine yönelik yönetilen ve sunucusuz bir platformdur. Açık kaynak topluluğu tarafından geliştirilen Python merkezli araçları, kitaplıkları ve paketleri ve tahmine dayalı modellerin uçtan uca yaşam döngüsünü destekleyen Oracle Hızlandırılmış Veri Bilimi (ADS) Kitaplığını içerir:

  • Veri toplama, profil oluşturma, hazırlama ve görselleştirme
  • Özellik mühendisliği
  • Model eğitimi (Oracle AutoML dahil)
  • Model değerlendirmesi, açıklaması ve yorumlanması (Oracle MLX dahil)
  • Oracle Functions'a model dağıtımı

OCI Veri Bilimi, İşlevler, Veri Akışı, Otonom Veri Ambarı ve Nesne Depolama da dahil olmak üzere Oracle Bulut Altyapısı yığınının geri kalanıyla entegre olur.

Şu anda desteklenen modeller şunları içerir:

  • Oracle AutoML
  • keras
  • Scikit-öğrenme
  • XGBoost
  • ADSTuner (hiperparametre ayarı)

ADS ayrıca makine öğreniminin açıklanabilirliğini (MLX) de destekler.

Özet: Oracle Cloud Infrastructure, veri ambarı, nesne deposu ve işlevleriyle entegre veri bilimi kaynaklarını barındırarak tam bir model geliştirme yaşam döngüsüne olanak tanır.

Vertica

Vertica Analytics Platform, ölçeklenebilir bir sütunlu depolama veri ambarıdır. İki modda çalışır: Veritabanını oluşturan düğümlerin dosya sisteminde verileri yerel olarak depolayan Enterprise ve tüm bilgi işlem düğümleri için verileri ortak olarak depolayan EON.

Vertica, petabaytlarca veriyi işlemek için büyük ölçüde paralel işlemeyi kullanıyor ve dahili makine öğrenimini veri paralelliğiyle gerçekleştiriyor. Veri hazırlama için sekiz yerleşik algoritmaya, üç regresyon algoritmasına, dört sınıflandırma algoritmasına, iki kümeleme algoritmasına, çeşitli model yönetimi işlevlerine ve başka yerde eğitilmiş TensorFlow ve PMML modellerini içe aktarma yeteneğine sahiptir. Bir modeli yerleştirdikten veya içe aktardıktan sonra onu tahmin için kullanabilirsiniz. Vertica ayrıca C++, Java, Python veya R'de programlanan kullanıcı tanımlı uzantılara da izin verir. Hem eğitim hem de çıkarım için SQL sözdizimini kullanırsınız.

Özet: Vertica'nın yerleşik güzel bir makine öğrenme algoritmaları seti vardır ve TensorFlow ve PMML modellerini içe aktarabilir. Kendi modellerinin yanı sıra ithal modellerden de tahmin yapabilmektedir.

MindsDB

Veritabanınız halihazırda dahili makine öğrenimini desteklemiyorsa, yarım düzine veritabanı ve beş BI aracıyla entegre olan MindsDB'yi kullanarak bu yeteneği eklemeniz muhtemeldir. Desteklenen veritabanları arasında MariaDB, MySQL, PostgreSQL, ClickHouse, Microsoft SQL Server ve Snowflake yer alır; çalışmalarda MongoDB entegrasyonu ve 2021'in sonlarında vaat edilen akış veritabanlarıyla entegrasyonlar söz konusudur. Desteklenen BI araçları şu anda SAS, Qlik Sense, Microsoft Power BI, Looker'ı içermektedir. ve Domo.

MindsDB, AutoML, AI tabloları ve açıklanabilir AI (XAI) özelliklerine sahiptir. AutoML eğitimini MindsDB Studio'dan, bir SQL INSERT ifadesinden veya bir Python API çağrısından başlatabilirsiniz. Eğitimde isteğe bağlı olarak GPU'lar kullanılabilir ve isteğe bağlı olarak bir zaman serisi modeli oluşturulabilir.

Modeli bir veritabanı tablosu olarak kaydedebilir ve onu, kaydedilen modele karşı bir SQL SELECT ifadesinden, MindsDB Studio'dan veya bir Python API çağrısından çağırabilirsiniz. Model kalitesini MindsDB Studio'dan değerlendirebilir, açıklayabilir ve görselleştirebilirsiniz.

MindsDB Studio'yu ve Python API'sini yerel ve uzak veri kaynaklarına da bağlayabilirsiniz. MindsDB ayrıca PyTorch üzerinde çalışan basitleştirilmiş bir derin öğrenme çerçevesi olan Lightwood'u da sağlar.

Özet: MindsDB, makine öğrenimi için yerleşik destek bulunmayan bir dizi veri tabanına faydalı makine öğrenimi yetenekleri sağlar.