文档反馈

问题文档片段

问题文档片段包含公式时,显示为空格。

提交类型
issue

有点复杂...

找人问问吧。

请选择提交类型

问题类型
规范和低错类

- 规范和低错类:

- 错别字或拼写错误,标点符号使用错误、公式错误或显示异常。

- 链接错误、空单元格、格式错误。

- 英文中包含中文字符。

- 界面和描述不一致,但不影响操作。

- 表述不通顺,但不影响理解。

- 版本号不匹配:如软件包名称、界面版本号。

易用性

- 易用性:

- 关键步骤错误或缺失,无法指导用户完成任务。

- 缺少主要功能描述、关键词解释、必要前提条件、注意事项等。

- 描述内容存在歧义指代不明、上下文矛盾。

- 逻辑不清晰,该分类、分项、分步骤的没有给出。

正确性

- 正确性:

- 技术原理、功能、支持平台、参数类型、异常报错等描述和软件实现不一致。

- 原理图、架构图等存在错误。

- 命令、命令参数等错误。

- 代码片段错误。

- 命令无法完成对应功能。

- 界面错误,无法指导操作。

- 代码样例运行报错、运行结果不符。

风险提示

- 风险提示:

- 对重要数据或系统存在风险的操作,缺少安全提示。

内容合规

- 内容合规:

- 违反法律法规,涉及政治、领土主权等敏感词。

- 内容侵权。

请选择问题类型

问题描述

点击输入详细问题描述,以帮助我们快速定位问题。

mindspore.ops.UniformCandidateSampler

class mindspore.ops.UniformCandidateSampler(num_true, num_sampled, unique, range_max, seed=0, remove_accidental_hits=False)[源代码]

使用均匀分布对一组类别进行采样。

此函数使用均匀分布从[0, range_max-1]中采样一组类(sampled_candidates)。如果 uniqueTrue ,则候选采样没有重复;如果 uniqueFalse ,则有重复。

更多参考详见 mindspore.ops.uniform_candidate_sampler()

警告

  • Ascend后端不支持随机数重现功能, seed 参数不起作用。

  • Ascend后端暂不支持动态shape场景。

参数:
  • num_true (int) - 每个训练样本的目标类数。

  • num_sampled (int) - 随机采样的类数。 sampled_candidates 的shape将为 num_sampled 。如果 uniqueTrue ,则 num_sampled 必须小于或等于 range_max

  • unique (bool) - 表示一个batch中的所有采样类是否唯一。

  • range_max (int) - 可能的类数,该值必须是非负的。

  • seed (int,可选) - 随机种子,该值必须是非负的。如果 seed 的值为 0 ,则 seed 的值将被随机生成的值替换。默认值: 0

  • remove_accidental_hits (bool,可选) - 表示是否移除accidental hit。accidental hit表示其中一个 true_classes 目标类匹配 sampled_candidates 采样类之一,设置为 True 表示移除等于目标类的采样类。默认值: False

输入:
  • true_classes (Tensor) - 输入Tensor,目标类,其shape为 (batch_size,num_true)。 其元素值范围需要在 [0,range_max)

输出:
  • sampled_candidates (Tensor) - 候选采样与目标类之间不存在联系,其shape为 (num_sampled,)

  • true_expected_count (Tensor) - 在每组目标类的采样分布下的预期计数。Shape为 (batch_size,num_true)

  • sampled_expected_count (Tensor) - 每个候选采样分布下的预期计数。Shape为 (num_sampled,)

支持平台:

Ascend GPU CPU

样例:

>>> import numpy as np
>>> from mindspore import Tensor, ops
>>> sampler = ops.UniformCandidateSampler(1, 3, False, 4, 1)
>>> output1, output2, output3 = sampler(Tensor(np.array([[1], [3], [4], [6], [3]], dtype=np.int64)))
>>> print(output1.shape)
(3,)
>>> print(output2.shape)
(5, 1)
>>> print(output3.shape)
(3,)