


Apache Submarine (짧은 잠수함)은 데이터 과학자가 엔드 투 엔드 머신 러닝 워크 플로를 만들 수 있도록 엔드 투 엔드 머신 학습 플랫폼 입니다. 잠수함 에서 데이터 과학자들은 데이터 탐색, 데이터 파이프 라인 생성, 모델 교육, 서빙 및 모니터링을 포함하여 ML 모델 라이프 사이클의 각 단계를 마무리 할 수 있습니다.
일부 오픈 소스 및 상업 프로젝트는 엔드 투 엔드 ML 플랫폼을 구축하려고합니다. 잠수함의 비전은 무엇입니까?
Theodore Levitt는 한 번 말했습니다.
“People don’t want to buy a quarter-inch drill. They want a quarter-inch hole.”
experiment 실행/트랙합니다.experiment 버전 및 environment 의존성을 쉽게 관리 할 수 있습니다.위에서 언급 한 바와 같이, 잠수함은 데이터 과학자 친화적 인 UI를 제공하여 데이터 과학자가 좋은 사용자 경험을 갖도록 시도합니다. 여기 몇 가지 예가 있습니다.
# 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' )빠른 시작은 K8의 잠수함을 참조하십시오
(0.5.0에서 사용 가능, 로드맵 참조)
잠수함의 아키텍처, 구성 요소, 요구 사항 및 디자인 문서에 대해 더 알고 싶다면 건축 및 요구 사항에서 찾을 수 있습니다.
자세한 디자인 문서, 구현 노트는 다음과 같습니다. 구현 노트
Apache 잠수함 커뮤니티 가이드를 읽으십시오
기고 가이드를 기여하는 방법
서브 마린 슬랙 채널 로그인 : 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 Submarine의 ChangeLog 및 문제 추적기를 알 수 있습니다.
Apache Submarine : Euromlsys '22에서 단순한 통합 기계 학습 플랫폼
Apache 잠수함 프로젝트는 Apache 2.0 라이센스에 따라 라이센스가 부여됩니다. 자세한 내용은 라이센스 파일을 참조하십시오.