Buckets:
| # EntropyBoundScheduler | |
| `EntropyBoundScheduler` は、結合エントロピーが `entropy_bound` 以下に収まる最低エントロピーの位置をコミットします。これにより、おおよそ独立したトークンがまとめて受け入れられ、残りは再ノイズ化されます。サンプリング温度は、最初のステップで `t_max` から始まり、最後のステップで `t_min` までアニーリングされ、リリースされたチェックポイントのサンプラーと一致します。[Accelerated Sampling from Masked Diffusion Models via Entropy Bounded Unmasking](https://huggingface.co/papers/2505.24857) で提案されました。 | |
| このスケジューラは、[DiffusionGemmaPipeline](/docs/diffusers/main/ja/api/pipelines/diffusion_gemma#diffusers.DiffusionGemmaPipeline)で使用されます。 | |
| ## EntropyBoundScheduler[[diffusers.EntropyBoundScheduler]] | |
| #### diffusers.EntropyBoundScheduler[[diffusers.EntropyBoundScheduler]] | |
| ```python | |
| diffusers.EntropyBoundScheduler(entropy_bound: float = 0.1, t_max: float = 0.8, t_min: float = 0.4, num_inference_steps: int = 32) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_entropy_bound.py#L51) | |
| **パラメータ:** | |
| entropy_bound (`float`、デフォルトは 0.1) : 受け入れられたトークンの許容される最大結合エントロピーです。値を大きくすると、1 ステップあたりに受け入れられるトークン数が増えます。 | |
| t_max (`float`、デフォルトは 0.8) : 最初のデノイジングステップにおけるサンプリング温度。 | |
| t_min (`float`、デフォルト値は 0.4) : 最後のデノイジングステップにおけるサンプリング温度。 | |
| num_inference_steps (`int`、デフォルトは 32) : デノイジングステップの最大数。 | |
| 一様破損プロセス用のエントロピー境界スケジューラ。 | |
| 各ステップで、スケジューラーは各ポジションに対して候補トークンをサンプリングし、`k`個の最もエントロピーが低いポジションを受け入れます。このとき、`sum_i^k entropy_i - max(entropy_1, ..., entropy_k) <= entropy_bound`が満たされるようにします。左辺は、受け入れられたトークン間の結合相互情報量の上限を与えるため、それらは近似的に独立しています。受け入れられたポジションはサンプリングされたトークンを保持し、それ以外のポジションは、一様ランダムなトークンで再ノイズ化されます(マスクトークンは存在しません)。 | |
| 「Accelerated Sampling from Masked Diffusion Models via Entropy Bounded Unmasking」(https://huggingface.co/papers/2505.24857) で提案されました。 | |
| サンプリング温度は、最初のステップで`t_max`から始まり、最後のステップで`t_min`までアニーリングされます。これにより、公開されているチェックポイントのサンプラー(デノイジングが進むにつれてサンプリングがシャープになる)と一致します。この温度は、候補のサンプリングと、受け入れを決定するエントロピーの両方において、logits に適用されます。 | |
| #### ステップ[[diffusers.EntropyBoundScheduler.step]] | |
| ```python | |
| 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) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_entropy_bound.py#L118) | |
| **パラメータ:** | |
| model_output (`torch.Tensor`、shape `(batch_size, block_length, vocab_size)`) : 現在のブロックに対するモデルからの生の logits。 | |
| timestep (`int` または `torch.Tensor`) : 減噪スケジュール内の現在のステップインデックス。アニーリングされたサンプリング温度を設定します。 | |
| sample (`torch.LongTensor`、shape `(batch_size, block_length)`) : 現在のブロックのトークンIDです。 | |
| entropy_bound (`float`, *任意*) : このステップで設定されたエントロピーの境界値を上書きします。 | |
| generator (`torch.Generator`, *任意*) : サンプリング用の乱数生成器。 | |
| return_dict (`bool`) : [EntropyBoundSchedulerOutput](/docs/diffusers/main/ja/api/schedulers/entropy_bound#diffusers.EntropyBoundSchedulerOutput) を返すか、通常のタプルを返すかを指定します。 | |
| エントロピーの上限以下にある最低エントロピーの位置を受け入れ、残りの位置には再ノイズを適用します。 | |
| ## EntropyBoundSchedulerOutput[[diffusers.EntropyBoundSchedulerOutput]] | |
| #### diffusers.EntropyBoundSchedulerOutput[[diffusers.EntropyBoundSchedulerOutput]] | |
| ```python | |
| diffusers.EntropyBoundSchedulerOutput(prev_sample: torch.LongTensor, accepted_index: torch.BoolTensor, sampled_tokens: torch.LongTensor, sampled_probs: torch.Tensor, pred_logits: torch.Tensor) | |
| ``` | |
| [ソース](https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_entropy_bound.py#L27) | |
| **パラメータ:** | |
| prev_sample (`torch.LongTensor`、shape `(batch_size, block_length)`) : 現在のデノイジングステップ後の更新されたブロックトークン。 | |
| accepted_index (`torch.BoolTensor`、shape `(batch_size, block_length)`) : このステップで受け入れ(コミット)された位置のブールマスク。 | |
| sampled_tokens (`torch.LongTensor`、shape `(batch_size, block_length)`) : モデルの logits からサンプリングされたトークン ID。 | |
| sampled_probs (`torch.Tensor`、shape `(batch_size, block_length)`) : サンプルされたトークンの確率。 | |
| pred_logits (`torch.Tensor`、shape `(batch_size, block_length, vocab_size)`) : 次のステップの自己条件付けのために、候補がサンプリングされた温度スケーリング済み logits。 | |
| エントロピー境界スケジューラー用の出力クラス。 | |
Xet Storage Details
- Size:
- 6.16 kB
- Xet hash:
- eb7f413f2fd20cb46a6097bab7f3c68a80b8e909b80ca516e2883d865b713989
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.