|
TensorRT 10.8.0
|
网络定义中的归一化层。 更多...
#include <NvInfer.h>
公共成员函数 | |
| void | setEpsilon (float eps) noexcept |
| 设置用于归一化计算的 epsilon 值。 更多... | |
| float | getEpsilon () const noexcept |
| 获取用于归一化计算的 epsilon 值。 更多... | |
| void | setAxes (uint32_t axesMask) noexcept |
| 设置归一化计算的缩减轴。 更多... | |
| uint32_t | getAxes () const noexcept |
| 获取用于归一化计算的轴值。 更多... | |
| void | setNbGroups (int64_t nbGroups) noexcept |
| 设置用于在归一化计算中拆分通道的组数。 更多... | |
| int64_t | getNbGroups () const noexcept |
| 获取用于拆分通道以进行归一化计算的组数。 更多... | |
| void | setComputePrecision (DataType type) noexcept |
| 设置此层的计算精度。 更多... | |
| DataType | getComputePrecision () const noexcept |
| 获取此层的计算精度。 更多... | |
继承自 nvinfer1::ILayer 的公共成员函数 | |
| LayerType | getType () const noexcept |
| 返回层的类型。 更多... | |
| void | setName (char const *name) noexcept |
| 设置层的名称。 更多... | |
| char const * | getName () const noexcept |
| 返回层的名称。 更多... | |
| int32_t | getNbInputs () const noexcept |
| 获取层的输入数量。 更多... | |
| ITensor * | getInput (int32_t index) const noexcept |
| 获取与给定索引对应的层输入。 更多... | |
| int32_t | getNbOutputs () const noexcept |
| 获取层的输出数量。 更多... | |
| ITensor * | getOutput (int32_t index) const noexcept |
| 获取与给定索引对应的层输出。 更多... | |
| void | setInput (int32_t index, ITensor &tensor) noexcept |
| 用特定的张量替换此层的输入。 更多... | |
| void | setPrecision (DataType dataType) noexcept |
| 在弱类型网络中设置此层的首选或必需的计算精度。 更多... | |
| DataType | getPrecision () const noexcept |
| 获取此层的计算精度 更多... | |
| bool | precisionIsSet () const noexcept |
| 是否已为此层设置计算精度 更多... | |
| void | resetPrecision () noexcept |
| 重置此层的计算精度 更多... | |
| void | setOutputType (int32_t index, DataType dataType) noexcept |
| 在弱类型网络中设置此层的输出类型。 更多... | |
| DataType | getOutputType (int32_t index) const noexcept |
| 获取此层的输出类型 更多... | |
| bool | outputTypeIsSet (int32_t index) const noexcept |
| 是否已为此层设置输出类型 更多... | |
| void | resetOutputType (int32_t index) noexcept |
| 重置此层的输出类型 更多... | |
| void | setMetadata (char const *metadata) noexcept |
| 为此层设置元数据。 更多... | |
| char const * | getMetadata () const noexcept |
| 获取层的元数据。 更多... | |
保护成员函数 | |
| virtual | ~INormalizationLayer () noexcept=default |
继承自 nvinfer1::ILayer 的保护成员函数 | |
| virtual | ~ILayer () noexcept=default |
继承自 nvinfer1::INoCopy 的保护成员函数 | |
| INoCopy ()=default | |
| virtual | ~INoCopy ()=default |
| INoCopy (INoCopy const &other)=delete | |
| INoCopy & | operator= (INoCopy const &other)=delete |
| INoCopy (INoCopy &&other)=delete | |
| INoCopy & | operator= (INoCopy &&other)=delete |
保护属性 | |
| apiv::VNormalizationLayer * | mImpl |
继承自 nvinfer1::ILayer 的保护属性 | |
| apiv::VLayer * | mLayer |
网络定义中的归一化层。
归一化层执行以下操作
X - 输入张量 Y - 输出张量 S - 缩放张量 B - 偏置张量
Y = (X - Mean(X, axes)) / Sqrt(Variance(X) + epsilon) * S + B
其中 Mean(X, axes) 是对一组轴的缩减,而 Variance(X) = Mean((X - Mean(X, axes)) ^ 2, axes)。
|
protectedvirtualdefaultnoexcept |
|
inlinenoexcept |
获取用于归一化计算的轴值。
|
inlinenoexcept |
获取此层的计算精度。
|
inlinenoexcept |
获取用于归一化计算的 epsilon 值。
|
inlinenoexcept |
获取用于拆分通道以进行归一化计算的组数。
|
inlinenoexcept |
设置归一化计算的缩减轴。
| axesMask | 用于归一化计算的轴。 |
|
inlinenoexcept |
设置此层的计算精度。
| type | 用于此层计算精度的数据类型。 |
此方法用于通过在混合精度模式下控制归一化计算来避免溢出错误。计算精度默认为 DataType::kFLOAT32。要覆盖此默认值,请使用此方法设置所需的计算精度。
对于弱类型网络
强类型网络拒绝调用此方法,因为计算精度通常通过将输入张量转换为所需的类型来控制。
只有 DataType::kFLOAT32 和 DataType::kHALF 是 type 的有效类型。
|
inlinenoexcept |
设置用于归一化计算的 epsilon 值。
eps 的默认值为 1e-5F。
| eps | 用于归一化计算的 epsilon 值。 |
|
inlinenoexcept |
设置用于在归一化计算中拆分通道的组数。
输入张量通道被分成 nbGroups 组,并且每组执行归一化。通道维度被认为是 [N, C, H, W, ...] 格式张量中的第二个维度。
默认的 nbGroups 为 1。
nbGroups 设置为不能均匀地除输入张量的通道数的值是错误的。nbGroups != 1 时,预计提供的 axesMask 将把所有与通道维度之后的维度对应的位设置为 1,而所有其他位设置为 0。| nbGroups | 用于拆分通道以进行归一化计算的组数。 |
|
protected |
版权所有 © 2024 NVIDIA Corporation
隐私政策 | 管理我的隐私 | 请勿出售或分享我的数据 | 服务条款 | 辅助功能 | 公司政策 | 产品安全 | 联系我们