記事種別

はじめてでもわかるレコメンド[3]ユーザー行動の履歴を使ったオススメ、精度を上げるポイント

  • このエントリーをはてなブックマークに追加
  • プッシュ通知を受け取る

あまりITに強くないショップオーナーさん向けに、レコメンドについてわかりやすく解説します。今回のテーマは、ユーザーの行動履歴を使ったレコメンド手法です。

ユーザーの行動履歴を使ったレコメンド手法

 今回は、いよいよレコメンドの手法について解説していきます。この連載はネットショップのオーナーさん向けなので、あまり技術的に深入りしない形で進めたいと思います。

 前回、「ユーザーの行動履歴を使いつつ商品情報の変化も活用するパターンと、ユーザーの行動履歴だけを使うパターン」があると書きましたが、まずはユーザーの行動履歴だけを使うパターンについてです。

 ユーザーの行動履歴を使うレコメンドの一番の基本は、やはり相関係数を用いた協調フィルタリングです。協調フィルタリングは手法(概念)の名前、相関係数は計算方法の名前です。

 ちょっと難しい感じがしますが、具体的に見ていきましょう。

STEP1:行動履歴をマトリックスにする

 まず、ユーザーのアイテムに対する行動履歴をマトリックスで表現します。

 アイテムというのはECの場合だいたい商品です。旅行の予約などの場合はプランです。行動履歴というのはだいたいが購買予約のことを言いますが、閲覧自体を行動履歴にしても構いません。

 話を大変単純化するために、ユーザーAからEが、アイテムa~eに0から1までの間の数値評価をしたとして、下記のようなマトリックスを作ることができます。

アイテム/ユーザー A B C D E
a 1 0 0 1 1
b 0.5 1 0.9 0.3 0.7
c 0.8 0.3 0.1 0.7 0.5
d 0 0.8 1 0.1 0.5
e 0.2 0.1 0.4 0 0.3

 実際の計算をしなくても、パッと見てたとえばユーザーAとユーザーDはなんとなく似ていそうな感じがします。

STEP2:相関係数で計算する

 では、これらを具体的に相関係数を用いて計算してみましょう。プログラムでもエクセルでも可能です。

ユーザーA~Eの相関
  A B C D E
A 1. -0.46926246 -0.78628934 0.95120221 0.51540832
B -0.46926246 1. 0.89304716 -0.45177395 -0.67409217
C -0.78628934 0.89304716 1. -0.74185075 -0.65391115
D 0.95120221 -0.45177395 -0.74185075 1. 0.70715934
E 0.51540832 -0.67409217 -0.65391115 0.70715934 1.
アイテムa~eの相関
  a b c d e
a 1. -0.89985013 0.8926074 -0.88662069 -0.28867513
b -0.89985013 1. -0.62130056 0.6032341 0.07602859
c 0.8926074 -0.62130056 1. -0.99329302 -0.55215763
d -0.88662069 0.6032341 -0.99329302 1. 0.54845432
e -0.28867513 0.07602859 -0.55215763 0.54845432 1.

STEP3:相関の値から

 相関の値は-1から1の間の数値で表され、1はまったく同じ、0はまったく無関係、-1はまったく真逆という相関を意味しています。

 ユーザーAとユーザーEは0.95とかなり高い相関となりました。またアイテムbとeは0.076とその好まれ方にほとんど相関がなく、アイテムcとdは-0.99と真逆の好まれ方をしているとわかります。

 一見「難しそう」な数字ですが、先述のとおり、ツールを使えば誰でも求められます。

 重要なのはそこではなく、

  • ユーザーの行動をどう数値化するか
  • 出てきた結果をどう評価するか

の2つです。

 せっかくレコメンドの仕組みをECショップに導入しても、上記が適当だと意味がありません。それぞれどう考えればいいのか、見ていきましょう。

※この続きは、会員の方のみお読みいただけます(登録無料)。



  • このエントリーをはてなブックマークに追加
  • プッシュ通知を受け取る

バックナンバー

連載:はじめてでもわかるレコメンド

2017年06月の人気記事ランキング

All contents copyright © 2013-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5