Skip to content

Kılavuzlar

Kümelenmiş vakalar

Aralık hesaplarının çoğu, her vakanın diğer her vakadan bağımsız olduğunu varsayar. Tek bir konuşmanın üç turu bağımsız değildir: konuşma ters gittiğinde üçü de ters gitme eğilimindedir. Onları bağımsız sayan bir paket, kanıtın desteklediğinden daha dar bir aralık bildirir ve bir kapı bu aralıkla geçebilir.

Bir kümeyi bildirme

Bir vaka, kümesini satırın en üst düzeyinde, id alanının yanında group_id ile adlandırır:

{"id": "conv00_t0", "group_id": "conv00", "input": {"question": "Conversation 0 turn 0: refund please (garbled)"}, "expected": {"label": "refund"}}
{"id": "conv00_t1", "group_id": "conv00", "input": {"question": "Conversation 0 turn 1: where is my order (garbled)"}, "expected": {"label": "other"}}
{"id": "conv00_t2", "group_id": "conv00", "input": {"question": "Conversation 0 turn 2: refund please (garbled)"}, "expected": {"label": "refund"}}

Herhangi bir vaka bir küme bildirdiği anda, paketin tamamı kümeye göre analiz edilir. Metrik bazında geri dönüş anahtarı yoktur: gruplanmış vakaları bağımsız saymak güvensiz yöndür, bu yüzden bu seçenek sunulmaz.

Ne değişir

36 konuşmadan aynı 108 tur; her altı konuşmadan biri ilk turundan son turuna kadar bozuk. group_id olmadan:

│ exact_label │ 83.3%    │ [74.9%, 89.9%] │ 90 / 108 observed · 0 missing · 0 excluded │

Onunla:

│ exact_label │ 83.3%    │ [65.2%, 94.6%] │ 90 / 108 observed · 0 missing · 0 excluded · 36 clusters · approximate │

Tahmin aynıdır. Aralık yaklaşık iki kat geniştir, çünkü paket 108 değil 36 bağımsız gözlem içerir. 0.70 tabanına karşı, aşağıda açıklanan açık onayla, ilk çalıştırma geçer, ikincisi geçmez:

label-floor: PASS (lower_bound_meets_minimum)
label-floor: INSUFFICIENT_EVIDENCE (interval_overlaps_threshold)

Bu veri için doğru olan ikinci yanıttır.

Açık onay

Kümelenmiş aralık, studentize edilmiş bir küme bootstrap'idir. Yaklaşık bir yöntemdir ve bir kuralın bu yönteme dayanarak karar verebilmesi için politikanın yaklaşık bir yöntemi kabul ettiğini söylemesi gerekir. Bu olmadan, aynı gruplanmış çalıştırma şöyle okunur:

label-floor: MANUAL_REVIEW (approximate_method_not_permitted)

ve 4 ile çıkar. Kuralın karar vermesine izin vermek için bunu release.yaml dosyasına ekleyin:

allow_approximate_methods: true

İki ayar daha, yönteme neyin emanet edildiğini sınırlar.

AyarVarsayılanNe yapar
min_clusters20Bundan daha az küme varsa kural insufficient_clusters ile INSUFFICIENT_EVIDENCE okur. 10 değerine kadar düşürülebilir, daha aşağıya değil.
max_missing_fractionyokBir kuralda ayarlanır. Kümelenmiş bir aralık, eksik vakaları bağımsız bir aralığın yaptığı gibi sınırlandıramaz; bu yüzden eksik vakası olan bir metrik üzerindeki kümelenmiş bir kural, kural ne kadar eksikliği kabul ettiğini belirtene kadar missingness_unbounded okur.

min_clusters: 5 ayarlayan bir politika, herhangi bir şeye karar verilmeden önce reddedilir:

Configuration error: p5.yaml: min_clusters: Input should be greater than or equal to 10

Konuşmalardan biri her turda hata verdiğinde aynı konuşmalar:

│ exact_label │ 82.9%    │ [64.3%, 94.5%] │ 87 / 105 observed · 3 missing · 0 excluded · 35 clusters · approximate │
label-floor: INSUFFICIENT_EVIDENCE (missingness_unbounded)

Kabul ettiği eksikliği belirten bir kural:

rules:
  - id: label-floor
    metric: exact_label
    min: 0.60
    max_missing_fraction: 0.15
label-floor: PASS (lower_bound_meets_minimum)

Bir oran belirtmek bir varsayımı kayda geçirir: eksik vakaların rastgele eksik olduğu varsayımını. Karar ancak bu varsayım kadar iyidir ve motorun bu varsayımı sizin yerinize yapmamasının nedeni budur.

Kümelenmiş bir paketin henüz yapamadıkları

Yalnızca geçti/kaldı oranlarının kümelenmiş bir aralığı vardır. group_id bildiren bir pakette:

  • bir ortalamanın, bir kantilin ya da bir sıralama metriğinin aralığı yoktur ve bunlardan biri

üzerindeki bir kural unsupported_dependence_structure ile MANUAL_REVIEW okur;

  • replicates: değeri 1 üzerindeyse, geçti/kaldı oranları dahil hiçbir metriğin aralığı yoktur,

çünkü iki bağımlılık yapısı birleşir ve ikisini birden modelleyen bir şey yoktur;

  • iki çalıştırmanın karşılaştırmasında hiçbir metriğin aralığı yoktur.

Gruplanmış paket üzerinde bir gecikme kantili:

│ latency_p50 │ 1.365 ms │ no interval: unsupported_dependence_structure │ p50 of 108 observed · 0 missing · 0 excluded │

En önemli olan son sınırlamadır. Konuşma paketinin iki çalıştırmasını karşılaştırırken, aday bozuk konuşmaların hepsini düzeltiyor:

oloproof compare CANDIDATE_RUN_ID BASELINE_RUN_ID --policy compare.yaml
Comparison sha256:ed7820e6471f70ce2b5e16ba618fdd48ea92a5ed39d23cce0b719ab31fcb16af of run_01M3C43MWTH8127R7S5M4N9DQ9 against run_01M3C43J2DVM93EWWWRBMRW22E · 108 paired cases
exact_label: +16.7 points · 108 paired · 0 missing · 0 excluded
  no interval: unsupported_dependence_structure
Decisions
  no-regression  exact_label  non-inferiority, margin 5.0 points  MANUAL_REVIEW  unsupported_dependence_structure
Gate: BLOCK (exit 4)

Kümelenmiş paketler için hiçbir eşleştirilmiş yöntem doğrulama tablosunu geçmedi; bu yüzden karşılaştırma farkı bildirir ve yaklaşık bir karar vermek yerine bir kişiye sorar. INSUFFICIENT_EVIDENCE yerine MANUAL_REVIEW, çünkü aynı türden daha fazla vaka bunu düzeltmez.

Sonraki adımlar

verildiğini anlatır.