周回遅れでIT業界デビューしたエンジニアのブログ

就職氷河期にモロにぶち当たり、人生で混迷を極めた末にIT業界に安寧を見出そうとしているアラフォーのお勉強日記です。

エンジニアのための高校数学おさらい。機械学習との対照表を作ってみた

やっと1周目が終わりました。例題まで解いてたら4か月も掛けてしまいました……えらく内容の濃い本でした。先生、ありがとうございました。

解説も面白くて分かりやすいので、網羅的に高校数学をやり直しておきたい場合はオススメです!*1

もう一度高校数学

もう一度高校数学

この記事の対象になる人

  • エンジニアとして数学の勉強をすべきと思ってはいるものの、何から手をつけたら良いか迷っている人
  • よい数学の本に巡り会えず困っている人
  • 数学のどの部分が機械学習に使われるか知りたい人

おしながき

  • 数学をやり直す心構え
  • 高校数学、各章のメモ
  • 高校数学と人工知能プログラミングの対照表を作ったよ
  • 本で勉強ルートを考える
  • 追記します。他にもいい本が色々

数学をやり直す心構え

数学が苦手、あるいは数式アレルギーの方も少なくないと思います。

「でも、数学を勉強しなおさなきゃ……」というとき、大事なのは、自分が分かるレベルにまで徹底的にさかのぼることではないかと思いました。

これは私がやってみた経験からの感覚ですが、高校数学が分からなければ中3、ダメなら中2……と分かるところに戻って、そこから始めるとよいのではないでしょうか。*2

高校数学、各章のメモ

私の印象に残ったところをメモしておきたいと思います。
勉強中は、記号や用語の意味を理解することが大事だと感じました。*3

1章 数とはナニか?

扱う文字がどの範囲の数であるか? それぞれの特徴を理解しているかがポイントです。
無理数の有理化や、二重根号を外すのもここでやります。

2章 式とはナニか?

因数分解は手を動かして思い出していきましょう。

3章 方程式・不等式

判別式は地味ですが、かなり大事だと思います。後の章でも必要な場面が出てきます。
平方完成はものすごく便利です。感動します!

4章 関数の章

特に重要な部分その1。
ものすごく分量が多いですが、それだけ大事なパートです。関数をみっちりやっておくことで、高校数学全体の理解が深まると思います!
log(対数)はここから出てきます。

5章 数列および極限

Σ(シグマ)が初めて出てきます。
極限値は次の章の導関数で使うので、例題もしっかりやっておくとよさそうです。

6章 微分

特に重要な部分その2。
「dy/dx」を使った数式に早く慣れることが大事だと思いました。
e(ネピア数)は色々なところで使われるようです。

7章 積分

積分不定積分の違いを理解することと、積分の分解&集約が大事です。置換積分がとても便利なのでしっかり身につけたいところ。

8章 ベクトル

特に重要な部分その3。
線形代数の基礎となる部分です。ベクトルが分かると自然言語処理で文章を単語ベクトルに変換する仕組みが分かるようになるので、面白いです!

9章 行列

特に重要な部分その4。
図で理解するのが得意な人には簡単かもしれない章。

10章 式と証明

この本は例題を使ってよく証明をしていますが、自分でも手を動かして証明をしてくと途中で「あ!!なるほど!!」と理解が深まる瞬間があります。最初はわからなくてただ書いているだけでもよいので、面倒くさがらずに書いていくことが大事かもしれません。

11章 集合

∪と∩、どんな意味で、どう読むかご存知でしょうか。*4
どちらかというと統計学の準備となる部分です。データサイエンスでは統計学が必須なので、基礎を身につけて行きましょう。

12章 論理

命題をもとに、逆、裏、対偶を取っていきます。仕事にも応用できるタイミングがあって、「そうか!!これ対偶にしたらどうなる??」なんてハッとさせられました。
対偶証明法がすごく面白いです!!!

13章 場合の数・確率

11章と同様に、データサイエンスで必要になってくる部分。順列(nPr)や、組み合わせ(nCr)はここで出てきます。

高校数学と人工知能プログラミングの対照表を作ったよ

勉強の目的は「機械学習やデータサイエンスに必要な知識を身につける」こと。

そこで、最近出た「人工知能プログラミングのための数学がわかる本」との対照表のようなものを作ってみました。

初見だと難しいかもしれない数式が時々出てきますので、高校数学をおさらいした今、「あー!ここやった!こういうことか~」と納得しながら読めています。よかった……。*5

