DataScience

Pythonで始める : データサイエンスの独学完全マップ【初心者向け】

データサイエンス 完全初心者 Python
データサイエンスを勉強したい人
データサイエンスを勉強したい人
完全初心者からデータサイエンスを勉強したい!

でも何から勉強していけば良いのか分からないな…。ネット上で詳しく書かれている記事はないかな…。

この記事では、上記のような悩みを解決していきます。

 

この記事の想定読者

想定している読者は、次のとおりです。

  • データサイエンスに興味がある人
  • でも、プログラミングや数学なんてやったことない人
  • データサイエンティストを目指している人

 

この記事では「データサイエンスを学習する完全ロードマップ」を紹介していきます。

データサイエンティストに興味を持ったものの、イマイチ何から勉強したら良いのか分からないですよね。

そもそも、データサイエンティストに必要なスキルすら分からないみたいな…。

 

でも、この記事を読めば、完全初心者からでもデータサイエンスの具体的な学習方法について分かるようになります。

今回は「完全ロードマップ」という形でガッツリ記事を書いています。長くなるので、ブックマークでもしておいて頂けたらと思いますm(_ _)m

 

この記事の信頼性

最近まで自然言語処理や物体検出を中心に、機械学習エンジニアをやっていました。

現在は、フリーランスのデータサイエンティストをやっているので、よく分からないサイトより信頼できる情報になっているのかなって思います。

 

STEP0 : データサイエンス独学完全ロードマップで目指す目標

 

この記事で最終的に目指す目標は、次のとおりです。

完全未経験から、データサイエンティストとして活動するための、最低限必要になるスキルを身につけること。

上記の目標にフォーカスした記事になっています。

そもそも論ですが、データサイエンティストに必要だと言われているスキルは、一般的に「3つ」あります。

 

データサイエンティストに必要なスキル

  • ビジネス力
  • データサイエンス力
  • データエンジニアリング力

これらのスキルが必要だと言われています。が、若干わかりにくいので、僕の方で分かりやすい解釈に変換しました。

 

結論 : データサイエンティストに必要なスキル

  • ビジネス力 → データサイエンスを適応する業界の理解
  • データサイエンス力 → ざっくり言えば数学
  • データエンジニアリング力 → ざっくり言えばプログラミング

だいぶ噛み砕いていますが、だいたい必要なスキルはこんな感じです。

そして、個人でデータサイエンスを勉強するとなると、言うまでもなく「データサイエンス力」と「データエンジニアリング力」を学ぶことになります。

つまり「数学」と「プログラミング」ですね。

 

そして、この完全ロードマップでは、データサイエンスをやっていく上で「最低限の数学とプログラミングのスキル」を身につけることを目標にしています。

 

データサイエンティストを目指したいと考えている大学生や、ジョブチェンジしたい人の第一歩になるはずです。

 

STEP1 : 独学で必要な費用と勉強時間

 

この完全ロードマップを使って学習したときに、必要な費用と勉強時間は以下のとおりです。

  • 費用 : 約2万円ほど
  • 期間 : 2〜3ヶ月ほど

ざっくりした計算ですが、だいたいこれくらいで済みます。

データサイエンスを学べるスクールだと70〜100万円かかるので、独学で勉強する場合は安くおさえられるのが嬉しいですね。

 

補足 : スクールアンチではないです

ただ、僕は独学が最高と思ってないですし、スクールが正義とも思っていません。

自分に合った勉強方法が必ず存在するので、正直ここら辺は「自分がどういう性格なのか?」によりけりだと思います。

 

さらにデータサイエンス系のスクールは、企業で法人研修を実施していることが多いので、スクールを出ていると「これくらいのスキル感の人なんだな」と、スクール出身が実績になる場合があります。

 

なので、データサイエンティストを本格的に目指している場合には、最初からスクールを使ってしまうのも手だということを覚えておいて頂けたらと思います。

なお、スクール情報は下記の記事でまとめています。

データサイエンス スクール
現役が紹介 : データサイエンスが学べるスクール4選【使い方も解説】『データサイエンスを勉強したくてスクールを見ているんだけど、そこのスクールが良いんだろう...。おすすめのスクールも知りたいし、どうやって活用していけば良いのか知りたい!』このような悩みを解決する記事になっています。データサイエンスを学べるスクールを探している方は必見です!...

 

STEP2 : データサイエンスの勉強を始める前に読むべき本

 

