Neural Network Consoleレイヤーリファレンス~BinaryCrossEntropy~

BinaryCrossEntropyレイヤー(2値分類交差エントロピー関数)

説明

データセットの変数との交差エントロピーを最小化するニューラルネットワークの出力層です。2値分類問題(0 or 1)を解く際に使用します。BinaryCrossEntropyの入力値は0.0~1.0(確率値)、データセットの変数は0もしくは1である必要があります。プロパティはSquaredErrorと共通です。

BinaryCrossEntropyレイヤー

誤差関数の位置づけ

誤差関数レイヤーは出力層に位置づいていますが、厳密にはこのレイヤーの手前の層が出力層です。誤差関数レイヤーは学習済モデルの実行時は手前のレイヤーの出力をそのまま出力します。
学習時は手前のレイヤーの出力を正解値と比較し、出力値と正解値の誤差を算出します。算出された誤差は各ネットワークの重みの変更に利用されます。

誤差関数の位置づけ

数式

数式

交差エントロピーについて

交差エントロピーとは、情報理論において2つの確率分布の間に定義される尺度である。
符号化方式が、真の確率分布ではなく、ある所定の確率分布qに基づいている場合に、とりうる複数の事象の中からひとつの事象を特定するために必要となるビット数の平均値を表す。
(出典:wiki)
https://ja.wikipedia.org/wiki/%E4%BA%A4%E5%B7%AE%E3%82%A8%E3%83%B3%E3%83%88%E3%83%AD%E3%83%94%E3%83%BC

↓↓↓ 以下のサイトがとても分かり易いのでリンクを掲載します。
http://cookie-box.hatenablog.com/entry/2017/05/07/121607

プロパティ

T.Dataset

データセットに含まれる変数のうち、このBinaryCrossEntropyレイヤーの出力として期待する変数の変数名を指定します。

デフォルト値 = y

T.Generator

データセットの代わりに用いるGeneratorを指定します。GeneratorプロパティがNone以外の場合、最適化時T.Datasetで指定した変数の代わりにGeneratorにより生成するデータを用います

デフォルト値 = None

  • None:データ生成を行いません
  • Uniform:-1.0~1.0の一様乱数を生成します
  • Normal:平均0.0、分散1.0であるガウス乱数を生成します
  • Constant:全ての要素が一定値(1.0)であるデータを生成します

T.GeneratorMultiplier

T.Generatorにより生成した値に対して掛ける係数を指定します。

デフォルト値 = 1

利用用途

出力結果と正解の誤差の算出に利用します。出力結果が0と1の2値の場合に使用します。
分類ネットワークにおいて使用するネットワークの基幹となるレイヤーです。

出力サイズ

入力サイズと同様

サンプル構成

CNN

CNN

補足)誤差関数の役割と学習の仕組み

https://qiita.com/Nezura/items/0a37e1746f2830e31ddc/

qiitaに丸投げです(-_-;)
何時か自分で記事にします。

【送料無料】 ソニー開発のNeural Network Console入門 増補改訂・クラウド対応版--数式なし、コーディングなしのディープラーニング / 足立悠 【本】

価格:2,592円
(2019/6/26 22:40時点)
感想(0件)

広告




スポンサーリンク
広告




広告




シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
広告