見出し画像

【保存版・初心者向け】 AIエンジニアを目指す上での必読書5選

はじめに

3年前の2018年5月に「独学でAIエンジニアになりたい人向けのオススメの勉強方法」という記事を書かせて頂きました。

ありがたいことに、非常に多くの方々(約40万views)に読んで頂きまして嬉しい気持ちです。
2021年現在、多くの機械学習の書籍が増えたこともありどの書籍を読めば良いのかわからない方が多いと思い、自分が読んできた中でベストな書籍5選をセレクトしたいと思い本記事を書くことにしました。

この記事の対象者

・将来、AI開発関連の業務に携わりたいと検討中の初学者の方
・未経験者からAIエンジニアを目指していて、どのような知識が必要か知りたい方
・AIプログラミングスクールや専門学校に進学しようか考えているが、まずは市販の書籍で独学で勉強してみたいという方

対象ではない方

・既に業務でAI開発していて、本書で紹介する書籍を読まれている方
・Deep Learningの資格試験の勉強方法(G検定やE資格取得のための等)
・機械学習を活用したサービス開発に関して
・扱うデータ別(画像や音声、文章データ等)の専門技術の書籍が知りたい方

などなどは対象外になります。

忙しい方向け5冊

+α


そもそもAIエンジニアとは

この記事で登場するAIエンジニアですが、「機械学習エンジニア」を指します。機械学習エンジニアは機械学習を活用し、現場環境に合わせて実装するエンジニアになります。
以降AIエンジニアを登場する場合、「機械学習エンジニア」に読み替えてください。
この記事では主に機械学習エンジニアを目指す上で参考になる書籍を紹介します。(他にも「AIプランナー」や「データサイエンティスト」などと呼ばれる職種もあり、その場合読まれる書籍が変わってきます。)

画像1


AIエンジニアに最低限必要な知識

まずは、AIエンジニアに最低限必要な知識を大きく6つに分けてみます。
ここでは、将来AIエンジニアとして業務を行うにあたり、大きく分けて5つの基礎知識が必要であることと、それらの全体像を把握してください。


①プログラミングスキル

・Python
特にデータ分析ライブラリや機械学習ライブラリ等
(numpy、pandas、matplotlib、scikit-learn、PyTorchやKeras)
※他にもあげるとキリがないため、良く業務で用いるものを記載

②数学と統計の知識

・数学
 微分、線形代数、ベクトル、行列、確率など
・統計の知識
 標準偏差、分散、確率分布、推定、検定など。


③機械学習の基礎知識

・教師あり学習と教師なし学習
・単回帰、重回帰分析、最小二乗法、パーセプトロン、ロジスティック回帰
・決定木、ランダムフォレスト、サポートベクトルマシン、K-means
・ディープラーニングの実装スキル及び知識
・scikit-learn、KerasやPyTorchなどのフレームワークの知識
・学習済みモデルを作るまでの流れ

他にも前処理や特徴量設計、モデルの性能評価(交差検証、混合行列、再現率・適合率・ROC曲線 etc)に関して

1.データの収集とデータの前処理欠損値の補完や外れ値の削除)
2.特徴量の設計(特徴量の選択)
3.モデル開発(モデルの選択と学習)
4.モデル評価


④SQL

select、insert、update、delete、where、like、limit、sum、avg、max、group by、having、order by、テーブル結合、ビュー、サブクエリ、caseなど

⑤クラウドの知識


AWSやGCPやAzureなどのクラウドインフラ回りの知識

+α
①Linuxコマンド,Git,Github,DockerのスキルやWeb開発のスキル
(FlaskやDjangoなどを用いたWeb API開発スキルやWeb開発全般のスキル)

②専門領域(ここ大事)
データの種類には、画像データ、文章データ、音声データ、時系列データ、テーブルデータなどがあります。
どのデータを扱うかによって極める機械学習技術が異なってきます。
※詳細は本記事の最後のセクション「あわせて読みたい」を確認ください。


上記5つを一度に全てやるのではなく、まずは①→③(Pythonと機械学習のの2つに絞る)へと学ぶことをオススメします。
オススメする理由は、はじめに理論から入ると独学の場合挫折しやすいです。そのためPythonを学ぶ過程で手を動かしながら学ぶことで、書いたプログラムと出力結果を比較しながら学ぶことで、ただ数式を眺めるよりも継続して学びやすくなります。

AIエンジニアになるためのオススメの独学方法

必要な知識は前の節で紹介しましたが、どのようにそれらを学べば良いのでしょうか。
①から⑥を学ぶ上で、以下のような順で知識を身につけていくことをオススメしています。

フェーズ1 pythonによる機械学習プログラミングと人工知能概論を学ぶ
フェーズ2 機械学習プログラミング
フェーズ3 Kaggleに挑戦
フェーズ4 SQL、クラウドなどの技術も身につける。
フェーズ5 機械学習スキルを活用してプロダクト制作をする
フェーズ6 教える


