タダです。
今回は8章のディープラーニングについての勉強まとめです。最後の章になります。
※記事は理解ができるたびに何度もアップデートしていこうと思います。 www.oreilly.co.jp
目次
なお、各章の内容は次の通りです。
- 1章 Python入門
- 2章 パーセプトロン
- 3章 ニューラルネットワーク
- 4章 ニューラルネットワークの学習
- 5章 誤差逆伝播法
- 6章 学習に関するテクニック
- 7章 畳み込みニューラルネットワーク
- 8章 ディープラーニング
8.1
- CNNのネットワークを深くしたものをVGGという
- 重みの初期値にHeの初期値、重みパラメーターの更新にAdamを使う
- 後段の全結合層では、Dropoutレイヤを使う
- 画像認識度は高く、誤認識率も低いネットワークを構成できる
- 画像の認識精度を高めるための手法として以下のものがある
- アンサンブル学習
- 学習係数の減衰
- Data Augmentation(データ拡張)
- Data Augmentationは入力画像(訓練画像)をアルゴリズムによって人工的に拡張する
- この手法で訓練画像を効率的に増やせれば、認識精度を向上できる
- 層を深くすることの重要性について、理論的に多くのことはわからない
- ただ、層を深くすることで階層的に情報を渡せる(前の層で抽出した特徴を次層で情報として使えるためより高度な学習ができる)
- 層を深くするメリットは、ネットワークのパラメータ数を少なくできる
- 層を深くすれば学習データを少なく、高速に学習ができる(層を深くすると学習する問題を階層的に分解することができる)
8.2
- ディープラーニングが注目を浴びるきっかけになったのはILSVRCがきっかけといわれている
- 本節ではIVSVRCを軸に、最近のディープラーニングのトレーニングをみる
- ImageNetは100万枚を超える画像のデータセット
- 近年、VGG、GoogLeNet、ResNetは有名なネットワーク
- VGGはCNNだが畳み込み層や全結合層(重みのあるそう)を全部で16層(もしくは19層)まで重ねている点が特徴
- 3 × 3の小さなフィルターによる畳み込み層を連続して行っているところが注目ポイント
- GoogLeNetもCNNだが、ネットワークが縦方向の深さだけでなく、横方向にも深さがある
- 横方向の広がりはインセプション構造と呼ばれる
- ResNetはMicroSoftによって開発されたネットワーク
- 層を深くしすぎるとうまく学習できない問題があるが、ResNetではスキップ構造やバイパスという仕組みを使って、左記の問題を解決する
8.3
8.4
8.5
※ディープラーニングの今後の話のため割愛
まとめ
以上がゼロから作る Deep Learningの全章まとめになります。
一冊分の毎週の学習が完了したので振り返りをします。
よかったこと
- 隔週でブログを書くため本を読み進める癖がついた
- 業務以外の知識の習得のきっかけができた
- 社内でも輪読会を行っています
- 以前よりディープラーニングの専門用語への抵抗が少なくなって、専門の文章でも読み進めたりできるようになった
よくなかったこと
- 毎週1章分を読み進めるということができていない週があった
- 理解が追いついていない部分が多々ある
- もう一度読んだり、関連書籍・ページなどで補完する
- 数式に抵抗があり、どのような計算を行っているのかがわかりきっていない
- JupyterNotebookで数式処理をやってもらったらわかりやすかったのでこちらで勉強したい
来週からはコンテナの勉強をしようと思います。
こちらの本が積読になっているので消化します。 http://amzn.asia/6xzNUQm