見出し画像

ゼロからつくるDeepLearning学習中~その1

Deep Learning を深層学習する! のその後です。最初の1冊として、ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装, 斎藤 康毅著, オライリー・ジャパン を読んでいます。

平日は帰りの電車で 10 ~ 15分程度読書、帰宅後 30 分程度でコードを書いて動かしてみる (Jupyter Notebook) という感じで進めています。

1章 Python 入門

前半は Python の説明なので飛ばし読みしました。Python に慣れてない人でもこの部分があるので、無理なく入って行けると思います。

次に、NumPy、Matplotlib へ。

良いですねぇ。学生の頃 Fortran で数値計算をやりましたが、式は行列で表現できていても、プログラムする時には行列の演算をするためのサブルーチンを組んだりする必要がありました。

NumPy だと、行列の演算がそのままできちゃう。数値計算が楽。しかも結果はすぐにグラフ化できる。

今の理系の学生は Fortran でなく Python で数値計算なんだろうか?良い時代だなぁ。

2章 パーセプトロン

AND / OR / NAND を重みとバイアスのパラメータで表現する。しかも多層化すれば XOR のような非線形な概念も扱える。

なるほど。これが Deeplearning につながっていく概念かぁという感じで楽しく読めました。

3章 ニューラルネットワーク

この章は分量が多いので、少々時間がかかってます。

活性化関数 (ステップ関数、ジグモイド関数、ReLU 関数) を Matplotlib で簡単に可視化できるのが楽しい。

MNIST データセットと学習済の重みパラメータを使って推論を行うところまで進みました。学習済のパラメータがあれば、こんな単純なプログラムでこんなに高精度の分類ができるという事に驚き。

楽しいなぁ。この先も楽しみ。

画像表示については、PIL はメンテナンスされていないようなので、PILLOW を使用。使い方は PIL と同じ。(モジュール名も PIL)

pip install pillow

Twitter (https://twitter.com/alt_area)、ブログ (https://jade.alt-area.jp/) もよろしくお願いします。




Note やるからには、サポートがいただけるような役立つ記事を書きたいものです。サポートは資料購入に宛てます。