Перейти до основного вмісту

Зворотне поширення операторів (OBP)

Зворотне поширення операторів (OBP) — це техніка зменшення глибини схеми шляхом відсікання операцій з її кінця ціною більшої кількості вимірювань операторів. Існує кілька способів виконання зворотного поширення операторів, і цей пакет використовує метод, заснований на теорії збурень Кліффорда [1].

Чим далі оператор поширюється через схему, тим експоненціально більшим стає розмір спостережуваного для вимірювання. Це призводить до класичних і квантових накладних витрат. Однак для деяких схем результуючий розподіл додаткових операторів Паулі є більш концентрованим, ніж найгірший випадок експоненціального масштабування. Це означає, що деякі члени в спостережуваному з малими коефіцієнтами можна відсікти для зменшення квантових накладних витрат. Похибку, що при цьому виникає, можна контролювати для пошуку прийнятного компромісу між точністю та ефективністю.

Встановлення

Пакет OBP можна встановити одним з двох способів: через PyPI або зі збіркою з вихідного коду. Розглянь встановлення цих пакетів у віртуальному середовищі, щоб забезпечити ізоляцію залежностей пакетів.

Встановлення через PyPI

Найпростіший спосіб встановити пакет qiskit-addon-obp — через PyPI.

pip install qiskit-addon-obp

Збірка з вихідного коду

Користувачі, які хочуть зробити внесок у цей пакет або встановити його вручну, можуть спочатку клонувати репозиторій:

git clone git@github.com:Qiskit/qiskit-addon-obp.git
```_

і встановити пакет через `pip`. Репозиторій також містить приклади у вигляді ноутбуків. Якщо плануєш розробляти в репозиторії, встанови залежності `dev`.

Налаштуй параметри відповідно до своїх потреб:

```bash
pip install tox notebook -e '.[notebook-dependencies, dev]'

Теоретична основа

Процедура OBP, реалізована в цьому пакеті, детально описана в [1]. При використанні примітиву Estimator результатом квантового робочого навантаження є оцінка одного або кількох математичних сподівань O\langle O \rangle відносно деякого стану, підготованого за допомогою QPU. Цей розділ узагальнює процедуру.

Спочатку запишемо вимірювання математичного сподівання спостережуваного OO через деякий початковий стан ψ|\psi\rangle та квантову схему UQU_Q:

OUψ=ψUOUψ.\langle O \rangle_{U|\psi\rangle} = \langle\psi | U^\dagger O U |\psi \rangle.

Щоб розподілити цю задачу між класичними та квантовими ресурсами, розіб'ємо схему UU на дві підсхеми, UCU_C та UQU_Q, класично змоделюємо схему UCU_C, потім виконаємо схему UQU_Q на квантовому залізі та використаємо результати класичного моделювання для відновлення вимірювання спостережуваного OO.

Діаграма OBP, що зображує розбиття схеми на дві підсхеми, класичне обчислення однієї з підсхем, а потім вимірювання іншої схеми за допомогою квантового заліза

Підсхему UCU_C слід вибирати такою, щоб вона допускала класичне моделювання, і вона обчислить математичне сподівання

OUCOUC,\langle O' \rangle \equiv U_C^\dagger O U_C,

яке є версією початкового оператора OO, еволюціонованого через схему UCU_C. Після визначення OO' підготовляється квантове робоче навантаження, в якому ініціалізується стан ψ|\psi\rangle, до нього застосовується схема UQU_Q, а потім вимірюється математичне сподівання OO'. Можна показати, що це еквівалентно вимірюванню O\langle O \rangle, записавши:

ψUQOUQψ=ψUQUCOUCUQψ=ψUOUψ=OUψ \langle \psi | U_Q^\dagger O' U_Q \psi \rangle = \langle \psi | U_Q^\dagger U_C^\dagger O U_CU_Q \psi \rangle = \langle\psi | U^\dagger O U |\psi \rangle = \langle O \rangle_{U|\psi\rangle}

Нарешті, для вимірювання математичного сподівання O\langle O' \rangle необхідно, щоб воно розкладалося в суму рядків Паулі

O=PcPP,O' = \sum_P c_P P,

де cPc_P — дійсні коефіцієнти розкладу, а PP — деякий рядок Паулі, складений з операторів II, XX, YY та ZZ. Це забезпечує можливість відновити математичне сподівання OO як

ψUQOψ=PcPψUQPUQψ.\langle \psi | U_Q^\dagger O' |\psi \rangle = \sum_P c_P \langle \psi | U_Q^\dagger P U_Q | \psi \rangle.

Відсікання членів

Ця схема пропонує компроміс між необхідною глибиною схеми UQU_Q, кількістю виконань схем на квантовому залізі та обсягом класичних обчислювальних ресурсів, необхідних для обчислення OO'. Загалом, чим далі ти обираєш зворотне поширення через схему, тим більше рядків Паулі для вимірювання та накладні витрати на пом'якшення похибок зростають експоненціально (разом із класичними ресурсами, необхідними для моделювання UCU_C).

На щастя, розклад OO' часто може містити доволі малі коефіцієнти, які можна відсікти з фінальних вимірювань для відновлення OO без значного збільшення похибки. Пакет qiskit-addon-obp має функціонал для задання бюджету похибок, який може автоматично шукати члени, що підлягають відсіканню в межах деякого допуску на похибку.

Теорія збурень Кліффорда

Нарешті, пакет qiskit-addon-obp підходить до зворотного поширення операторів на основі теорії збурень Кліффорда. Цей метод має ту перевагу, що накладні витрати від зворотного поширення різних вентилів масштабуються з не-кліффордністю UCU_C (тобто з тим, яка частина UCU_C складається з не-кліффордських інструкцій).

Цей підхід до OBP починається з розбиття модельованої схеми UCU_C на зрізи:

UC=s=1SUs=US...U2U1,U_C = \prod_{s=1}^S \mathcal{U}_s = \mathcal{U}_S...\mathcal{U}_2\mathcal{U}_1,

де SS представляє загальну кількість зрізів, а Us\mathcal{U}_s позначає один зріз схеми UCU_C. Кожен з цих зрізів потім аналітично застосовується послідовно для вимірювання зворотньо поширеного оператора OO' і може або не може впливати на загальний розмір суми залежно від того, чи є зріз кліффордською чи не-кліффордською операцією. Якщо виділено бюджет похибок, відсікання відбуватиметься між застосуванням кожного зрізу.

Наступні кроки

Рекомендації

Посилання

[1] Fuller, Bryce, et al. "Improved Quantum Computation using Operator Backpropagation." arXiv:2502.01897 [quant-ph] (2025).