Pangkalan Data Teratas yang Menyokong Pembelajaran Mesin dalam Pangkalan Data

Kemas kini: 20 Mei 2021
Pangkalan Data Teratas yang Menyokong Pembelajaran Mesin dalam Pangkalan Data

Dalam artikel saya pada bulan Ogos 2020, "Cara memilih platform Pembelajaran Mesin awan", panduan pertama saya untuk memilih platform adalah, "Berhampiran dengan data Anda." Menjaga kod berhampiran data adalah perlu untuk memastikan latensi rendah, kerana kelajuan cahaya menghadkan kelajuan penghantaran. Bagaimanapun, pembelajaran mesin - terutamanya pembelajaran mendalam - cenderung melalui semua data anda berkali-kali (setiap kali disebut disebut sebagai zaman).

Saya mengatakan pada masa itu bahawa kes yang sesuai untuk kumpulan data yang sangat besar adalah membina model di mana data sudah ada, sehingga tidak diperlukan penghantaran data massa. Beberapa pangkalan data menyokongnya sehingga tahap terhad. Soalan seterusnya yang wajar adalah, pangkalan data mana yang menyokong pembelajaran mesin dalaman, dan bagaimana mereka melakukannya? Saya akan membincangkan pangkalan data tersebut mengikut urutan abjad.

Pergeseran Merah Amazon

Amazon Redshift adalah perkhidmatan gudang data berskala petabyte yang dirancang untuk menjadikannya mudah dan menjimatkan kos untuk menganalisis semua data anda menggunakan alat kecerdasan perniagaan anda yang ada. Ia dioptimumkan untuk set data mulai dari beberapa ratus gigabyte hingga petabyte atau lebih dan harganya kurang dari $ 1,000 per terabyte per tahun.

Amazon Redshift ML dirancang untuk memudahkan pengguna SQL membuat, melatih, dan menggunakan model pembelajaran mesin menggunakan perintah SQL. Perintah CREATE MODEL dalam Redshift SQL mendefinisikan data yang akan digunakan untuk latihan dan lajur sasaran, kemudian menyampaikan data ke Amazon SageMaker Autopilot untuk latihan melalui baldi Amazon S3 yang dienkripsi di zon yang sama.

Selepas latihan AutoML, Redshift ML menyusun model terbaik dan mendaftarkannya sebagai fungsi SQL ramalan dalam kluster Redshift anda. Anda kemudian boleh memanggil model untuk membuat kesimpulan dengan memanggil fungsi ramalan di dalam pernyataan SELECT.

Ringkasan: Redshift ML menggunakan SageMaker Autopilot untuk membuat model ramalan secara automatik dari data yang anda tentukan melalui pernyataan SQL, yang diekstrak ke keranjang S3. Fungsi ramalan terbaik yang dijumpai didaftarkan di kluster Redshift.

BlazingSQL

BlazingSQL adalah enjin SQL yang dipercepat GPU yang dibina di atas ekosistem RAPIDS; ia wujud sebagai projek sumber terbuka dan perkhidmatan berbayar. RAPIDS adalah rangkaian perpustakaan perisian sumber terbuka dan API, diinkubasi oleh Nvidia, yang menggunakan CUDA dan didasarkan pada format memori kolumnar Apache Arrow. CuDF, sebahagian dari RAPIDS, adalah pustaka GPU DataFrame seperti Pandas untuk memuat, bergabung, mengumpulkan, menyaring, dan memanipulasi data.

Dask adalah alat sumber terbuka yang dapat menskalakan pakej Python ke beberapa mesin. Dask dapat mengedarkan data dan pengiraan melalui beberapa GPU, sama ada dalam sistem yang sama atau dalam kluster berbilang nod. Dask berintegrasi dengan RAPIDS cuDF, XGBoost, dan RAPIDS cuML untuk analisis data yang dipercepat GPU dan pembelajaran mesin.

Ringkasan: BlazingSQL dapat menjalankan pertanyaan dipercepat GPU di tasik data di Amazon S3, menyampaikan DataFrames yang dihasilkan ke cuDF untuk manipulasi data, dan akhirnya melakukan pembelajaran mesin dengan RAPIDS XGBoost dan cuML, dan pembelajaran mendalam dengan PyTorch dan TensorFlow.

Google Cloud BigQuery

BigQuery adalah gudang data berskala petabyte Google Cloud yang membolehkan anda menjalankan analitik dengan jumlah data yang banyak dalam waktu dekat. BigQuery ML membolehkan anda membuat dan melaksanakan model pembelajaran mesin di BigQuery menggunakan pertanyaan SQL.

