DropoutLayer

DropoutLayer[]

表示一个网络层,在训练期间按 0.5 的概率将其输入元素设为零.

DropoutLayer[p]

在训练期间按概率 p 将其输入元素设为零.

更多信息和选项

  • DropoutLayer 通常用来作为神经网络正则化的一种形式.
  • DropoutLayer 通常用在 NetChainNetGraph 等函数内部.
  • 可以包括以下可选参数:
  • Method "Dropout"使用的丢掉网络层的方法
    "OutputPorts" "Output"输出端口
  • Method 选项的可能的显式设置包括:
  • "AlphaDropout"保持输入常数的均值和方差不变;旨在与 ElementwiseLayer["SELU"] activation 一起使用
    "Dropout"在训练期间按概率 p 把输入元素设为零,把剩下的元素乘以 1/(1-p)
  • "OutputPorts" 选项的可能设置包括:
  • "BinaryMask"应用于输入数据的二进制掩码
    "Output"dropout 的输出
    {port1,}有效端口的列表
  • DropoutLayer 开放下列端口,以便用于 NetGraph 等:
  • "Input"任意阶的数组或数组序列
    "Output"任意阶的数组或数组序列
  • DropoutLayer 通常会从 NetChain 等函数中的上下文推断出输入的维度. 要显式指定如 {n1,n2,} 这样的维度,可以用 DropoutLayer["Input"->{n1,n2,}].
  • DropoutLayer[][input] 显式计算应用网络层后的输出.
  • DropoutLayer[][{input1,input2,}] 显式计算每个 inputi 的输出.
  • NumericArray 作为输入时,输出将是 NumericArray.
  • DropoutLayer 只是在训练中随机把输入元素置零. 在计算中 DropoutLayer 保持输入不变,除非在应用该层时指定了 NetEvaluationMode->"Train".
  • Options[DropoutLayer] 给出构建网络层的默认选项的列表. Options[DropoutLayer[]]给出在一些数据上运行网络层的默认选项列表.
  • Information[DropoutLayer[]] 给出关于该网络层的报告.
  • Information[DropoutLayer[],prop] 给出 DropoutLayer[] 的属性 prop 的值. 可能的属性NetGraph 一样.

范例

打开所有单元关闭所有单元

基本范例  (1)

创建一个 DropoutLayer

将其应用到一个输入,保持其不变:

NetEvaluationMode 来强制 DropoutLayer 的训练行为:

范围  (2)

创建具有特定概率的 DropoutLayer

对输入数据应用该层,输入保持不变:

对输入数据应用该层,指定使用训练行为:

创建一个 DropoutLayer,接受一幅 RGB 图像,返回一幅 RGB 图像:

通过把每个像素的颜色分量随机且独立的置零,DropoutLayer 对图像的 3 阶数组进行操作:

选项  (2)

Method  (1)

"AlphaDropout" 作为丢掉网络层的方法,创建一个 DropoutLayer

将其应用于输入数据,指定使用训练模式:

如果输入数据的平均值为 0,方差为 1,那么输出将具有相同的均值和方差:

标准丢弃方法所得的结果则不是这样的:

"OutputPorts"  (1)

创建一个 DropoutLayer,除输出外,还产生二进制掩码:

应用于输入数据:

应用于输入数据,指定应进行训练:

属性和关系  (1)

DropoutLayer 可被用在 NetChain 的循环层之间来进行正则化. 一个常见的用来对句子进行分类的网络可能会用以下形式采用 DropoutLayer

通过直接使用循环层的 "Dropout" 选项可以实现更复杂的 dropout 操作形式:

可能存在的问题  (1)

默认情况下,由 NetEvaluationMode->"Train" 产生的任何随机性不受 SeedRandomBlockRandom 的影响:

通过选项 RandomSeedingInherited 改变行为:

用选项 RandomSeeding 控制随机性:

Wolfram Research (2016),DropoutLayer,Wolfram 语言函数,https://reference.wolfram.com/language/ref/DropoutLayer.html (更新于 2020 年).

文本

Wolfram Research (2016),DropoutLayer,Wolfram 语言函数,https://reference.wolfram.com/language/ref/DropoutLayer.html (更新于 2020 年).

CMS

Wolfram 语言. 2016. "DropoutLayer." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2020. https://reference.wolfram.com/language/ref/DropoutLayer.html.

APA

Wolfram 语言. (2016). DropoutLayer. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/DropoutLayer.html 年

BibTeX

@misc{reference.wolfram_2024_dropoutlayer, author="Wolfram Research", title="{DropoutLayer}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/DropoutLayer.html}", note=[Accessed: 25-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_dropoutlayer, organization={Wolfram Research}, title={DropoutLayer}, year={2020}, url={https://reference.wolfram.com/language/ref/DropoutLayer.html}, note=[Accessed: 25-November-2024 ]}