(2022.09.23更新)
こんにちは、30代、IT未経験からAIエンジニアになった経験を発信しているtakeです。
読書とは無縁だった私ですが、AIを勉強することになって非常にたくさんの本を読むようになりました。積ん読のままのものも多いですが(小汗)。。。少し前に比べて書籍含む教材の種類が爆発的に増えて嬉しい反面、初学者にとってはどれからやれば良いか分からないということに陥りかねません。
(私の本棚。これでも一部です。。。)
そこで本記事では、私がAIエンジニアになるために(or なってから)スキルの習得に役立った教材を紹介します。未経験から独学でAIエンジニアになった私ならでは視点で、他サイトにはない教材もたくさん紹介していきますので、これからAIエンジニアを目指す際の教材選びの参考にご活用下さい。
まず、AIエンジニアに必要なスキルは下の通りです。
- 数学
- プログラミング
- 機械学習
- 深層学習
- IT全般の基礎
- SQL(データベースの操作)
- クラウド
- WEBの知識
早速この順に紹介していきます。
数学
AIの習得には主に、統計や線形代数、微分積分の知識が必要になるのですが、数学の勉強は小難しくて嫌いになって辞める人が非常に多いので、先に動くものを真似して作って、その後に理論を学ぶという順の方が身につくし挫折しないと思います。よって、興味が沸かなければ数学はすっ飛ばしてOK。ここで挫折するのはもったいな過ぎるから。数学に対して抵抗がない方だけ先にやればいいと思います。たとえ分からないことが出てきてもスルーしてイメージだけ頭に入れましょう。
統計
AIをやるのに、統計は外せません。かと言って初学者が専門書から読み始めると100%挫折します。まずはマンガから入りましょう。理解のスピードが段違いです。数式をひたすら頭に押し込むような勉強では面白くないし、全く理解出来ません。身近な例を使って初心者にも分かりやすく解説してくれるので、圧倒的に理解しやすいですよ。オススメは下の2冊。
マンガでイメージを掴めたら、具体的な数式も勉強していきます。教科書で勉強するより、動画で勉強したほうが遥かに理解がスムーズですので下のUdemyで知識を強化しましょう。私はこの講座で統計を一通り薄〜く広〜く理解しました。数式を細かに覚えたというよりはイメージを押さえたという感じ。まずはこれで良いんです。深入りしすぎないこと。
>>Udemy講座はこちら<<
>>Udemy講座はこちら<<
線形代数
機会学習には、線形代数の知識が必要ですが、実務ではNumPy任せで大丈夫なのでイメージを押さえるのみでOKです。
このマセマシリーズが大変分かりやすくおすすめです。一旦、行列の計算(和・差・積)や逆行列、転置が分かればOKでしょう。繰り返しになりますが、気合い入れ過ぎてあまり深入りしすぎないように。
微分積分
プログラミング
エクセルVBAマクロ
AIエンジニアを目指すのにエクセルVBAマクロ?と不思議に思われるかも知れませんが、遠回りに見えて近道なんです。AIエンジニアやデータサイエンティストを目指す場合、システム開発経験が問われるのですが、非エンジニアにとってシステム開発経験なんて簡単に積めません。そこで、我々にとって一番身近なエクセル業務を自動化するシステムを作ることで埋め合わせることが出来ます。実際、私もVBAマクロでエクセル業務を自動化した実績をアピールしてAIエンジニアの内定を取れました。もちろんPythonでも同様に自動化できますが、エクセルにはマクロの記録という秘奥義(自分のエクセルでの操作を覚えさせる機能)があり、ハードルが非常に低いんです。プログラミング初心者でもこの機能を活用しながら徐々に自分でコードを書けるようになるという進め方は有効と言えます。是非身近なエクセル業務の自動化システムを作って転職に繋げましょう。
この本はまさにエクセル業務の自動化にフォーカスして解説されているので、我々がやりたいことのど真ん中の内容です。プログラミング初心者でも分かりやすく丁寧に解説してくれるので安心です。私も全く初心者からこの本だけで自動化システムを組めるようになりました。早速自動化に取り組みましょう。日々の繰り返し業務を自動化出来たら快感ですよ!自動化により余った時間はアナタのものです。システム開発経験としてアピールもできる!
RPA(Robotic Process Automation)
エクセルVBAマクロと同様、RPAでも繰り返し業務の自動化システムは構築出来ます。エクセルVBAマクロはエクセル機能の自動化に限定されていますが、RPAならエクセル以外のタスクも自動化できるので、非常に強力です。RPAって難しそうと思ってません?実は超簡単なんです。私もびっくりしました。RPAならレゴブロックを組み立てるように、タスクのブロックを組み立てるだけでコードを書かずに業務の自動化システムが構築出来るんです。ノーコードだからとあなどってはいけません。このRPAを作る過程は、プログラミングに即応用が出来ます。なぜならプログラミングはこのタスクのブロックをもう少し細かな解像度でコードとして書いているに過ぎないからです。つまり、このRPAを作る過程がプログラミング学習の土台になるのです。簡単に業務が自動化できて、システム開発経験が手に入り、プログラミングの学習にもなるというまさに一石三鳥。RPA、あなどれねぇー。
Windows10ユーザならマイクロソフトのRPAツール(Power Automate Desktop)が無料で使えます。初心者を対象にした講座なので躓(つまづ)くことなく基本的な操作を学べます。ハンズオン形式なので即自分の業務の自動化に応用出来ます。さぁ、早速日頃の業務を自動化しまくってシステム開発経験を獲得しましょう!
>>Udemy講座はこちら<<
Python基礎
ここでようやくPythonです。機械学習を勉強するならやはりPython一択です。Pythonは比較的理解しやすい言語ですが、全くの初心者には難しいと感じると思います。そんな方はぜひ、上で紹介したエクセルVBAマクロやRPAなどでプログラミングの土台を養って下さいね。理解がスムーズになること間違いなし。
プログラミングを書籍で覚えるのはしんどいので動画で学ぶことをおすすめします。このUdemyは必要なPythonの構文はほぼ網羅されています。また、シリコンバレーで活躍されている方からきれいなコードの書き方も学べます。きれいなコード?動けばいいやん。と思うでしょうが、これが超重要なんです。実はコードって書くことより読むことの方が多いんです。そんな時、汚いコードだと解読に時間が掛かって非効率です。自分が書いたコードでも2ヶ月も経てば、まるで理解できませんよ。困るのは自分自信です。他にもプログラミング関連の書籍や動画をやってみましたがPythonの基礎はこのUdemy一本でOKと言えます。
>>Udemy講座はこちら<<
私はオブジェクト指向がイマイチよく分からなかったのでこの講座で補足しました。保守性、再利用性を高める技術であるオブジェクト指向を一通り学べました。この講義により、オブジェクト指向で書かれたコードも読めるようになりました。
>>Udemy講座はこちら<<
データ分析のためのPythonライブラリの使い方
上で紹介のPythonのUdemy講座はあくまでも基本の構文(For文やIF文など)です。機械学習ではPythonのNumPyやPandas、Matplotlibなどのライブラリを使ってデータを整形、可視化していきます。これらのライブラリの活用方法を無料で学べる技術ブログです。初心者目線で補足をしてくれるので、躓(つまづ)きづらく理解が進みます。私はこの講座をきっかけにエクセル業務をPythonでやるようになり、本当に楽になりました。コード1文でデータの整形や可視化ができる快感を味わって下さい。
こんにちは,米国データサイエンティストのかめ(@usdatascientist)です. この度33回に渡る「デ…
機械学習
数学、プログラミングで土台が出来たら、いよいよ機械学習の勉強に入りましょう。本当に面白いのはここからです!
概要理解
何事もまずは俯瞰して概要(全体感)を押さえることが重要です。木を見て森を見ずでは、理解が進みづらいからです。
この本で、これまでに起きた3回の人工知能ブームの内容や今後の展望まで一気に押さえることが出来ます。また、筆者の今回の人工知能ブームに賭ける熱い想いが滲み出ています。私はこの本を読んで、このAI分野で働きたい!と思いました。まさに人生が変わった本です。東大の教授が書いた本ですが、驚くほど分かりやすく書かれていますし、読んでいてワクワクします。AI分野で米中に遅れを取っている課題満載の日本が逆転するための提案もされています。日本にもまだ勝ち目はある!と希望が持てます。モチベーション上がるから是非読んで!
機械学習の理論
機械学習でオススメの本一冊挙げるならこの本です。網羅的に機械学習を理解しながらPython(scikit-learn)で実装出来ます。教師あり学習はもちろん、教師なし学習も取り扱っています。また、実務で必須となる、ハイパーパラメータのチューニング、交差検証、特徴量エンジニアリング、パイプラインまで言及されています。この本で、即戦力を磨きましょう。
amazonで書籍を購入
(2022.09.21更新) こんにちは、30代IT未経験からAIエンジニアに転身した経験を発信しているtakeです。 今回は、世の中にある機械学習関連の教材を実際に私自身が受けてみて、大変有益と感じた教材を紹介します。 本記事に[…]
>>前編はこちら<<
機械学習の分類のみ(回帰は扱わない)なのですが、こちらのコースもおすすめです。癌のデータやアヤメのデータを使ってモデルごとの性能を比較していくので、大変分かりやすいです。特徴抽出や特徴変換などの前処理、パラメータ調整の他、データ量が多い際のアプローチ(SGD)なども紹介されており、大変役立ちます。スライドの裏側に先生が立って説明する独特のスタイルもユニークです。
>>Udemy講座はこちら<<
データ分析コンペKaggleで勝つための技術書なのですが、もちろんデータ分析業務でバリバリ活用可能です。Kaggleで優秀な成績を収めた方々の著書のため、モデルの精度を向上させる技術(アンサンブル、target encoding、ベイズ最適化によるパラメータ適合等)がてんこ盛りです。サンプルコードも付いているのですぐに試すことが出来るのもありがたい。コンペに参加しなくても持っておくべき一冊です。
機械学習を実務に活かす
せっかく勉強した機械学習の知識も使わないと宝の持ち腐れです。自分の実務に活かして行きましょう!
機械学習の勉強を終え、いざ実務に活かそうとする際に役立つ本です。機械学習プロジェクトを成功させるポイントから、教師データの集め方を含めたシステム設計の方法、機械学習システムが効果を発揮しているか確認する際に必要な仮説検定やA/Bテスト方法まで、仕事にダイレクトに役立つ本です。
データサイエンス力が高いだけでは成果を出せません。ビジネス力も必要ですという内容。AIプロジェクトの本ですが、「課題解決をAI一択で考えず、AI以外の手段がないか考える」という言葉があり、データサイエンスや機械学習を使うのが目的ではなく、ビジネス課題(利益)のクリアが目的と再認識出来ます。どんなことをしたらAIプロジェクトが失敗するのか前例から学べるので、プロジェクトを任された際に指針になるでしょう。
AIの導入効果として1回の収穫(例えば工数削減など)で終わらせてはもったいないです。本書はAIの導入効果を何回も収穫できる仕組み(企業が勝ち続ける仕組み)をつくるヒントを得られる良書です。米中の後塵を拝している日本のこれからの勝ち筋が示されています。この本はマジで買うべき!この本を手に、自社の勝ち筋を考え抜こう!
深層学習
機械学習の学習が終わったら、第三次AIブームの火付け役であるディープラーニング(深層学習)を勉強しましょう!これなしに終われない!
この本はライブラリに頼らず、本当にゼロからディープラーニングを実装するので原理の理解も深まるし、実装力も身につくという一石二鳥本です。そして何より楽しい!!ゼロから実装したことで愛着も湧きます笑。最終的にはTensorFlowとかPyTorchなどのライブラリに頼っていいですが、1回でも実装したことがあるという経験は自信(もっと言うと「財産」)になります。深層学習で一冊だけ推薦するならこの本ですね。
PyTorchでディープラーニングやるならこの本がオススメです。初心者がPyTorchを勉強すると、「なんでこんな書き方すんの?」だらけなんですよね。。。その点、この本はPyTorch独特の構文を丁寧に解説してくれるので重宝します(他にもUdemyを2本やってみましたが、この本が一番分かりやすかったです)。最終的に、人間にも難しい「オオカミとシベリアンハスキーを見分けるモデル」を構築します。コードが公開されているので、非常に助かります。
IT全般の基礎
基本情報技術者
AIエンジニアは、ITの基礎知識がないと仕事になりません。マジで。私自身、資格は持ってませんが、広範にITの知識が入る基本情報技術者の内容はざっと一通り読んで理解しました。資格を取る必要はありませんが、一通り勉強はしておくべきです。
この本は大変分かりやすいのはもちろんなんですが、マンガが挿入されていて面白いので勉強がはかどります。資格の教材って眠いのが一般的なので大変ありがたい存在です。資格を取ることが目的じゃないと割り切れば、ざっと読むのに1週間程度で完了できますよ。
Linux
AIの開発はLinuxでやることが多いです。Linuxでの操作は全てコマンドになります。このコマンドを覚えないと、黒い画面のまま何も出来ません笑。最初は不便に感じますが、慣れればサクサク操作出来て快適ですよ。傍から見てもハッカーみたいでかっこいいし!
基本的なコマンド操作はこのUdemyで身につきます。全部丸暗記しようとせず、一通り流して見て、うっすらどんな機能があるのか記憶に入れれば良いと思います。いざ開発でコマンドが思い出せなくても、かすかな記憶を頼りにググれば必ず目的のコマンドが例とともに見つかります。そんなLinuxコマンドの第一歩として最適な講座です。
>>Udemy講座はこちら<<
SQL(データベースの操作)
世の中データの量は爆発的に増えており、エクセルで扱うことは出来ません。データベースの活用が必須となります。データベースを操作するにはSQLという言語を使います。
このUdemyはSQLの基礎的な構文を一通り学ぶことが出来ます。ハンズオン形式のため、一つ一つの構文について実際にデータを操作しながら操作を覚えられます。超入門ですが、サブクエリもやるので、このコースで初心者からは抜けられます。
>>Udemy講座はこちら<<
データベースのテーブル設計方法を学べます。テーブル設計をミスると、途端に開発が非効率になります。まさに負の遺産。開発初期でミスらないためにも、データベースの設計方法を押さえておきましょう。設計に携わる機会は少ないのですが、知っていて損はありません。
>>Udemy講座はこちら<<
実はデータベースにはいくつか種類があって、対応するSQLも方言のように微妙に表現が変わるのですが、この本は主要なSQLの種類別に書き方を解説されているので非常に重宝します。(そもそも方言をなくしてくれー!と思いますが、、、)私自身、ポスグレ、オラクル、DB2の経験があるのですが、書き方の違いが分かるこの本に救われました。完全に辞書として使っています。
クラウド
今後、機械学習システムはクラウドなしでは成立しなくなります。学習データが無限に積み上がっていく状況のため、サーバの容量がいくらあっても足りないからです。自動でスケールアウト・インできるクラウドは魅力的です。まずは『AWS認定資格 クラウドプラクティショナー』の取得から始めれば良いと思います。クラウドプラクティショナーは初歩の資格です。クラウドの概念理解や、ケース別に利用すべきAWSサービスを広く知ることが出来ます。以下、私が資格取得に役立った本、Udemyを紹介します。
試験範囲を網羅した教本です。正直、実務経験がないとこの本だけでは理解が難しいですが、下の過去問を解きつつ、本書を読みつつ、わからない箇所はググりつつやれば1ヶ月くらいの勉強で合格できます。AWSやクラウドの全体感を押さえることが出来ます。
Udemyって動画のイメージしかなかったのですが、過去問のように、クイズも売ってるんです。この講座は、クラウドプラクティショナーの模試を7回分受けることができます。4択問題を回答して、最後に一問ずつ答えと解説を読むことができます。模試と言っても、まとまった時間取れませんよね?安心して下さい。途中で中断もできます。空き時間にコツコツ解いていきましょう。本番の試験問題より少し難しかったので、本番はすんなり一発合格できましたよ!
>>Udemy講座はこちら<<
WEBの知識
WEB全般
AIエンジニアなのになぜWEB?と思われるかも知れませんが、機械学習システムは大抵WEB上で操作・確認できるアプリケーションとしてリリースされるので必要なんです。本当に色々身に着けないといけないから大変ですよね。。。
図解が豊富で分かりやすいです。これまでの歴史も踏まえて理解できるので、確固たるWEBの知識が手に入ります。私はゼロからほぼこの本だけでWEBの全体感を押さえました。
WEBフレームワーク(Django)
PythonベースのWEBフレームワークです。複雑なWEBアプリもDjangoを使えば構築出来ます。ただこのDjango、結構クセが強く、出回っている教材も少ないので習得に苦労しました。
Djangoやるなら、このUdemy一択です。仕事でWEBアプリを開発することになり、書籍やUdemyを片っ端から探した私が言うのだから間違いないです笑。3つのアプリを作りながら学ぶので確固たるスキルが身につきます。説明に出てくる図解も秀逸で理解の助けになりました!
終わりに
以上が紹介になります。いかがでしたか?特に、AIエンジニア教材としてVBAやRPAを薦めるのは珍しいのではないでしょうか?一見遠回りに思えるかも知れませんが、転職活動などで実績をアピールできる分、良い戦略かと思います。是非活用ください。今後も新しい学びがあるたびにアップデートしていきます。
最後まで読んで下さりありがとうございました。是非感想やコメントなど頂けると励みになります。今後もよろしくお願いします!