BigQuery ML menyokong regresi linear untuk ramalan; regresi logistik binari dan pelbagai kelas untuk klasifikasi; K-bermaksud pengelompokan untuk segmentasi data; pemfaktoran matriks untuk mewujudkan sistem cadangan produk; siri masa untuk melaksanakan ramalan siri masa, termasuk anomali, musiman, dan cuti; Model klasifikasi dan regresi XGBoost; Rangkaian neural mendalam berasaskan TensorFlow untuk model klasifikasi dan regresi; Jadual AutoML; dan model TensorFlow mengimport. Anda boleh menggunakan model dengan data dari beberapa kumpulan data BigQuery untuk latihan dan ramalan. BigQuery ML tidak mengekstrak data dari gudang data. Anda boleh melakukan kejuruteraan ciri dengan BigQuery ML dengan menggunakan klausa TRANSFORM dalam pernyataan CREATE MODEL anda.

Ringkasan: BigQuery ML membawa banyak kekuatan Pembelajaran Mesin Awan Google ke gudang data BigQuery dengan sintaks SQL, tanpa mengekstrak data dari gudang data.

Gudang IBM Db2

IBM Db2 Warehouse on Cloud ialah perkhidmatan awan awam terurus. Anda juga boleh menyediakan IBM Db2 Warehouse di premis dengan perkakasan anda sendiri atau dalam awan peribadi. Sebagai gudang data, ia termasuk ciri seperti pemprosesan data dalam memori dan jadual kolumnar untuk pemprosesan analisis dalam talian. Ni Netezza teknologi menyediakan satu set analitis yang teguh yang direka bentuk untuk membawa pertanyaan kepada data dengan cekap. Pelbagai perpustakaan dan fungsi membantu anda mendapatkan cerapan tepat yang anda perlukan.

Gudang Db2 menyokong pembelajaran mesin dalam pangkalan data dalam Python, R dan SQL. IDAX modul mengandungi prosedur tersimpan analitikal, termasuk analisis varians, peraturan perkaitan, transformasi data, pokok keputusan, langkah diagnostik, pendiskretan dan momen, pengelompokan K-means, k-jiran terdekat, regresi linear, pengurusan metadata, klasifikasi Bayes naif, analisis komponen utama, taburan kebarangkalian, persampelan rawak, pepohon regresi, corak dan peraturan berjujukan, dan kedua-dua statistik berparametrik dan bukan parametrik.

Ringkasan: IBM Db2 Warehouse merangkumi sekumpulan analisis SQL dalam pangkalan data yang merangkumi beberapa fungsi pembelajaran mesin asas, serta sokongan dalam pangkalan data untuk R dan Python.

Pangkalan Data Oracle

Kinetica Streaming Data Warehouse menggabungkan analisis data sejarah dan penstriman dengan kepintaran lokasi dan AI dalam satu platform, semuanya dapat diakses melalui API dan SQL. Kinetica adalah pangkalan data yang dipercepat GPU yang sangat pantas, diedarkan, kolumnar, memori pertama, dengan fungsi penapisan, visualisasi, dan pengagregatan.

Kinetica mengintegrasikan model dan algoritma pembelajaran mesin dengan data anda untuk analisis ramalan masa nyata dalam skala besar. Ini membolehkan anda menyelaraskan saluran data dan kitaran hidup analitik, model pembelajaran mesin, dan kejuruteraan data anda, dan mengira ciri dengan streaming. Kinetica menyediakan penyelesaian kitaran hidup penuh untuk pembelajaran mesin yang dipercepat oleh GPU: notebook Jupyter yang dikendalikan, latihan model melalui RAPIDS, dan penyebaran dan inferens model automatik dalam platform Kinetica.

Ringkasan: Kinetica menyediakan penyelesaian kitaran hidup pangkalan data penuh untuk pembelajaran mesin yang dipercepat oleh GPU, dan dapat mengira ciri dari streaming data.

Microsoft SQL Server

Perkhidmatan Pembelajaran Mesin Pelayan Microsoft SQL menyokong R, Python, Java, perintah PREDICT T-SQL, dan prosedur tersimpan rx_Predict dalam SQL Server RDBMS, dan SparkML dalam Kumpulan Data Big SQL Server. Dalam bahasa R dan Python, Microsoft menyertakan beberapa pakej dan perpustakaan untuk pembelajaran mesin. Anda boleh menyimpan model terlatih anda dalam pangkalan data atau secara luaran. Azure SQL Managed Instance menyokong Perkhidmatan Pembelajaran Mesin untuk Python dan R sebagai pratonton.

Microsoft R mempunyai sambungan yang memungkinkannya memproses data dari cakera dan juga memori. SQL Server menyediakan kerangka pelanjutan sehingga kod R, Python, dan Java dapat menggunakan data dan fungsi SQL Server. Kluster Data Besar Pelayan SQL menjalankan Pelayan SQL, Spark, dan HDFS di Kubernetes. Apabila SQL Server memanggil kod Python, ia dapat memanggil Azure Machine Learning, dan menyimpan model yang dihasilkan dalam pangkalan data untuk digunakan dalam ramalan.

