私はバッチ正規化ペーパー [1]を読んでいて、正規化を慎重に行う必要がある理由を示すために、例を示すセクションが1つありました。正直なところ、この例がどのように機能するのか理解できません。私ができる限り彼らの論文を理解することに本当に興味があります。最初にここで引用させてください:
たとえば、学習バイアスbを追加し、トレーニングデータに対して計算されたアクティベーションの平均を減算することによって結果を正規化する入力uを含むレイヤーを考えます。ここで、 はトレーニングセットのの値のセットであり、です。勾配降下工程は、の依存性は無視された場合はで、それが更新され、。次に、です。したがって、への更新の組み合わせ その後の正規化の変更により、レイヤーの出力も変更されず、その結果、損失も発生しませんでした。
私はメッセージを理解していると思います。正規化を適切に行わなければ、それは悪いことです。彼らが使用している例がこれをどのように描写しているかは私にはわかりません。
困惑している点について具体的に説明していないと、誰かを助けるのは難しいことは承知しているので、次のセクションで、説明について混乱していることを説明します。
私の混乱のほとんどは表記法かもしれないと思うので、はっきりさせておきます。
まず、筆者を混乱させるものの1つは、著者がネットワーク内にユニットを持つことの意味と、アクティベーションとは何かです。通常、アクティベーションは次のように考えます。
ここで、は、最初の入力レイヤーからの生の特徴ベクトルです。
また、私が最初に混乱するのは(前の理由により)、彼らが実際に説明しようとしているシナリオが何であるかだと思います。それは言う:
トレーニングデータに対して計算されたアクティベーションの平均を差し引くことにより、結果を正規化します。ここで、
彼らが言っているのは、フォワードパスによって計算されたアクティベーションを使用する代わりに、平均アクティベーションを差し引くことによって、ある種の「正規化」を実行することだと思います。:
それを逆伝播アルゴリズムに渡します。または、少なくともそれは私にとって意味のあることです。
これに関連して、彼らがと呼ぶものはおそらくでしょうか?彼らがそれを「入力」と呼び、方程式を持っているので、それは私が推測することです(私は彼らがニューラルネットワークに恒等/線形活性化ユニットを使用していると思いますか?)。
さらに私を混乱させるために、彼らはを偏微分に比例するものとして定義しますが、偏微分はに関して計算されます。これは私には本当に奇妙に見えます。通常、勾配降下法を使用する場合の偏導関数は、ネットワークのパラメーターに関するものです。オフセットの場合、私は考えたでしょう:
正規化されたアクティベーションに関しての導関数を取るよりも意味があります。私は、彼らがに関して微分を取ると思います理由を理解しようとしていたと私は、彼らが書いたとき、彼らはデルタとしていたのかもしれないと思った以来、デルタの方程式は次のとおりであるため、これは通常、事前アクティブ化に関する微分を持つback-propアルゴリズムの唯一の部分です。
私を混乱させる別のことは:
次に、です。
彼らは上記の方程式で何を計算しようとしているのか実際には言っていませんが、が更新された後、更新された正規化アクティベーション(最初のレイヤーについて?)を計算しようとしていると思います。私は正しい方程式があったはずだと思うので、私が彼らのポイントを買うかどうかわかりません:
これは、パラメータ変更をキャンセルしません。しかし、私は彼らが何をしているのか本当にわからないので、私は推測しているだけです。彼らが書いたその方程式は正確には何ですか?
これが正しい理解であるかどうかはわかりませんが、私は彼らの例をいくつか考えました。彼らの例には非線形アクティベーションユニットがなく(アイデンティティを使用)、彼らは最初の入力層のみについて話しているようですか?彼らは多くの詳細を省略し、表記法はあまり明確ではないので、彼らが話していることを正確に推測することはできません。誰かがこの例を各レイヤーで何が起こっているかを表す表記で表現する方法を知っていますか?誰かがその例で実際に何が起こっているのかを理解していて、私に彼らの知恵を共有したいですか?
[1]:Ioffe S.とSzegedy C.(2015)、
「バッチ正規化:内部共変量シフトの削減によるディープネットワークトレーニングの加速」、
第32回機械学習に関する国際会議の議事録、リール、フランス、2015。Journalof
Machine Learning研究:W&CPボリューム37