Varyasyonel kuantum çizgisi — Kuantum ölçümü besleyen klasik optimizasyon döngüsü
Bu ünite, belirli bir uygulama yerine ortak iskeleti anlatır: parametreli bir kuantum devre üzerinde bir kayıp (çoğu kez bir gözlemlenebilirin beklenen değeri) tahmin edilir; klasik taraf bu tahmine göre parametreleri günceller ve döngü tekrarlanır. Böyle bir hat, VQE’den QAOA’ya, kuantum makine öğrenmesindeki eğitim döngülerine kadar uzanır. Burada amaç “hangi kapı”yı seçeceğinizi söylemek değil; döngünün nerede kırılabileceğini — ölçüm gürültüsü, kayıp tanımı, barren plateau rejimi, iz kaydı — yazılım disipliniyle görmektir. Somut Pauli maliyeti ve ansatz şablonu ayrı sayfalarda derinleştirilir.
Döngünün anatomisi
Tipik hat üç bileşenden oluşur: (1) parametreleri bağlanmış kuantum devre, (2) kayıp için
gerekli tahmin (
Estimator ile beklenen Pauli toplamı veya
Sampler ile örneklenmiş bir istatistik), (3) klasik güncelleme kuralı
(ör. L-BFGS-B,
COBYLA, özel bir eğitim adımı). Bu sıra bir API sözleşmesi gibi
düşünülmelidir: ilkel çağrısı ile optimizasyonun aynı
θ anını paylaşmaması, sessiz hataların en yaygın kaynağıdır.
Hibrit kuantum iş akışı sayfası, bu üçlünün üretim boru hattı dilindeki karşılığını özetler.
assign_parameters) ve en sonda transpile sürümünü kontrol edin.
Kayıp yüzeyi ve ölçüm gürültüsü
Kayıp, kuantum tarafından tek bir skalara indirgenmiş geri bildirimdir:
beklenen enerji, sınıflandırma marjı veya fidelity tabanlı bir ceza olabilir. Donanımda
bu skala shot gürültüsüyle örneklenir; aynı
θ için üst üste çağrıldığında küçük farklar normaldir ve klasik
optimizasyonun “gradyan” hissini değiştirir.
Pauli tabanlı maliyetin nasıl yazıldığı Maliyet Hamiltonyenleri; ölçüm gruplaması ve ilkel seçimi Gözlemlenebilir oluşturma ve Estimator ilkeli sayfalarında kalır.
Shot planı
Erken iterasyonlarda düşük shot, geç iterasyonlarda artan shot gibi basamaklı politikalar yaygındur; politika değiştiğinde kayıp ölçeği değişebileceği için raporda açıkça yazılmalıdır.
Parametre uzayı ve klasik optimizasyon
Parametre uzayı, ansatzın serbestlik derecesidir; uzay büyüdükçe hem ifade gücü artar
hem de arama zorlaşır.
Ansatz devreleri başlığında
bağlanma ve
reps seçiminin derinliğe etkisi işlenir; burada yalnızca klasik
optimizasyonun bu uzayda hangi bilgiyi kullandığı (yalnızca değer,
yaklaşık gradyan, kısıt) özetlenir.
Çok başlangıçlı koşular, farklı rastgele tohumlarla aynı ansatz ailesinin farklı yerel vadilere düşmesini azaltmak için kullanılır; tohumlar deney karnesinin zorunlu alanıdır.
Kısıtlar
Bazı uygulamalarda açı parametreleri fiziksel aralığa kısıtlanır; kısıt ihlali durumunda ilkel çağrısından önce projeksiyon yapılıp yapılmadığı sonuçları değiştirir.
Barren plateau rejimi
Derin ve rastgele benzeri ansatz ailelerinde, kayıp fonksiyonunun gradyanının üstel kübit sayısıyla baskılanması riski literatürde barren plateau olarak tartışılır. Pratikte bu rejim, “parametre güncelleniyor ama kayıp düz” hissiyle kendini gösterir ve erken durdurma eşiklerine takılır.
Teorik ayrıntılar ders notlarında kalır; yazılım tarafında yapılacak iş, aynı modelde
farklı
reps ve bağlanma desenleriyle kıyaslama eğrileri üretmek ve bu
eğrileri aynı shot politikasıyla almaktır.
Spektral yöntemler ( Faz tahmini araçları) bu riski farklı bir eksende taşır; burada yalnızca varyasyonel arama bağlamında anılır.
Özel çerçevelere köprüler
Aynı iskelet farklı “rol” dağılımlarıyla somutlaşır: genel özdeğer probleminde maliyet Hamiltonyeni ve serbest ansatz; VQE çerçevesi bu çizgiyi işler. QAOA’da ansatz katmanları maliyet ve karıştırıcıya kilitlenir; QAOA çerçevesi bu özel şablonu anlatır. Kuantum makine öğrenmesinde kayıp, veri yüklemeli bir devre ve istatistiksel bir çıktı üzerinden tanımlanır; yine aynı döngü, farklı bir kaynak dosyası ve ölçüm politikası ile çalışır.
Arama tabanlı Grover araçları bu aileden ayrışır; karıştırmamak için ayrı ünite olarak tutulmuştur.
Ne burada yok
Belirli bir QML mimarisinin eğitim tarifesi, veri yükleyici ve geri yayılım eşdeğeri; ilgili ders notlarında derinleştirilir.
İzlenebilir deney karnesi
Yeniden üretilebilirlik için aşağıdaki alanlar tek satırda bile olsa logda buluşmalıdır:
Qiskit sürümü,
ilkel sürümü,
ansatz sınıfı ve argümanları (bağlanma,
reps),
maliyetin Pauli özeti veya hash’i,
transpile özeti,
rastgele tohum,
shot politikası,
klasik optimizasyon yöntemi ve toleransı.
Oturum sistemi ve İlkel iş akışları, bulutta çalışırken bu karnenin hangi parçalarının sunucu tarafından otomatik doldurulduğunu belirlemenize yardım eder.
Kod stüdyosu: en küçük döngü
Aşağıdaki örnek, tek kübitlik
RealAmplitudes üzerinde
⟨Z⟩’yi düşürmeyi hedefler; amaç Hamiltonyen mühendisliği değil,
döngünün kapanmasıdır. Genel Pauli maliyetleri için
VQE çerçevesi sayfasına geçin.
import numpy as np
from scipy.optimize import minimize
from qiskit.circuit.library import RealAmplitudes
from qiskit.primitives import StatevectorEstimator
from qiskit.quantum_info import SparsePauliOp
ansatz = RealAmplitudes(num_qubits=1, reps=1)
obs = SparsePauliOp.from_list([("Z", 1.0)])
estimator = StatevectorEstimator()
def scalar_loss(theta):
bound = ansatz.assign_parameters(theta)
job = estimator.run([(bound, [obs])])
return float(job.result()[0].data.evs[0])
theta0 = np.zeros(ansatz.num_parameters)
result = minimize(scalar_loss, theta0, method="COBYLA", options={"maxiter": 120})
print("min ⟨Z⟩ ≈", result.fun, "| success:", result.success)
print("ok")
IBM Runtime (yorum)
Aşağıdaki satırlar bilinçli olarak yorumdadır; oturum ve backend kimliği ortama göre doldurulur.
# from qiskit_ibm_runtime import Estimator, Session
# with Session(backend=backend) as session:
# est = Estimator(session=session)
# bound = ansatz.assign_parameters(theta)
# job = est.run([(bound, [obs])])
Okuma listesi ve sınırlar
Bu ünite bir “algoritma kanıtı” veya “en iyi optimizasyon yöntemi” rehberi değildir; amaç, farklı uygulamalar arasında taşınabilen döngü dilini ortak kelimelerle sabitlemektir. Aşağıdaki sayfalar somutlaştırma adımlarıdır.
- Ansatz devreleri — şablon ve bağlanma.
- Maliyet Hamiltonyenleri — Pauli maliyet.
- VQE çerçevesi — özdeğer örneği.
- QAOA çerçevesi — özel katmanlı örnek.
- IBM Quantum: Qiskit ve platform araçlarına giriş.
θ’yı güncelle; üç adımın her birinde hangi sürümün çalıştığını yaz.