こんにちは!人工知能の入門に失敗したヒトデです。
こんな経験ないですか??
- 「ゼロから作るDeep Lerning」はとりあえず写経した。
- 「やさしく学ぶ機械学習を理解するための数学の基本」が全くやさしくなかった。
これ、私なんですけどね。
ということで、この記事では人工知能に入門する前に読んで置きたい1冊を紹介します。
数学が苦手な私でも、この本は
10時間で読了できました。
これから入門する人、挫折してしまった人、高校生にもオススメの本です。
- 人工知能プログラミングのための数学がわかる本
- 平方根、三角関数...数学基礎からスタート
- 手計算による演習が充実
- 数学の記号の解説、コマンドの説明も省略なし
- 実践編で学んだ数学をどのように使うか確認
- まとめ
人工知能プログラミングのための数学がわかる本
こちらは石川聡彦(著) 人工知能プログラミングのための数学がわかる本です。
まずは爽やかなイラストが目に入りますが、帯には
「この1冊で人工知能の数学がゼロからわかる!」と書いてありますが、本当です。
「俺にとってはゼロじゃなかった。」とは言わせない配慮がたくさんです。
この記事では本書の特徴をご紹介します。
平方根、三角関数...数学基礎からスタート
対数関数、三角関数...人工知能の本では当たり前のように出てきます。
この本では、他書で知ってて当たり前な基礎からスタートします。
また、解説つきの演習問題もあります。
exp()って??log...って?と、少し怪しい人は演習問題で復習できます。
また、基礎的なことをやっているときは「これって、人工知能ではどのように応用されるんだろう。」と心配になることがあります。
この本では「人工知能ではこう使われる!」という短いコラムが随所にあります。
実際にどのように使われるかを知ることで、基礎的な内容を勉強しているときでもモチベーションが維持できます。
手計算による演習が充実
プログラムする時には「何をコンピュータにやらせるか」理解している必要があります。
とはいえ、難しい人工知能の本を写経しているときは「ま、いっか。とりあえず書けば動くし」となってしまいがち。
この本では、手計算でできるレベルの例題が用意されているので、何をコンピュータにやらせればいいのか納得できます。
特に、確率・統計のCHAPTER4では実際に手を動かすことで、統計の考え方を理解することができます。
数学の記号の解説、コマンドの説明も省略なし
この本がとにかく丁寧なのは、初めて登場した表記についても解説がある点です。
は実測値yの平均を意味することをはじめとして、アマダール積の記号からUNIXのコマンドまで解説されています。
ここまで丁寧だと、置いていかれる心配がないですね。
特に、数学の記号はWeb検索が難しいです。
調べる手間が省けるので集中が途切れない配慮があります。
実践編で学んだ数学をどのように使うか確認
この本の終盤は実際に学習した数学を利用した実践例があります。
- 住宅価格の推定
- 自然言語処理を用いた著者の推定
- ディープラーニングを利用した手書き文字の認識
githubでソースコードが公開されていますが、ソースコードを見なくてもわかる内容になっています。
プログラミング言語はPythonですが、プログラミング経験者であればJupyter Notebook形式なので実行せずともわかるようになっています。
https://github.com/TeamAidemy/AIMathBook
とはいえ、ソースコードを意識せず、計算の考え方を理解する内容になっています。
本の中にはソースコードに関する記述は登場しません。
実践編でも、手計算でできる小さい例題が用意されています。
この例題が理解を助けてくれます。
「コンピュータで実行するのはこれのデータをもっと大規模にしたものだな。」
まとめ
この本を一言で表すなら、とにかく丁寧。
人工知能は様々な数学を応用しているので、基礎的な説明は知っている前提で書かれているものがほとんどです。
この本を読むと、平方根などの基礎から微分、行列さらに標準偏差のような統計の考え方まで復習できます。
いずれも例題、演習問題が用意されているため、手を動かしながら学ぶことが可能。
解説もわかりやすく、基礎数学の入門にも使えます。
これから人工知能を学習する人はまずはじめに読んでおくと良いでしょう。
また、すでに他の本で挫折してしまった人にとっても、基礎を固めるための手段になるはずです。
ぜひ手にとってみてください。
石川聡彦(著)