cuDNN DropoutDescriptor 结构体详解
cuDNN中cudnnDropoutDescriptor_t是一个指向cudnnDropoutDescriptor结构体的指针类型,该结构体用于定义dropout操作的配置信息。
结构体定义如下:
typedef struct cudnnDropoutStruct* cudnnDropoutDescriptor_t;
struct cudnnDropoutStruct {
void *reserveSpace;
size_t reserveSpaceSizeInBytes;
unsigned long long seed;
float dropout;
void *states;
size_t statesSizeInBytes;
unsigned long long statesSeed;
};
其中,reserveSpace 和 states 是内部使用的空间,用户不需要进行设置或管理。其他字段的含义如下:
reserveSpaceSizeInBytes:reserveSpace空间的大小(字节)。seed:随机数种子,用于生成随机dropout掩码。dropout:丢弃率,即被丢弃的神经元比例。statesSizeInBytes:states空间的大小(字节),用于保存生成dropout掩码的状态信息。statesSeed:states的随机数种子。
用户可以通过以下函数操作cudnnDropoutDescriptor_t对象:
cudnnCreateDropoutDescriptor():创建cudnnDropoutDescriptor_t对象。cudnnSetDropoutDescriptor():设置相关参数。cudnnDestroyDropoutDescriptor():销毁cudnnDropoutDescriptor_t对象。
原文地址: https://www.cveoy.top/t/topic/opDH 著作权归作者所有。请勿转载和采集!