本講座は「機械学習ってなんか面倒くさそう」と感じている
プログラマのためのものである。本講座では
「そもそも機械が『学習する』とはどういうことか?」
「なぜニューラルネットワークで学習できるのか?」といった
根本的な疑問に答えることから始める。
そのうえで「ニューラルネットワークでどのようなことが学習できるのか?」
という疑問に対する具体例として、物体認識や奥行き認識などの問題を扱う。
最終的には、機械学習のブラックボックス性を解消し、所詮は
ニューラルネットワークもただのソフトウェアであり、
固有の長所と短所をもっていることを学ぶことが目的である。
なお、この講座では機械学習のソフトウェア的な原理を中心に説明しており、
理論的・数学的な基礎はそれほど厳密には説明しない。
使用環境は Python + PyTorch を使っているが、一度原理を理解してしまえば
環境や使用言語が変わってもそれほど混乱しないはずである。
てっとり早く概要が知りたい人は、本講座の超要約を参照のこと。
全部読む時間がない方で、とりあえずニューラルネットワークの基本原理だけを
理解できればいいという方は第3回まで、ディープラーニングのさわりまでを
理解したい方は第5回までを読むのがおすすめ。
本講座の公式サイト
および
例題のソースコード一覧。