В моей статье в августе 2020 года «Как выбрать платформу облачного машинного обучения, »Моим первым советом при выборе платформы было:« Будьте ближе к своим данным ». Хранение кода рядом с данными необходимо для сохранения низкой задержки, поскольку скорость света ограничивает скорость передачи. В конце концов, машинное обучение, особенно глубокое обучение, имеет тенденцию многократно обрабатывать все ваши данные (каждый раз это называется эпоха).

В то время я сказал, что идеальным случаем для очень больших наборов данных является построение модели, в которой данные уже находятся, так что массовая передача данных не требуется. Некоторые базы данных поддерживают это в ограниченной степени. Возникает естественный вопрос: какие базы данных поддерживают внутреннее машинное обучение и как они это делают? Я буду обсуждать эти базы данных в алфавитном порядке.

Амазонка Redshift

Amazon Redshift – это управляемое хранилище данных размером в петабайты, предназначенное для упрощения и рентабельности анализа всех ваших данных с помощью существующих инструментов бизнес-аналитики. Он оптимизирован для наборов данных размером от нескольких сотен гигабайт до петабайта и более и стоит менее 1000 долларов за терабайт в год.

Amazon Redshift ML разработан, чтобы упростить пользователям SQL создание, обучение и развертывание моделей машинного обучения с помощью команд SQL. Команда CREATE MODEL в Redshift SQL определяет данные для обучения и целевой столбец, а затем передает данные в Amazon SageMaker Autopilot для обучения через зашифрованную корзину Amazon S3 в той же зоне.

После обучения AutoML Redshift ML компилирует лучшую модель и регистрирует ее как функцию прогнозирования SQL в вашем кластере Redshift. Затем вы можете вызвать модель для вывода, вызвав функцию прогнозирования внутри оператора SELECT.

Резюме: Redshift ML использует SageMaker Autopilot для автоматического создания моделей прогнозирования из данных, которые вы указываете с помощью оператора SQL, который извлекается в корзину S3. Наилучшая найденная функция прогнозирования регистрируется в кластере Redshift.

BlazingSQL

BlazingSQL это SQL-движок с ускорением на GPU, построенный на основе Экосистема RAPIDS; он существует как проект с открытым исходным кодом и как платная услуга. RAPIDS – это набор программных библиотек и API с открытым исходным кодом, созданный Nvidia и использующий CUDA и основан на столбцовом формате памяти Apache Arrow. CuDF, часть RAPIDS, представляет собой подобную Pandas библиотеку DataFrame графического процессора для загрузки, объединения, агрегирования, фильтрации и других манипуляций с данными.

Dask – это инструмент с открытым исходным кодом, который может масштабировать пакеты Python на несколько машин. Dask может распределять данные и вычисления по нескольким графическим процессорам в одной системе или в многоузловом кластере. Dask интегрируется с RAPIDS cuDF, XGBoost и RAPIDS cuML для анализа данных и машинного обучения с ускорением на GPU.

Резюме: BlazingSQL может запускать запросы с ускорением на GPU к озерам данных в Amazon S3, передавать полученные DataFrames в cuDF для обработки данных и, наконец, выполнять машинное обучение с помощью RAPIDS XGBoost и cuML, а также глубокое обучение с помощью PyTorch и TensorFlow.

Google Cloud BigQuery

BigQuery – это управляемое хранилище данных Google Cloud размером в петабайты, которое позволяет выполнять аналитику огромных объемов данных почти в реальном времени. BigQuery ML позволяет создавать и выполнять модели машинного обучения в BigQuery с помощью запросов SQL.

BigQuery ML поддерживает линейную регрессию для прогнозирования; бинарная и мультиклассовая логистическая регрессия для классификации; К-средство кластеризации для сегментации данных; матричная факторизация для создания систем товарных рекомендаций; временные ряды для выполнения прогнозов временных рядов, включая аномалии, сезонность и праздники; Модели классификации и регрессии XGBoost; Глубокие нейронные сети на основе TensorFlow для моделей классификации и регрессии; Таблицы AutoML; и импорт модели TensorFlow. Вы можете использовать модель с данными из нескольких наборов данных BigQuery для обучения и прогнозирования. BigQuery ML не извлекает данные из хранилища данных. Вы можете выполнять проектирование функций с помощью BigQuery ML, используя предложение TRANSFORM в своем операторе CREATE MODEL.

