かめれおん氏による機械学習入門講座後編を前編に引き続き紹介していきたいと思います。
前編についてはこちらの過去記事を参照してください。
【Udemy講座紹介】機械学習入門講座-前編- by かめれおん | 素人がデータサイエンスを始める (datascience-beginer.com)
【後編】米国データサイエンティストがやさしく教える機械学習超入門【Pythonで実践】
アメリカでデータサイエンティストとして活躍されているかめれおん氏の機械学習講座の第二弾です。かめれおん氏はご自身のブログやTwitterでもデータサインエス学習者向けコンテンツを積極的に発信しているので、これから勉強する方には必見の内容です。前編では回帰系アルゴリズム、モデルを理解するために必要な基礎知識・概念を学びましたが、後編では分類にも使えるモデル(ロジスティック回帰、決定木、SVM)とその精度指標、主成分分析(PCA)などを学べます。かめれおん氏の他の講座と同様に、まずは理論の説明があった後に、ハンズオン形式でscikit-learnによる実装方法の解説付きです。公式レビューは★4.8で、Udemyで公開されている日本語のpython機械学習講座の中で最高レベルの評価です。
以下では本講座で学べる内容をもう少し具体的に紹介します。
本講座で学べること
- ロジスティック回帰による分類器の実装と分類器の各種評価指標の解釈
- 数学的な理論の説明を含めたPCAの実装と解釈
- 決定木の理論と実装(ランダムフォレスト、勾配ブースティングを除く)
- カーネルトリックによる非線形分離の説明を含めたサポートベクターマシン(SVM)
前編同様に講師自身が用意したDocker環境を使うため、OSに依存することなく誰でも同じpython環境で講座に取り組めます。学習環境の用意に不安がない点は良いですね!
最初はロジスティック回帰のセクションから始まります。2値分類のシグモイド関数、多クラス分類のソフトマックス関数がそれぞれ別セクションで手厚い内容です。
さらに次のセクションで分類器の評価指標が纏められています。特に混合しがちな4つ(Accuracy, Precision, Recall, Specificity)をそれぞれ具体例を交えてつつ、その後、最終的な分類器の精度として扱われることが多いROCとAUCを学びます。
教師なし学習としてクラスタリングでよく用いられるPCAのセクションでは、濃いめな数学的背景解説があった後に「つまりPCA=分散共分散行列を求める」というと結論まで至ります。ハンズオンではスクラッチによるPCAの実装演習もあります。また別のクラスタリング手法として階層クラスタリングも紹介されます。
決定木では、ジニ不純度による分類境界の決定原理から学びます。解釈性に富む一方で単体では過学習を起こしやすい点もしっかり解説があります。
最後のSVMでも肝であるカーネルトリックによる非線形化を含めた理論の後に、実装方法とサポートベクトルの可視化方法を学べます。
逆に本講座に含まれていない内容
以下のモデルに関する内容は本講座には全く含まれていません!ディープラーニング以外はすでに公開されている他のシリーズで学習可能なので、そちらも併せて学習しましょう。
- 線形回帰、多項式化による非線形回帰(前編に含まれる)
- アンサンブル学習器(本番編に含まれる)
- ディープラーニング(近い将来ディープラーニング編も公開予定?)
感想
良かった点
前編に引き続き各種アルゴリズムを数学的な説明も含めて理論から理解できるようになる点が本講座の最も素晴らしいところです!理論を理解することで適切なモデルを選択でき、適切なハイパーパラメータを調整できるようになれます。また最近はChatGPTやFujitsu AutoMLの登場により、学習モデルの実装テクニック以上に予測結果の適切な解釈が重要になってきていると実感します。
また前編・後編を通してハンズオンではデータの前処理から始まるため、カテゴリカル変数の変換、尺度の調整、trainデータとtestデータの分割の一連の流れが身に付く点も良いです。
気になった点
- 仕方ないことですが、出てくる数学がやや高度になってくる
- 前編の受講を前提としている
数学に関しては、機械学習がそもそも数学なのでこればっかりは仕方ないですね・・・細部の式変形よりも、理論の全体像が重要なので、細部の式変形はある程度諦めても良いかなと感じました。私もラグランジュの未定乗数は理解できていません。
また前編を前提にしているため、bias-varianceトレードオフの重要概念などの細かい説明はありません。ボリューム的に仕方ないことだと思うので、購入を検討している方は前編もセットで購入しましょう!
終わりに
実際の研究でも「AIを使ったら理由はよくわからないけど○○のスコアが最適でした!」ではなく、「その結果から××が言えるので次は△△を検討しましょう」といえることがデータサイエンティストのあるべき姿です。これを実現するためには理論の理解は必須です!理論からしっかり機械学習を学ぶ方法の入り口として本講座を推奨します!
それでは皆さんの良いデータサイエンスライフを~
コメント