← Quantum Store · Rehberler · Dersler · Sözlük · Paketler · Öğrenme yolları · English
Qiskit kursu: gerçek kuantum programlama · Ders 5 / 6 · 10 dk
Döndürme kapıları ve parametreli devreler
Açıyla çalışan rx, ry, rz kapılarını tanı, Parameter ile açısı sonradan verilen devreler kur ve varyasyonel algoritmaların fikrini gör.
Açıyla döndürmek: rx, ry, rz
H ve X gibi kapılar her zaman aynı işi yapar. Döndürme kapıları ise bir açı alır ve kübiti o kadar döndürür. ry(θ) ile döndürülen |0⟩ kübitinde 1 çıkma olasılığı sin²(θ/2)’dir: θ = 0’da hiç döndürmez, θ = π/2’de H gibi yarı yarıya, θ = π’de X gibi kesin 1 verir.
rz(θ) ve p(θ) ise yalnızca fazı değiştirir. Daha önce gördüğün kapılar bunların özel açılarıdır: Z = p(π), S = p(π/2), T = p(π/4).
import math
from qiskit import QuantumCircuit
qc = QuantumCircuit(1)
qc.ry(math.pi / 3, 0) # 1 çıkma olasılığı sin²(π/6) = 0,25
qc.measure_all()
Parameter: açıyı sonra ver
Aynı devreyi farklı açılarla denemek istediğinde her seferinde yeni devre kurmana gerek yok. Parameter ile açıyı bir isim olarak bırakırsın, assign_parameters ile de çalıştırmadan önce değer verirsin. Aşağıdaki döngü 0, π/2 ve π açıları için sırasıyla hep 0, yarı yarıya ve hep 1 sonuçlarını verir.
import math
from qiskit import QuantumCircuit
from qiskit.circuit import Parameter
from qiskit.primitives import StatevectorSampler
theta = Parameter('theta')
qc = QuantumCircuit(1)
qc.ry(theta, 0)
qc.measure_all()
sampler = StatevectorSampler()
for aci in [0, math.pi / 2, math.pi]:
devre = qc.assign_parameters({theta: aci})
counts = sampler.run([devre], shots=1000).result()[0].data.meas.get_counts()
print(round(aci, 2), counts)
Neden önemli? Varyasyonel algoritmalar
Bugünkü gürültülü cihazlarda en çok denenen yöntemler parametreli devrelere dayanır. VQE ve QAOA gibi varyasyonel algoritmalarda kuantum bilgisayar bir parametreli devreyi çalıştırıp Estimator ile bir enerji ya da maliyet hesaplar; klasik bir optimizasyon algoritması da açıları bu değeri küçültecek şekilde ayarlar. Bu döngü, en iyi açılar bulunana kadar tekrar eder.
Kuantum makine öğrenmesindeki “kuantum sinir ağları” da aynı fikirdir: eğitilen ağırlıklar, döndürme kapılarının açılarıdır.
Kendin dene
Deneme alanında döndürme kapısı yok, ama iki özel açıyı görebilirsin: ry(π/2) ölçümde H ile aynı yarı yarıya sonucu, ry(π) ise X ile aynı kesin 1 sonucunu verir. İki örneği karşılaştır.
Tarayıcıda dene (kurulum yok)Akılda kalsın
- ry(θ) ile döndürülen |0⟩ kübitinde 1 çıkma olasılığı sin²(θ/2)’dir.
- rz ve p kapıları yalnızca fazı değiştirir: Z = p(π), S = p(π/2), T = p(π/4).
- Parameter açıyı isim olarak bırakır; assign_parameters çalıştırmadan önce değer verir.
- Varyasyonel algoritmalar açıları klasik bir optimizasyonla ayarlar.
Kendini sına
|0⟩ kübitine ry(θ) uygulandığında 1 çıkma olasılığının %50 olması için θ ne olmalıdır?
- π/4
- π/2
- π
Cevabı göster
π/2. 1 çıkma olasılığı sin²(θ/2)’dir. θ = π/2 için sin²(π/4) = 0,5 olur. π/4 yaklaşık %15, π ise %100 verir.
← Durum vektörü ve beklenen değer · Gerçek kuantum bilgisayara: transpile ve IBM Quantum →