كل تجربة مقدسةكل تجربة رائعةإذا ضاعت التجربةالله يشعر بالغضب الشديد
Sacred هي أداة لمساعدتك على تكوين التجارب وتنظيمها وتسجيلها وإعادة إنتاجها. إنه مصمم للقيام بكل الأعمال العامة الشاقة التي تحتاج إلى القيام بها حول تجربتك الفعلية من أجل:
Sacred يحقق هذا من خلال الآليات الرئيسية التالية:
البرنامج النصي لتدريب SVM على مجموعة بيانات القزحية | نفس البرنامج النصي كتجربة مقدسة |
from numpy . random import permutation
from sklearn import svm , datasets
C = 1.0
gamma = 0.7
iris = datasets . load_iris ()
perm = permutation ( iris . target . size )
iris . data = iris . data [ perm ]
iris . target = iris . target [ perm ]
clf = svm . SVC ( C = C , kernel = 'rbf' ,
gamma = gamma )
clf . fit ( iris . data [: 90 ],
iris . target [: 90 ])
print ( clf . score ( iris . data [ 90 :],
iris . target [ 90 :])) | from numpy . random import permutation
from sklearn import svm , datasets
from sacred import Experiment
ex = Experiment ( 'iris_rbf_svm' )
@ ex . config
def cfg ():
C = 1.0
gamma = 0.7
@ ex . automain
def run ( C , gamma ):
iris = datasets . load_iris ()
per = permutation ( iris . target . size )
iris . data = iris . data [ per ]
iris . target = iris . target [ per ]
clf = svm . SVC ( C = C , kernel = 'rbf' ,
gamma = gamma )
clf . fit ( iris . data [: 90 ],
iris . target [: 90 ])
return clf . score ( iris . data [ 90 :],
iris . target [ 90 :]) |
يتم استضافة الوثائق في ReadTheDocs. يمكنك أيضًا أن تسأل المعلم المقدس ، إنه منظمة العفو الدولية التي تركز على أسئلتك.
يمكنك تثبيته مباشرة من فهرس حزمة Python مع PIP:
PIP تثبيت مقدس
أو إذا كنت ترغب في القيام بذلك يدويًا ، فيمكنك الخروج من الإصدار الحالي من GIT وتثبيته بنفسك:
git clone https://github.com/idsia/sacred.gitCD مقدستثبيت Python Setup.py
قد ترغب أيضًا في تثبيت حزم numpy
و pymongo
. إنها تبعيات اختيارية لكنها توفر بعض الميزات الرائعة:
PIP تثبيت numpy pymongo
اختبارات Sacred استخدام حزمة Pytest. يمكنك تنفيذها عن طريق تشغيل pytest
في الدليل المقدس مثل هذا:
pytest
يوجد أيضًا ملف تكوين لـ Tox حتى تتمكن تلقائيًا من إجراء اختبارات لإصدارات Python المختلفة مثل هذا:
توكس
إذا قمت بتحديث أو تغيير إصدار Pytest ، فيجب تغيير الملفات التالية:
dev-requirements.txt
tox.ini
test/test_utils.py
setup.py
إذا وجدت خللًا ، لديك طلب ميزة أو ترغب في مناقشة شيء عام ، فأنت مرحب بك لفتح مشكلة. إذا كان لديك سؤال محدد يتعلق باستخدام المقدس ، فيرجى طرح سؤال على StackOverflow تحت علامة Python-Sacred. نحن نقدر الوثائق كثيرا. إذا وجدت شيئًا يجب تضمينه في الوثائق ، فيرجى توثيقه أو إخبارنا بما هو مفقود. إذا كنت تستخدم مقدسًا في أحد مشاريعك وترغب في مشاركة الكود الخاص بك مع الآخرين ، فضع ريبو في المشاريع باستخدام قائمة Sacred <docs/project_using_sacred.rst> _. طلبات السحب مرحب بها للغاية!
في هذه المرحلة ، هناك ثلاث مباريات أمامية لإدخالات قاعدة البيانات التي أنشأتها Sacred (التي أعرفها). تم تطويرها خارجيا كمشاريع منفصلة.
Omniboard هي لوحة معلومات ويب تساعد في تصور التجارب والمقاييس / السجلات التي يتم جمعها بواسطة Sacred. Omniboard مكتوب مع React و Node.js و Express و Bootstrap.
البخور هي مكتبة Python لاسترداد عمليات تشغيل مخزنة في MongoDB وعرض مقاييس وقطع أثرية في دفاتر Jupyter.
Sacredboard هي واجهة لوحة معلومات تستند إلى الويب إلى عمليات التشغيل المقدسة المخزنة في MongoDB.
Neptune هو متجر بيانات التعريف لـ MLOPS ، تم تصميمه للفرق التي تدير الكثير من التجارب. يمنحك مكانًا واحدًا لتسجيل وتخزين وعرض وتنظيم ومقارنة والاستعلام عن جميع البيانات الوصفية لبناء النماذج عبر API المتاحة لكل من لغات البرمجة Python و R:
من أجل تسجيل تجاربك المقدسة إلى نبتون ، كل ما عليك فعله هو إضافة مراقب:
from neptune . new . integrations . sacred import NeptuneObserver
ex . observers . append ( NeptuneObserver ( api_token = '<YOUR_API_TOKEN>' ,
project = '<YOUR_WORKSPACE/YOUR_PROJECT>' ))
لمزيد من المعلومات ، تحقق من دليل التكامل المقدس Neptune +.
SacredBrowser هو تطبيق PYQT4 لتصفح إدخالات MongoDB التي تم إنشاؤها بواسطة التجارب المقدسة. تتضمن الميزات استعلامات مخصصة ، وفرز النتائج ، والوصول إلى رمز المصدر المخزن ، وغيرها الكثير. لا يلزم التثبيت ويمكنه الاتصال بقاعدة بيانات محلية أو عبر الشبكة.
النبي هو نموذج أولي مبكر لمواقع الويب إلى إدخالات MongoDB التي تم إنشاؤها بواسطة التجارب المقدسة ، والتي يتم إيقافها. يتطلب منك تشغيل RestHeart للوصول إلى قاعدة البيانات.
Sumatra هي أداة لإدارة وتتبع المشاريع على أساس العدديالمحاكاة و/أو التحليل ، بهدف دعم البحوث القابلة للتكرار.يمكن اعتباره دفتر مختبر إلكتروني آليالمشاريع الحسابية.
تتبع Sumatra طريقة مختلفة من خلال توفير أدوات سطر الأوامر لتهيئة المشروع ثم تشغيل رمز تعسفي (وليس فقط Python). إنه يتتبع معلومات حول جميع عمليات التشغيل في قاعدة بيانات SQL ، بل توفر حتى أداة متصفح لطيفة. يتكامل بشكل أقل بإحكام مع الكود المراد تشغيله ، مما يجعله قابلاً للتطبيق بسهولة على التجارب غير الثيران. ولكن هذا يعني أيضًا أنه يتطلب المزيد من الإعداد لكل تجربة ويجب إجراء التكوين باستخدام الملفات. استخدم هذا المشروع إذا كنت بحاجة إلى إجراء تجارب غير بايثون ، أو تكون موافقًا على النفقات العامة للإعداد/التكوين الإضافي.
FGLAB هي لوحة معلومات للتعلم الآلي ، مصممة لصنع النماذج الأوليةالتجارب أسهل. يتم إرسال تفاصيل التجربة والنتائج إلى قاعدة بيانات ،الذي يسمح بإجراء التحليلات بعد الانتهاء منها. الخادمهو fglab ، والعملاء هم من الآلات الرباعية.
على غرار سومطرة ، فإن FGLAB هي أداة خارجية يمكنها تتبع عمليات التشغيل من أي برنامج. يتم تكوين المشاريع عبر مخطط JSON ويحتاج البرنامج إلى قبول هذه التكوينات عبر خيارات خط الأوامر. يأخذ FGLAB أيضًا دور جدولة أساسية من خلال توزيع عمليات التشغيل على عدة آلات.
يتم إصدار هذا المشروع بموجب شروط ترخيص معهد ماساتشوستس للتكنولوجيا.
K. Greff ، A. Klein ، M. Chovanec ، F. Hutter ، and J. Schmidhuber ، 'The Sacred Infrastructure for Absional Research' ، in Proceedings of the 15th Python in Science Conference (Scipy 2017) ، Austin ، Texas ، 2017 ، ص. 49-56.