AIや機械学習の勉強をはじめるにあたって
と悩む人は多いです。
まず私のバックグラウンドを簡単に紹介させてもらうと
- 学部が数学科
- 大学院(修士)で確率論専攻
- 博士でPhD統計在籍
といった具合に、AIを学ぶ上でどれだけ数学が必要とされても「普通になんとかできる」レベルでした。
そんな私でもやはり
と学習初期の段階で悩みはしました。
そこで今回は「どのレベルの数学が必要とされるか」をまとめました。
結論
- 微積分:
高3レベルで十分(大学基礎レベルがあれば良い) - 線形代数:
大学1年生(教養+アルファ)レベルが必要 - 確率論(理論統計学):
条件付き確率などの基礎的な内容で十分 - 統計学:
幅広い知識が必要とされる
わたしのAI学習過程
わたしはコンピューターサイエンスを勉強したことがなかったので
- AIの理論を理解する
- 実際にプログラミングする
という流れで勉強していくことにしました。今現在次の3つのテキストを使用して学習しています。
理論学習用・入門テキスト
プログラミング学習用・入門テキスト
注意:いずれも入門書
ここで注意すべきは私が用いた上の3冊はすべて入門書だということです。
これら3つの入門書を学習する上で必要な数学を、私見を交えてお伝えします。
微積分の必要性と参考書
人工知能や機械学習を学ぶ上で必要な微積分の知識はそこまで多くないです。
理論を理解するというより、計算ができれば十分です。
基本的には高3レベル
学習をする上で、微分が頻繁に出てきますが、そのレベルは高校3年生レベル(+テイラー展開)なので臆することはありません。
指数・対数関数の微分だったり、合成関数の微分を知っていれば大丈夫です。
他に強いて言うなら、Chain-Ruleについては知っておいてほしいくらいです。
のようなものです。ただしこれも計算方法さえ分かればOKです。
積分は少し高度なものを
確率論や統計学でも今後必要になってきますが、積分についても計算法を学習しておいても損はないかもしれません。
詳しく言えば、重積分の計算方法を勉強することをおすすめします。
- 積分範囲の分け方
- 変数変換の仕方
これらについては学習をする上で必要なってくると思います。
基本的には高校で数3を学習していれば、微積分の勉強はしなくていいと思います。
今後、確率論や統計学も理解しようと考えてる方は、重積分の知識は必須なので今のうちにやっておきましょう。
微積分のおすすめテキスト
線形代数は絶対に学習すべき
線形代数は今後統計学を学習する上で間接的に必要になってきます。
しかしそれ以上に、AIで使われる計算構造自体が線形代数に依存しているので、必ず勉強しなくてはなりません。
計算と理論のギャップ
AIで必要とされる線形代数の計算のレベルはそこまで高くありません。行列の掛け算ぐらいしか出てこないからです。
一方で、人工知能を理解するためには線形代数の理論を理解しなくてはいけません。
そう悩んだときに、理論が必要になってくるわけです。行列の対角化などは最低でも知らなければいけません。
線形代数は微積分と違って、理論の学習に努めましょう。
線形代数おすすめテキスト
AIのための確率論(理論統計)は簡単
純粋な確率論について勉強する必要があるかと言われれば、私はそこまで必要性を感じません。
最低限の理論or難解な理論
確率論は数学科のカリキュラムでいえば3年生で学ぶものなので、厳密な理論を学ぶことは可能な限り避けなければなりません。さもなければ泥沼にハマってしまいます。
そういうトップダウンの勉強法がおすすめです。
しかし、高校レベルの条件付き確率や離散での確率理論についての知識は必須なので、もし心配そうなら下記の簡単なテキストをおすすめしておきます。
もし確率論を本当に学びたいなら
人工知能のモデルが高度になるにつれて必要な知識も増えていきます。そういった際に確率論を勉強するということは必要かもしれません。
たとえばベイズ学習にベイズ統計学が使われますが、これを理解するためには条件付き期待値の理解が必須です。
条件付き期待値を学習するためにはそこそこ確率論の学習をしなければいけません。この他にも確率論の知識が必要な箇所がポツポツと見られます。
そこで確率論のテキストとして、一応次のものをおすすめとして紹介しておきます。
統計学には終わりがない
個人的に思うのは、AIを学習する上で統計学は最大の沼です。
AIと統計学の関係性
AIを私なりの言葉で表現すると
です。
「統計学を学習することと、AIを学習すること」
「数学を勉強することと、応用数学を勉強すること」
上の2つの関係性はほとんど同じです。
ではどこまで統計学を勉強すればいいのか?
統計学の基礎知識は必須
- 平均値
- 分散・標準偏差
- 基本的な分布
- 大数の法則
- 中心極限定理
この程度の知識は知っていて当然として扱われます。
他にも最小二乗法やベイズ統計など、パラメータ推定にまつわるありとあらゆる知識は随所で出てきます。
とりあえず難しい知識は後回しにして、赤枠で囲んだ基礎知識くらいを学習する必要はあります。
基礎統計学のテキスト
ベイズ統計入門書
AIのための数学学習ロードマップ
3種類のタイプにわけて学習ロードマップを作成しました。
3タイプ
- 数学苦手
- 数学割と得意
- 数学余裕
数学が苦手な人向け
大学数学を全く知らない、文系出身の方でも理解ができるような学習ロードマップです。
数学は割と得意な人向け
理系出身で、大学でも教養程度の数学を勉強した記憶があるひと向けの学習ロードマップです。
fa-arrow-circle-rightfa-arrow-circle-rightfa-arrow-circle-right[AI+機械学習]
数学が余裕な人向け
言うまでもないですが、鬼畜使用ロードマップです。
普段から数学を使っていて、新たに確率論から勉強を始める人用。
AI学習開始の障壁は低い
数学がネックでAI の勉強になかなか踏み込めない人って結構いると思います。
どの程度の数学レベルが必要とされるかわからないからだと思いますが、実はそこまで敷居が高くありません。
「微積分+線形代数+確率・統計の基礎」これくらいを押さえていれば十分にAIの学習は開始できます。
もちろんAIを学習していて数学理論に躓いたら数学学習に戻るという、トップダウン勉強法を取ることも可能です。