DropoutLayer

DropoutLayer[]

訓練中に確率0.5で入力要素をゼロに設定するネットの層を表す.

DropoutLayer[p]

訓練中に確率 p で入力要素をゼロに設定する.

詳細とオプション

  • DropoutLayerは,一般に,ニューラルネットワークの正規化の形式として使われる.
  • DropoutLayerNetChainNetGraph等の中で使われることが多い.
  • 次の任意パラメータを使うことができる.
  • Method "Dropout"使用するドロップアウトメソッド
    "OutputPorts" "Output"出力ポート
  • Methodオプションの使用可能な明示的設定には以下がある.
  • "AlphaDropout"入力定数の平均と分散を保つ.ElementwiseLayer["SELU"]のアクティベーションと一緒に使われるように設計されている
    "Dropout"訓練中に,確率 p で入力要素を0に設定し,余りを1/(1-p)倍する
  • 次は,"OutputPorts"オプションの可能な設定である.
  • "BinaryMask"入力データに適用されるバイナリマスク
    "Output"ドロップアウトの出力
    {port1,}有効なポートのリスト
  • DropoutLayerNetGraph等で使うために次のポートを開放する.
  • "Input"任意階数の配列または配列の列
    "Output"任意階数の配列または配列の列
  • DropoutLayerは,通常は,入力次元をNetChain等のコンテキストから推定する.次元を{n1,n2,}として明示的に指定したければDropoutLayer["Input"->{n1,n2,}]を使うとよい.
  • DropoutLayer[][input]は層を適用した出力を明示的に計算する.
  • DropoutLayer[][{input1,input2,}]は各 inputiについて出力を明示的に計算する.
  • NumericArrayが入力として与えられたときの出力はNumericArrayである.
  • DropoutLayerは,訓練中に入力要素をランダムにゼロにのみ指定する.評価中は,層の適用時にNetEvaluationMode->"Train"が指定されていない限り,DropoutLayerは入力を変更しない.
  • Options[DropoutLayer]は層を構築するデフォルトオプションのリストを与える.Options[DropoutLayer[]]はデータについて層を評価するデフォルトオプションのリストを与える.
  • Information[DropoutLayer[]]は層についての報告を与える.
  • Information[DropoutLayer[],prop]DropoutLayer[]の特性 prop の値を与える.使用可能な特性NetGraphと同じである.

例題

すべて開くすべて閉じる

  (1)

DropoutLayerを作る:

これを入力に適用する.入力は変更されない:

NetEvaluationModeを使ってDropoutLayerの訓練動作を強制する:

スコープ  (2)

特定の確率のDropoutLayerを作る:

この層を入力データに適用する.入力は変更されない:

訓練動作を使用するように指定して,この層を入力データに適用する:

RGB画像を取ってRGB画像を返すDropoutLayerを作る:

DropoutLayerは,ランダムかつ独立に各画素の個々の色成分をゼロ化することで,階数3の配列で表される画像に作用する:

オプション  (2)

Method  (1)

"AlphaDropout"をドロップアウトメソッドとして使ってDropoutLayerを作る:

訓練動作を使うように指定して,これを入力データに適用する:

入力データの平均が0で分散が1なら,出力の平均と分散もこれと同じになる:

これは,標準ドロップアウトメソッドには当てはまらない:

"OutputPorts"  (1)

出力の他にバイナリマスクを与えるDropoutLayerを作成する:

これを入力データに適用する:

訓練動作を使うように指定して入力データに適用する:

特性と関係  (1)

DropoutLayerNetChain内の再帰層間で使って正規化することができる.文章を分類するのによく使われるネットワークは,次のようにDropoutLayerと統合させてもよいかもしれない:

再帰層に直接"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 Language. 2016. "DropoutLayer." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/DropoutLayer.html.

APA

Wolfram Language. (2016). DropoutLayer. Wolfram Language & System Documentation Center. Retrieved from 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 ]}