文系エンジニアが機械学習に入門するために数学を勉強する【自己分析と目標決定編】

何かとテレビやネットニュースでも取り上げられるようになった人工知能、ディープラーニング、データマイニングなどなど。

敷居が高そうに思えますが、書籍やライブラリの情報も多いので個人で取り組む人も多くなってきているようです。

私も仕事を退職して時間もあるし、新しいことにどんどん取り組んでみようと思っていたので、せっかくなので機械学習やってみようかな

と意気込んだのですが、本屋で機械学習の書籍を開いた瞬間に数式が溢れているのを見て冷や汗が出ました。

書籍を購入しても、このまま取り組んだところで理解できないまま、挫折してしまいそうでした・・・

入門するには今までの数学を使わない文系エンジニアのままではいけない。

なので、機械学習に入門するために今まで見てみぬふりをしてきた数学に真剣に取り組んでいきます!!

スポンサードサーチ



今回の取り組みの目標

今回の取り組みはあくまでも機会学習に入門できるレベルに達することのため、より専門的な数学が必要とされる分野については、改めてを挑戦していくことにします。

具体的にはUdemyにあるこれらの講座に挑戦することです。

みんなのAI講座 ゼロからPythonで学ぶ人工知能と機械学習

【キカガク流】人工知能・機械学習 脱ブラックボックス講座 – 初級編 –

【キカガク流】人工知能・機械学習 脱ブラックボックス講座 – 中級編 –

【世界で5万人が受講】実践 Python データサイエンス

みんなのディープラーニング講座 ゼロからChainerとPythonで学ぶ深層学習の基礎

 

そしてちょっとレベルの高そうなCourseraのこちらの講義に挑戦することです。

 

数学を最低限しか必要としないと記載のある講座も多いのですが、どうせやるなら下地を作ってから理解を深めていきたいので、数学を学んでいくことにしました。

必要な数学

まずは、入門するためにはどのくらいの知識が必要なのか。

調べてみると、以下の知識があると役立つようです。

  1. 線形代数
  2. 確率・統計
  3. 微分・積分

微分積分は高校、線形代数と統計学は大学で学ぶ分野らしいですね。

微分・積分と統計学は大学の講義で少しやったはずなんですが、さっぱり覚えてません・・・。

総合すると最低でも大学で学ぶレベルの数学は必要みたいです。

わかってはいましたが、今の自分の知識では難しそうです。

自己分析

次にどの範囲から勉強する必要があるのか。自分の現状を振り返ってみます。

学習前の私のスペック

  • 中学の頃から数学に苦手意識あり
  • 文系大学卒で講義でも数学にはほとんど触れていない
  • 業務で使うことも特にない、四則演算で十分

高校、大学はがっつり文系で数学にはほとんど触れてませんし、先述しましたがほとんど覚えてません。

最後に勉強したのは統計学の講義でちょっとやって程度です。

前職のSEでは2進法、16進法の計算はしましたが、四則演算とビット演算で十分でした。というか仕事では辞める1年半前くらいからプログラミング自体もあまりできていませんでした・・・。

どうしてこんなに数学から離れていたか考えてみると、中学生あたりから苦手意識を持ち始めて避けていたような気がします。

なので高校の範囲どころか中学レベルでも不安です

 

これから勉強する範囲

不安な中学校の範囲から最低限のラインである大学で学ぶ範囲とすると、以下が今回取り組む範囲です。

  • 中学校
  • I/A
  • II/B
  • III/C
  • 線形代数
  • 確率・統計

線形台数、確率・統計で一区切りとして、それよりも先の専門的な範囲については別の機会にします。

それにしても、並べてみると多いな〜。

あんまり長い範囲をとってもだらけてしまうので、多く時間を取れることを踏まえて1ヶ月〜1ヶ月半を期間にして、準備含めて4月から開始していこうと思います。

 

まとめ

今回の取り組みについて

期間:4月から開始して1ヶ月〜1ヶ月半

範囲:中学数学〜大学の基礎数学

目標:機械学習入門 書籍、動画講座への挑戦するため

 

急な予定が入ったり、体調が悪くなったりなどを考慮して期間は幅を持たせて設定しました。

先日。勤めていた会社を退職して時間があるため、1日に多く時間を取れると仮定してこの期間にしています。

時間があるとはいえ、勉強する範囲を考えると少し短いように思えますが、期間に余裕があるとダラダラしてしまうので、ちょっと厳しいくらいにしました。

勉強に使用する参考書、サイトなどは別記事にまとめようと思います。