Operator backpropagation
החבילה הזו מממשת operator backpropagation (OBP) להפחתת העומק של מעגלים בחישובי ערך תוחלת. הטכניקה מפיצה observable לאחור דרך שערים בסוף מעגל קוונטי, וכך מתקבל מעגל רדוד יותר, במחיר של עלייה במספר בסיסי המדידה של ה-observable. ככל שמבצעים backpropagation של אופרטור רחוק יותר לתוך המעגל, גודל ה-observable גדל אקספוננציאלית, מה שגורם לעומס נוסף גם במשאבים קלאסיים וגם במשאבים קוונטיים. עם זאת, בחלק מהמעגלים התפלגות ה-observables מסוג Pauli שמתקבלת מרוכזת יותר מההתאמה האקספוננציאלית במקרה הגרוע, כלומר אפשר לקצץ איברים בהמילטוניאן עם מקדמים קטנים כדי להפחית את העומס הקוונטי. אפשר לשלוט בשגיאה שנוצרת מזה כדי למצוא איזון מתאים בין דיוק ליעילות.
יש כמה דרכים לבצע operator backpropagation. החבילה הזו משתמשת בשיטה המבוססת על תורת ההפרעות של Clifford, והיתרון שלה הוא שהעומס שנגרם מ-backpropagation של שערים שונים נקבע לפי מידת ה"לא-Clifford-יות" של השער. זה מוביל ליעילות גבוהה יותר עבור משפחות מסוימות של מעגלים בהשוואה לשיטות OBP מבוססות רשתות טנזורים, שעדיין סובלות מעומס קלאסי גבוה גם במקרים שבהם העומס הקוונטי נשאר מתון.
החבילה מתאימה להערכת ערכי תוחלת של מעגלים קוונטיים כלליים ושל observables מסוג Pauli. עם זאת, במעגלים עם "קסם" גבוה (לא-Clifford מאוד), שגיאת ה-observable שנוצרת מהקיצוץ צפויה להפוך לבלתי נסבלת עוד לפני שה-observable הופץ דרך חלק משמעותי מהמעגל. במעגלים קרובים ל-Clifford ייתכן שאפשר להפיץ אותו דרך חלק גדול הרבה יותר מהמעגל תוך שמירה על חסמי שגיאה קטנים יחסית.
תחילת העבודה
מדריך פשוט שיעזור לך להתחיל במהירות עם החבילה זמין במדריך ההתחלה המהירה.
דוגמאות לשימוש
הטכניקה הזו שימשה למימוש מעגלי Trotter בעומק נמוך יותר עבור התפתחות בזמן של מודל ספין דו-ממדי [1].
דיון טכני
-
נקודת כניסה אחת: הפונקציה
backpropagateמבצעת OBP. -
שני פרמטרי שליטה בלתי תלויים באיזון בין עומק לדיוק:
-
OperatorBudgetמגביל עד כמה ה-observable יכול לגדול במהלך ה-backpropagation. -
TruncationErrorBudgetמגביל כמה שגיאה אפשר לצבור במהלך ה-backpropagation.
-
-
האפקטיביות תלויה בכמה המעגל קרוב ל-Clifford: במעגלים עם קסם גבוה (כלומר לא-Clifford מאוד), לאיברים שנוספים ל-observable נוטים להיות מקדמים גדולים יותר, ולכן נצברת שגיאת קיצוץ גדולה יותר מוקדם יותר, מה שמגביל את החיסכון בעומק תחת תקציב שגיאה קבוע. מעגלים קרובים ל-Clifford אפשר לקצץ בצורה אגרסיבית יותר ולבצע להם backpropagation עמוק יותר תחת אותו תקציב.
-
שקיפות מלאה: כל הרצה מחזירה אובייקט
OBPMetadataשמתעד את מספר איברי Pauli לכל פרוסה, את מספר קבוצות ה-QWC ואת שגיאת הקיצוץ המצטברת, עם פונקציות עזרplot_*להצגה חזותית של גדילת האופרטור והשגיאה מול עומק המעגל — שימושי לכיוונון התקציבים לפני שמשקיעים זמן QPU.
תרומה לפרויקט
מדריך המפתחים נמצא ב-CONTRIBUTING.md בשורש המאגר של הפרויקט. בהשתתפותך, אנחנו מצפים ממך לכבד את קוד ההתנהגות של Qiskit.
אנחנו משתמשים ב-GitHub issues למעקב אחרי בקשות ובאגים.
ציטוט החבילה
אם אתה משתמש בחבילה הזו במחקר שלך, השתמש בקובץ CITATION.bib שבמאגר הפרויקט כדי לצטט את ההפניות המתאימות.
רישיון
מדיניות הוצאה משימוש
החבילה הזו עוקבת אחרי semantic versioning. לפעמים אנחנו עשויים לבצע שינויים שוברי תאימות כדי לשפר את חוויית המשתמש. כשאפשר, נשמור על ממשקים ישנים ונסמן אותם כמוצאים משימוש, כל עוד הם יכולים להתקיים לצד החדשים. כל שיפור משמעותי, שינוי שובר תאימות או הוצאה משימוש יתועדו בהערות הגרסה.
מקורות
-
- Fuller et al., “Improved quantum computation using operator backpropagation,” npj Quantum Inf. 12, 51 (2026). [arXiv]