データサイエンスに必要なプログラミングと数学の勉強を始める前に、読むべき本が2冊ほどあります。

もちろん読まなくても良いのですが、数学とプログラミングだけで解決できない部分を補ってくれる本になっているので、僕は読むことをオススメします。

 

読むべき本① : これからのデータサイエンスビジネス

 

「これからのデータサイエンスビジネス」は、2019年9月と最近になって発売された書籍で、データサイエンスビジネスについて非常にコンパクトにまとまっています。

 

「どのようにプロジェクトを回していくのか?」といった実務部分を学べるので、この本を読んでおくとデータサイエンティストのイメージが付きやすいのかなと思います。

「実務的な話はまだ早いかな…。」とか考えずに、先に読んでおくことをオススメします。

 

読むべき本② : 統計学が最強の学問である

 

「統計学が最強の学問である」は、データサイエンティストでなくても読む人がいるくらい有名な本です。

 

こちらの本は「統計学で何ができるのか?」を学べる本になっているので、これから統計学を活かしたデータサイエンスをやっていくのであれば必読ですね。

 

STEP3 : データサイエンスの勉強でおすすめのPC

 

この記事は「完全初心者向けのロードマップ」になっているので、データサイエンスの勉強でおすすめのPCまで触れていきます。

それで、データサイエンスでおすすめのPCですが、「ぶっちゃけ特にないかな…。」というのが本音です。

 

あまりにもスペックの低いパソコンだと、勉強していてストレスになると思うので、ある程度のCPUとメモリを確保したPCであれば何でもOKです。

 

余談 : Macbookをお得に購入する方法

かなり余談にはなりますが、楽天Rebatesを使うとMacbookがお得に購入できます。

あまり知られていませんが、楽天Rebatesを経由して買い物するだけでポイント付与される仕組みになっています。

楽天Rebates 使い方

Apple公式ストアだと、1%のポイントバックが受けられる仕組みになっています。

 

