การทดลองทุกครั้งนั้นศักดิ์สิทธิ์การทดลองทุกครั้งนั้นยอดเยี่ยมมากหากการทดลองสูญเปล่าพระเจ้าได้รับความโกรธแค้นมาก
Sacred เป็นเครื่องมือที่จะช่วยคุณกำหนดค่าจัดระเบียบบันทึกและทำซ้ำการทดลอง มันถูกออกแบบมาให้ทำงานค่าใช้จ่ายที่น่าเบื่อทั้งหมดที่คุณต้องทำในการทดลองจริงของคุณเพื่อ:
Sacred ประสบความสำเร็จผ่านกลไกหลักต่อไปนี้:
สคริปต์เพื่อฝึก SVM ในชุดข้อมูล IRIS | สคริปต์เดียวกับการทดลองศักดิ์สิทธิ์ |
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 นอกจากนี้คุณยังสามารถถามกูรูศักดิ์สิทธิ์ได้ว่าเป็น AI ที่มุ่งเน้นศักดิ์สิทธิ์เพื่อตอบคำถามของคุณ
คุณสามารถติดตั้งโดยตรงจากดัชนีแพ็คเกจ Python ด้วย PIP:
PIP ติดตั้ง Sacred
หรือถ้าคุณต้องการทำด้วยตนเองคุณสามารถชำระเงินเวอร์ชันปัจจุบันจาก Git และติดตั้งด้วยตัวเอง:
git clone https://github.com/idsia/sacred.gitซีดีศักดิ์สิทธิ์การติดตั้ง Python.py ติดตั้ง
คุณอาจต้องการติดตั้งแพ็คเกจ numpy
และ pymongo
พวกเขาเป็นตัวเลือกการพึ่งพา แต่มีคุณสมบัติที่ยอดเยี่ยม:
PIP ติดตั้ง numpy pymongo
การทดสอบสำหรับ Sacred ใช้แพ็คเกจ pytest คุณสามารถดำเนินการได้โดยใช้ pytest
ในไดเรกทอรีศักดิ์สิทธิ์เช่นนี้:
pytest
นอกจากนี้ยังมีไฟล์กำหนดค่าสำหรับ TOX เพื่อให้คุณสามารถเรียกใช้การทดสอบโดยอัตโนมัติสำหรับรุ่น Python ต่างๆเช่นนี้:
สารพิษ
หากคุณอัปเดตหรือเปลี่ยนเวอร์ชัน pytest ไฟล์ต่อไปนี้จะต้องมีการเปลี่ยนแปลง:
dev-requirements.txt
tox.ini
test/test_utils.py
setup.py
หากคุณพบข้อผิดพลาดมีคำขอคุณสมบัติหรือต้องการหารือเกี่ยวกับบางสิ่งบางอย่างทั่วไปคุณสามารถเปิดปัญหาได้ หากคุณมีคำถามเฉพาะที่เกี่ยวข้องกับการใช้ Sacred โปรดถามคำถามเกี่ยวกับ Stackoverflow ภายใต้แท็ก Python-Sacred เราให้ความสำคัญกับเอกสารมากมาย หากคุณพบสิ่งที่ควรรวมอยู่ในเอกสารโปรดจัดทำเอกสารหรือแจ้งให้เราทราบว่ามีอะไรขาดหายไป หากคุณใช้ Sacred ในโครงการใดโครงการหนึ่งของคุณและต้องการแบ่งปันรหัสของคุณกับผู้อื่นให้ใส่ repo ของคุณในโครงการโดยใช้ Sacred <docs/projects_using_sacred.rst> _ list คำขอดึงยินดีต้อนรับอย่างมาก!
ณ จุดนี้มีสามส่วนของรายการฐานข้อมูลที่สร้างโดย Sacred (ที่ฉันรู้) พวกเขาได้รับการพัฒนาภายนอกเป็นโครงการแยกต่างหาก
Omniboard เป็นแผงควบคุมเว็บที่ช่วยในการแสดงภาพการทดลองและตัวชี้วัด / บันทึกที่เก็บรวบรวมโดย Sacred Omniboard เขียนด้วย React, Node.js, Express และ Bootstrap
ธูปเป็นห้องสมุด Python เพื่อดึงการทำงานที่เก็บไว้ใน MongoDB และแสดงตัวชี้วัดและสิ่งประดิษฐ์ในสมุดบันทึก Jupyter
Sacredboard เป็นอินเทอร์เฟซแดชบอร์ดบนเว็บไปยัง Sacred Runs ที่เก็บไว้ใน MongoDB
ดาวเนปจูนเป็นร้านเมตาดาต้าสำหรับ 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 + Sacred
SacredBrowser เป็นแอปพลิเคชั่น PYQT4 เพื่อเรียกดูรายการ MongoDB ที่สร้างขึ้นโดยการทดลองศักดิ์สิทธิ์ คุณสมบัติรวมถึงการสืบค้นที่กำหนดเองการเรียงลำดับผลลัพธ์การเข้าถึงรหัสแหล่งที่เก็บไว้และอื่น ๆ อีกมากมาย ไม่จำเป็นต้องมีการติดตั้งและสามารถเชื่อมต่อกับฐานข้อมูลท้องถิ่นหรือผ่านเครือข่าย
ศาสดาเป็นต้นแบบต้นของ webinterface ไปยังรายการ mongoDB ที่สร้างขึ้นโดยการทดลองศักดิ์สิทธิ์ซึ่งหยุดลง คุณต้องใช้ RESTHEART เพื่อเข้าถึงฐานข้อมูล
Sumatra เป็นเครื่องมือในการจัดการและติดตามโครงการตามตัวเลขการจำลองและ/หรือการวิเคราะห์โดยมีวัตถุประสงค์เพื่อสนับสนุนการวิจัยที่ทำซ้ำได้มันสามารถคิดว่าเป็นสมุดบันทึกห้องปฏิบัติการอิเล็กทรอนิกส์อัตโนมัติสำหรับโครงการคำนวณ
Sumatra ใช้วิธีการที่แตกต่างกันโดยการจัดหาเครื่องมือ Commandline เพื่อเริ่มต้นโครงการแล้วเรียกใช้รหัสโดยพลการ (ไม่ใช่แค่ Python) มันติดตามข้อมูลเกี่ยวกับการทำงานทั้งหมดในฐานข้อมูล SQL และยังมีเครื่องมือเบราว์เซอร์ที่ดี มันรวมเข้ากับรหัสที่จะเรียกใช้น้อยลงซึ่งทำให้สามารถใช้งานได้ง่ายกับการทดลองที่ไม่ใช่ Python แต่นั่นก็หมายความว่าต้องมีการตั้งค่ามากขึ้นสำหรับการทดสอบและการกำหนดค่าแต่ละครั้งโดยใช้ไฟล์ ใช้โครงการนี้หากคุณต้องการเรียกใช้การทดลองที่ไม่ใช่ Python หรือตกลงกับค่าใช้จ่ายการตั้งค่า/การกำหนดค่าเพิ่มเติม
FGLAB เป็นแผงควบคุมการเรียนรู้ของเครื่องที่ออกแบบมาเพื่อสร้างต้นแบบการทดลองง่ายขึ้น รายละเอียดการทดลองและผลลัพธ์จะถูกส่งไปยังฐานข้อมูลซึ่งช่วยให้สามารถทำการวิเคราะห์ได้หลังจากเสร็จสิ้น เซิร์ฟเวอร์เป็น fglab และลูกค้าเป็น fgmachines
คล้ายกับสุมาตรา FGLAB เป็นเครื่องมือภายนอกที่สามารถติดตามการรันจากโปรแกรมใดก็ได้ โครงการได้รับการกำหนดค่าผ่าน JSON Schema และโปรแกรมจำเป็นต้องยอมรับการกำหนดค่าเหล่านี้ผ่านตัวเลือกบรรทัดคำสั่ง FGLAB ยังใช้บทบาทของตัวกำหนดตารางเวลาพื้นฐานโดยการแจกจ่ายวิ่งผ่านเครื่องหลายเครื่อง
โครงการนี้ได้รับการเผยแพร่ภายใต้เงื่อนไขของใบอนุญาต MIT
K. Greff, A. Klein, M. Chovanec, F. Hutter, และ J. Schmidhuber, 'โครงสร้างพื้นฐานศักดิ์สิทธิ์สำหรับการวิจัยเชิงคำนวณ' ในการดำเนินการของการประชุมวิทยาศาสตร์ Python ครั้งที่ 15 (Scipy 2017), Austin, Texas, 2017 pp. 49–56