


Apache Supmarine (الغواصة لفترة قصيرة) هي منصة للتعلم الآلي من طرف إلى طرف للسماح لعلماء البيانات بإنشاء سير عمل للتعلم الآلي من شوط إلى النهاية. في الغواصة ، يمكن لعلماء البيانات إنهاء كل مرحلة في دورة حياة طراز ML ، بما في ذلك استكشاف البيانات ، وإنشاء خط أنابيب البيانات ، والتدريب على النماذج ، والخدمة ، والمراقبة.
تحاول بعض المشاريع المفتوحة والمصدر التجاري بناء منصة ML شاملة. ما هي رؤية الغواصة؟
قال ثيودور ليفيت ذات مرة:
“People don’t want to buy a quarter-inch drill. They want a quarter-inch hole.”
experiment التدريب الموزعة على Prem أو Cloud عبر UI/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 Supmarine
كيفية المساهمة دليل المساهمة
قناة Supmarine Supmarine: https://join.slack.com/t/asf-submarine/shared_invite
تتبع القضية: https://issues.apache.org/jira/projects/submarine
انظر الصفحة الرئيسية دليل المستخدم
انظر الصفحة الرئيسية دليل المطورين
ماذا تعرف المزيد عن ما سيحدث للغواصة؟ يرجى التحقق من خارطة الطريق: https://cwiki.apache.org/confluence/display/submarine/roadmap
من هنا ، يمكنك معرفة changelog ومقبض المشكلات لإصدار مختلف من غواصة Apache.
Apache Supmarine: منصة تعلم آلي موحدة جعلت بسيطة في Euromlsys '22
تم ترخيص مشروع Apache Supmarine بموجب ترخيص Apache 2.0. انظر ملف الترخيص للحصول على التفاصيل.