LoginSignup
3
0

More than 5 years have passed since last update.

"ゼロから作るDeepLearning"を1時間でナナメ読みしてみる

Posted at

この記事は

"ゼロから作る Deep Learning (オライリー・ジャパン)"を1時間でラフに読み込みます。

まえがき

  • 誰のための本か?誰のための本ではないか?
    • Python実装を記載する代わりに、TFなどフレームワークは言及しない
    • 最新情報は記載しない

=> 入門編であること + 続きはWEBで、でOK

Python入門

  • 基本的なPythonスクリプトの使い方
  • NumPy, Matplotlib

=> さわれば身につくOK

パーセプトロン

  • 論理演算の実装
  • 重みとバイアス
  • 多層パーセプトロン

=> 神経模した

ニューラルネットワーク

  • パーセプトロンへ中間層(hidden layer)を追加した
  • 活性化関数(activation function)
    • sigmoid, step, ReLU

=> 活性化関数がしきい値を持っているのか

  • 出力層

    • 回帰問題 : 恒等関数 (データ予測に用いる)
    • 分類問題 : softmax
  • MNISTの話

  • バッチ処理で高速化

ニューラルネットワークの学習

  • 訓練データとテストデータ
  • 損失関数 (loss function)
    • 二乗和誤差 (mean squared error)
    • 交差エントロピー誤差 (cross entropy error)
  • 学習とは

    • 損失関数が小さくなるように重みパラメータを更新すること
  • ミニバッチ学習

  • 勾配 (gradient)

    • 偏微分
  • 学習アルゴリズムの実装

    • ミニバッチ学習
    • 勾配の算出
    • パラメータ更新
    • くりかえす

誤差逆伝搬

  • 重みパラメータの勾配計算を効率よく行う方法
  • 計算グラフで解く
    • 中間計算を確認できる => デバッグに役立つ

学習に関するテクニック

  • パラメータ更新
    • SGD (確率的勾配急下法:stochastic gradient descent)
    • Momentum
    • AdaGrad
    • Adam
  • 重み初期値
    • Xavier, He
  • Batch Normalization
  • 過学習対策
    • Weight decay
    • Dropout

CNN (Convolutional Neural Network)

  • NN
    • Affine -> ReLU
  • CNN

    • Conv -> ReLU -> Pooling
  • NN

    • 1次元化されるのでデータ次元が無視されてしまう
  • CNN

    • フィルタ演算
  • プーリング層の特徴

    • 最大値を取るだけなので学習パラメータなし
    • チャンネル数は変化しない
    • 微小な位置変化にロバスト
  • 代表的なCNN

    • LeNet
    • AlexNet

Deep Learning

  • Deepにする利点

    • パラメータ数を少なくできる
    • 学習データを少なくできる
  • DNN

    • ImageNet
    • VGG
    • GoogleNet
    • ResNet
  • 学習の高速化

    • GPU
    • 分散学習
    • 演算精度、bitを減らす
  • 実用例

    • 物体検出
    • セグメンテーション
    • 物体ラベリング
    • 画像生成
    • 自動運転

強化学習

  • 行動の結果として、報酬を与えて、学習をすすめる

いかがでしたか?

用語、世界観について、ざっと眺めることができた。Pythonコードは、最新論文を手元のフレームワークで実装&検証するときに応用できそう。

次に

  • 解きたい課題に対して、どういうネットワークを適用すればよいのか勘所をみにつけたい
  • ネットワークの問題点と解決方法について把握したい
  • 論文はどうせ英語で読むので、用語も英語で覚えておいたほうがぐぐらびりてぃ高そう
3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0