(2022.09.21更新)
こんにちは、30代IT未経験からAIエンジニアに転身した経験を発信しているtakeです。
今回は、世の中にある機械学習関連の教材を実際に私自身が受けてみて、大変有益と感じた教材を紹介します。
本記事により下記のような悩みを解決します。
- 「機械学習に興味があるけど、たくさん教材があって何から始めれば良いか分からない。」
- 「今回紹介する講座に興味があったけど、購入しようか迷っている。」
- 「今回紹介する講座でどんなことができるようになるのか知りたい。」
今回は、Udemy講座の「米国データサイエンティストがやさしく教える機械学習超入門【Pythonで実践】」
1.結論
このUdemy講座は、機械学習の理論を数式から逃げず網羅的に学べ、スクラッチによる実装や意思決定を促す可視化など実践力が身につく講座です。下の図の通り前編(回帰)と後編(分類、クラスタリング)を修了すれば、機械学習の基礎を網羅的に押さえられる設計です。
これから機械学習を学びたい方は、いきなりスクールに通うのではなく、まずはこの講座をやってみることをオススメします。前提としてプログラミング(Python)や数学(統計、微分、行列など)の知識がある方が望ましいですが、全くの未経験者でも「機械学習ってどんなことができるのか」という雰囲気をまずは味わってみるのもアリだと思います。先に「機械学習、スゲーー!!」と感動した方が統計やプログラミングの勉強にも身が入るからです。
同作者からPythonや統計を習得可能なUdemy講座(下記)や、技術ブログ「も用意されていて、いつでも統計やプログラミングに立ち戻れるので安心して進めて頂けます。 datawokagaku.com」
「米国データサイエンティストが教える統計学超入門講座【Pythonで実践】」
↓Python(基本構文)を学べるUdemy講座
「米国AI開発者がゼロから教えるPython入門講座」
↓Pythonのライブラリ(データ整形や可視化など)を学べるUdemy講座
「米国データサイエンティストがやさしく教えるデータサイエンスのためのPython講座」
2.どんなことが身につく?
具体的にどんなことが身につくのか、順番に紹介していきます。
機械学習の理論を数式から逃げずに理解できる
やはり機械学習を学ぶのに数式からは逃げられません。一見、難解な数式も具体的な数字を入れながら丁寧に教えてくれます。
たとえ数式が理解できなくても、グラフなどでイメージを掴めるように教えてくれるから安心です。もし、一回で理解出来なくても深入りせず、一周目はイメージだけ掴めればOKと思います。
後編では、ラグランジュの未定乗数法やジニ不純度など、小難しい名称の数式が出てきますが、「一見難しそうに見えて実は〇〇をしているだけなんです。簡単ですよね?」と理解をアシストしてくれます。
また、図解含めて、説明が本当に上手なので、自分が上司やクライアントに機械学習を説明する際の参考に出来ます。実務では、いくら精度の良いモデルを作れてもそれを説明し納得して頂かない限り、現場を動かすことが出来ないので、説明力超大事です。良いところはパクっちゃいましょう。
単なるライブラリ使いから卒業できる
今やライブラリを使えば誰でも簡単に実装は出来てしまいますが、中身を理解していないと思わぬ落とし穴にハマりかねません。その点、この講座ではハンズオン形式の課題が豊富で、ライブラリに頼らずスクラッチで実装する経験も得られるので、単なるライブラリ使いから卒業出来ます。このスクラッチでの実装経験は本当に重要です。
前編では、最急降下法や正規方程式などのスクラッチ実装を経験。
後編ではPCAなどののスクラッチ実装を経験する。
他のハンズオン課題も、ライブラリの使い方を教わって終わりではなく、必ず確かめ算をするので、ブラックボックスとなりづらい(中身を理解しやすい)ですよ。
データサイエンティストとしての引き出しが増える
同じ題材(データ)を対象に異なる複数のアプローチで実装するので、モデルの特性の違いを深く理解でき、課題に合わせたモデルの使い分けができるようになります。
例1)解釈性優先だから線形モデル、精度優先だから非線形モデルといった目的に合わせたモデル選定ができるようになる。
例2)多クラス分類をOvRと多項ロジスティック回帰の異なる方法を学び、特性を理解できる。&引き出しが増える。
例3)クラスタリングをk-meansと階層クラスタリングの異なる方法で解き、特性を理解できる。&引き出しが増える。
ラベルに偏りがある際は評価指標のmacro平均、micro平均のいずれを使うべきか判断できるようになる。
次のアクションを提案するための可視化ができる
実務では「予測しました。予測精度は○○%です」で終わることはなく、予測結果を踏まえて「じゃあ次どうするべきなの?」が問われます。その際に判断の助けとなるデータの提示ができると重宝される人材になれます。本講座では、次のアクションを提案するためのたくさんの可視化手法を多く学べます。
Precision・Recall・F値のグラフを描画し、目的に合致する分類閾(しきい)値の提案ができるようになる。
Bias&Variance分析により、学習不足や過学習を避けたパラメータ選定の提案ができる。
決定木により意思決定者が解釈しやすい形式でアウトプットができる。
実務で役立つ実装力が身につく
処理速度を考慮した実装が出来たり、実装上便利な機能を知れたり、これら一つ一つの積み上げが実務で大きな差となります。
講座中は、処理の遅いfor文ではなく、処理の早いリスト内包表記が多用される。
Jupyterのショートカットも紹介されており、実装スピードの改善につながります。プロの実装はやはり手早い。
全て覚える必要はなく、Docstringを見てカンニングすべきところはカンニングする効率の良さ。
実務では必須のパイプラインも学べる。
4.その他、講座の良い点
プロの実装過程を見ることができる。
実務では、まじまじと他人の実装を見ることは出来ませんので、とても勉強になります。特に、実装過程をこまめにnotebook上で出力しながら説明してくれる点は、理解しやすくて本当にありがたいです。書籍等に載っている最終的なコードだけを見てもイマイチ何やってるか分からないことが多々ありますが、この講座ではそれが起こりません。
実務での貴重な生きた情報を得られる
実際の開発では、RidgeよりLassoを使うとか、正規化より標準化を使うなど、未経験者にとってこういった生きた情報はありがたいです。他にも実務で陥りがちなミスも紹介してくれます。
例)質的変数を含めてkmeansをしたら駄目。
例)PCAでは特徴量は減らない(特徴量選択にはラッソが良い)など。
修了証をもらえる
AI関連職への転職を目指されている方は、修了証を職務経歴書に記載してアピールしましょう!
前編の修了証。
後編の修了証。
他にも挙げればキリがありませんが、、、こんなもんにしときます。
5.私の個人的な学び
蛇足かもしれませんが、ご参考まで実務者としてまだまだ未熟な私の視点でどんな学びがあったのかを以下、共有します。
・多重共線性により、単純に特徴量を増やせば精度が上がるわけではないと理解しました。ダミー変数トラップという言葉も初めて知ったので、改めて統計を勉強し直そうと思いました。
・特徴量選択にはLasso正則化を使う。(Lassoなら寄与度の小さい特徴量の係数がゼロになり、ドロップすることができるため。これに対しRidgeは係数がゼロにならない。また、PCAは特徴量選択にはならない。)
・k-Fold CVを複数回実施する交差検証手法(RepeatedKFold)や混同行列を簡単に可視化できるConfusionMatrixDisplayなど、新たな知識をアップデートできた。
今、実務者として働いている方にとっても新しい気付きや学びが得られるので、受けてみて損はないはずです。
6.最後に
簡単ですが、以上が講座の紹介になります(紹介した内容はほんの一部です)。初学者はもちろん、実務者にもオススメできる講座ですので、少しでも興味を持たれた方は是非受講してみて下さい!少しでも多くの方が機械学習を武器に活躍されることを願っています!
なお受講にあたっては、割引きクーポンを講座作者のかめさんがtwitterで定期的に配布されているので、フォローしておくことをオススメします!
今後も私が実際に使ってみて良かった教材を共有していきますのでよろしくお願いします。本ブログでは、未経験からAIエンジニアになった私の独学内容や転職経験も公開中です。気になる方は読んでみて下さい。
(2023.2.4更新) こんにちは、30代、IT未経験からAIエンジニアになったtakeです(詳しいプロフィールはこちらに)。 空前のAIブームの中、AIエンジニアやデータサイエンティストを目指す方が急増しています。私もこ[…]
(2022/9/14更新) 昨今のAIブームを受け、データサイエンス職種を目指す方が増えています。学生時代にデータサイエンス系の学問を修了した(あるいはこれから履修する)人にとっては、採用される機会はいくらでもあるでしょうが、世の中そんな[…]
コメントなどございましたら、お気軽にお願いします。それでは。