こんにちは!
当ブログ『PASTEL』運営者のみなと(@pastel_minato)です。
最近、chatGPTなどのデータサイエンス分野がどんどん知名度を上げていますね。その中で、データサイエンティストも注目を受ける重要な仕事として、一般の人に認識されつつあります。
この状況下、未経験だけどデータサイエンティストを目指したいという人は多いのではないでしょうか。実際、僕もそうでした。
とはいえ、データサイエンティストは統計学や、プログラミング、ビジネスなど、さまざまな技能が求められる専門職です。
未経験がデータサイエンティストを目指すためにはどのような勉強をすればいいのでしょうか。 今回はデータサイエンティストになるための勉強方法を紹介します。
1.データサイエンティストの勉強を始める前の知るべきこと
未経験からデータサイエンティストにを目指すにあたり、必要なことを知っておきましょう。
具体的には、以下の2つです。
- データサイエンティストは何をする仕事?
- データサイエンティストに必要なスキルは?
(1)データサイエンティストは何をする仕事?
がんばって勉強してデータサイエンティストになっても「思っていた仕事と違う」みたいな状況になっちゃえば意味がありません。
なのでまずは、データサイエンティストがどんな仕事なのかを具体的に見ていきましょう。
データサイエンティストは大量のデータから問題解決の手段を探る仕事
データサイエンティストの仕事を大雑把に紹介すると、大量のデータから何かのビジネス課題を解決する手段を探る仕事です。
大まかな手順としては、まず解決したい課題を明確にして、課題解決に重要な大量のデータを収集・整理し、分析や機械学習、ディープラーニングでモデルを構築、課題を解決します。
つまり、データサイエンティストは「データ分析はあくまで手段、一番大事なのは問題の解決」という仕事です。分析が本分ではないので、そこに注意が必要です。
データサイエンティストは意外と地味な仕事
データサイエンティストは「21世紀で最もセクシーな仕事」として注目を浴びたりしているので、華やかなイメージを持つ人が多いかもしれません。
たしかに、データサイエンティストはデータ分析でビジネス課題を見つけたり、新たな意思決定をサポートしたり、スケールの大きな職業です。
でも実際、仕事の多くはデータの収集、加工などの下準備。ほとんどのデータは中身がデータ分析に向いていなかったり、データの量が少なかったり、データが一部欠けていたり、そのままでは使えないからです。
データサイエンティストは華やかな職業という印象ですが、実際は地道な作業を繰り返していく仕事だということを理解しておきましょう。
(2)データサイエンティストに必要なスキルは?
データサイエンティストとして働くには、以下のスキルが必要です。
- 数学と統計学の基礎知識
- データ処理のプログラミングスキル
- データベース(SQL)の知識
- 機械学習、ディープラーニングの知識
- ビジネス知識
- コミュニケーションスキル
それぞれ、具体的に説明します。
①数学や統計学の基礎知識
データサイエンティストが向き合う課題は、科学のようにいつでも同じ結果になるようなものではなく、不確実です。そんな人間社会の課題解決には、専ら統計学が役立っています。また、データサイエンティストの本分とも言える機械学習やディープラーニングも、統計学を理論的基盤にしています。
なので、データサイエンティストには基本的な統計学や数学の知識が必要です。
大学で研究するような高度な知識は必要ないし、計算式もPCがあるのであまり必要ではありませんが、データサイエンスの裏にある仕組みを理解するために、数学や統計学の基礎知識が重要になります。
②データ処理のプログラミングスキル
データ分析は大規模で複雑なデータを扱うので、PythonやRを使用するのが一般的です。
特にPythonはNumPy、Pandas、Scikit-learnなどのデータ分析や機械学習のためのライブラリ(追加機能)がたくさんあるので、それらの利用方法を理解して自分で使えることが求められます。
プログラマーのプログラミングとは違いますが、Pythonの文法を覚えて、基本的なコードを読めるくらいのスキルは必要になります。
③データベース(SQL)の知識
データサイエンティストは、データベースからデータを持ってくることが頻繁にあります。
で、データベースの操作にはSQLという言語が使われます。データの結合や抽出、更新などを行うことができる便利な言語で、これが使えないとデータ抽出ができない、なんてことになります。
④機械学習、ディープラーニングの知識
データ分析の花形、機械学習やディープラーニングを実際に実装するための知識も必要です。
教師あり学習、教師なし学習、強化学習、ディープラーニングなどの手法を理解し、それぞれの場面で使い分けられるようにしましょう。
⑤ビジネス知識
データサイエンティストは、データ分析を手段としてビジネス課題を解決する職業と言いました。
つまり、データ分析のスキルが高くても、ビジネスに応用できなければ意味がありません。
データ分析をビジネスで活用するためには、データ分析の対象である業種の特徴やビジネスを理解しておくことが必要です。
⑥コミュニケーションスキル
データサイエンティストの仕事は多くの場合、一人で完結しません。例えば、現場の担当者に話を聞いて課題を洗い出すとかです。
実際にデータサイエンティストの成果物を使うのは現場なので、その人たちから話を聞かないでただ分析しただけでは、絶対に現場とのずれがあります。
せっかく苦労して分析したのに、設定知っているビジネス課題が根本から違っていた、なんてことにならないように、関係者と連携して仕事を進めるコミュニケーションスキルが必須です。
データ分析の結果をわかりやすく説明し、ビジネスにおいてどのような意思決定をするべきかをしっかり伝えられるようになりましょう。
2.データサイエンティストになるための勉強方法
ということで、データサイエンティストを目指すためには、さまざまな知識やスキルを習得する必要があります。
ここからは、データサイエンティストになるための具体的な勉強方法を説明します。
- Step0:データサイエンスとデータ分析の流れを知る
- Step1:ひとまずPythonでデータ分析してみる
- Step2:データサイエンスに必要な統計学や数学をちゃんと勉強する
- Step3:PythonとSQLの基本や文法を勉強する
- Step4:機械学習とディープラーニングをPythonでちゃんと実行する
- Step5:実際にビジネスレベルのデータサイエンスをやってみる
Step0:データサイエンスとデータ分析の流れを知る
まず一番初めにやることは、データサイエンスとは何か?データ分析はどんな流れで行うのか?を知ることです。
これから勉強する内容を大枠のイメージで掴みます。統計学とかプログラミングとか、勉強すべきことはたくさんあるんですが…まず全体像を知ることが効率的な勉強につながります。
下記の本などが、効率よく全体像を知れておすすめです。
「データサイエンティスト 基本スキル84」はその名の通りデータサイエンティストのスキルが載った辞典のようなもの。必要な分析手法から資格まで、幅広く紹介されていて、勉強の1冊目に読むべき本です。
「一生モノのビジネス教養 データサイエンス大全」はデータサイエンティストの業務の流れにしたがって、データサイエンスの知識を網羅的に勉強できます。
数式よりも図や文章で説明してくれるので、一番初めに読む本として間違いありません。文系の僕でもスラスラ読めました。
Step1:ひとまずPythonでデータ分析してみる
そしたら、ちゃんとした勉強に入る前にもう少しデータサイエンスで遊んでおきましょう。
せっかくデータサイエンティストの全体像が分かったのに、細かい内容(理論や、統計学、プログラミング)の勉強ををしてもつまらないですからね。
どうせなら、まず初めにお手軽にデータサイエンスをできるんやぞ!って経験をした方が、後の勉強も楽しくなるってもんです。と言うことで以下の5冊の本をやりましょう。
「Python◯年生」シリーズは、知識ゼロからPythonを使ってデータ分析ができる最強の入門書です。
数学や統計学、プログラミングやデータサイエンスのことを何も知らなくても大丈夫。1年生から3年生に向けて順番に遊んでみるだけでOKです。
本の内容を真似していくだけで、ひとまず何となくデータサイエンスを実践できます。
Step2:データサイエンスに必要な統計学や数学をちゃんと勉強する
そうしたらいよいよ、データサイエンスの基礎となる数学や統計学の勉強に入ります。確率論、統計モデル、仮説検定などの基本的な概念を理解しましょう。
まず読むべきなのが「統計学が最強の学問である」シリーズ。
これらは読むだけで「統計学とは何なのか」「具体的に何をしたい時にどんな統計手法を使うべきか」「統計学に大事な考え方」を身につけられる良書です。
大学の教科書みたいな書き方ではなく、小説のようにすらすら読める本なので、誰にでもおすすめできます。
もっと簡単なところから始めたいなら、「完全独習 統計学入門」もおすすめ。
中学数学だけで、とにかく最短で統計的な検定(意味のある差か調べる)や区間推定(サンプルから全体の数値範囲を計算)を勉強できます。
網羅的に、でもわかりやすく統計学を知りたいなら「基礎から学ぶ統計学」です。
イラストたっぷりで理科の教科書のような見た目なんですが、しっかり統計学の必要事項を抑えている良書です。
Step3:PythonとSQLの基本や文法を勉強する
Pythonはデータサイエンスに欠かせないプログラミング言語です。
Pythonの基礎文法から始め、NumPy、Pandas、Matplotlibなどのデータ解析や機械学習のためのライブラリを学びましょう。
といっても、開発するわけではないのでPythonの基本文法を覚えておけばOKです。
「シリコンバレー一流プログラマーが教える Pythonプロフェッショナル大全」の前半をやれば、Pythonの文法は完璧です。
余裕があればSQLの勉強も
データの収集、加工、変換などのデータエンジニアリングのスキルとして、SQLの書き方などデータの取り扱いに関しても勉強しちゃいましょう。
SQLは「このデータベースから、この条件のデータを取り出して」という感じのコードの書き方を覚えるだけなので、以下の一冊で十分です。
Step4:機械学習とディープラーニングをPythonでちゃんと実行する
いよいよ、自分の手で本格的に機械学習をやってみます。
呼び方的に機械学習よりもディープラーニングの方が凄そうに聞こえるかもしれませんが、あくまで手法の違いです。必ずディープラーニングを勉強すべきというわけではありません。
機械学習をPythonで実装してみる
Pythonのデータ分析ライブラリ(追加機能)である「Scikit-learn」で、教師あり学習、教師なし学習、強化学習などを勉強しましょう。
実務と同じ流れで練習をして、実践に備えましょう。本は以下の2冊です。
一番初めは「Python実践データ分析入門 キホンの5つの型」から始めましょう。
実際のデータサイエンスを想定したPythonコードの書き方や、ファイルの読み書きなどを順番に勉強できます。
次は「Pythonで儲かるAIをつくる」で実際のデータサイエンスと同じ手順を追体験します。
ネット上に公開されているオープンデータを使って、以下のかなり実践的なデータ分析を体験できます。
- 営業が制約するかどうかの予測(分類)
- 天候による売り上げ予測(回帰)
- 季節などの周期性で売り上げ予測(時系列分析)
- パーソナライズされたおすすめ商品の提案(アソシエーション分析)
- 顧客層に応じた販売戦略(クラスタリング、次元圧縮)
どれも実務で使えそうな分析じゃないですか?
もちろん、細かい調整を飛ばして手法を追体験していくので予測率などは実務に劣りますが、それでも貴重な経験ができます。
ディープラーニングもPythonでちゃんと実行してみる
ディープラーニング(深層学習)は、大まかに「画像解析」「自然言語解析」「音声解析」「生成系」に分かれます。
その時に多く使われるのが「PyTorch」というPythonライブラリで、以下の4冊から興味のある本を選べば、わかりやすく勉強できます。
「最短コースでわかる PyTorch &深層学習プログラミング」では画像解析に関するディープラーニングを詳しく勉強できます。
上記の「現場で使える! Python自然言語処理入門」は自然言語解析に特化した入門書で、かなり実践を意識した内容なので、これをやっておけば実際の自然言語処理の現場でもかなり役立つと思います。
より進んだ自然言語処理を勉強したいなら「BERTによる自然言語処理入門: Transformersを使った実践プログラミング」がおすすめです。
BERTやTransformersは、今話題の「ChatGPT」のメイン技術なので、この本で勉強すればChatGPTを作る技術に触れることができます。
「人気ブロガーからあげ先生のとにかく楽しいAI自作教室」はとにかく楽しくディープラーニングを勉強するための一冊です。何にも分からない人でもPythonでディープラーニングを実装できます。
具体的には「ジャンケンの手を解析する」「ツイートを生成する」「ルンバを制御する」などの面白い内容が詰め込まれています。実務レベルからはちょっと精度が悪いですが、実際に動くのはかなり楽しいのでおすすめ。
もっと実践的な分析スキルを身につけたい時は?
ここまでで、データサイエンスの独学はほぼ完了。あとはディープラーニングとか、実践経験を積んでいけばOKなレベルに到達しているはずです。
でも、これでいきなり実践はハードルが高い…という人は、最後の仕上げに色々なデータをうまく扱って分析できるようにしましょう。使う本は以下の4冊です。
「Python 100本ノック」シリーズは、データに欠損や外れ値がある”汚いデータ”の扱いや、ひとまず作成できた分析モデルの”精度をさらに上げる”方法を勉強できます。
ここまで来ると、使っているデータが違うだけでやっていることは実践と同じなので、自信を持って先に進んでいいと思いますよ。
Step5:実際にビジネスレベルのデータサイエンスで経験を積む
ある程度基本的な勉強をした後は、実際にデータ分析をするための実践を繰り返しましょう。インプットだけでなく、アウトプットもすることで、理解がより深まります。
データサイエンスの分野にはKaggle、SIGNATEなどのコンペのサイトがあり、実際に企業が募集しているビジネス課題に対してデータ分析、モデル作成が出来ます。
実際にコンペに参加してみると、思ったよりもデータの前処理や特徴量エンジニアリングに迷ってしまったり、モデルの予測精度が低いことに気づくはずです。
以下の本を参考に、自分で試行錯誤してみましょう。その経験を積むことが、データサイエンティストとして成長していく1番の近道です。
「データサイエンティストのための特徴量エンジニアリング」は特徴量エンジニアリングの手法が多く網羅されている時点のような本です。
あと何かできる特徴量エンジニアリングは無いかな?と思った時にめっちゃ役に立つ一冊です。
上記の4冊は、実際にKaggleやSIGNATEといった分析コンペのサイトで優秀な成績を残している人たちのテクニックを紹介した本です。
読んでどうこうというわけではなく、自分が分析コンペを進めていく中で参考にできる良書。プロのデータサイエンティストも見ている本なので質も高いです。
データサイエンスの勉強本のラスボス的存在ですね。僕もまだまだ消化しきれていないです。
3.独学でデータサイエンティストになる方法
ここまで、データサイエンスを勉強するための手順を紹介しましたが、もう少し踏み込んでいきます。
まずは、独学でデータサイエンティストを目指したい人が、効率的にデータサイエンスを勉強する方法を紹介します。
- 独学の目標は資格取得を目指すのがおすすめ
- 教材は本がおすすめ
(1)独学の目標は資格取得を目指すのがおすすめ
独学でデータサイエンティストになるための勉強をするなら、データサイエンティストに関する資格取得を目指すのがおすすめです。
理由は以下の通り。
- モチベーション維持につながる
- データサイエンティストに必要な学習内容を網羅できる
- 転職でのポテンシャル採用確率が高まる
モチベーション維持に役立つ
資格を取得するという明確な目標があれば、独学でもモチベーションが保ちやすいですね。
とにかく勉強をしなければ成長しないので、継続的に勉強できることはマジで重要です。
具体的に以下の3つの資格は、そんなに難易度が高くない資格ながらデータサイエンスの基本的な知識や技能があることを証明できるお得な資格です。
- Python3エンジニア認定データ分析試験
- データサイエンティスト検定・リテラシーレベル
- 統計検定2級
- G検定
ちなみに僕もこれらの資格を持っています。
どんな資格なのか、どうやって取得したのか・勉強法は?といった内容は以下の記事で詳しく説明しているので、ぜひ確認してみてください。
データサイエンティストに必要な学習内容を網羅できる
さっき紹介した以下の資格は、データサイエンティストに必要な学習内容を網羅できるようになっています。
- Python3エンジニア認定データ分析試験
- データサイエンティスト検定・リテラシーレベル
- 統計検定2級
- G検定
独学だとどうしても勉強する内容が偏ってしまいますが、資格取得の勉強で必要な広い出題範囲を逆に利用しようってわけです。
資格取得を目指して勉強すれば、勝手にデータサイエンティストとして必要な内容を勉強できます。
資格取得で転職時のポテンシャル採用の確率が高まる
独学でデータサイエンティストの勉強をする人は、転職を狙っている人も多いと思います。
そんな時、「ただ独学した」人よりも「しっかり資格取得をして実力を証明した」人の方が、ポテンシャル採用を行っている企業に採用される可能性が高くなります。
ポテンシャル採用は実務経験よりもその人の潜在能力や成長の可能性を重視する採用方法で、データサイエンティストの需要の高まりと共に近年増えている採用方法です。
各大学に新設され始めている「データサイエンス学部」の卒業生からデータサイエンティストが安定供給されるまでのボーナス採用方式なので、転職を考えている人は早めにこのビックウェーブに乗りましょう!
(2)教材は本がおすすめ
独学でデータサイエンティストを目指す場合、教材は本がおすすめです。
なぜなら、「現状、質の高いデータサイエンスの専門教材は本以外に無いから」です。
データサイエンスはまだまだ発展中の分野
データサイエンスって、研究は古くからあるんですが活用が本格化したり、一般の人に広く広まったのは最近です。
人材も学習体制もまだ整っていないまさに「成長中の分野」なので、質の高い教材はマジで少ないです。
なので、現状はスクールや動画では表面的な内容しか扱えてない感じが強いというのが、僕が独学してみた感想です。
インターネットにはレベルの高い内容も確かにありますが、それらは現役データサイエンティスト向けの情報で、独学初心者が体系的に学べる環境は本だけだと思います。
初心者が効率よく勉強するには、何よりも「体系的にまとまった情報」が重要と思うので、苦手な人もいるとは思いますが本で勉強していくのが最高率だと思います。
4.独学がどうしても無理なら、講座を受講すること
「本で独学がどうしても馴染まない。けどデータサイエンティストになりたい!」という人は、ネット上の情報収集で無理に勉強することを諦めて、講座を受講しましょう。
理由は以下の通りです。
- 講座を受講すれば、体系的に学習できる
- 勉強スケジュールが決まっているので独学より継続しやすい
繰り返しになりますが、データサイエンティストになるには継続的な勉強ができないと何も始まりません。
しかし既に説明したとおり、現状は本だけがほぼ唯一の教材であり、ネットやYouTubeで無料教材を探そうとしてもマジで表面的なものしか見つかりません。この状況で無理して本以外の情報をあつめて独学するのは、かなりめんどくさいし時間がかかります。
なので、本は向かないという人は無理せずデータサイエンス講座。これが時間をかけないタイパの良い方法です。
(1)講座を受講すれば体系的に学習できる
講座では、データサイエンスの基礎から応用まで、体系的に学習できます。
本以外で独学しようとすると情報がバラバラで必要なことを網羅して勉強しにくいのが今の現状ですが、データサイエンティスト講座はちゃんとカリキュラムが組まれているので、効率良く知識を習得できます。
(2)勉強スケジュールが決まっているので独学より継続しやすい
また、初めから決められたスケジュールで勉強が進んでいくので、独学よりも継続しやすいというメリットもあります。
自分一人ではどうしてもやる気が続かない、という人は講座を使うのが最適解ですね。
ただ、データサイエンティスト講座はオンラインのものが多いのが現状なので「一緒に学ぶ友達が欲しい」とかは中々難しいことは理解しておきましょう。
まとめ
今回は、データサイエンティストになるための勉強方法を色々解説しました。
データサイエンティストは統計学・数学の基礎、Python、SQLのプログラミング、機械学習、ビジネス知識などを身につける必要があり、人気の専門職の名前に恥じない難易度です。
とはいえ、今回紹介したようにちゃんと勉強を継続できれば、独学でもデータサイエンティストになることは可能です。
僕も未経験文系からデータサイエンスを勉強できたので、あなたもぜひデータサイエンティストを目指してみてください。
では今回はここまで。
これからも引き続き、ズボラな人に特化して資産形成、副業、転職に関する内容を発信していきます!
SNSやYouTubeでも発信しているので、よかったらフォロー、チャンネル登録よろしくお願いします!!
\ 日常です笑/
\ 現状日常Vlogです笑/
\ 趣味です笑 /
\ 役に立つ内容をまとめてます! /