SobolEngine
-
class torch.quasirandom.SobolEngine(dimension, scramble=False, seed=None)[исходный код] -
torch.quasirandom.SobolEngine— это движок для генерации (скремблированных) последовательностей Соболя. Последовательности Соболя — это пример квазислучайных последовательностей с низким расхождением.Эта реализация движка для последовательностей Соболя позволяет генерировать последовательности с максимальной размерностью 21201. В ней используются числа направления из https://web.maths.unsw.edu.au/~fkuo/sobol/, полученные с помощью критерия поиска D(6) для размерности до 21201. Авторы рекомендуют использовать именно этот вариант.
Литература
- Art B. Owen. Скремблирование точек Соболя и Нидеррайтера — Синга. Journal of Complexity, 14(4):466-489, декабрь 1998 г.
- I. M. Sobol. Распределение точек в кубе и точное вычисление интегралов. Zh. Vychisl. Mat. i Mat. Phys., 7:784-802, 1967.
- Параметры:
-
- dimension (Int) – Размерность генерируемой последовательности
-
scramble (bool, необязательно) – Если установить значение
True, будут генерироваться скремблированные последовательности Соболя. Скремблирование позволяет получать более качественные последовательности Соболя. По умолчанию:False. -
seed (Int, необязательно) – Начальное значение для скремблирования. Если указано, начальное значение генератора случайных чисел устанавливается в это значение. В противном случае используется случайное начальное значение. По умолчанию:
None
Примеры:
>>> 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]])-
draw(n=1, out=None, dtype=None)[исходный код] -
Функция для генерации последовательности из
nточек последовательности Соболя. Обратите внимание, что выборки зависят от предыдущих выборок. Размер результата — .- Параметры:
-
- n (Int, необязательно) – Длина последовательности точек для генерации. По умолчанию: 1
- out (Tensor, необязательно) – Выходной тензор
-
dtype (
torch.dtype, необязательно) – требуемый тип данных возвращаемого тензора. По умолчанию:None
- Тип возвращаемого значения:
-
draw_base2(m, out=None, dtype=None)[исходный код] -
Функция для генерации последовательности из
2**mточек последовательности Соболя. Обратите внимание, что выборки зависят от предыдущих выборок. Размер результата — .- Параметры:
-
- m (Int) – Показатель степени (по основанию 2), задающий число генерируемых точек.
- out (Tensor, необязательно) – Выходной тензор
-
dtype (
torch.dtype, необязательно) – требуемый тип данных возвращаемого тензора. По умолчанию:None
- Тип возвращаемого значения:
-
fast_forward(n)[исходный код] -
Функция для быстрого перемещения состояния
SobolEngineнаnшагов вперёд. Это эквивалентно генерацииnвыборок без их использования.- Параметры:
-
n (Int) – Число шагов для перемещения вперёд.
-
reset()[исходный код] -
Функция для сброса
SobolEngineв исходное состояние.
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.quasirandom.SobolEngine.html