Macbookは一番低いスペックでも割と高いので、1%のポイント付与でも結構楽天ポイントが貯まりますよ(`・ω・´)!

 

STEP4 : Pythonの基礎を学ぶ

 

ここまできたら、ようやく具体的な学習に入っていきます。

まずはデータサイエンスで頻繁に使われているPythonの勉強を始めていきましょう。

 

Pythonの勉強で活用すべき教材

  • Progate : 環境構築不要でプログラミングを学べる

正直、プログラミングをゼロから勉強していくなら、これ一択になるかと思います。

プログラミング学習の挫折ポイント1つ目は環境構築なのですが、Progateを使えば環境構築する必要がないので回避可能です。

 

プログラミングを始める前から挫折するのは勿体無いので、まずはProgateを使ってプログラミングそのものを勉強していきましょう。料金は1ヶ月1,000円ほどです。

 

Progateの学習期間

Progateを使ったPythonの学習期間は「2週間」が目安です。スケジュールのイメージは、だいたいこんな感じになります。

  • 1週目 : Pythonの全5レッスン(1回目)
  • 2週目 : Pythonの全5レッスン(2回目)

つまり2週間のうちに、Pythonコースを2周する感じです。一回で完璧にしようとせず、回数を重ねて反復学習するようにしましょう。

ちなみにPythonの独学方法については、過去記事にて解説しています。

Python 独学
Pythonの独学完全ロードマップ【現役AIエンジニアが解説】『Pythonって独学で習得できるのかな...。Pythonの独学方法を具体的に知りたいな...。』このような悩みを解決できる記事になっています。Pythonを独学していきたい方は必見です。...

 

あと、Pythonの学習は2週間で終える予定ですが、料金は1ヶ月ぶんで払っているので、あと2週間の猶予があります。

その2週間で、SQLコマンドラインの勉強をしておくことをオススメします。

SQLはデータベースからデータを抽出するときに、コマンドラインはそもそものPC操作に使うことになります。

 

RとPythonは、まずPythonが良いです

あとデータサイエンスをやるとなると、RとPythonの二択になるかと思うのですが、まずはPythonをオススメします。

理由としては、次のとおりです。

  • 案件数で考えても、Pythonが多い
  • 僕の感覚的にも、Pythonが多い
  • Pythonだと、出来ることが多い
  • Jupyter notebookが便利すぎ

こんな感じでPythonは汎用性も高く、取り入れている企業が多いです。

なので、まずは無難にPythonを勉強していき、余力があればRをやってみるくらいで良いと思います。

 

STEP5 : 自分のPCでPythonの環境を整える

 

Progateを使ってPythonの勉強が完了したら、ようやく環境構築をやっていきましょう。

実はPythonの環境構築(使える状態にする)には、かなり多くの種類があります。

≪ローカル向き≫

  • Pythonそのものを入れる
  • Anacondaを使ってPythonを入れる

≪オンライン≫

  • Google ColaboratoryでPythonを使う
  • AWS Cloud9でPythonを使う

この中で、データサイエンスを目的にPythonを使うのであれば、≪ローカル向き≫のAnacondaを使って環境構築するのをオススメします。

≪オンライン≫のGoogle Colaboratoryも便利なのですが、若干ファイルを読み込みが面倒なので、プログラミング完全初心者ならAnacondaって感じです。

 

使っているPCがMacなら、下記の記事を参考にしつつAnacondaを導入してみてください。

Anaconda インストール mac
【Mac向け】AnacondaをインストールしてPython環境の構築『macを使っているんだけど、Pythonの環境構築が意味不明だ...。』『Anacondaを使って環境構築したいな...。』このような悩みを解決する記事になっています。...

 

Windowsをお使いの方は『Anaconda を Windows にインストールする手順』が分かりやすいと思います。

基本的には、ポチポチ「次へ」を押していけばOKです。

 

インストール完了後 : 仮想環境を作成してみよう

インストールを完了できたら、仮想環境を作成してみましょう。仮想環境とは、読んで字のごとく「仮想のPython実行環境」です。

仮想環境を作成する理由や、作成手順については下記の記事にて解説しています。

Anaconda 仮想環境 Python
【Python初心者】Anacondaで仮想環境とnumpyの導入Pythonの勉強を始めたばかりで、仮想環境の構築とかよく分からない...。このような悩みを解決していきます。Anacondaの仮想環境を構築するところから、ライブラリnumpyの導入までを、分かりやすく解説していきますよ。...

 

STEP6 : 機械学習の基礎を勉強する

 

Pythonを自分のPCでも使えるようにしたら、次は機械学習の勉強をしていきます。

機械学習の勉強といっても、ゴリゴリに理論を学ぶのではなく、機械学習ってこんな感じなんだな〜と俯瞰する程度の内容です。

 

機械学習の基礎勉強でおすすめの本

色々と読み漁ったのですが、G検定の本が一番よくまとまっているという結論です。

G検定とは、日本ディープラーニング協会が開催しているAIの資格試験です。

その検定試験で使われている参考書で、機械学習について勉強していくってことになります。

 

ただ、資格試験自体を受験する必要はないですし、端から端まで暗記しなければいけないってわけでもないです。

「機械学習の歴史とか手法って、こんな感じなんだな〜」と学べればOKなので、あんまり神経質にならないで読み進めていきましょう。

早ければ1日くらいで読了できるかと思います。

 

STEP7 : Udemyのデータサイエンスコースを受講する

 

ここまできたら、実際にPythonを使いつつデータサイエンスに触れていきます。

 

STEP7で使う教材

【ゼロから始めるデータ分析】 ビジネスケースで学ぶPythonデータサイエンス入門

データサイエンスの実戦で使う教材は、Udemyの『【ゼロから始めるデータ分析】 ビジネスケースで学ぶPythonデータサイエンス入門』です。

ぶっちゃけ、これ以上に分かりやすくて知識量も満足のいく講座は、他にはないと思います。

 

この講座を使いつつ、以下のような内容を学んでいきましょう。

  • データの可視化
  • 欠損値の処理
  • 機械学習の実装

上記のような実装面を、理論はいったん飛ばして学習していきます。

 

もちろん理論も大事なんですけど、学ぶべき順番は「実装→理論」かなと。

なぜなら、理論から学習を始めてしまうと、挫折する可能性が高くなるからです。

せっかくデータサイエンスに興味を持ったのに、理論面から勉強を始めて挫折してしまったら、勿体なさすぎです。

 

この講座なら、書籍とは違って動きを確認しつつ勉強できるので、初心者でも取り組みやすいです。

しかも、お値段が約1,300円と、書籍より安く購入できます。

データサイエンスの基礎は、この講座を使って身につけていきましょう。

 

STEP8 : scikit-learnで花の品種分類【レベルチェックテスト①】

 

これまでに学習したことを活かして、scikit-learnで花の品種分類をやってみましょう。

これはレベルチェックテストなので、今まで学習したことがしっかりと身についているか確認するためのものです。

 

レベルチェックテスト要件

  • scikit-learnに入っている、irisデータを使いましょう
  • 機械学習する前に、データの可視化をしましょう
  • 機械学習手法は、なんでもOKです
  • 決定木を使う場合には、可視化しましょう
  • データの可視化をseabornでキレイに出力できると、なお良しです
  • GridSearchを使えると、なお良しです
  • モデルの評価方法も、色々試せるとなお良しです

上記を満たすように、花の品種分類をやってみてください。

なおググるのはOKで、むしろscikit-learnに入っているirisデータの使い方とか調べてみてください。

欠損値はないし、かなりキレイなデータではありますが、ここまで出来れば基本的な機械学習の実装が出来ている状態になります。

 

STEP9 : 統計学の基礎を学ぶ

 

基本的な機械学習の実装が出来るようになったところで、少し理論の勉強に入っていきます。

おそらく、「先に実装して後から理論」の順番で勉強していくと、「あのとき使ったやつだ〜」と、理解しやすくなります。

理論の勉強は一般的に難しいと言われていますが、このロードマップのとおりに学習を進めていれば頭に入ってきやすいはずです。

 

統計学の勉強① : 統計Webのススメ

 

まずは統計Webを使って、統計学の基礎を学習していきましょう。

統計Webは、統計検定2級で出題される統計学を学習できるサイトになっています。

 

統計Web : おすすめの使い方

  • 1週目 : とりあえず読み進めましょう
  • 2週目 : 練習問題もやってみましょう

こんな感じで学習を進めていきましょう。

なお途中で読み進めていて分からなくなってきたら、紙に書いてみるのもアリです。

分散分析とか、わりと紛らわしいところは紙に書きつつ学習を進めると、理解しやすいかと思います。

 

統計学の勉強② : 書籍・参考書のススメ

 

統計Webで基礎的な統計学を学んだら、書籍を使って学習を進めていきます。

 

統計学でおすすめの書籍

統計学でおすすめの書籍は、下記の記事でまとめました。

統計学 本 入門書
【入門書まとめ】統計学でおすすめの本5冊を数学科出身が紹介『統計学の勉強がしたいんだけど、おすすめの入門書はないかな...?自分のレベルに合った本を見つけられると嬉しいな!』このような悩みを解決できる記事になっています。統計学の入門書を探している人は必見です。...

 

統計Webを読み進めた方なら、『おすすめ④:完全独習 統計学入門』からスタートで大丈夫です。

 

読んでいるだけだと眠くなってくる方向け : 統計検定2級の誘い

 

もし統計学を学んでいて「なんだか読んでいるだけだと眠くなってくるし、イマイチ頭に入ってこないな〜」と感じるのであれば、統計検定2級の問題を解いてみることをオススメします。

やはりアウトプットすると、知識の定着具合が変わってきますので。

なお統計検定は取得しなくても大丈夫ですが、「数学ができることを証明したい」のであれば、企業ウケは良いので取得しても良いかもです。

その場合は、僕が実際に受験したときの勉強方法が参考になるかと思います。

統計検定2級 合格 勉強法
統計検定2級に合格したときの勉強法を公開【2019年11月最新】『統計検定2級に合格した人の勉強法が知りたいな〜。』このような悩みを解決する記事になっています。統計検定2級を受験しようと考えている方は必見です。...

 

STEP10 : Pandasの取り扱い

 

統計学の学習が完了したら、Pandasの取り扱いに慣れていきましょう。

なぜこのタイミングでPandas…?」と思われるかもですが、ぶっちゃけscikit-learnなんかより使用頻度が高いからです。

 

それに機械学習の実装も大事ですが、その前にデータがないと意味ナシです。

Pandasは機械学習を実装したり、データを扱いやすくするのに必要なので、別でしっかりと学習しておきましょう。

 

Pandasの学習でおすすめの書籍

こちらの書籍1冊で、対応可能です。

STEP7のUdemy動画で扱っていなかったようなデータフレームのマージなど、より発展的で実務でも使うような内容が書かれています。

 

再度繰り返しになりますが、データサイエンスをやっていくのであれば、scikit-learnよりPandasになってくるので、しっかりと使い方をおさえておきましょう。

 

STEP11 : タイタニック号の生存者判定【レベルチェックテスト②】

 

ここまで学習すると、欠けているデータを補完することもできるし、統計的な意味の解釈もできるようになっているはずなので、わりと出来ることが多いはずです。

というわけで、レベルチェックテストをやっていきましょう。

 

タイタニック号の乗客が生存するか否かを分類するタスクです。

 

レベルチェックテスト要件

  • Kaggleから、タイタニック号のcsvファイルを取得しましょう
  • 機械学習する前に、データの可視化をしましょう
  • 機械学習手法は、なんでもOKです
  • 決定木を使う場合には、可視化しましょう
  • データの可視化をseabornでキレイに出力できると、なお良しです
  • GridSearchを使えると、なお良しです
  • モデルの評価方法も、色々試せるとなお良しです

上記を満たすように、タイタニック号の分類問題をやってみてください。

なお、Kaggleのカンタンな使い方は、下記の記事で紹介しています。

kaggleでtitanicを始めるまで STEP1 : Kaggleの登録をする まずは、兎にも角にもKaggleに登録しましょう。 参考ページ >&...

こちらの記事を参考にしつつ、Kaggleの登録からcsvファイルの取得までやっていきましょう。

 

今回は「レベルチェックテスト①」とは違って、欠損値を含んでいることにも注意が必要ですよ!

 

STEP12 : 「ここまでの復習 + スキルアップ」できる書籍 + 動画

 

STEP11のレベルチェックテストを完了できたら、基本的な機械学習の流れから実装まで分かっているかと思います。

ただ、機械学習手法については少し手薄になっているので、復習も兼ねてさらにレベルアップした内容を学習していきましょう。

 

「ここまでの復習 + スキルアップ」できる書籍

 

少し重複する部分も出てきてしまいますが、「東京大学のデータサイエンティスト育成講座」が、かなりオススメです。

タイトルのとおりで、東京大学で行われているデータサイエンティスト育成講座の内容が書籍化されています。

復習しつつも、手薄にしていた機械学習の部分も学べるので、更なるスキルアップにもってこいの一冊になります。

練習問題も付いているので、一緒にアウトプットをできるのも良いですね!

 

「ここまでの復習 + スキルアップ」できる動画

 

機械学習を深く学ぶのには、機械学習 | 筑波大学オープンコースウェアがおすすめです。

筑波大学 機械学習講義

こちらはなんと、筑波大学で実施されている機械学習の講義が、無料で受講できます。

 

しかも理論面について詳しく解説されているので、今まで手薄にしていた「機械学習の理論」について深く学べます。

データサイエンスより機械学習寄りではありますが、知っておいて損はないですね。

 

なおここまで学習しておくと「最低限の理論面を理解しつつ、実装もできる」という状態になっているはずです。

もちろんデータサイエンスや機械学習は、もっと奥が深いので毎日勉強が必要です。

ただ、追加で学習していくだけの基礎体力は身についていると言えます。

 

STEP13 : Kaggleコンペの準備

 

あとはひたすらアウトプットあるのみ!Kaggleコンペに参加していきましょう。

 

Kaggle参戦前におすすめの書籍

「Kaggleで勝つデータ分析の技術」は、その名の通りでKaggleコンペで勝つための本になっています。

具体的には、次のような内容が書かれています。

  • Kaggleで開催されているコンペの種類
  • Kaggleで上位に入っている人のテクニック
  • Kaggleで上位に入っている人が使う機械学習手法

こんな感じで、Kaggleで勝つための技術が、もれなく書かれています。

なおこの書籍に書かれている内容は、単にKaggleで勝つだけでなく、実際のデータサイエンスの現場でも使えます。

 

Kaggleコンペに参加して、ゲーム感覚でデータサイエンスを学んでいきましょう。

 

まとめ : データサイエンスは難しいけど、習得すれば収入アップ

 

というわけで、ここまでデータサイエンス完全ロードマップを紹介してきました。

データサイエンスは難しいですが、習得すれば間違えなく収入アップが見込めます。

 

実際に僕もデータサイエンティストとして働いていますが、周りの同世代と比べるとかなり高年収です。

30台前半の会社員でも、年収1,000万円くらい取れるような世界です。

 

もし少しでも興味があるなら、積極的に勉強していくことをおすすめします。

世の中の需要がバグっている今こそが、データサイエンスを勉強する絶好のタイミングです(`・ω・´)!

 

おすすめの記事