Ringkasan: Versi SQL Server dapat melatih dan menyimpulkan model pembelajaran mesin dalam pelbagai bahasa pengaturcaraan.

Pangkalan Data Oracle

Oracle Cloud Infrastructure (OCI) Science Data adalah platform yang dikendalikan dan tanpa pelayan untuk pasukan sains data untuk membina, melatih, dan mengurus model pembelajaran mesin menggunakan Oracle Cloud Infrastructure termasuk Pangkalan Data Autonomi Oracle dan Gudang Data Autonomi Oracle. Ia merangkumi alat, perpustakaan, dan pakej berpusat pada Python yang dikembangkan oleh komuniti sumber terbuka dan Perpustakaan Sains Data Dipercepat (ADS) Oracle, yang menyokong kitaran hayat akhir-ke-akhir model ramalan:

  • Pemerolehan data, profil, penyediaan, dan visualisasi
  • Kejuruteraan ciri
  • Latihan model (termasuk Oracle AutoML)
  • Penilaian, penjelasan, dan tafsiran model (termasuk Oracle MLX)
  • Penerapan model ke Oracle Functions

OCI Data Science berintegrasi dengan timbunan Oracle Cloud Infrastruktur yang lain, termasuk Fungsi, Aliran Data, Gudang Data Autonomi, dan Penyimpanan Objek.

Model yang disokong pada masa ini merangkumi:

  • AutoML Oracle
  • Keras
  • Scikit-belajar
  • XGBoost
  • ADSTuner (penalaan hyperparameter)

ADS juga menyokong keterangan pembelajaran mesin (MLX).

Ringkasan: Oracle Cloud Infrastructure dapat menjadi tuan rumah sumber sains data yang disatukan dengan gudang data, penyimpanan objek, dan fungsinya, yang memungkinkan kitaran hidup pengembangan model penuh.

Vertica

Platform Analitis Vertica adalah gudang data penyimpanan kolumnar yang boleh diskalakan. Ia berjalan dalam dua mod: Enterprise, yang menyimpan data secara tempatan dalam sistem fail node yang membentuk pangkalan data, dan EON, yang menyimpan data secara komunal untuk semua node komputasi.

Vertica menggunakan pemprosesan selari secara besar-besaran untuk menangani petabyte data, dan melakukan pembelajaran mesin dalamannya dengan paralelisme data. Ia mempunyai lapan algoritma bawaan untuk penyediaan data, tiga algoritma regresi, empat algoritma klasifikasi, dua algoritma kluster, beberapa fungsi pengurusan model, dan kemampuan untuk mengimport model TensorFlow dan PMML yang dilatih di tempat lain. Setelah anda sesuai atau mengimport model, anda boleh menggunakannya untuk ramalan. Vertica juga membolehkan peluasan yang ditentukan pengguna yang diprogram dalam C ++, Java, Python, atau R. Anda menggunakan sintaks SQL untuk latihan dan kesimpulan.

Ringkasan: Vertica mempunyai satu set algoritma pembelajaran mesin yang baik dan boleh mengimport model TensorFlow dan PMML. Ia dapat membuat ramalan dari model yang diimport dan juga modelnya sendiri.

MindsDB

Sekiranya pangkalan data anda belum menyokong pembelajaran mesin dalaman, kemungkinan anda dapat menambahkan kemampuan tersebut menggunakan MindsDB, yang berintegrasi dengan setengah lusin pangkalan data dan lima alat BI. Pangkalan data yang disokong merangkumi MariaDB, MySQL, PostgreSQL, ClickHouse, Microsoft SQL Server, dan Snowflake, dengan integrasi MongoDB dalam kerja dan integrasi dengan pangkalan data streaming yang dijanjikan pada tahun 2021. Alat BI yang disokong kini merangkumi SAS, Qlik Sense, Microsoft Power BI, Looker , dan Domo.

MindsDB menampilkan AutoML, jadual AI, dan AI yang dapat dijelaskan (XAI). Anda boleh menjalankan latihan AutoML dari MindsDB Studio, dari pernyataan SQL INSERT, atau dari panggilan API Python. Latihan boleh menggunakan GPU, dan boleh membuat model siri masa secara pilihan.

Anda dapat menyimpan model sebagai jadual pangkalan data, dan memanggilnya dari pernyataan SQL SELECT terhadap model yang disimpan, dari MindsDB Studio atau dari panggilan API Python. Anda boleh menilai, menerangkan, dan menggambarkan kualiti model dari MindsDB Studio.

Anda juga boleh menghubungkan MindsDB Studio dan Python API ke sumber data tempatan dan jauh. MindsDB juga menyediakan kerangka pembelajaran mendalam yang dipermudahkan, Lightwood, yang berjalan di PyTorch.

Ringkasan: MindsDB membawa keupayaan pembelajaran mesin yang berguna ke sejumlah pangkalan data yang tidak mempunyai sokongan terpadu untuk pembelajaran mesin.