【データサイエンティスト直伝】分析するうえで重要な3つのポイント

みなさんはじめまして!
私は都内でデータサイエンティストとして働いています。
日々、様々な業界やコンテンツを対象にデータ分析を行っています。

今回は、データサイエンティスト自らが思う
データ分析の際に重要なポイント3つをご紹介したいと思います。

これから分析業務を担当される方、データサイエンティストを目指している方が
参考にしていただけると非常に嬉しいです!

今回お話するポイントは以下の3つです

  1. 課題の切り分け
  2. ドメイン知識
  3. 前処理

それでは早速本題に入っていきましょう。

ポイント①:課題の切り分け

「課題の切り分け」と聞いて、少し疑問に思われた方もいると思われます。
データ分析において重要なのは「機械学習統計学の知識」といったキーワードが
飛び出すと思っておられたからでしょう。

確かにそれらも重要です。
しかしながら、「課題の切り分け」がなされないままデータ分析をしても
アウトプットにはなんの価値もありません。

理解しやすいように具体例を交えながらお話しましょう。

ここにデータを使ってサイトを改善せよと指示を受けた担当者がいます。

担当者:アクセスログも溜まって、データは揃っているんだよね。
分析者:確かに揃っていますね!これだけ揃っているなら何でも出来ますよ!

担当者:ユーザーの利用率が減ってきちゃって、なにか対策を打たないといけないんだよね。
分析者:たしかにそれは課題ですね。それではアクセスログを使ってなにか施策を打ちましょう!

担当者:アマゾンみたいなレコメンドシステム?っていうの。あんな機能があれば利用者も喜んでくれるし、利用率も上がると思うんだよね。
分析者:レコメンドには協調フィルタリングという手法がございまして hogehoge・・・・

担当者:よし!それだ!早速スケジュールと費用を算出してくれ!俺は予算をとるよ!
分析者:わかりました!       

どうでしょうか。
こういった会話はよく見ますし、
違和感がない人にとっては普通の会話かもしれませんね。

それではこの内容のどこがいけなかったのか?
ずばり、ユーザーの利用率低下というテーマに対して、レコメンドエンジンを開発しようとしたところです。
確かに、分析した結果からレコメンドエンジンの開発が利用率低下に影響を与えるかもしれません。

「ユーザーの利用率低下」といったレベル感では、まだ課題の切り分けが出来たとは言い難いです。
このテーマをさらに分解して、

  • ヘビーユーザーが減ったのか?
  • 新規ユーザーが減ったのか?
  • リピート率が減ったのか?
  • サイトに来訪はしているが、購入率が減ったのか?

このように、まだまだ分解する余地は残っています。
利用率低下というざっくりした状態では分析する際に焦点がずれてしまい、
アウトプットから、施策に落とし込める示唆がぼやけてしまいます。

だから、ユーザーの利用率低下というキーワードを聞いたときには、
「どんなユーザーが、どんなふうに減ってしまったのか」を明らかにして、
きちんと分析対象を絞った上で分析を始めましょう。

例えば、ライトユーザーの再来訪頻度が月2回から1回に減ってしまったなら、

  • なぜ再来訪頻度が減ってしまったのか?
  • ライトユーザーの閲覧コンテンツは?
  • 流入経路は従来から変化があったのか?

などと分析のポイントを絞ることができるので、アウトプットもより具体的になります。

以上が課題の切り分けの重要性です。
すべての分析において、課題が曖昧な状態だと、
数ヶ月かけて実施した分析自体の効果が薄くなってしまいます。

せっかく時間とお金をかけたのに、得られた効果が少なかったと判断されては、
次につながる案件も少なくなり、データも正しく使われないままにストレージを圧迫し続けることになります。

ポイント②:ドメイン知識

さて、2つめはドメイン知識です。
すごく簡単な例でいくと業界用語・業界前提知識をどこまで理解しているでしょうか。

