1. Ana sayfa
  2. İçerik planı
  3. Ölçüm süreci · PennyLane
PennyLane · QNode ve kuantum iş akışı

Ölçüm süreci — istatistiksel geri dönüşler ve diferansiyel gözlemlenebilirler

PennyLane’de ölçüm, kuantum devresinin sonuna eklenen statik bir işlem değil; QNode’un klasik dünyaya hangi istatistiksel bilgiyi sızdıracağını belirleyen dinamik bir operatör eşleşmesidir. Beklenen değerlerden (expval) durum olasılıklarına (probs), varyanstan ham örneklemlere kadar geniş bir yelpazede sunulan bu süreç, kuantum durumunu skalar bir değere indirgerken otomatik türev motoru için gradyan yolunu da tanımlar. Bu sayfa, ölçümü Qiskit tarzı "izleme ve sayma" (counting) mantığından ziyade, diferansiyel kuantum programlamanın bir çıktı katmanı olarak analiz eder.

  • Türler: expval · probs · var · sample · density matrix
  • Dinamik: gözlemlenebilirler (observables) · Hamiltonyen bazlı ölçüm
  • Gradyan: ölçüm türünün türevlenebilirliğe ve varyansa etkisi

Ölçüm: Kuantum Durumundan Skalar Veriye

QNode'un içindeki kuantum fonksiyonunun return satırı, kuantum devresinin hangi fiziksel özelliğinin klasik bilgisayara aktarılacağını belirler. PennyLane'de ölçüm, dalga fonksiyonunun çökmesinden çok, o dalga fonksiyonu üzerinde bir matematiksel beklentinin hesaplanmasıdır.

Qiskit ile Kavramsal Ayrım

Qiskit'te genellikle devre sonuna measure_all() eklenir ve ham bit dizileri (counts) üzerinden post-processing yapılır. PennyLane'de ise ölçüm, doğrudan bir diferansiyel operatördür. Eğer qml.expval() döndürürseniz, sistem bunu optimize edilecek bir maliyet fonksiyonu bileşeni olarak görür; eğer qml.probs() döndürürseniz, klasik tarafa bir olasılık dağılım vektörü iletirsiniz. Bu, hibrit QML'de kuantum katmanının çıktı aktivasyon fonksiyonunu seçmek gibidir.

Kritik Bilgi PennyLane ölçüm fonksiyonları (measurements), bir kuantum durumunu doğrudan beklenen değer bazında okuyabildiği için (analitik simülatörlerde), donanım gürültüsü olmadan gradyan tabanlı öğrenmeyi (backpropagation) mümkün kılar.

Beklenen Değerler (expval) ve Optimizasyon

Varyasyonel Kuantum Algoritmalarının (VQA) kalbi olan qml.expval(H), belirli bir gözlemlenebilirin (H) o kuantum durumundaki ortalama değerini döndürür.

Eğitim döngüsünde maliyet fonksiyonu genellikle bu beklenen değerlerin bir kombinasyonudur. Örneğin, bir molekülün taban durumu enerjisini ararken, Hamiltonyen operatörünün beklenen değerini minimize edersiniz. PennyLane, bu değerin parametrelere göre türevini (grad) otomatik olarak hesaplayabildiği için, cihaz sistemi ile uyumlu bir şekilde parametreleri günceller.

Olasılık Dağılımları ve Ham Örnekleme

qml.probs(wires=...), seçilen kablolarda ölçüm bazında olasılık vektörü döndürür; QNN veya sınıflandırma tarafında kuantum katmanının “softmax öncesi” çıktısı gibi düşünülebilir. qml.sample() ise tek tek bit dizileri üretir — maliyet türevlenebilir olmayabilir veya farklı bir gradyan yolu gerektirir; eğitimde genelde expval veya probs tercih edilir.

probs vs expval: hangi maliyet?

expval skalar veya az sayıda skalar üretir; VQE/QAOA tipi problemlerde doğrudan maliyete yazılır. probs vektör döndürür; klasik tarafında çapraz entropi veya KL benzeri kayıplarla birleştirilir. İkisini aynı QNode’da demet olarak döndürmek mümkündür; fakat her dönüş bileşeninin gradyan yolu ve cihaz uyumu ayrı kontrol edilmelidir. Kablo sırası vektör boyutunu belirler — kablo yönetimi ile hizalayın.

