


Подводная лодка Apache (подводная лодка для короткометражных) является сквозной платформой машинного обучения, позволяющей ученым-ученым создавать сквозные рабочие процессы машинного обучения. На подводной лодке ученые данных могут завершить каждый этап в жизненном цикле ML модели, включая исследование данных, создание конвейера данных, обучение модели, обслуживание и мониторинг.
Некоторые открытые и коммерческие проекты пытаются создать сквозную платформу ML. Что такое видение подводной лодки?
Теодор Левитт однажды сказал:
“People don’t want to buy a quarter-inch drill. They want a quarter-inch hole.”
experiment на PREM или Cloud через простой в использовании пользовательский интерфейс/API/SDK.experiment и зависимостей environment .Как упомянуто выше, подводные лодки пытаются предоставить пользовательский интерфейс, чтобы ученые, которые ученые имели хороший пользовательский опыт. Вот несколько примеров.
# New a submarine client of the submarine server
submarine_client = submarine . ExperimentClient ( host = 'http://localhost:8080' )
# The experiment's environment, could be Docker image or Conda environment based
environment = EnvironmentSpec ( image = 'apache/submarine:tf-dist-mnist-test-1.0' )
# Specify the experiment's name, framework it's using, namespace it will run in,
# the entry point. It can also accept environment variables. etc.
# For PyTorch job, the framework should be 'Pytorch'.
experiment_meta = ExperimentMeta ( name = 'mnist-dist' ,
namespace = 'default' ,
framework = 'Tensorflow' ,
cmd = 'python /var/tf_dist_mnist/dist_mnist.py --train_steps=100' )
# 1 PS task of 2 cpu, 1GB
ps_spec = ExperimentTaskSpec ( resources = 'cpu=2,memory=1024M' ,
replicas = 1 )
# 1 Worker task
worker_spec = ExperimentTaskSpec ( resources = 'cpu=2,memory=1024M' ,
replicas = 1 )
# Wrap up the meta, environment and task specs into an experiment.
# For PyTorch job, the specs would be "Master" and "Worker".
experiment_spec = ExperimentSpec ( meta = experiment_meta ,
environment = environment ,
spec = { 'Ps' : ps_spec , 'Worker' : worker_spec })
# Submit the experiment to submarine server
experiment = submarine_client . create_experiment ( experiment_spec = experiment_spec )
# Get the experiment ID
id = experiment [ 'experimentId' ] submarine_client . get_experiment ( id ) submarine_client . wait_for_finish ( id ) submarine_client . get_log ( id ) submarine_client . list_experiments ( status = 'running' )Для быстрого начала см. Подводную лодку на K8s
(Доступно на 0,5,0, см. Дорожная карта)
Если вы хотите узнать больше об архитектуре, компонентах, требованиях и дизайне, их можно найти на архитектуре и реквизите
Подробную проектную документацию, заметки о реализации можно найти по адресу: Примечания к реализации
Прочитайте руководство по сообществу подводных лодок Apache
Как внести свой вклад в эксплуатацию
Вход в подводную лодку Slack Channel: https://join.slack.com/t/asf-submarine/shared_invite
Отслеживание выпуска: https://issues.apache.org/jira/projects/submarine
См. Руководство пользователя домашняя страница
См. Руководство по разработчику домашней страницы
Что узнать больше о том, что будет для подводной лодки? Пожалуйста, проверьте дорожную карту: https://cwiki.apache.org/confluence/display/submarine/roadmap
Отсюда вы можете узнать изменение и трекер проблемы различной версии подводной лодки Apache.
Подводная лодка Apache: платформа Unified Machine Learning, сделанная простой в Euromlsys '22
Проект подводной лодки Apache лицензирован по лицензии Apache 2.0. Смотрите файл лицензии для получения подробной информации.