[Deep Learning Specialization]Neural Networks and Deep Learning-Deep Neural Networks
1st course: Neural Networks and Deep Learning
🗂 目次
第1章:Deep Learningにインポート
第2章:Neural Networks Basics
第3章:Shallowニューラルネットワーク
第4章:Deep Neural Networks
4. Deep Neural Networks
Deep Neural Networksは,以前に述べた浅いニューラルネットワークから発展し,より深い人工ニューラルネットワークを意味する.
今回の講座では,浅いニューラルネットワークの内容に基づいて,2つのhidden layerとoutput layerからなる3層ニューラルネットワークがどのように学習と更新されているかを理解した.
そして、Deepニューラルネットワークの性能向上講座の2回目の授業の準備をしました.
1. Deep L-layer neural network
浅い層のニューラルネットワークの中で1つの隠れた層があって,ノードと層の上でLogistic回帰の計算過程を理解します
複数の隠蔽層が存在するモデルをdeepニューラルネットワークと呼び,簡単な表現を再紹介する
2. Forward Propagation in a Deep Network
deepニューラルネットワークでは,順方向伝搬も浅い層と同じ過程を経験した.
浅いものから2回までの過程でdeepは層の個数に基づいて計算過程を繰り返し,ベクトル化によりxxxにlogistic回帰とアクティブ化過程を適用する
計算プロセスがlayerの個数で繰り返されると、layerとlayerは順次影響を及ぼすため、for loopプロセスを行わざるを得ない.
3. Getting your matrix dimensions right
deepニューラルネットワークには多くの層が存在し,それに応じて多くのパラメータが存在する.
各層に存在するw[i],b[i]w^{[i]},b^{[i]}w[i],b[i]パラメータは,階層が前層と現在層のノード(ニューロン)個数によって決定されることが分かる.
授業中のニューラルネットワークのパラメータ化方法をコードとして簡単に実現する.
L = 5 # layer 개수
layer_dims[3, 5, 4, 2] # 각 layer의 노드 개수
for l in range(1, L):
parameters['W' + str(l)] = np.random.randn(layer_dims[l], layer_dims[l-1]) * 0.01
parameters['b' + str(l)] = np.zeros(shape = (layer_dims[l], 1))
# W1.shape = (3,2), b1.shape = (3,1) -> Z1.shape = (3,m)
# W2.shape = (5,3), b1.shape = (5,1)
# W3.shape = (4,5), b2.shape = (4,1)
# W4.shape = (2,4), b3.shape = (2,1)
# W5.shape = (1,2), b4.shape = (1,1)
4. Why deep representations?
では,deepニューラルネットワークが浅いニューラルネットワークよりも性能が優れている理由が分かる.
顔認識または顔検出システムの過程において,浅い層と深い層のニューラルネットワークの違いを簡単に見ることができ,この2つのニューラルネットワークは決定的な隠蔽層数の違いを有する.
3つの隠層からなる顔認識人工ニューラルネットワークシステムにおいて、第1の隠層は、画像のエッジを識別するために特徴検出器またはエッジ検出器として機能することができる.
2番目の非表示層では、目、鼻、口などの顔の部位を知ることができます.
最後の3番目の隠蔽層では、最終的に顔部位を組み合わせ、出力層に顔認識結果を表示する.
hidden layerの役割は上記のように明確に決定されていないが、hidden layerが深いほど、入力データの特徴を具体的に理解することができる.
各非表示レイヤは、基本的に前のレイヤの計算結果を統合しています.これは、データが非表示レイヤを通過するほど、より密で敏感な情報を抽出する可能性が高いことを意味します.
5. Building blocks of deep neural networks
各非表示レイヤを1つのブロックとして扱う場合、順方向ステップと後方向ステップの理解は、順方向ステップと後方向ステップの理解よりも容易になります.
各非表示レイヤの出力は、アクティブ化関数が有効なZ[l]=W[l]alͧ1+b[l]Z^{l-1}+b^{[l]}Z[l]=W[l]al871+b[l]のパラメータを返します.これらの値をキャッシュすると、次のステップで非常に役立ちます.
6. Forward and Backward Propagation
逆方向のプロセスでは、実際の値とy hatからキャッシュされる各レイヤのZZZ値によって損失を低減することができる.
逆計算の過程で各層を求めるda[l-1]da^{[l-1]}da[l-1]は逆計算の過程の核心であり,このとき発生するdW,dbdW,dbdW,db値に応じてW,bW,bW,bを繰り返し更新する.
7. Parameters vs Hyperparameters
deepニューラルネットワークにはパラメータだけでなく,超パラメータも存在し,両者を良好に調整してこそ,良好な性能と結果を得ることができる.
次のスーパーパラメータがあります.
非表示レイヤ番号
これらのスーパーパラメータは、W、bW、bW、bを調整する役割を果たし、絶対最適値は存在しない
モデルの最適パラメータは、データ、ターゲット、環境などの要因によって異なるため、最適な結果を得るためにさまざまな試みが必要です.
Reference
この問題について([Deep Learning Specialization]Neural Networks and Deep Learning-Deep Neural Networks), 我々は、より多くの情報をここで見つけました https://velog.io/@jinseock95/CourseraDeep-Learning-Specialization1st-Neural-Networks-and-Deep-Learning-Deep-Neural-Networksテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol