當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python PyTorch SobolEngine用法及代碼示例


本文簡要介紹python語言中 torch.quasirandom.SobolEngine 的用法。

用法:

class torch.quasirandom.SobolEngine(dimension, scramble=False, seed=None)

參數

  • dimension(Int) -要繪製的序列的維數

  • scramble(bool,可選的) -將此設置為True 將產生加擾的 Sobol 序列。加擾能夠產生更好的 Sobol 序列。默認值:False

  • seed(Int,可選的) -這是爭先恐後的種子。如果指定,隨機數生成器的種子設置為此。否則,它使用隨機種子。默認值:None

torch.quasirandom.SobolEngine 是用於生成(加擾)Sobol 序列的引擎。 Sobol 序列是低差異 quasi-random 序列的示例。

Sobol 序列引擎的這種實現能夠對最大維度為 21201 的序列進行采樣。它使用從 https://web.maths.unsw.edu.au/~fkuo/sobol/ 中使用搜索標準 D(6) 獲得的方向編號,直到維度為 21201。這是推薦的選擇作者。

參考

  • 藝術 B. 歐文。加擾 Sobol 和Niederreiter-Xing 點。複雜性雜誌,14(4):466-489,1998 年 12 月。

  • I.M.索博爾。立方體中點的分布和積分的準確評估。 ZH。維奇斯爾。填充。我在。物理學,7:784-802,1967。

例子:

>>> soboleng = torch.quasirandom.SobolEngine(dimension=5)
>>> soboleng.draw(3)
tensor([[0.0000, 0.0000, 0.0000, 0.0000, 0.0000],
        [0.5000, 0.5000, 0.5000, 0.5000, 0.5000],
        [0.7500, 0.2500, 0.2500, 0.2500, 0.7500]])

相關用法


注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torch.quasirandom.SobolEngine。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。