すぐわかるデータ分析の基礎 − 知っておきたい知識を網羅的に解説!

さまざまな業界や分野で、データ分析の導入が進んでいます。読者のみなさんのなかにも「データ分析を活用して売り上げが○○%も向上」といった事例を目にしたことのある方もいるのではないでしょうか。ここではデータ分析の導入が進んでいる背景やその目的、具体的なプロセスなどを解説します。

データ分析の導入が進んでいる背景

2000年ごろからさまざまな領域でIT化が進み、副産物として大量のデータが蓄積されるようになりました。例えば、ユーザーがECサイトに会員登録して商品を購入すると「個人情報」「購入した商品の履歴」「過去に閲覧したページ」などの情報がサーバーに蓄積されます。世界中の人々がインターネットを通じてさまざまなサービスを利用することで、蓄積されるデータの量は日々増え続けているのです。

やがて、技術が進歩してデータの蓄積コストや分析コストが減ったことにより「大量のデータ(ビッグデータ)をビジネスに活用できないだろうか」と考える企業が増えてきました。Amazonはその好例です。Amazonの「トップページ」や「おすすめ商品」の欄には、ユーザーが興味を持ちそうな商品の一覧が表示されています。あの機能はデータ分析によって実現されているのです。ユーザーが過去に購入・閲覧した商品の情報を分析することで、似た属性を持つ商品を自動的に表示しています。

ですが、大量のデータがあれば、それだけでデータ分析を始められるわけではありません。適切にデータ分析を行うには、必要なデータを収集し、使いやすい状態に加工し、最適な手法で分析してサービスに組み込むスキルが求められます。その業務を担うスペシャリストとして登場してきたのが、データサイエンティストという職業です。

とりわけ、2012年ごろからデータサイエンティストは大きな注目を浴びるようになりました。2012年に出版された『Harvard Business Review』誌はデータサイエンティストのことを「The Sexiest Job of the 21st Century(21世紀で最も魅力的な職業)」として紹介しています。また同年に総務省が発表した『情報通信白書』は「ビッグデータとは何か?」について扱っています。データ分析やデータサイエンティストの重要性が世界的に理解されるようになっていったのです。

データ分析の普及を後押しした要素技術

ここでは、どのような要素技術がデータ分析の普及に影響したのかを解説していきます。

ハードウェアの低廉化やクラウドの普及によるデータ維持コストの低下

かつて、大量のデータを保存するには高額なサーバー費用が必要でした。そのため、データをビジネスに活用することで得られる利益よりも、サーバー維持にかかるコストの方が高くついていたのです。しかし、時代を経るごとに各種ハードウェアの価格は下がり続けています。また、クラウド技術が普及したことにより、私たちはわざわざ物理的なサーバーを調達することなく、データを保管するためのストレージを安価に用意できるようになりました。

データ取得技術の向上による、取得可能なデータ種類の多様化

かつて、分析対象として扱えるデータはインターネットを経由して取得できる「登録されたユーザー情報」や「Webサイト上での行動履歴(アクセスログデータ)」くらいでした。しかし、スマートフォンをはじめとしたモバイルデバイスの普及が、取得可能なデータの種類を圧倒的に増大させます。地図アプリや乗り換えアプリなどと連動した「位置データ(GPSデータ)」や活動量や脈拍などの「生体情報データ」といった多種多様な情報も現代では取得可能になりました。

CookieSyncやソーシャルログインなどによる、データ結合技術の発展

CookieSyncとは、特定のWebサイトを訪問したときや広告バナーがインプレッションされたときなどに、ユーザーに発行されたCookieを別のドメインで発行したCookieに紐づけてCookieIDを統合する技術のことを指します。また、ソーシャルログインとはソーシャルメディアのアカウントを利用して特定のサービスにログインできる機能のことです。

こうしたデータ結合技術が発展したことにより「あるサービスでAという商品を購入した人が、別のサービスではBという商品を購入していた」「FacebookやTwitterなどのSNSで○○という投稿をしていた人が、後日に別のサービスで○○という行動をとっていた」など、より複雑性の高いデータ分析が可能になりました。

計算リソース調達の容易化

大量のデータを分析するためには、性能の良いCPUやGPU、専用ハードウェア(ASIC)などを用意する必要があります。かつて、そうしたハードウェアを調達するには高額な金銭的コストがかかりました。しかし、時代を経るごとに各種ハードウェアの価格は下がり続けています。クラウド技術が普及したことも計算リソース調達の容易化を加速させました。

PythonやRなどデータ分析に適したプログラミング言語の普及

スクリプト言語PythonにはNumPyやPandasなど数多くのデータ分析関連のライブラリ・フレームワークが存在します。また、統計解析向けのプログラミング言語であるRはデータ分析に適した機能をいくつも備えています。こうしたプログラミング言語の普及により、データ分析の業務がずいぶん省力化・効率化できるようになりました。

分散処置を支えるツールの登場

分散処理とは、処理速度の向上とサーバー負荷の軽減のために、ある特定の処理を複数のコンピューターで分散して行う方式のことです。近年、Apache HadoopやApache Spark、Apache Hiveなど分散処置を支えるさまざまなツールが登場してきました。それにより、膨大な量のデータを効率よく処理できるようになっています。

データ分析のプロセス

データ分析の作業は大きく以下のプロセスに分けられます。

1.業務理解 2.データ理解 3.データ抽出 4.データ加工 5.モデリング 6.効果検証 7.サービスへの実装

それぞれ概要を解説していきましょう。

