Buckets:

hf-doc-build/doc / diffusers /main /tr /api /schedulers /entropy_bound.md
mishig's picture
|
download
raw
5.3 kB

EntropyBoundScheduler

EntropyBoundScheduler, ortak entropisi entropy_bound altında kalan en düşük entropili konumları onaylar; böylece yaklaşık bağımsız tokenlar birlikte kabul edilir, geri kalanlar ise yeniden gürültülenir. Örnekleme sıcaklığını ilk adımda t_max değerinden son adımda t_min değerine kadar düşürür ve bu sayede yayınlanan checkpoint'in örnekleme cihazıyla eşleşir. Accelerated Sampling from Masked Diffusion Models via Entropy Bounded Unmasking makalesinde önerilmiştir.

Bu zamanlayıcı DiffusionGemmaPipeline tarafından kullanılır.

EntropyBoundScheduler[[diffusers.EntropyBoundScheduler]]

diffusers.EntropyBoundScheduler[[diffusers.EntropyBoundScheduler]]

diffusers.EntropyBoundScheduler(entropy_bound: float = 0.1, t_max: float = 0.8, t_min: float = 0.4, num_inference_steps: int = 32)

Kaynak

Parametreler:

entropy_bound (float, varsayılan 0.1) : Kabul edilen tokenların tolere edilen maksimum ortak entropisi. Daha büyük değerler, adım başına daha fazla token kabul eder.

t_max (float, varsayılan 0.8) : İlk gürültü azaltma adımında örneklem sıcaklığı.

t_min (float, varsayılan 0.4) : Son gürültü azaltma adımında örneklem sıcaklığı.

num_inference_steps (int, varsayılan 32) : Maksimum gürültü azaltma adımı sayısı.

Düz bozulma süreci için entropi sınırı zamanlayıcı.

Her adımda zamanlayıcı, her konum için aday bir token örnekler ve sum_i^k entropy_i - max(entropy_1, ..., entropy_k) <= entropy_bound koşulunu sağlayan k en düşük entropili konumu kabul eder. Sol taraf, kabul edilen tokenlar arasındaki ortak karşılıklı bilgiyi üstten sınırlar, bu nedenle tokenlar yaklaşık olarak bağımsızdır. Kabul edilen konumlar örneklenen tokenlarını korur; diğerleri ise düzgün rastgele tokenlarla yeniden gürültülenir (mask token yoktur).

"Entropy Bounded Unmasking ile Maskeli Difüzyon Modellerinden Hızlandırılmış Örnekleme" (https://huggingface.co/papers/2505.24857) makalesinde önerilmiştir.

Örnekleme sıcaklığı, ilk adımda t_max değerinden son adımda t_min değerine kadar aşamalı olarak düşürülür; bu, yayınlanan kontrol noktasının örnekleme cihazıyla (gürültü giderme ilerledikçe daha keskin örnekleme) uyumludur. Bu değer, hem aday örnekleme hem de kabulü yönlendiren entropi için logit'lere uygulanır.

adım[[diffusers.EntropyBoundScheduler.step]]

step(model_output: torch.Tensor, timestep: int | torch.Tensor, sample: torch.LongTensor, entropy_bound: float | None = None, generator: torch.Generator | None = None, return_dict: bool = True)

Kaynak

Parametreler:

model_output (torch.Tensor, şekli (batch_size, block_length, vocab_size)) : Modelin mevcut blok için ham logit'leri.

timestep (int veya torch.Tensor) : Gürültü azaltma zamanlamasındaki (denoising schedule) mevcut adım indeksi; tavlama (annealed) örneklem sıcaklığını belirler.

sample (torch.LongTensor, şekli (batch_size, block_length)) : Mevcut blok token kimlikleri.

entropy_bound (float, isteğe bağlı) : Bu adım için yapılandırılmış entropi sınırını geçersiz kılar.

generator (torch.Generator, isteğe bağlı) : Örnekleme için RNG.

return_dict (bool) : EntropyBoundSchedulerOutput döndürülecek mi yoksa düz bir tuple mı döndürülecek.

Entropi sınırının altındaki en düşük entropili konumları kabul edin ve kalanları yeniden gürültüleyin.

EntropyBoundSchedulerOutput[[diffusers.EntropyBoundSchedulerOutput]]

diffusers.EntropyBoundSchedulerOutput[[diffusers.EntropyBoundSchedulerOutput]]

diffusers.EntropyBoundSchedulerOutput(prev_sample: torch.LongTensor, accepted_index: torch.BoolTensor, sampled_tokens: torch.LongTensor, sampled_probs: torch.Tensor, pred_logits: torch.Tensor)

Kaynak

Parametreler:

prev_sample (torch.LongTensor, şekli (batch_size, block_length)) : Güncel gürültü azaltma adımından sonra güncellenmiş blok jetonları.

accepted_index (torch.BoolTensor, şekli (batch_size, block_length)) : Bu adımda kabul edilen (taahhüt edilen) konumların Boole maskesi.

sampled_tokens (torch.LongTensor, şekli (batch_size, block_length)) : Model logitlerinden örneklenen token kimlikleri.

sampled_probs (torch.Tensor, şekli (batch_size, block_length)) : Örneklenen tokenların olasılıkları.

pred_logits (torch.Tensor, şekli (batch_size, block_length, vocab_size)) : Bir sonraki adımın kendine koşullandırılması için adayların çekildiği, sıcaklık ölçekli logitler.

Entropi sınırı zamanlayıcısı için çıktı sınıfı.

Xet Storage Details

Size:
5.3 kB
·
Xet hash:
76741e7eb7aaea8567594fbf8052b080361ae7b92c3e526a69825160ea766771

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.