車を例にすると

  • 「排気量・馬力・乗車人数・トルク・・・」などの意味
  • 軽自動車・乗用車・商用車にかかる保険料の違い
  • 国内メーカー・海外メーカーの種類
  • ハイブランド車種

これはほんの一部にしか過ぎません。
もしこれらの知識が不足していると、データの読み取り方が全然異なります。

例えば、自動車カタログサイトで
世帯年収200万未満の人がスズキとメルセデスをよく見ていました。

ということは、スズキとメルセデスは競合関係にあり、
メルセデスを見たユーザーにはスズキをおすすめしてあげると良いのだ!
と解釈してしまうかもしれません。

わかりやすいように、あえて極端な例を出しました。
自動車なら比較的身近なので、こんな過ちは侵さないと思います。
しかしながら、引っ越し業界・医療品業界・出版業界などではどうでしょう?

どの引っ越し会社がサービスの質が高く、料金が高いのでしょうか?
どの引っ越し会社が地域に根づいており、エリア内のシェアは高いのでしょうか?

これらの知識があると、分析する際の目線が全く異なります。
更には、どのようなデータが異常なのか簡単に判断できるため、
前処理の方針もたてやすくなります。

ある事業会社の中で働かれている方なら、業界の知識は十分に身についているかと思います。
しかしながら、分析者として初めて関わる業界がある場合には、勉強が必要になります。

ドメイン知識に身に着け方

一番簡単な方法は、「業界地図」を読むことです。
この本は非常に優れており、特定業界内での競合関係や資本関係といった
業界の大前提を学ぶことが出来ます。

この本が一冊あれば、ほとんどの業界は抑えることが出来ます。
まずは、この本を参考に業界の大前提を学ぶことをおすすめします。

ポイント③:前処理

ついにきました、分析者の仕事の約80%を占めると言われる前処理です。
方法やテクニックにまで話を広げてしまうと、
収まりきらないボリュームになってしまうので、
今回は心構えに止めておこうと思います。

前処理をする上で重要なポイント

  1. ドメイン知識
  2. 可視化

この2つが重要なポイントとなります。

1. ドメイン知識

さて、先程も出現した「ドメイン知識」です。
なぜ前処理にドメイン知識が必要となるのでしょうか?

自動車を例にお話しましょう。

軽自動車を排気量ごとにソートして並べようとしました。
すると、最も排気量の多い軽自動車の排気量が700ccでした。

はい、ドメイン知識があれば既におかしいことに気づきますよね。
軽自動車の排気量は660ccまでと法律で決まっております。

そのため、700ccなんて排気量が出現することがおかしいのです。
違反車両かデータのミスに違いありません。

いずれにせよ、分析上あまり対象にするべきデータではありませんね。

自動車を例にしましたが、他の業界でも同様のケースがあると思います。
だからこそ、ドメイン知識は必要となるのです。

2. 可視化

ドメイン知識についで、今度は可視化です。
時系列系のデータを扱う時に、わかりやすいのではないでしょうか。

以下のグラフはアクセスログを可視化したものとしましょう。
f:id:gotto50105010:20180617230939p:plain

こちらのグラフを見ると2箇所気になるポイントがあります。

まずひとつ名は、一箇所数値が飛び跳ねているところがあります。
普段の値から異常に飛び跳ねており、誤ったデータかイベントなどで異常にアクセスが伸びた日
といった解釈が出来ます。

もう一箇所は、しばらく0の値を記録している箇所になります。
恒常的にアクセスのあるサイトならば、急にアクセスが0になることは考えにくいと思います。

ということは、アクセス取得元のエラーかサイト回収などにより
一時的にアクセスができなかった可能性があります。

いずれにせよ、時系列の分析を行う際には、
これらのデータは取り除いて実施してあげる必要があります。

数表の羅列からも発見することは可能ですが、
可視化してあげるほうが数値の異常を発見しやすくなります。

以上、データ分析をするうえで重要なポイントを3つ記載しました。