当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python mxnet.ndarray.contrib.rand_zipfian用法及代码示例


用法:

mxnet.ndarray.contrib.rand_zipfian(true_classes, num_sampled, range_max, ctx=None)

参数

  • true_classes(NDArray) - 目标类的一维 NDArray。
  • num_sampled(int) - 随机抽样的类数。
  • range_max(int) - 可能的类数。
  • ctx(mxnet.context.Context) - 输出的设备上下文。默认为当前上下文。

返回

  • samples(NDArray) - 采样的一维候选类int64类型。
  • expected_count_true(NDArray) - 一维真实类的预期计数float64类型。
  • expected_count_sample(NDArray) - 在一维中采样候选的预期计数float64类型。

从大约 log-uniform 或 Zipfian 分布中抽取随机样本。

此操作随机抽样num_sampled 候选整数范围[0,range_max)。 sampled_candidates 的元素是从基本分布中替换绘制的。

该算子的基本分布近似为 log-uniform 或 Zipfian 分布:

P(class) = (log(class + 2) - log(class + 1)) /log(range_max + 1)

当真实类大致遵循这样的分布时,此采样器很有用。例如,如果类表示按频率降序排序的词典中的单词。如果您的课程没有按频率递减排序,请不要使用此操作。

此外,它还返回每个真实类和采样类预计会出现的次数。

例子

>>> true_cls = mx.nd.array([3])
>>> samples, exp_count_true, exp_count_sample = mx.nd.contrib.rand_zipfian(true_cls, 4, 5)
>>> samples
[1 3 3 3]
<NDArray 4 @cpu(0)>
>>> exp_count_true
[ 0.12453879]
<NDArray 1 @cpu(0)>
>>> exp_count_sample
[ 0.22629439  0.12453879  0.12453879  0.12453879]
<NDArray 4 @cpu(0)>

相关用法


注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 mxnet.ndarray.contrib.rand_zipfian。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。