機械学習を勉強していくには、いくつかの課題があります。
- 統計や線形代数といった数学の知識
- Pythonを使うのでプログラミングの知識
- 画像処理、音声処理といった知識
- 学習を行う為のコンピューティングリソースの準備
それらを学ぶ上でいろんな書籍やネットの情報が転がっているのですが、Chainerが出した「ディープラーニング入門」が凄すぎて、もうこれでいいんじゃないか感が凄いです。
2019/05/20追記
チュートリアルが更新され、新たに「演習問題」が追加されました。
https://tutorials.chainer.org/ja/src/Exercise_Step_01_ja.html
どれくらい理解できているのかのチェックができるので、取り組んでみる事をお勧めします。範囲はPythonの入門から、ディープラーニングに必要な数学の知識までありますので、チェックするには十分な内容だと思います。
最低限必要な知識がまとめて学べる
このチュートリアルでは、機械学習を行っていく上で必要な最低限の数学とプログラミングを学んでいくことができます。
- Pythonの文法から条件式、クラスや継承といったところまであります。もちろんNumPyやCuPyもしっかりあります。
- 数学については、微分、合成関数、偏微分といった所もしっかり記述されています。これらを順番にこなすことで、機械学習を行ううえで、「なぜ必要なのか」をしっかり学んでいけます。
- 確率変数、確率分布
ここまでしっかりと揃っているうえに、あちこちサイトを行き来しなくてもよい という所が非常に素晴らしいです。
ブラウザで学べる
機械学習の知識がついてきたところで、さぁやってみようと思った時に問題になるのが環境の構築です。数年前に比べたら比較的簡単に環境を構築できるようになってきましたが、フレームワークの進化も非常に早く、ネットの情報がすでに古いといった事も多いです。
このチュートリアルは、ブラウザ上で学ぶことができます。それも、資料の中に登場するコードがそのままブラウザ上で実行できる という所です。
資料はすべてノートブック形式になっていますので、解説とコードが同時に実行できるようになっています。なので、ただ読むだけの資料ではなく、実際にコードを記述してその結果も学ぶことができます。 これは非常にありがたいです。
Google Colaboratoryとして実行できる!!(超重要)
はい。これです。これがこのチュートリアル最大のポイントです。先ほど資料はノートブック形式になっていると書きましたが、これがGoogle Colaboratoryで実行できるようになっている事です。
資料の上部にある「Open in Colab」ボタンを押すとすぐに開くことができます。
基本的にはJupyter Notebookと同じですが、Google Colaboratoryでは GPUリソースが利用できます。しかも無料です。
なので処理の重い畳み込みニューラルネットワークも比較的短時間で体験することができます。GPUが絡むと途端に環境構築が大変になるので、ぜひ活用していきましょう。
まとめ
公式にもありますが、 このサイトだけで機械学習・ディープラーニングに入門できる事を目指して作られています。 は伊達ではなく、基本的な知識はすべて網羅されているので、今から始めたい人はぜひ見てみてください。