随机
用于采样的具有确定性、同步种子的随机数生成器。
函数
通过 |
|
使用同步种子从序列中返回一个随机元素。 |
|
返回一个可以在内部识别的指示器(None),用于对原始选择进行采样。 |
|
使用确定性种子生成一个来自 [0, 1) 的随机数。 |
|
从给定总体中抽取样本元素,使用确定性种子。 |
|
使用确定性种子在原地打乱序列。 |
- centroid(seq)
通过
torch.prod()减少序列的每个元素,然后返回最接近的序列元素。- Parameters:
seq (Sequence[T]) – 用于确定质心的序列。
- Returns:
序列的质心。
- Return type:
T
此函数可用于通过
mtn.sample()对搜索空间的中心子网进行采样。中心子网旨在廉价地近似由model定义的搜索空间的中位数。示例: .. code-block:: python
从 modelopt.torch.nas 导入 random 导入 modelopt.torch.nas 作为 mtn
# 对转换模型的中心子网进行采样 config = mtn.sample(model, random.centroid)
- choice(seq)
使用同步种子从序列中返回一个随机元素。
- Parameters:
seq (Sequence[T]) – 从中采样的序列。
- Returns:
从序列中随机选取一个元素。
- Return type:
T
此函数在所有GPU之间同步,可用于通过
mtn.sample()从搜索空间中采样随机子网,从而确保所有GPU上的子网/配置相同。示例: .. code-block:: python
从 modelopt.torch.nas 导入 random 导入 modelopt.torch.nas 作为 mtn
# 从转换后的模型中随机采样一个子网 config = mtn.sample(model, random.choice)
# random.choice 也是 sample 的默认选项 config = mtn.sample(model)
- original(seq)
返回一个可以在内部识别的指示器(None),用于对原始选择进行采样。
- Parameters:
seq (Sequence[T]) – 我们想要从中“选择”原始选择的选项序列。
- Returns:
None 表示从序列中内部选择原始选择。
- Return type:
无
此函数可用于通过
mtn.sample()对搜索空间的原始子网进行采样。原始子网对应于转换过程之前的模型架构。示例: .. code-block:: python
从 modelopt.torch.nas 导入 random 导入 modelopt.torch.nas 作为 mtn
# 对转换模型的原始子网进行采样 config = mtn.sample(model, random.original)
- random()
使用确定性种子生成一个来自 [0, 1) 的随机数。
- Return type:
浮点数
- sample(*args, **kwargs)
从给定总体中抽取样本元素,使用确定性种子。
- shuffle(seq)
使用确定性种子在原地打乱序列。
- Parameters:
seq (MutableSequence[Any]) –