一、概述
tf的公共API。随机名称空间。
1、模块
- experimental 模块:用于tf.random的公共API。实验名称空间。
2、函数
- all_candidate_sampler(...): 生成所有类的集合。
- categorical(...): 从分类分布中抽取样本。
- fixed_unigram_candidate_sampler(...): 使用提供的(固定的)基本分布对一组类进行示例。
- gamma(...): 从每个给定的伽马分布中绘制形状样本。
- learned_unigram_candidate_sampler(...): 从训练期间学到的分布中抽取一组类作为样本。
- log_uniform_candidate_sampler(...): 使用log_uniform (Zipfian)基分布对一组类进行示例。
- normal(...): 从正态分布中输出随机值。
- poisson(...): 从每个给定的泊松分布中提取形状样本。
- set_seed(...): 设置图形级随机种子。
- shuffle(...): 随机打乱张量的第一个维度。
- stateless_categorical(...): 从分类分布中提取确定性伪随机样本。
- stateless_normal(...): 从正态分布输出确定的伪随机值。
- stateless_truncated_normal(...): 输出确定性伪随机值,截断正态分布。
- stateless_uniform(...): 从均匀分布中输出确定的伪随机值。
- truncated_normal(...): 从截断的正态分布中输出随机值。
- uniform(...): 从均匀分布中输出随机值。
- uniform_candidate_sampler(...): 使用统一的基分布对一组类进行采样。
二、重要的函数
1、tf.random.multinomial
从多项分布中抽取样本。(弃用)
tf.random.multinomial(
logits,
num_samples,
seed=None,
name=None,
output_dtype=None
)
例:
# samples has shape [1, 5], where each value is either 0 or 1 with equal
# probability.
samples = tf.random.categorical(tf.math.log([[10., 10.]]), 5)
参数:
- logits:带形状的二维张量[batch_size, num_classes]。每个切片[i,:]表示所有类的非标准化log- probability。
- num_samples: 0-D。为每个行切片绘制独立样本的数量。
- seed:一个Python整数。用于为分布创建随机种子。有关行为,请参见tf.compat.v1.set_random_seed。
- name:操作的可选名称。
- output_dtype:用于输出的整数类型。默认为int64。
返回值:
- 绘制的形状样本[batch_size, num_samples]。