ニューラルネットワークの仕組みと活性化関数・誤差関数・正則化・誤差逆伝播・最適化という学習の土台を理解できるようになります
ディープラーニングの土台であるニューラルネットワークを学びます。基礎層では、脳のはたらきをまねた仕組み、入力層・隠れ層・出力層の三層構造、そしてなぜ大量のデータと計算資源が要るのかをつかみます。深掘り層では、単純パーセプトロンと多層パーセプトロンの違い、隠れ層の役割、CPU・GPU・TPUがそれぞれ得意とすることまで説明できるようになります。
ニューラルネットワークの各神経細胞が使う活性化関数を学びます。基礎層では、活性化関数が果たす役割、つまり「まっすぐな関係しか表せない計算に、曲がりを持ち込む」ことをつかみます。深掘り層では、シグモイド関数・tanh関数・ReLU関数・Leaky ReLU関数・ソフトマックス関数のそれぞれの形と使い分けを数式も交えて説明できるようになります。
ニューラルネットワークの学習の目印になる誤差関数を学びます。基礎層では、誤差関数が「予測と正解のずれをはかる、学習の目印」であることをつかみます。深掘り層では、平均二乗誤差関数・交差エントロピー・カルバック・ライブラー情報量(KL)・Contrastive Loss・Triplet Lossが、それぞれどんなタスクでずれをはかるのかを説明できるようになります。
ニューラルネットワークがどの重みを直せばよいかを知る仕組み、誤差逆伝播法を学びます。基礎層では、誤差を出口から入口へ後ろ向きにたどり、各重みの責任を割り当てることをつかみます。深掘り層では、連鎖律・信用割当問題・勾配消失問題・勾配爆発問題を数式も交えて説明できるようになります。
モデルが訓練データを丸暗記してしまうのを防ぐ正則化を学びます。基礎層では、正則化が「複雑さに罰則を与えて、ちょうどよい複雑さに保つ」ことをつかみます。深掘り層では、L0正則化・L1正則化・L2正則化のちがい、ラッソ回帰とリッジ回帰の対応、そしてドロップアウトの仕組みを数式も交えて説明できるようになります。
誤差を小さくする方向へ重みを動かす勾配降下法を学びます。基礎層では、傾きの下る方向へ一歩ずつ進んで谷を目指すことをつかみます。深掘り層では、学習率の意味、バッチ学習・ミニバッチ学習・オンライン学習のちがい、確率的勾配降下法(SGD)、そしてイテレーションとエポックという学習の数え方を数式も交えて説明できるようになります。
勾配降下法をより賢くする最適化アルゴリズムを学びます。基礎層では、まっすぐ下るだけでは行き詰まることがあり、勢いや歩幅を工夫することをつかみます。深掘り層では、局所最適解・大域最適解・鞍点という行き詰まりの正体と、モーメンタム・AdaGrad・AdaDelta・RMSprop・Adam・AdaBound・AMSBoundという手法の系譜を説明できるようになります。
学習をうまく進めるための調整を学びます。基礎層では、学習の前に決める設定があり、止めどきや設定選びが結果を左右することをつかみます。深掘り層では、早期終了・二重降下現象・ノーフリーランチの定理・ハイパーパラメータ・グリッドサーチ・ランダムサーチを説明できるようになります。
学習の調整のレッスンの続きとして、モデルを大きくすると性能がどう変わるのかを掘り下げます。規模の3つの軸、大きくするほど性能がなめらかに上がるスケーリング則、限られた計算をパラメータとデータにどう配分するのがよいか、ある規模を境に新しい力が現れる創発能力とその議論、そして規模だけでは足りない点までを実装のコードは扱わず、なぜ規模が効くのかに絞って説明します。