人工知能プログラミングのための数学がわかる本

人工知能プログラミングのための数学がわかる本

画像なので文字が小さくてすみません。
左列が「もう一度高校数学」、右列が「人工知能プログラミング」です。

f:id:sionff:20180318181252p:plain
f:id:sionff:20180318181255p:plain
f:id:sionff:20180318181258p:plain

本で勉強ルートを考える

また、エンジニア向けの数学の本は色々ありますが、ネット上で紹介されていた本を一通り入手して考えて……こんな順がいいのかな、と思いました。

取り寄せて手元で検討した本は6冊ありまして、寸評とルートはこんな感じです。*6

本の名前 寸評
「もう一度高校数学」 高校数学はこれ1冊でOK。数学を勉強しなおす人のスタートライン。
「知識ゼロからの微分積分入門」 上の高校数学で、微分積分で詰まったときの副読本。ビジネスシーンに置き換えているので読み返してもよいかも。
人工知能プログラミングのための数学がわかる本」 高校レベルと大学レベルが混じっているので、高校数学を先に押さえておいた方がよいと思いました。いま一番旬。
「プログラミングのための線形代数 エンジニア向けの数学本の定番。上の人工知能プログラミングとセットで理解したい。
「明解演習 微分積分 上級者向け。大学レベルの補完に。
「明解演習 線形代数 上級者向け。大学レベルの補完に。

f:id:sionff:20180318174802p:plain

追記します。他にもいい本が色々

※2018/3/25追記しました。

記事をアップしてから少しして、リプライをいただきました。

他にも勉強で使われたテキストをご紹介いただいたり。「弱点克服 大学生の~」シリーズを使われたそうです。ありがとうございます!

「弱点克服 大学生の~」シリーズ

弱点克服 大学生の微積分

弱点克服 大学生の微積分

弱点克服 大学生の線形代数 改訂版

弱点克服 大学生の線形代数 改訂版

上の「弱点克服 大学生の~」シリーズはこちらです。


で、私も気になって色々調べてみました。「マセマ本」も高校レベルから大学レベルの橋渡しとして評判がよいそうです。こちらは改訂がかなり多いようなので、発売日を確認しつつお値段と版を相談して買うようにした方が良いかもしれません。下は一例です。

「マセマ本」シリーズ

「初めから学べる」編

初めから学べると評判の大学基礎数学微分積分キャンパス・ゼミ

初めから学べると評判の大学基礎数学微分積分キャンパス・ゼミ

初めから学べると評判の演習大学基礎数学線形代数キャンパス・ゼミ

初めから学べると評判の演習大学基礎数学線形代数キャンパス・ゼミ

「ゼロから学ぶ」シリーズ

完全独習 統計学入門

完全独習 統計学入門

上記の「完全独習 統計学入門」の巻末に紹介されていた本です。高校レベルから大学の教養レベルの数学を分かりやすく学ぶことが出来るそうなので、こちらも加えておきたいと思います。
ゼロから学ぶ線形代数 (KS自然科学書ピ-ス)

ゼロから学ぶ線形代数 (KS自然科学書ピ-ス)

ゼロから学ぶ微分積分 (KS自然科学書ピ-ス)

ゼロから学ぶ微分積分 (KS自然科学書ピ-ス)

次は大学編。微積分からスタート

以上、高校数学をやり直した話でした。

ともあれ、4月からの講義に間に合ってよかったです。
大学のテキストがすでにかなり難しいのですが……いい解説書ないかな……。
ともあれ、何とかついていきたいと思います!

*1:語り口が独特なので合う合わないがあるかも。私は好きです。

*2:時間は掛かる方法かもしれませんが、AIを組み込んだプロダクトが次々と開発される現状を考えると、数学はエンジニアにとってさらに重要度が上がるように思いました。まさに「急がば回れ」かもしれません。

*3:前に上のレベルのテキストを読んだ時に、言葉の意味が分からなくて詰まった事が多々ありました。

*4:私は知りませんでした! ∪(カップ)と∩(キャップ)です。

*5:本当ははてな記法で表を作りたかったのですが、矢印やセル結合ができないので表計算ソフトにしました……。

*6:個人的には、つまみ食いよりも網羅性の高い本の方が好みです。必要ないかも?と思ってスルーした部分が、後で意外なところで必要になって二度手間になることを避けたいからです。