はじめに
皆さんはデータ分析にはどのようなイメージをお持ちですか?
「ビジネス上でのデータ分析」「データサイエンス」「機械学習(ML)やAI」など様々なイメージをお持ちの方が多いかもしれません。
データ分析は一般的に
「収集した情報の整理、加工、取捨選択を経て分析するプロセス」
という定義がされます。また、分析することによって何かしらのインパクトを出すのが一般的です。
なので、先にあげた3つのイメージはどれも正解になります。
しかし、その3つのイメージごとで、スキルセットとして身につけておくべき知識の範囲が全く異なります。例えば機械学習の業務にあたり、pythonは必須な一方、ビジネス上でのデータ分析の場合では必要ないケースも存在します。
ユースケースごとに習得すべき知識が整理されてない結果、どこから手をつけたらいいかわからず、膨大な学習が必要だと感じてしまう問題が生じます。
例えばデータサイエンスの場合、統計学の知識はもちろんですが、クラウド上で分析する場合、AWSやGCPの知識も必要になります。技術が日進月歩進歩していく中で、これからデータ分析を始める方にとってみれば、途方もない学習量になるでしょう。
そのため、データ分析は「どの範囲までやればちゃんと理解できたんだろうか?」という感覚になりやすい分野だと考えています。
今回は 「ビジネスアナリティクス」「データサイエンス」「機械学習(ML)・AI」の3つのユースケースごとで、最低限必要な知識を身につけられる学習方法を紹介します。
また、書籍や技術的な資料、取得すべき資格等を合わせて載せることで、知識体系を 最短で習得できる手立てを紹介 します。
この記事を読み終わった後あなたはデータ分析を身につけたぞ!と他人に胸を張って言える状態になります。
この記事を完璧に理解したのちには、「データ分析」をより深く学習していってください。
対象の読者
-
これからデータ分析を始めたいけど、何から手をつけたらいいかわからない人
-
少しデータ分析に触れたことはあるけど、正しく理解できているか不安がある人
-
データ分析を愛してやまない人
本記事では扱わない範囲
今回は、「収集した情報の整理、加工、取捨選択を経て分析」を対象とします。
そのため、その前段の部分(データの蓄積や管理など)は範囲対象外となります。
具体的には以下のようなものが該当します。
- データ基盤の構築
- メタデータなどのデータ管理方法
- 外部のデータソースを取得し、蓄積する方法 など
最適な学習コースの選択
では3つの学習コースについて、といきたいところですが、「どの学習コースが最適なんだろう..」とデータ分析を始めたい多くの方は悩まれると思います。
そこで、あなた自身の性格から、どの学習タイプが最適なのか?がわかる図を用意しました。
この図を参考にして、どの学習タイプが自分にとって合っているのか?選んでみてください。
予めどういった目的でデータ分析を身につけたいか?定まっている方は、この章はスキップでOKです。
3つの学習コースの概要
各コースが選択できたら、次に各学習コースのユースケースと学習すべき内容を紹介します。
-
ビジネスアナリティクスコース
主に、データをダッシュボード等で可視化し、可視化した結果をビジネスに反映させていくのを想定しています。
高度な分析スキル(統計学や機械学習)は必ずしも必要としないケースを考えています。またデータ処置も複雑なものではなく、あくまで可視化するために使う手段としてとらえます。 -
データサイエンスコース
主に、統計学や機械学習などの高度な分析スキルを元に、データから言えるインサイトを導き出すことを想定します。
データの処理ではプログラミングスキルも求められます。インサイトを可視化する際も、プログラミング等でインタラクティブに行うことを考えています。
ただし、予測モデルの運用までは行わず、データから現状言える結果を出すためにデータ分析することを目的とします。 -
機械学習(ML)・AIコース
主に、機械学習等を元に、データを用いて予測し、予測したモデルの運用することを想定しています。
データサイエンスコース同様に高度なプログラミンスキルや分析スキルは必須になります。
それに加え、予測モデルの処理速度についても理解しておく必要があります。予測モデルを構築する場合、アプリ等に組み込んで実運用していくことも想定しています。
そのモデルを採用して「素早く・予測精度が担保」できるかにも力点を置く必要があります。
「データサイエンス」と「機械学習(ML)・AI」の違いについて
この記事では、「データサイエンス」と「機械学習(ML)・AI」は別物で扱います
- 「データサイエンス」 高度な分析手法を用いて、インサイトを出す
- 「機械学習(ML)・AI」 予測モデルを構築して、運用していく
学習ルートのご紹介
ではいよいよ学習ルートに移っていきます。
以下の図のようにStep0→Step1→Step2と進んでいきます。
Step0と1は全コースで必須となる考え方、Step2は各コースごとによって異なります。
学習期間の目安として、半年から1年間かけてStep2まで学んでいきます。
最短とは言いつつ結構時間はかかりますが、それくらいデータ分析は奥深い分野だと考えます。
各学習コンテンツの構成
それぞれのStepの学習コンテンツにおいて、まずその分野を身につける理由が書いてあります。
例えば、Step1の「基本的な統計学の考え方」では、「分布をみてデータを取捨選択したり、あるいはデータを活用して将来の傾向を予測する上で重要である」といった説明が書かれています。
次にその知識を習得するに最も最適な書籍や学習コンテンツが書かれており、その書籍の特徴が書かれています。
最後に学習上の目安や注意点が書かれています。
前者は理解系の学習コンテンツの場合が主で、どの程度理解すべきかを記載してます。
後者においては、他の方法では学習する分量が多く、苦痛に感じやすい分野で主に記載しています。
それでは、学習を始めていきましょう!
Step0 基本的な数学の理解
※ 理系出身や数学にある程度自信のある方はこの章スキップで大丈夫です
データ分析を始める上で、数学的な理解というのが避けて通れないものになります。
データ分析で必要な数学のスキルは理系の大学受験+大学1年生で習う数学程度だと思ってください。
それに最適な本として 「問題解決のための「アルゴリズム×数学」が基礎からしっかり身につく本」になります。
こちらの書は、大学の教養数学までの範囲を、丁寧にかつ初見でわかる説明してくれています。その証拠に、中学生でやる√(ルート)や絶対値の考え方から始めてくれています。
また、ビジュアライゼーションが多いことから、仮に問題を解く時間がなかったとしても、解説を読んだだけで深い理解を得ることができます。
大学受験の参考書や大学数学の本でも良いのですが、網羅性に欠けてしまい何冊も勉強する必要があります。
学習上の注意点
巷では、「文系でもデータサイエンティストになります!」とか「数学不要」とった文言をみます。私も文系出身からデータサイエンスを始めた(詳細は後述)身でしたが、「半分正解・半分不正解」だと感じてます。
取っ掛かりの部分は公式不要で、考え方を身につければある程度のところまでは理解できます。
しかし、理科系の人と業務をやったり、相手に説明できるまでの深い理解にする上では、あとで苦労すると思います。
初めに数学の壁にぶつかっておくと、後々楽できるため、本記事では数学の理解から始めています。
Step1 基本的なデータ分析の使い方と考え方
Step1では、データ分析に必須となる考え方を身につけていきます。
基本的な統計学の考え方
データ分析で避けては通れないのが、統計学の考えです。
分布からデータを取捨選択したり、あるいはデータを活用して将来の傾向を予測する上で基礎となるのが統計学の考えになります。
統計学的な考えを網羅的かつ平易な解説で紹介している書籍が、「統計学図鑑」になります。
こちらの書では、記述統計学と呼ばれる平均や分散といった日常生活でも活用しそうな概念から、回帰分析やクラスター分析などのやや高度な分析についても触れられています。
この本のオススメポイントは、「数式的説明」と「図解説明」のバランスが最適な点です。
下記は分散の説明になりますが、ビジュアライゼーションを重視しつつ、数式的な説明も簡潔に説明されています。
学習の目安
- データサイエンス・機械学習(ML)・AIコースの方は、数式を理解できるような学習を進めてください
- ビジネスアナリティクスコースの方は、考え方さえ理解できればOKです
データの解釈
基本的な分析手法を抑えたの次は、データの見方や分析結果の解釈方法について学んでいきます。
初学者でもわかりやすくデータの解釈を扱っている書籍が「分析者のためのデータ解釈学入門」になります。
こちらの書籍も先の「統計学図鑑」と同様に、ビジュアライゼーションを重視しつつ、数式的な説明も簡潔に説明されています。
また、まとめ部分や図の配置が非常に見やすい構成になっています。
取り上げられている内容として、一部統計学図鑑と重複はありますが、「誤差」「データのばらつき」「分析結果を理解する注意点」など比較的データの見方や解釈に当てた内容となってます。
学習の目安
- データの扱い方と結果の解釈の方法に焦点を当てて理解を進めていってください
(生成)AIの利活用例
生成AIの台頭は目覚ましく、2023年ごろからビジネスでも使われるようになってきました。(生成)AIのビジネス活用は、データ分析を扱う上で避けては通れない存在になってきています。
とはいえ、いきなり初学者が生成AIの仕組みを一から理解するのは不可能に近いです。
(生成)AIの概要や活用例を掴む上で、野村総合研究所が発布している「AIナビゲーター」をお勧めします。
こちらの書籍では、(生成)AIのトレンドから仕組みの概観を掴むことができます。
また、あらゆる業界での活用例を知ることができ、ビジネス上でのイメージがつきやすい構成になっています。
学習上の注意点
活用事例や業界のトレンドを把握する上では、国が発行しているAI関連の白書でも代替可能なのです。
ですが。分量がかなり多く、読了するには時間がかかると考えています。
その点で今回紹介した書籍は比較的読みやすい分量で、網羅的に(生成)AIを知ることができます。
Step2 各コースに特化した学習
① ビジネスアナリティクスコースに特化した学習
ビジネスコースの特化した学習のゴールとして、「ダッシュボードでの可視化」 「ビジネス利用に特化した分析手法の習得」 の2点に絞った学習内容となっています。
SQLの習得
SQLはデータ分析でよく使われるプログラミング言語になり、ビジネスユーザーでの利用者が多い言語となります。
ダッシュボードで可視化を行う場合も、SQLが一番始めやすい言語になります。
その理由として以下が考えられます。
- 英語の文章に近く、プログラミングの学習コストが低い
- 環境構築が不要のため、初学者でも触りやすい
初学者向けのSQL教材としては、「スッキリわかるSQL入門 第4版 ドリル256問付き!」をお勧めします。
こちらの書籍の最大の推しポイントは、練習問題をWEBブラウザ上から取り組めることです。「dokoQL」という環境に練習問題が配置されており、書籍の問題を誰でも取り組むことができます。
学習の目安
- 練習問題を繰り返し解いて、ある程度頭で解が思いつくまでやってみてください
- 第Ⅲ部の「データベースの知識を深めよう」はスキップでも問題ありません
可視化スキルの習得
次にダッシュボード化で必要な可視化のスキルになります。
ダッシュボード構築の書籍はかなり多いですが、構築の手順書や1つのプロダクト製品(Tableauなど)に絞った内容のものが多く、「どのような可視化がベストなのか?」という点にはこれらの書籍はあまり触れていません。
汎用的な可視化スキルを身につけるにあたって、「Google流 資料作成術」をおすすめします。
「え??!資料作成術?パワポの作り方?」と思った方、そうです、この本タイトルと中身で若干乖離があります。笑
こちらの本は、いわゆる可視化のやり方について言及された本になります。
例えば「色はできるだけカラフルにしない」「円グラフは極力NG」といったものが該当します。
本書で紹介されている技術をもとにして、各自の可視化環境で技術を磨いていってください。
学習の目安
- 「Google流 資料作成術」で紹介された可視化技術をもとに、各自のダッシュボード環境等において可視化できるような流れで学習を進めてください
ビジネス上でのデータ利活用
最後にビジネス上でのデータ利活用に関する分析手法を理解していきます。
ビジネスで用いる場合は「広い範囲」を「概念的に理解」することが求められると思います。
データサイエンスよりの本だと、数式の理解も必須なものが多く、習得する過程で挫折する可能性があります。
ビジネスアナリティクスに特化している本として、「データ利活用の教科書」を推奨します。
こちらの書籍はマーケティングデータの活用、ロジカルシンキング、アンケート調査の活用といったビジネスアナリティクスで必要なスキルから、決定木や機械学習などの高度なデータ分析にも触れています。
この本の特徴として、高度な分析も実例や図解を中心に説明している点です。
その証拠に機械学習などの高度なデータ分析について、難しい説明を一切することなく、図解で分析手法を説明しています。
学習の目安
- ロジカルシンキングから高度な分析まで概念的に理解を進めてください
- 機械学習など高度な分析を深く知りたい方は、データサイエンスコースや機械学習(ML)・AIコースで紹介する書籍も併せてみておくのをオススメします
② データサイエンスコースに特化した学習
こちらの学習コースでは、「python等のプログラミング言語を用いて可視化・分析」「統計学や機械学習の考えを用いた分析方法」 の2点を習得できるような学習内容になってます。
統計検定2級の取得
データサイエンスを扱う上で、統計的考えを深く理解する必要があります。
そこで、「統計検定2級の取得」を推奨します。
上記リンクにある、試験要項を見てみるとデータサイエンスを扱う上での検定、分布、回帰などの項目が網羅的に学習できます。
この知識を「合格」という形で習得してみましょう。
ただし、難易度は結構高く、1発合格は一筋縄ではないです。かくいう私も2回落ちました...(過去記事参照)
学習の目安
ご自身の数学の理解度に合わせて、合格までの準備期間を考えてみましょう。
以下目安の期間を書いてます。
- 数学を大学受験で使わなかった方: 6ヶ月
- 数学を受験で使って、大学以降使ってない方:3-4ヶ月
- 数学を受験で使って、大学でも使っていた方:1-3ヶ月
pythonでのデータ処理と可視化
データサイエンスを扱う上で、pythonでデータを処理することが主流となってきています。
また分析結果を可視化するのも、python上で行うこともビジネスアナリティクスの場合に比べて多いと考えています。
データ処理や可視化を理解する上では、「pythonによるデータ分析入門」をオススメします。
こちらの書ではデータ処理に使うpandas,numpy、可視化で使うmatplotlibなどpython上のデータ処理と可視で扱う内容が網羅的に学習できます。
ただし、この書籍は612pと全てをpython上で実装するのはかなり困難です。
不要だと感じる部分は読み飛ばしていきましょう。
学習の注意点
すべてを読破して理解するのはかなり時間がかかります。ご自身のユースケースを中心にpython上で実行し、不要な部分や他の学習コンテンツでカバーできる部分は読み飛ばしつついきましょう。
筆者のおすすめはテーブルデータで使われるpandasの処理と可視化で使うmatplotlibの2点に絞ることを推奨します。
SQLの習得(発展編)
pythonに加え、データサイエンスを扱う上で、SQLでもデータ処理をする場合があります。
SQLをデータサイエンス寄りの発展的な習得を目指すには、「データサイエンス100本ノック(構造化データ加工編)」の学習を推奨します。
こちらの書では、基本的なSQL操作に加えて、データサイエンスを扱う上で重要な外れ値・欠損値・サプリングといった項目も合わせて学ぶことができます。
この書籍では、pythonやRでの処置も記載されています。
SQLだと処理が複雑になる問題もあるため、その他の言語では処理がどのように変わっているかも意識して学習してみてください。
学習の目安
- 練習問題を繰り返し解いて、ある程度頭で解が思いつくまでやってみてください
- 余力があれば、他の言語の処理も合わせて理解を進めてください
機械学習の理解
最後に機械学習の理解です。
データサイエンス扱う上では、統計学と同じくらいよく使う分野になります。
機械学習を理解する上では、分析手法の理解・モデル性能の評価・モデルのパラメーター設定の3点を中心に学ぶ必要があります。
それらの項目を網羅的に学習できるのが「pythonで始める機械学習」になります。
書籍の特徴としては、非常に網羅性が高い点です。
分析手法としても、教師あり・教師なしの両方に触れられており、教師あり学習については単純なナイーブベイズモデルからやや高度な勾配ブースティングまで幅広いです。
また、特徴量エンジニアリング、交差検証なども実務で使いそうな実例を元に掲載されています。
学習の目安
- 機械学習でのモデル構築から結果の評価の流れを意識しながら取り組んでみてください
- 可能であればpythonコードを動かしながらやってみることをお勧めします
③ 機械学習(ML)・AIコースに特化した学習
こちらの学習コースでは、「機械学習やディープラーニングでの予測モデルの理解」「予測モデルの構築〜設計〜運用までの一連のフローの理解」 の2点を習得できるような学習内容になってます。
機械学習の理解
こちらは、データサイエンスコースの「機械学習の理解」と同じ内容・教材で学習してください。
ディープラーニングの理解
ディープラーニングについてですが、この分野を本質的に理解しようとするとかなり骨が折れる分野です。
数式も難解だったり、仕組みを正しく理解することもかなり難しい分野です。
その中で、「仕組みの外観を掴みつつ」「プログラミングで実装できる」2点に学習の重きを置きたいと思います。
その点での推奨書籍が、「ゼロから作る Deep Lerning」(通称ゼロつく)です。
この本の特徴としては、「理論により過ぎてない」「python上で実装しながら学べる」の2点につきます。
図解(計算グラフ)を使って仕組みを説明していることに加え、数式とのバランスが非常にいい構成になっています。
またpythonコード上で動かせるため、実際の出力結果を見ながら理解を深めることができます。
学習の目安
- python環境下で動かしながら、計算グラフの理解を深めてください
MLOpsの理解
いよいよ実運用の話に移ります。
機械学習の運用は一般にMLOps(Machine Learning Ops)と呼ばれます。
実運用を学ぶ上では、実際の実例に触れるのが一番です。
今回は書籍ではなく、「MLOps勉強会」という外部勉強会をご紹介します。
こちらについては、月一程度開催される勉強会で、主に企業が取り組んでいるMLOpsの実例を知ることができます。
また運用設計もクラウドサービスレベルで知ることが可能です。
会自体はオンラインのため、全国どこからでも参加可能で、会終了後はAsk-the-speakerが設けられてるため、登壇者に直接質問が可能です。
過去の配信がアーカイブ化されており、まずここから見ることをお勧めします。
学習の目安
- MLOps勉強会のアーカイブ動画を見て、MLOpsの事例を通じて理解を深めましょう
- 実際に会に参加してみて、登壇者に質問できるくらいになれば尚良しです
Kaggleにチャレンジ!
最後は実際に手を動かして、機械学習の運用を体験します。
そこでおすすめがKaggleのコンペに出ることです。
Kaggleのコンペでは、特徴量加工〜モデル構築〜予測結果の評価といった一連の流れを体験できます。
モデルや特徴量の加工の仕方によって処理速度が変わるため、どこで時間がかかっているのかも把握することができます。
実際にKaggle Notebookと呼ばれるKaggle環境でやる場合は、GPUのマシンごとで処理時間が変わったりもします。
また、AWS等のクラウド環境が使えるコンペであれば、サーバーを立てて実業務ぽくやってみるのも一つです。
私もGoogle colab環境でコンペ出たこともありました。
Kaggleの推しポイントは、参加者同士の発信を参考にしながら進められる点にあります。
Kaggleコンペではdiscussionと呼ばれる参加者がコンペで気がついた点や予測精度が上がった取り組みを共有する場があり、参考にしながらモデル構築を行えます。
さらに、他の参加者が作ったコードをみることが可能で、他の参加者がどのような構築でやっているのかも学ぶことができます。
また過去終わったコンペのコードも見ることができるので、それを見るだけでも非常に勉強になります。
(参考までに有名なタイタニックコンペ貼っておきます)
学習の目安
- Kaggleの公開コンペに参加をし、機械学習である運用の流れを体験しましょう
- 順位は気にしなくてOKです まず1回コンペに出てみて、処理の流れを把握しましょう
学習上の注意点
尚、機械学習(ML)・AIコースでは、プログラミングの基礎的な理解については扱いませんでした。
というのも、紹介した機械学習とディープラーニングの書籍とKaggleに取り組めば、コーディングが自ずと身につくだろうなと考えたためです。
もしコーディングに不安がある方は、データサイエンスコースの「python上でのデータ処理方法」「SQLの習得(発展編)」の2つを学習してください。
学習コースを終えたら
半年から1年間かけてじっくり学習をした後は、各学習コースの扱った単元で自分が極めてみたい道を探してみてください。
例えば、ビジネスアナリティクスコースで可視化を極めたい!と思った場合は、ビジネスダッシュボードの構築方法やTableauなどの1つの可視化ツールに精通するなどのことを指します。
参考までに筆者の場合を説明すると、データサイエンスで用いられる分析手法のアルゴリズムの深い理解を極めたいと考えてます。
データサイエンスで用いられる手法を触れていく中で、最適なタイミングで最適な分析手法を使うことに興味を抱きました。
その中で、データサイエンティスト養成講座を受講し、適切な分析手法の使い方を学んだり、はじめてのパターン認識を読んでみて機械学習の根底にある考えも見てみました。
今後もアルゴリズムの根本的な理解を進めることで、「利用シーンごとにどの分析手法が最適か?」ということを追求する道を進みたいと筆者自身思っています。
ぜひ皆さんも、特定のデータ分析のエキスパートを目指してみてください。
あとがき 記事執筆のきっかけ
今回、私がこの記事を書きたいと思ったきっかけに、「データ分析は取っ掛かりはやり易いが、本質的な理解は敷居が高い」 と考えたからです。
本質的な理解の敷居の高さが故に「結局データ分析は使えない」という言葉が出てくるのだと個人的には思っています。
また私自身もデータ分析の本質的な理解に苦しんだ経験もあり、今回の記事執筆に至った理由にもなります。
私がデータ分析と出会ったのは、今から8年前。
出会う前の私は、文系の大学生で数学なんて遠い記憶の彼方にありました。
しかし、大学の講義でデータ分析(計量経済学)に触れる機会があり、「世の中にこんな面白い分野があるんだ!」ということに気付かされました。
データ分析を軸に将来技術系の職種に就きたいと考えて、大学院で理転したことで、今データと向き合う職業に就いています。
8年前は今ほど動画コンテンツやわかりやすい解説本がなかったので、書店に行っても難解な数式が並ぶ本ばかりでした。
何冊本をやっても根本の数式の理解ができず、理系の道に行くことを何回も諦めかけました。
時は流れ、大学院を修了し就職した2020年ごろ、AIや機械学習と言った言葉が一般的になりつつありました。
その結果、わかりやすい解説本が数多く登場し、取り組みの敷居は下がった一方、「この本読んだだけで本当に統計や機械学習のことわかって実際使えるレベルまで到達できるのだろうか...?」という感覚を受けました。
自分のこれまでの経験から、「多くの人がデータ分析の本質的な理解をしつつも時間をかけない学習方法」を考えた結果、最終的に自分が到達したい目的別で身につけるのがベストなやり方だろうと考えました。
もし私自身が8年前に戻ってこのルートを実施すれば、きっと最短でデータ分析を学習できたと考えます。
本記事が、8年前の私のように、データ分析を本格的に始めたいと考えているみなさんへ届くことを願ってやみません。
おまけ 筆者のデータ分析に関する経歴
最後に私の経歴を簡単に書きます。
自身の経験をもとに内容や構成を考えている部分もあるため、参考にしてください。
2016年: 法学部3年生のとき計量経済学に魅了 理系の大学院に進学を決意
- 工学部の土木系でデータ分析をしたかったが、受験で物理と数学が必要で断念
- 農学部で同様のことができ、物理と数学を避けられたので、受験を決意
2018年: 農学部の大学院に合格
- 実験作法や理科系の文章立てに苦戦
2020年: 修士課程を無事修了 気象情報会社に就職
- データサイエンスの部署に配属 周りが理系ばかりで数学をちゃんと勉強
- 気候変動ビジネスの部署に異動 ここでも物理や数学に苦しむ
2022年: 統計検定2級合格
2023年: データ分析基盤の会社でデータアナリストに転職
- 外部発信に積極的な社風に乗っかり、業務で使う技術や自身の体験を中心に発信