Резюме: BigQuery ML предоставляет большую часть возможностей Машинное обучение Google Cloud в хранилище данных BigQuery с синтаксисом SQL без извлечения данных из хранилища данных.

IBM Db2 Warehouse

IBM Db2 Warehouse в облаке – это управляемая общедоступная облачная служба. Вы также можете настроить IBM Db2 Warehouse локально с собственным оборудованием или в частном облаке. В качестве хранилища данных он включает такие функции, как обработка данных в памяти и столбчатые таблицы для онлайн-аналитической обработки. Его технология Netezza предоставляет надежный набор аналитических инструментов, предназначенных для эффективного выполнения запроса к данным. Ряд библиотек и функций помогут вам получить точное представление о том, что вам нужно.

Db2 Warehouse поддерживает машинное обучение в базе данных на Python, R и SQL. Модуль IDAX содержит аналитические хранимые процедуры, включая анализ дисперсии, правила ассоциации, преобразование данных, деревья решений, диагностические меры, дискретизацию и моменты, кластеризацию K-средних, k-ближайших соседей, линейную регрессию, управление метаданными, наивную байесовскую классификацию, принципал. компонентный анализ, распределения вероятностей, случайная выборка, деревья регрессии, последовательные шаблоны и правила, а также параметрическая и непараметрическая статистика.

Резюме: IBM Db2 Warehouse включает в себя широкий набор аналитики SQL в базе данных, который включает некоторые базовые функции машинного обучения, а также поддержку R и Python в базе данных.

Кинетика

Хранилище потоковых данных Kinetica объединяет анализ исторических и потоковых данных с анализом местоположения и искусственным интеллектом на единой платформе, доступной через API и SQL. Kinetica – это очень быстрый, распределенный, столбчатый, ориентированный на память, База данных с ускорением на GPU с функциями фильтрации, визуализации и агрегирования.

Kinetica интегрирует модели и алгоритмы машинного обучения с вашими данными для масштабной прогнозной аналитики в реальном времени. Он позволяет оптимизировать конвейеры данных и жизненный цикл аналитики, моделей машинного обучения и инженерии данных, а также вычислять функции с помощью потоковой передачи. Kinetica предоставляет решение полного жизненного цикла для машинного обучения, ускоренного с помощью графических процессоров: управляемые записные книжки Jupyter, обучение моделей с помощью RAPIDS, а также автоматическое развертывание моделей и логический вывод на платформе Kinetica.

Резюме: Kinetica предоставляет полное решение жизненного цикла в базе данных для машинного обучения, ускоренного с помощью графических процессоров, и может вычислять функции на основе потоковых данных.

Microsoft SQL Server

Службы машинного обучения Microsoft SQL Server поддерживает R, Python, Java, команду PREDICT T-SQL и хранимую процедуру rx_Predict в СУБД SQL Server и SparkML в Кластеры больших данных SQL Server. Для языков R и Python Microsoft включает несколько пакетов и библиотек для машинного обучения. Вы можете хранить свои обученные модели в базе данных или извне. Управляемый экземпляр SQL Azure поддерживает службы машинного обучения для Python и R в качестве предварительной версии.

Microsoft R имеет расширения, которые позволяют обрабатывать данные как с диска, так и в памяти. SQL Server предоставляет платформу расширений, чтобы код R, Python и Java мог использовать данные и функции SQL Server. Кластеры больших данных SQL Server запускают SQL Server, Spark и HDFS в Kubernetes. Когда SQL Server вызывает код Python, он, в свою очередь, может вызывать Машинное обучение Azureи сохраните полученную модель в базе данных для использования в прогнозах.

Резюме: Текущие версии SQL Server могут обучать и выводить модели машинного обучения на нескольких языках программирования.

База данных Oracle