1. 業務理解

前提として、データ分析を成功させるには自社の業務を正しく理解する必要があります。業務への理解がとぼしければ、データ分析の結果を本当にビジネスの成果に結びつけられるのかが不明になってしまうでしょう。そのためデータサイエンティストの仕事は、改善対象であるプロジェクトやサービスの責任者・担当者へのヒアリングや協働からスタートします。この作業を怠ってしまうと、どれほど高いデータ分析のスキルを持っていても、ビジネスを改善させることはできません。

2. データ理解

次の段階として、データサイエンティストはデータの管理方法や内容について理解していきます。技術部門でデータベースを管理している担当者と連携をとりながら「どのようなデータストアを使用しているのか」「格納されているデータの種類や量」「データと事業・業務との関連度」「各種データは利用しやすい状態になっているか」「どのような方法でデータを取り出せるか」などを把握していきましょう。

3. データ抽出

各種のデータウェアハウスやデータマートに格納されているデータのすべてを、データ分析に活用できるわけではありません。分析業務の内容によっては不要なデータもあるでしょう。また、なかには分析処理の邪魔になってしまうようなデータ(ノイズ)が混じっていることもあります。それらを除外し、扱うべきデータのみを抽出するのがこの工程です。

抽出するデータの種類は、一度決めたらそれで確定ではなく、データ分析のプロジェクトのなかで反復的に変化し続けます。なぜなら、後続の工程であるモデリングや効果検証において「○○という種類のデータが必要だ」「○○のデータがあることで、かえって分析の精度が落ちる」など、異なるデータを用いる方がいいと判明するケースがあるからです。

4. データ加工

抽出したデータは、そのままではデータ分析に適した状態になっていません。例えば人間のデータ入力ミスによる値の不備があったり、データが継続的に収集されていないことによる値の欠損があったりします。それらのデータをそのままデータ分析に使用してしまうと、精度が悪くなったり誤ったモデルができたりするのです。そのため、欠損値や不正な値を他の値に置き換えたり、分析に適した形式にデータを再構成したりと、さまざまな加工を行います。データ加工は分析の成果を左右するとても重要なプロセスです。

5. モデリング

データの準備が終わったら、モデリングを行っていきます。これは、データ分析や統計のさまざまな手法を用いて、特定の入力データから予想を導き出すプログラム(モデル)を作成する工程です。単一のモデルだけではなく複数のモデルを組み合わせて分析精度を向上させることも多く、そうした手法はモデルアンサンブルと呼ばれています。

6. 効果検証

データ分析の結果として得られた施策が、どれほどビジネス改善に結びつくのかを検証していきます。検証結果をベースとして、その施策を採用するか否かを決定します。

7. サービスへの実装

成果が見込めることがわかったら、作成したモデルをサービスへ実装していきます。重要なのは、ひとたびサービスへの導入が完了しても、それでプロジェクトが終わりではないということです。世の中の流行やサービスを利用するユーザーの行動が変われば、生成されるデータの種類が変わります。それに伴い、適切なモデルも変化していくのです。データの傾向をふまえながら、データ分析の手法を改善し続けていく必要があります。

データ分析に役立つ資格・検定

ここからはデータ分析に役立つ資格・検定について解説していきます(各種資格・検定の情報は2020年9月時点のものです)。

データ分析実務スキル検定/CBAS データ分析実務スキル検定事務局

データ分析実務スキル検定はビジネスシーンでのデータの分析・活用スキルを証明する検定。実際のデータ分析プロジェクトの流れに沿って、実務で必要な知識に基づいて作問されていることが特徴です。機械学習や統計学の基礎(仮説検定、回帰分析、決定木、ランダムフォレストなど)やPython、 R、SQLなどのプログラミング言語の理解を深められます。

公式サイト:https://cbas-exam.jp/

統計検定/一般社団法人日本統計学会

統計に関する知識および活用力を証明する全国統一試験です。試験の種別として「データサイエンス基礎(CBT)」「データサイエンス発展及びエキスパート(CBT)」が用意されています。

データサイエンス基礎…データハンドリング技能、データ解析技能、解析結果の適切な解釈という3つの観点に基づいた大学入試レベルの内容 データサイエンス発展…数理、計算、統計、倫理に関する大学教養レベルの内容 データサイエンスエキスパート…計算、統計、モデリング、領域知識に関する大学専門レベルの内容

公式サイト:https://www.toukei-kentei.jp/

G検定・E資格/日本ディープラーニング協会(JDLA)

データサイエンティストの核ともいえる機械学習・深層学習(ディープラーニング)の知識・技能を測る試験です。いずれの資格も、ディープラーニングの基礎知識や理論を理解し、適切な手法を選択して実装する能力を証明することができます。

公式サイト:https://www.jdla.org/certificate/

Python 3 エンジニア認定データ分析試験/Pythonエンジニア育成推進協会

2020年6月から開始した、Pythonを使ったデータ分析の基礎や方法を問う試験です。主教材である『Pythonによるあたらしいデータ分析の教科書』(翔泳社)からの出題が行われます。

公式サイト:https://www.pythonic-exam.com/exam/analyist

おわりに

データ分析のニーズは高まっており、ビジネスにおける活用も今後ますます増えていくはずです。データ分析の知識を身につけて、サービス改善に役立てていきましょう。

FLEXYとはABOUT FLEXY

『FLEXY』はエンジニア・デザイナー・CTO・技術顧問を中心に
週1~5日のさまざまな案件を紹介するサービスです