クラスタ分析を駆使して、メルカリのユーザのことをもっとよく知ろう!

BIチームのデータサイエンティスト @hikaru です。
以前 @hasebeが社内のKPIの分析に関する話を書きました。

mercan.mercari.com

今回は、また少し違う切り口で、社内で行っている研究的な分析のひとつをご紹介したいと思います。

メルカリのユーザをもっと理解しよう

日本の「メルカリ」ではユーザに簡単かつあんしん・あんぜんに使っていただくために、登録時に年齢や性別などのユーザ情報をいただいていません。

about.mercari.com

よってメルカリのユーザを理解しようとするときに、そういったデモグラフィックなどの直接的な情報を使って分析することはできません。

しかし、メルカリの持っているデータベースにはユーザの行動や特徴を知る上でヒントとなる様々なデータが溜まっています。分析の発想と機械学習などの手法を活かせばそういった登録情報に頼らなくても、ユーザのことを深く理解することができます。

今回は一つの事例として「ユーザの行動時間」に関する分析を取り上げます。

メルカリは国内で既に3000万ダウンロードされているアプリであり、その中には様々な生活パターンのユーザが含まれています。

こういったユーザごとに「メルカリを使う時間」の違いの傾向を見てみましょう。

クラスタ分析を使おう

たくさんのユーザをその特徴ごとに分類するための便利な手法として「kmeansクラスタ法」があります。

kmeansクラスタ法自体は多くの文献でその手法の詳細が語られていますので、詳しい説明はここでは省きますが、簡単に紹介するために下記のような例を考えてみましょう。

あなたは高校のクラスの担任で、学年の70人を期末テストの「国語(lang)」と「数学(math)」の点数という2つの変数を使って、夏期講習の受講コースを決めたいと思っています。

左図を期末テストの結果とすると、kmeans法は右図のように生徒を自動で分類してくれます。

f:id:mercarihr:20160615150045j:plain

左図:期末テストの結果
右図:結果の特徴を使ってユーザを分類(色分け)

今回は「4タイプに分類」という条件を指定してグループ分けを行いました。
この結果を使えば、「数学が強いけど国語は弱い生徒グループ(図の左上)には国語集中コースを受けさせよう」「両方とも強いグループ(図の右上)は補講を免除としよう」など、生徒にあった指導(施策)を行うことができます。

この例では、変数が2つだけだったので、目視でも簡単に分類できそうな気がしますが、変数が20個など沢山ある場合には、人間の感覚で行うことはほぼ不可能で、kmeansクラスタ法のような機械学習を使った自動的な分類が必要になります。

「メルカリを使う時間帯」によってユーザをわけてみよう

というわけで、メルカリのデータに対してこのkmeans法を使ってみましょう。

やりたいことは、


– ユーザ に対して
– 時間帯ごとのアクセス回数の比率を使って
– 「活動時間の特徴」別にユーザを分類する

ということです。

やってる事自体は非常にシンプルですが、ユーザはある程度のアクセス回数を持つ場合に絞ったり、アクセス回数をうまく正規化したりと、地道なノウハウが発揮される部分もあります。

今回分類するグループの数は9個に設定しましたが、その中でいくつか特徴的なグループをピックアップして、結果を紹介します。

典型的社会人型ユーザさん、夜型ユーザさん、主婦ユーザーさん

▽6番目のクラスタ⇢ 社会人型

f:id:mercarihr:20160616160908j:plain

まず、上のグラフの「第6クラスタ」は、一般的な社会人などの生活パターンに沿った行動と考えられます。昼間よりも夜20-22時ごろが活動が活発になっていて、仕事から帰宅して一段落したあたりでメルカリを使ってくれている様子が想像されます。

▽3番目のクラスタ ⇢ 夜型

f:id:mercarihr:20160616155422j:plain

一方、「第3クラスタ」は活動のピークが深夜1時と遅めに出ていて、少し夜型生活のユーザさんたちのようです。このクラスタは、メルカリの商品の中でも「エンタメ・ホビー」カテゴリの購買が他のクラスタよりやや強く、なんとなくユーザ像が浮かび上がるような気がします。

▽4番目のクラスタ ⇢ 主婦型ユーザさん

f:id:mercarihr:20160616161003j:plain

メルカリには主婦や子育てをする女性のユーザが非常に多いとも言われています。

「第4クラスタ」には、主に昼間にメルカリを使い、夜には少し活動が少なくなる、主婦と推察されるユーザのグループが出現しました。

夕方に少し凹みがあるのは、夕食の準備などで忙しいからではないか、というのが社内での仮説です。また、このクラスタは他のクラスタと比べて、「ベビー・キッズ」カテゴリの購買が多いという傾向があり、非常に肌感覚に合う結果となりました。

また、(今回は残念ながら実際の数字は秘密なのですが) これらのクラスタに属するユーザ数もそれぞれわかるため、メルカリにはどういったユーザがどれくらいいるのかを知ることが出来ます。

ユーザの理解を施策に

また、BIチームでは時間帯でのクラスタリング以外でも「購買商品カテゴリ」を使った分析なども行っています。メルカリのユーザをよく知るための分析は、たくさんの切り口が考えられ、非常に面白いです。

まだまだ分析したいことも多く、また分析の結果を全て完璧には施策に落とし込めていない状況ですが、ユーザのことを理解して施策を打つことができれば、ユーザにとってもメルカリにとっても双方ハッピーな結果を生み出すものと信じています。

メルカリでは、ユーザを分析しまくりたいデータサイエンティストと、そんなデータマスターたちに支えられながら、分析結果を施策につなげたいプロデューサを絶賛募集中です!

Data Analyst

Product Manager

関連記事 サクッと読める!✨

「Mercari Summer Internship 2022」の募集を開始しました! #メルカリな日々

メルペイ初!QAエンジニア育成&インターンシッププログラム「Merpay QA Summer Training Camp 2022」の募集を開始します! #メルカリな日々

USメルカリのデータ初公開!機械学習コンペティション「Mercari Prize: Price Suggestion Challenge」を開催します! #メルカリな日々 2017/11/22

関連記事 読み応えアリ✨