Udemy【キカガク流】人工知能・機械学習 – 初級編 – を受講してみた感想

2023年1月15日

Photo by Rubaitul Azad on Unsplash

次なるステージ、機械学習へ

UdemyでPythonを勉強し始めてから、既に3つの講座を受講しました。

独学で身につけるPython〜基礎編〜

独学で身につけるPython〜Excel自動化編〜

独学で身につけるPython〜応用編〜

の3つです。

これらの講座はパソコンを使ったデスクワークの自動化を、Pythonを使って実現する方法を解説しており、一通り受講することによってRPA(ロボティック プロセス オートメーション)をPythonで自作できるレベルにまでなれました。

 

そこで今回からは、いよいよ本丸である「Pythonを使った機械学習」に進みます。

そのために管理人が選んだ初講座はこちらです。

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

1000人以上が受講している(株)キカガクの『脱ブラックボックスセミナー』が遂に登場!機械学習の参考書を「閉じてしまった人」への再入門に最適な講座です。微分・線形代数といった数学の基礎からPythonでの実装まで短時間で習得しましょう。

 

全体の感想

なぜこの講座を選んだかというと、受講生が5万人以上と多いこと、「脱ブラックボックス」を謳っていて機械学習の本質を理解できそうなこと、そして初学者を対象にしていてわかりやすそうだったからです。

結果、大変わかりやすく、文系の人が機械学習に必要な数学の知識を学ぶには適しているだろうなと思いました。

反面、理系出身で学生の頃に学んだ数学のことをまだ覚えている人にとっては、少し物足りないかもしれません。

数学が苦手だった人、または得意だったけれども社会人になってご無沙汰で忘れてしまった人にはおすすめの講座です。

 

講座を通して習得できること

講座の中でも触れられていましたが、機械学習は①教師あり学習、②教師なし学習、③強化学習の3つに大別できます。

本講座では①教師あり学習を理解するための最も基本となる単回帰分析に焦点を絞って解説しています。

「なんだ今更、単回帰分析なんて知ってるよ」

と思うかもしれませんが、数式化する評価関数を決める評価関数を最小化するという機械学習で基本となる要素がすべて網羅されています。

これらすべての要素について、中学レベルの数学の知識でも考え方を理解できるようにわかりやすく解説してくれます。

また、導出された公式を使って、Pythonでどのように計算するか(実装するか)も解説されています。

それでは順に見ていきましょう。

 

なぜ微分が必要なのか?

機械学習では微分の知識が必要と言われています。

なぜそんなに大事だと言われているのでしょうか?

中学時代の数学を少し覚えている人は、微分=傾きと習ったと思います。

その傾きを求めることが機械学習でなぜ重要なのかをわかりやすく解説してくれます。

 

また高校でLimとかx→∞とか習ったのを覚えていますか?

その頃は抽象的でわかりにくかったという人にも、直感的にわかりやすく解説してくれます。

 

また大学になると偏微分が出てきますが、ここまでくると文系の人にとっては読み飛ばしたくなりますね。

これについても大変わかりすく解説されています。

 

単回帰分析の公式の導出

単回帰分析とは、過去のデータを使ってxからyを求める1次関数の近似式を求めることです。

1次関数の式はy=ax+bなので、aとbを求めることです。

しかしこれに中心化(Centeringという処理を施すことにより、aだけを求める問題に簡略化することができます。

詳しくは講座をご覧下さい。

 

次にこのaを求めることは、ある評価関数最小化する問題に帰着します。

これはよく耳にする最小二乗法と同じです。

この最小二乗法はそれを解くための公式が知られていますが、その公式の導出を大変わかりやすく解説してくれます。

 

Pythonの基本

ここではPythonのインストールの仕方や、コードを書いたり実行するためのJupyter Notebookの使い方の説明から入りますので、Pythonに全く触れたことのない人でも大丈夫です。

変数の使い方、リストタプル辞書の使い方、ifforの使い方、関数の定義の仕方まで、単回帰分析をPythonで計算するための一通りの知識を教えてくれます。

ただ、これらすべてを1時間10分という短時間で流しますので、わかりにくかったところは一旦止めて他のサイトの記事も参考にしながら学習しないと、初めてPythonに触れる人には少し酷かもしれません。

しかし、人気言語であるPythonの記事はサイト上に本当にたくさん載っていますので、わからない点を検索するのは容易です。

ちなみに管理人はこの講座の前に他のPython講座を既に3つ受講していたので、このパートは2倍速で聞き流しました。

 

単回帰分析のPythonでの実装方法

ここでは機械学習でよく使われるライブラリーであるNumpyPandasMatplotlibを使いながら、単回帰分析をPythonでどのように計算するかを丁寧に解説しています。

同じく機械学習の有名なライブラリーであるscikit-learnを使えば一行でコードが書けてしまうのですが、前章までの流れの延長線上であえて分解したコードで解説しています。

これにより、単回帰分析の考え方の本質がわかります。

 

本サイトでは、Excelで単回帰分析を解くための6つの方法を解説する記事を過去に書きました。

【6つもあった!】Excelで単回帰分析の最小二乗法を解く方法をすべて実演

 

今回この講座を受講したことで、そのPython版も作成しました。

Pythonを使って単回帰分析における最小二乗法を4つの方法で解いてみた

 

まとめ

機械学習の基本中の基本である単回帰分析の理論からPythonへの実装までを、数学を忘れてしまった人にも理解できるようにわかりやすく解説してくれる講座です。

特に学生時代に微分でつまずた人は、この講座を受講することでリベンジできると思います。

微分の本質とともに、なぜ機械学習において微分が必要なのかをやさしく解説しています。

文系の方には特におすすめです。

一方で、理論のパートは数学が得意な人には少し物足りないかもしれませんので、Pythonのコーディングのみに特化した別の講座を受講する方が満足度が高いかもしれません。

 

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

1000人以上が受講している(株)キカガクの『脱ブラックボックスセミナー』が遂に登場!機械学習の参考書を「閉じてしまった人」への再入門に最適な講座です。微分・線形代数といった数学の基礎からPythonでの実装まで短時間で習得しましょう。