Oracle Cloud Infrastructure (OCI) Наука о данных – это управляемая бессерверная платформа для групп специалистов по анализу данных, позволяющая создавать, обучать и управлять моделями машинного обучения с использованием Oracle Cloud Infrastructure, включая Oracle Autonomous Database и Oracle Autonomous Data Warehouse. Он включает в себя инструменты, библиотеки и пакеты, ориентированные на Python, разработанные сообществом разработчиков ПО с открытым исходным кодом, а также библиотеку Oracle Accelerated Data Science (ADS), которая поддерживает непрерывный жизненный цикл прогнозных моделей:

  • Сбор, профилирование, подготовка и визуализация данных
  • Функциональная инженерия
  • Обучение модели (включая Oracle AutoML)
  • Оценка, объяснение и интерпретация модели (включая Oracle MLX)
  • Развертывание модели в Oracle Functions

OCI Data Science интегрируется с остальной частью стека Oracle Cloud Infrastructure, включая функции, поток данных, автономное хранилище данных и хранилище объектов.

В настоящее время поддерживаются следующие модели:

ADS также поддерживает объяснимость машинного обучения (MLX).

Резюме: Oracle Cloud Infrastructure может размещать ресурсы науки о данных, интегрированные с его хранилищем данных, хранилищем объектов и функциями, что обеспечивает полный жизненный цикл разработки модели.

Vertica

Платформа Vertica Analytics представляет собой масштабируемое хранилище данных по столбцам. Он работает в двух режимах: Enterprise, в котором данные хранятся локально в файловой системе узлов, составляющих базу данных, и EON, в котором данные хранятся совместно для всех вычислительных узлов.

Vertica использует массовую параллельную обработку для обработки петабайт данных и выполняет внутреннее машинное обучение с параллелизмом данных. Он имеет восемь встроенных алгоритмов для подготовки данных, три алгоритма регрессии, четыре алгоритма классификации, два алгоритма кластеризации, несколько функций управления моделями и возможность импортировать модели TensorFlow и PMML, обученные где-то еще. После того, как вы подобрали или импортировали модель, вы можете использовать ее для прогнозирования. Vertica также позволяет создавать пользовательские расширения, запрограммированные на C ++, Java, Python или R. Синтаксис SQL используется как для обучения, так и для вывода.

Резюме: Vertica имеет отличный набор встроенных алгоритмов машинного обучения и может импортировать модели TensorFlow и PMML. Он может делать прогнозы как на основе импортированных, так и собственных моделей.

MindsDB

Если ваша база данных еще не поддерживает внутреннее машинное обучение, вероятно, вы можете добавить эту возможность, используя MindsDB, который интегрируется с полдюжиной баз данных и пятью инструментами бизнес-аналитики. Поддерживаемые базы данных включают MariaDB, MySQL, PostgreSQL, ClickHouse, Microsoft SQL Server и Snowflake с интеграцией MongoDB в работе и интеграцией с потоковыми базами данных, обещанными позже в 2021 году. Поддерживаемые инструменты бизнес-аналитики в настоящее время включают SAS, Qlik Sense, Microsoft Power BI, Looker , и Домо.

MindsDB включает AutoML, таблицы AI и объяснимый AI (XAI). Вы можете вызвать обучение AutoML из MindsDB Studio, из инструкции SQL INSERT или из вызова API Python. При обучении можно использовать графические процессоры, а также создать модель временных рядов.

Вы можете сохранить модель как таблицу базы данных и вызвать ее из оператора SQL SELECT для сохраненной модели, из MindsDB Studio или из вызова API Python. Вы можете оценить, объяснить и визуализировать качество модели в MindsDB Studio.

Вы также можете подключить MindsDB Studio и Python API к локальным и удаленным источникам данных. MindsDB дополнительно предоставляет упрощенную среду глубокого обучения Lightwood, работающую на PyTorch.

Резюме: MindsDB предоставляет полезные возможности машинного обучения для ряда баз данных, в которых отсутствует встроенная поддержка машинного обучения.

Растущее количество баз данных поддерживает машинное обучение внутри компании. Точный механизм варьируется, и некоторые из них более эффективны, чем другие. Однако, если у вас так много данных, что в противном случае вам, возможно, пришлось бы подбирать модели для выборочного подмножества, то любая из восьми баз данных, перечисленных выше – и другие с помощью MindsDB – могут помочь вам построить модели из полного набора данных без каких-либо затрат. серьезные накладные расходы на экспорт данных.

Авторские права © 2021 IDG Communications, Inc.


#баз #данных #поддерживающих #машинное #обучение #базе #данных

Source link