ネット上で無料で手に入る、TensorFlowとKerasのソースコード集を集めました。
眺めたり実際に動かしたりして理解を深めたい人向け。
他にも良いサイトがありましたらお知らせください。
(★の数は、個人的なおすすめの度合いを表しております。レビュー文も含め、個人の主観が多分に含まれていますのでご注意ください。)
TensorFlow
Hvass-Labs/TensorFlow-Tutorials: TensorFlow Tutorials with YouTube Videos (★★★)
URL : https://github.com/Hvass-Labs/TensorFlow-Tutorials
一通りの内容が揃っている上、jupyter notebookだけでなくなんとGoogle Colabでもソースが公開されているため、リンクに飛べばその場ですぐにコードを実行することができる。
しかもyoutubeの解説動画もついていて至れり尽くせり。
tensorflow/models: Models and examples built with TensorFlow (★★)
URL : https://github.com/tensorflow/models
TensorFlow公式。
TensorFlowを用いた様々なモデルの実装例が紹介されている。
特にresearchディレクトリには一通りのモデルが揃っていて、とにかく幅広い。
たくさんありすぎて逆に自分の目当てのものがどこにあるのかややわかりにくいのと、ソースコードがかなり細かめの粒度で分かれているので、好みが分かれると思う。
tensorflow/tensorflow/contrib/eager/python/examples (★)
URL : https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/eager/python/examples
こちらもTensorFlowの公式。
先程のものとは打って変わって、代表的なアルゴリズムを絞り込んでいる。
大部分が*.pyのコードなのが残念。
aymericdamien/TensorFlow-Examples (★★)
URL : https://github.com/aymericdamien/TensorFlow-Examples
量は多くないが、内容ごとに大きく章が分かれているので、自分の目当てのものが探しやすい。
初心者向けのコンテンツも充実。
一つのトピックに対して、*.pyファイルと*.ipynbファイルの両方が用意されていて、好きな方を選べるようになっている。
ageron/handson-ml (★★)
URL : https://github.com/ageron/handson-ml
handson-mlのgithubのリポジトリ。
前半はsklearn、後半がtensorflow。
jupyter notebookで説明がかなり丁寧に書かれているため、本を持っていなくてもこのソースコードだけで十分勉強可能。
量的にも質的にも、一つ一つのノートのボリュームが大きめ。
Keras
keras/examples at master · keras-team/keras (★★)
URL : https://github.com/keras-team/keras/tree/master/examples
keras公式。
そこそこ網羅しているが、一つ一つのソースコードに対する説明がやや少なめ。
fchollet/deep-learning-with-python-notebooks (★★★)
URL : https://github.com/fchollet/deep-learning-with-python-notebooks
「pythonとkerasによるDeep Learning」のgithubリポジトリ。
全部*.ipynbです。
公式の*.pyファイルをそのまま*.ipynbにしたものも一部見られる。
kerasで何か動かしたいと思ったらまずここをチェックしてみると良い。
こちらに関してもhanson-mlと同様、jupyter notebookの解説が詳しいので、本を持っていなくてもこのソースコードだけで勉強できてしまう。
oreilly-japan/deep-learning-with-keras-ja: 『直感 Deep Learning』のリポジトリ (★)
URL : https://github.com/oreilly-japan/deep-learning-with-keras-ja
「直感 Deep Learning」のgithubリポジトリ。
全部*.pyです。
コードの説明が不足しているため、これだけで学習するのは難しい。
ここで勉強するなら書籍は必須か。