Fiziksel ölçüm ve Born olasılığı için ölçüm ve çökme sayfasına bakın; burada odak PennyLane API’sinin eğitim hattına nasıl bağlandığıdır.

Gözlemlenebilirler: Pauli Bazından Hamiltonyenlere

Ölçüm rastgele bir işlem değildir; her zaman bir baz (basis) üzerinde yapılır. PennyLane, standart Pauli matrislerini (PauliX, PauliY, PauliZ) temel gözlemlenebilirler olarak sunar.

Karmaşık Hamiltonyenler

Kuantum kimyası veya optimizasyon problemlerinde, ölçüm genellikle çok sayıda Pauli teriminin toplamından oluşan bir Hamiltonyen (qml.Hamiltonian) üzerinden gerçekleştirilir. PennyLane'in "Differentiable Programming" yaklaşımı, bu toplamı parçalara ayırarak donanımda ayrı ayrı koşturur ve sonuçları diferansiyel zinciri bozmadan klasik tarafta toplar. Bu, donanım routing tabloları yerine algoritmik verimliliğe odaklanan bir yaklaşımdır.

Donanım Kısıtları ve Shots Etkisi

Ölçümün doğruluğu doğrudan shots (örneklem sayısı) ile ilişkilidir. Analitik modda mükemmel sonuçlar veren bir ölçüm, sonlu shot ile çalıştırıldığında istatistiksel bir varyans üretir.

Hibrit eğitim planlamasında, ölçüm varyansı "gradyan gürültüsü" olarak kendini gösterir. Eğer çok düşük shot ile ölçüm yapıyorsanız, optimizasyon algoritmanız (SGD veya Adam) yanlış yöne sapabilir. Bu nedenle, ölçüm süreci sadece neyin ölçüldüğü değil, ne kadar hassas ölçüldüğü sorusunu da barındırır. Cihaz değişimi sırasında bu hassasiyet ayarı, cihaz sistemi üzerinden yönetilir. Shots ve cihaz seçiminin eğitim planındaki yeri orada ayrıntılandırılır; burada yalnızca ölçüm çıktısının varyansı vurgulanır.

Çoklu Ölçüm ve Çıktı Tensör Yapısı

QNode dönüş satırı birden çok ölçüm ifadesi içerebilir: Python demeti, liste veya yapılandırılmış tensör biçimleri. Her bileşen farklı şekil ve gradyan davranışı taşır; Torch tarafında bunları birleştirmeden önce hangi skaların maliyete girdiğini netleştirin.

Demet dönüşü ve maliyet

Örneğin return qml.expval(A), qml.expval(B) iki skalar üretir; klasik kayıp bunların ağırlıklı toplamı olabilir. Gradyan her bileşenden akar; fakat cihaz ve diff_method her ölçüm için uyumlu olmalıdır. Karmaşık Hamiltonyenlerde terim başına ayrı expval döndürmek yaygındır — toplama klasik tarafta yapılır, böylece diferansiyel zincir korunur.

QNode’un genel dönüş sözleşmesi QNode mimarisi sayfasında; kayıt ve yürütme sırası yürütüm akışı başlığındadır.

Kod Örnekleri: Farklı Ölçüm Stratejileri

PennyLane'de ölçümün nasıl tanımlandığına dair temel ve ileri seviye kullanım senaryoları:

measurement_types.py Python
import pennylane as qml

dev = qml.device("default.qubit", wires=2)

@qml.qnode(dev)
def circuit(params):
    qml.RX(params[0], wires=0)
    qml.RY(params[1], wires=1)
    qml.CNOT(wires=[0, 1])
    
    # Çoklu ölçüm: Hem beklenen değer hem olasılık döner
    return qml.expval(qml.PauliZ(0)), qml.probs(wires=[0, 1])

res = circuit([0.1, 0.2])
# res[0] -> Skalar (beklenen değer)
# res[1] -> [0.98, 0.01, 0.005, 0.005] gibi bir vektör
pennylane · measurements Diferansiyel çıktı katmanları

İleride ve Yan Sayfalarda Ne Var?

Ölçüm süreci, verinin kuantumdan klasiğe geçiş kapısıdır. Bu kapıyı daha iyi anlamak için:

Özet PennyLane ölçüm süreci, kuantum devresini bir "istatistiksel jeneratör" olarak kullanır. Burada odak, ham sonuçları toplamaktan ziyade, bu sonuçları diferansiyel optimizasyon döngüsüne (differentiable workflow) nasıl en verimli şekilde entegre edileceğidir.