このフェーズごとに学んでいくことがもっとも自分自身に負荷をかけず、楽しく学ぶことができると考えています。
フェーズ1ではプログラミング初学者の方を指しております。
もし、プログラミングを初めてという方は是非フェーズ1から目を通してください。
フェーズ2では実際にフェーズ1で学んだ内容をベースに、機械学習プログラミングに関する勉強方法を説明して参ります。
既にscikit-learnを使った機械学習プログラミングを行なっている方は飛ばして頂いても構いません。
フェーズ3ではKaggleといったコンペティションを通じて実践的なプログラミングを学ぶ方法を記述しています。
フェーズ4 機械学習をやる上で、データベースからデータを取り出すことは頻繁に行われますので、SQLの知識は必須です。ここでは、SQLの他にスクレイピング(データ収集用)、クラウドなどの技術の身につけ方を紹介します。
フェーズ5 機械学習スキルを活用してプロダクト制作に取り掛かりましょう。このレベルまで到達した方は、プロダクトを通じて学ぶことが多いです。
フェーズ6 人に教えることで自分の分かっていなかったことが明確になることがあります。なので、友人などに機械学習を教えて自分の理解を深めることもよいでしょう。
以降、6つのフェーズごとに、どのようにこれらに取り組めば良いのか本題のオススメの書籍を5選紹介しながら説明していきます。


フェーズ1 pythonによる機械学習プログラミングと人工知能概論を学ぶ

Pythonの文法書は驚くほど出版されておりますが、全くのプログラミング初学者であれば、下記の書籍1冊買えば基礎の基礎は十分です。

リファレンス的な書籍が欲しいという方は「入門 Python 3 第2版」を手元に1冊あると良いですが、機械学習エンジニアを目指す上で、体系的にPythonの知識を隅々まで学ぶより、機械学習に必要な知識獲得のために書籍を読んだりKaggle等に時間を費やした方が良いと個人的には思っています。

フェーズ2 機械学習プログラミング


まずは機械学習のアルゴリズムの内部の仕組みは置いておいて、ライブラリを用いて機械学習プログラミングを学びたい方には下記の1冊がオススメです。

Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

理論も学びたいという方は以前共著にて出版させて頂きました「scikit-learn データ分析 実践ハンドブック」をお読みください。こちらの書籍はアルゴリズムの解説に敢えて数式を採用し、実装で指定するハイパーパラメータと数式の関係が分かるよう工夫しております。

次に下記の書籍をお読みください。

[第3版]Python機械学習プログラミング 達人データサイエンティストによる理論と実践


もしくは

scikit-learn、Keras、TensorFlowによる実践機械学習 第2版 


個人的にはどちらも分厚く共通事項が多いのですが、「Python機械学習プログラミング 達人データサイエンティストによる理論と実践」は主要な機械学習アルゴリズムの理論と実装が学べる点に加え、Flaskを活用したWebアプリの基礎まで学べるので個人的に好きです。

フェーズ2 Kaggle



Kaggleで勝つデータ分析の技術


下記は必要に応じて読んでみてください。

・「Python実践データ分析100本ノック

・「Kaggle Grandmasterに学ぶ 機械学習 実践アプローチ

8/24日に「Approaching (Almost) Any Machine Learning Problem」の翻訳書
「Kaggle Grandmasterに学ぶ 機械学習 実践アプローチ」が発売されますがこちらの書籍はKaggle Grandmasterの方が書いた本で、非常にオススメです。
(英語版は紙版は1800円、Kindleだと800円で買えます)

もう少し補足しますと、日本語版では「機械学習 実践アプローチ」という書籍名ですが、機械学習の理論と実装力をPython機械学習プログラミング等で読み終わった方が、初心者から中級者にステップアップするための書籍です。上級者向けではありませんが、脱初心者や中級者の方には学びが得られる良書です。


業務で必要な知識を学ぶ

下記の「仕事ではじめる機械学習 第2版」はビジネス寄りの人でも有用な書籍の1冊です。Pythonのプログラムも記載されていますが、機械学習プロジェクトの始め方や各種機械学習アルゴリズム、評価方法などは実務でも役に立ちます。

仕事ではじめる機械学習 第2版


AIエンジニアのための機械学習システムデザインパターン

おまけ(最近読んでよかった本)

最近読んでよかった本をいくつか紹介します。


教える

学んだことを人に教えることで自らも学びになります。
この記事で学んだことを早速、そばにいる人に教えてみてください。
この記事でなくとも、本で読んだことや講義で学んだこと、メモしたことでもスタートできます。教える機会はいくらでもありますので、是非学んだ後には教えることにもチャレンジしてみてください。

まとめ

本記事では、AIエンジニアに必要なスキルとどのように勉強すると良いのか、またAIエンジニアを目指す上での必読書5選を書いた記事になります。
ここに挙げられておりませんが、数学や統計のおすすめ書籍や、その他の機械学習系の良書はまだまだありますが、5選という縛りの中でピックアップさせて頂きました。

6ヶ月でAI人材に必要なスキルを体系的に学ぶ学習サービス開始

一期生は募集開始から1週間で数十名の応募があり、現在2期生の募集を開始致しました。受講料35,000(税込)でAI人材に必要なスキルを身につけられるサービスを開始致しましたので、AIエンジニアやAIプランナーになりたい方など是非チェックしてみてください。


●サービス概要
・動画コンテンツ:約150本(15時間前後)
・AI Academyの440種類のテキスト利用可能(受講から6ヶ月間)
チャット(Slack)にて質問し放題(受講から6ヶ月間)
6ヶ月間の受講期間 35,000円(税込)



最後にAI Academy株式会社エーアイアカデミー)では仲間を募集しております。

AI Academyでは「先端技術教育で人と社会の成長を加速させる」をミッションに、AI人材不足問題の解消、機械学習や量子コンピュータなどの先端技術を個人・法人に限らず誰もが安価で学べる機会作りをし、多くの人々がAI技術などを活用しより良い社会実現に向けて取り組んでおります。
ミッションに共感して頂いた方や、一緒に仕事したい!という方是非ご応募お増しております。

あわせて読みたい



この記事が気に入ったらサポートをしてみませんか?