ゼロから作るDeep Learning 2 第3回

Contents
  1. 概要
  2. 資料置き場
  3. 範囲
  4. 1章 ニューラルネットワークの復習
  5. 1.4 ニューラルネットワークで問題を解く
  6. 1.5 計算の高速化
  7. 1.6 まとめ
  8. 所感
  9. ゼロから作るDeep Learning 2 自然言語処理編
  10. 機械学習勉強会について

nownab.log | ゼロから作るDeep Learning 2 第2回

概要

機械学習勉強会でもくもくしてる ゼロから作るDeep Learning 2 自然言語処理編 の学習メモです。

書いたコードのリポジトリはこちら。 https://github.com/nownabe/DeepLearningFromScratch2

資料置き場

今回のコードはこちら。 https://github.com/nownabe/DeepLearningFromScratch2/pull/2

範囲

  • 1 章ニューラルネットワークの復習
    • 1.4 ニューラルネットワークで問題を解く
    • 1.5 計算の高速化
    • 1.6 まとめ

1章 ニューラルネットワークの復習

1.4 ニューラルネットワークで問題を解く

1.4.1 スパイラル・データセット

1.4.2 ニューラルネットワークの実装

1.4.3 学習用のソースコード

グラフは次の節のコードを実行すると表示される。

非線形のデータがきれいに分類できてて感動した 😳

1.4.4 Trainer クラス

1.5 計算の高速化

1.5.1 ビット精度

1.5.2 GPU (CuPy)

実行可能なコードは 4 章から登場とのことだったが、せっかくなので早く試したくて 1 章のコードも GPU 対応して実行してみた。

対応のコミットはこれ。 https://github.com/nownabe/DeepLearningFromScratch2/pull/2/commits/534aa1487251dd33ac7aa423c6478e95389e25f5

結果と実行速度はこんな感じ。この章の学習だと CPU の方が 10 倍ぐらい速い。

CPU

real    0m0.655s
user    0m0.770s
sys     0m0.650s

cpu.png (33.8 kB)

GPU

real    0m6.779s
user    0m6.709s
sys     0m0.792s

gpu.png (33.7 kB)

1.6 まとめ

所感

  • ビット精度のことをきちんと説明してあったりして素晴らしい
  • グラフがカラーで見やすい
  • CuPy での実行を試せてよかった
    • そのままだと実行できないが、簡単な変更で対応できた

ゼロから作るDeep Learning 2 自然言語処理編

ゼロから作るDeep Learning ❷ ―自然言語処理編

機械学習勉強会について

有志で毎週開催している。本書はもくもく形式だが、題材によって形式は柔軟に変えている。 毎週読む範囲を決めてもくもくして、終わらなかったら次の週までにやってくるという形。

また、勉強会で書いたコードや疑問点などをまとめるために GitHub のレポジトリを活用している。 Wondershake/machine-learning-study: 機械学習勉強会