


Apache Submarine (Submarine Singkat) adalah platform pembelajaran mesin ujung ke ujung untuk memungkinkan para ilmuwan data membuat alur kerja pembelajaran mesin ujung ke ujung. Pada kapal selam , para ilmuwan data dapat menyelesaikan setiap tahap dalam siklus hidup model ML, termasuk eksplorasi data, pembuatan pipa data, pelatihan model, melayani, dan pemantauan.
Beberapa proyek open-source dan komersial berusaha membangun platform ML ujung ke ujung. Apa visi kapal selam?
Theodore Levitt pernah berkata:
“People don’t want to buy a quarter-inch drill. They want a quarter-inch hole.”
experiment pelatihan terdistribusi pada Prem atau cloud melalui UI/API/SDK yang mudah digunakan.experiment dan ketergantungan environment .Seperti yang disebutkan di atas, UI kapal selam untuk memberikan UI ramah-pengenalan data untuk membuat para ilmuwan data memiliki pengalaman pengguna yang baik. Di sini beberapa contoh.
# 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' )Untuk awal yang cepat, lihat kapal selam di K8S
(Tersedia di 0.5.0, lihat peta jalan)
Jika Anda ingin tahu lebih banyak tentang arsitektur, komponen, persyaratan, dan dokumen desain kapal selam, mereka dapat ditemukan di arsitektur dan permintaan
Dokumentasi Desain Detail, Catatan Implementasi dapat ditemukan di: Catatan Implementasi
Baca Panduan Komunitas Kapal Selam Apache
Cara berkontribusi panduan berkontribusi
Saluran Slack Login Submarine: https://join.slack.com/t/asf-submarine/shared_invite
Pelacakan masalah: https://issues.apache.org/jira/projects/submarine
Lihat Halaman Beranda Panduan Pengguna
Lihat Halaman Beranda Panduan Pengembang
Apa yang harus diketahui lebih banyak tentang apa yang akan terjadi untuk kapal selam? Silakan periksa peta jalannya: https://cwiki.apache.org/confluence/display/submarine/roadmap
Dari sini, Anda dapat mengetahui changelog dan pelacak masalah dari berbagai versi kapal selam Apache.
Apache Submarine: Platform Pembelajaran Mesin Terpadu Dibuat Sederhana di Euromlsys '22
Proyek kapal selam Apache dilisensikan di bawah lisensi Apache 2.0. Lihat file lisensi untuk detailnya.