2015 年度 修 士 論 文
購買履歴を用いた代替品の推薦システム
提出日 2016 年 2 月 2 日
指導教官 豊泉洋 教授
早稲田大学大学院 基幹理工学研究科
数学応用数理専攻
学籍番号 5114A037-2
中川 眞吾
概要
本研究では、商品同士が代替品となりうる度合を設定し、代替品を推薦するシステムを提案する。 今やスマートフォンは、ゲームで遊ぶ、インターネットを活用する、写真を撮る、音楽を再生する、 など多くのことを1台でまかなえる電子機器となった。スマートフォンの普及は、既存のパソコンや カメラなどの商品が役割をとって代わられたことを示している。もちろんパソコンやカメラだからこ そ可能な機能もあるが、携帯電話が各分野における既存品に対しての代替品になったことは一面の事 実である。また、既存の需要に対し新たな商品が使用されることは、携帯電話に限らず身の回りで多 く存在しており、今もなお、どこかの分野では代替品がシェアの拡大をしているかもしれない。さら に、そうした代替品をいち早く見つけ出すことは、新たなビジネスチャンスをつかみ取ることにつな がる。
目次
1 はじめに 3
1.1 背景 . . . 3 1.2 既存研究との位置づけ . . . 3
2 代替性について 5
2.1 代替性の概念. . . 5 2.2 代替性の定義. . . 5
3 類似度と仲介度の設定 7
3.1 被購買確率 . . . 7 3.2 類似度について . . . 7 3.3 仲介度について . . . 7
4 提案システムの概要 9
4.1 準備 . . . 9 4.2 推薦 . . . 9
5 検証 10
5.1 類似度・仲介度データ . . . 10 5.2 評価 . . . 15
6 考察と今後の課題 15
1 はじめに
本章では、研究背景と存在する問題点を提示し、本研究の目的を記す。
1.1 背景
インターネットの普及などにより、大量の情報が発信されるようになり、同時に大量に情報を収集す ることが可能となった。SNS(Social Networking Service)やブログなどが身の回りの例にあたる。しか し、それゆえ欲している情報が得づらくなり、その利用が難しい状況となってしまっている[1]。イン ターネットを用いて、情報を検索にかける場合を想像すると多くそうしたケースに思い当たる節が誰し もにあるだろう。探している情報は確かに存在しているはずなのだが、検索ワードが思い当たらなかっ たり、欲していた情報が検索結果のランキング下位であったため表示されにくかった状況などがその例 である。
以上のような、膨大な情報の汲みとりにおける課題への打開策として考え出された手法に推薦システム がある。推薦システムの研究は、情報のフィルタリング*1の側面から見ると1992年のGoldbergらが用 いた初期の協調フィルタリングの手法[2]にはじまり、現在まで長い歴史がある。特に近年ではビジネス に活用することを目的とする研究が多い。その例に、Amazon.com*2では書籍から日用品まで幅広い商 品を消費者に提供するため、推薦システムを用いてユーザに合わせた商品情報の推薦を行っている。ま
た、Facebook*3やYouTube*4ではユーザ毎に異なった広告を提示する際に活用されている。
1.2 既存研究との位置づけ
情報間の関係性に関する研究は1988年のJainら[4]をはじめとし、これまで深く行われてきた。し かし、多くの研究では2情報間の数値化にとどまっており、3以上の情報間に関する研究ではベイジア ンネットワーク等[5]、研究の方向性は限られていた。その中でもクラスタリングの手法では、全情報の 関係性をクラスター化することにより分類を視覚的にも可能にしているが[6] [7]、商品間の距離の定義 から、関係性の中でも代替性に関し論ずることができていない。既存の研究では過去の行動に則して情 報の推薦を行う際に類似度を用いたモデル化が進められているが、こと代替情報に関しては類似度を直 接用いては適切な数値化が困難である。
そこで本稿では、3商品間の関係性に焦点をあて「代替性」という側面から新たな情報の関係性を提案す
*1フィルタリング:分類
*2Amazon.com:http://www.amazon.co.jp/
*3Facebook:http://www.facebook.co.jp/
*4YouTube:http://www.youtube.co.jp/
る。これにより代替情報の推薦を行うことが可能となり、情報の推薦における異なる切り口を提示する。
2 代替性について
本章では、情報間の関係性の新たな表現法として代替性を設定し、本稿での定義と必要性を示す。
2.1 代替性の概念
これまでの情報の距離の定義には、類似度が広く使われてきた。類似度とは情報間の相関であり、商 品を例にとれば、客が購入の際に共に買う度合のことである。しかしながら、類似性では表現のできな い関係性が存在する。代替性である。
喫茶店を例にとり代替性の説明を行う。図1はそのイメージ図である。ある喫茶店では、コーヒーや紅 茶などの飲み物と別にケーキやサンドイッチなどの食べ物も提供しているとする。これまでの類似度に 基づく推薦システムでは、共に購入されることが多いことから、コーヒーに対してケーキやサンドイッチ を、紅茶に関してもケーキやサンドイッチを勧められていた。つまりケーキやサンドイッチを購入する 客にはコーヒーと紅茶をオススメする仕組みをとっていた。ここまではいたって普通の内容ベースフィ ルタリングを用いた推薦システムである。しかし、仮にコーヒーのみを注文していた客が「何か代わり となる飲み物を頼みたい」と考えたとする。これまでの類似度からは、共通して購入される確率を計算 するにとどまっていたが、コーヒーの代わりに紅茶を勧める度合いを提示することができない。この代 わりに勧める度合いを本稿では代替度と表現する。
代替度は消費者からすると、喫茶店の例のように同種の商品系の推薦を行える。また企業・会社から見 た際には、品切れに対しての代案として、または既存の商品に対して、感覚ではイメージしにくい別の 代用品のオススメに活用できる。代替品により既存の商品と代りになる商品を提示することでいわゆる
「代替品の恐怖」と呼ばれる[3]市場の変革のきっかけを創り出すきっかけとなるであろう。 なお本稿では以下、一般の情報ではなく商品の情報に場合を限って考察を進める。
2.2 代替性の定義
先の喫茶店の例を元に、代替性について考察する。2つの商品i, jが完全に代替可能であるというこ とを、「iとjの情報を交換しても他の情報に対して影響を及ぼさないこと」とする。極端には、全く同 じ商品の情報がデータ内に別々に存在していたとするとき、それら商品の情報は完全に代替可能である と言えるものとする。しかしこうした状況は想定に値しないため、その可能度合(代替性)ついて論ず る。そこで代替性を定めるにあたり、2商品同士が共通して購入される度合を示す類似度とは別に、3 商品目との関係の強さを用いることとした。本稿ではこれを仲介度と定義する。
まず、先の喫茶店を例にとり仲介度を説明する。今、コーヒーと紅茶の代替性を調べるために、その2 商品間の仲介度について考える。このとき、コーヒー・紅茶間の仲介度は、3商品目としてケーキやサ ンドイッチから見たそれぞれとの関係性の強さを比べた値のこととする。具体的には、コーヒーと紅茶
ともにケーキに関して非常に高い相関があり、サンドイッチや他の商品に関しても同様であったとする。 この条件下では、コーヒーと紅茶は3商品目であるケーキやサンドイッチ等の商品から見た関係性が非 常に高く、値として近いため仲介度が高いと考える。一言で表現するならば、全商品から見た位置づけ
(距離)の近さである。なお、逆の例にとっても仲介度は高い値を示す。つまり、ケーキなどの3商品目 から見て相関の少ない商品同士でも、関係値の小さいもの同士という点で仲介度は高い値を示す。こう して定めた仲介度の高い組ほど、代替可能な組といえる。なお、仲介度に関する定式化は、2.4でα∼ γの3種類を行う。
また、類似度は低いほど代替品として勧めやすい。これは、類似度が高いことは2商品がセットとして 購入されるケースが多いことを示しており、オススメとして出すにはお互いに商品として距離が近いた め、セレンティビティ*5の観点から、商品の推薦を考える際には向かないためである。
よって、「仲介度が高く」「類似度が低い」商品関係を代替性が高いと考えた。
*5セレンティビティ:オススメの意外性
3 類似度と仲介度の設定
本章では、代替性の設定に用いる類似度と仲介度を定式化を行う。
3.1 被購買確率
本稿では、2情報間の関係性を示す値の1つとして被購買確率を用いる。被購買確率とは、2つの情 報が共通して1データに入る確率を示している。単純にはD(i)を情報i(i = 1, , , M )がカウントされて いるデータの集合とし、情報iとjとの類似度をn(D(i)∩D(j))
n(D(i)) としておく。式からわかるように、iを購 入した条件のもとjを購入する条件付き確率を示している。本稿ではiの購入者がjを購入する(興味 を持つ)確率として用い、被購買確率が大きいほどにi → jの向きに正の相関があるものとする。
3.2 類似度について
顧客が店舗にて商品を購入する(本論文では、レシート内に記載される)際に、2商品が同時に購入 されることに関するiとjについての類似度R(i,j)は、
R(i,j)=n(D(i)∩D(j) ) n(D(i)∪D(j))
(1)
と定める。この類似度はジャッカール指数と呼ばれる数値であり、商品i.jの少なくとも一方の記載のあ るレシートの数に対して、i, j共に記載のあるレシートの数の割合を示しており、2商品i, jが関連して 購入される確率の高さを示している。
3.3 仲介度について
本稿では仲介度関して、3種のテストモデルを提示して吟味する。
3.3.1 α案
商品iとjの仲介度を
Sα(i,j)= 1 m
m
∑
k=1
n(D(i)∩D(k))
n(D(i)) −
n(D(j)∩D(k))
n(D(j))
(2) とする。この定義の示すところは、各2商品i, jから見た第3の商品kとのレシート内での被購買確率 の差をとり、その絶対値を全商品について足し合わせて2商品間の仲介度を表している。
3.3.2 β案
商品i, jの仲介度を
Sβ(i,j)= 1 m
m
∑
k=1
√n(D(i)∩D(k)) n(D(i))
n(D(j)∩D(k))
n(D(j)) (3)
とする。この定義が示すところは、α案で用いた被購買確率の積を全商品について足し合わせたもので あり、式自体は意味を持たない計算であるが、第3の商品kと各2商品との被購買確率の大小に比例的 に増減が変化することから本稿では代替度の1つとして挙げている。
3.3.3 γ案
商品i, jの仲介度を
Sγ(i,j)= 1 (m − 2)2
∑
(k,l)̸=i,j
√n(D(i)∩D(k)) n(D(i))
n(D(i)∩D(l)) n(D(i)) −
√n(D(j)∩D(k)) n(D(j))
n(D(j)∩D(l)) n(D(j))
(4) とする。γ案では、代替度の対象となるi, jのレシートに注目した形をとる。絶対値内の2つの分数部 分では、それぞれi, jの仲介商品としての役割の値の大きさを示しており、全k, lの組での役割の差に ついて合計することで、レシートデータ内でのi, jの仲介商品としての値を示している。商品A,Bが代 替可能であるとき、先の定義から、A,Bを取り換えたとしても情報の変化がないとしていたため、これ までの代替度ないし関連度も変化がないものと捉えることができる。
同様に差の合計を取っているα案との違いに、i, jを除いた商品間で合計を取っている点がある。理由 として、関連度の差を考える際に、同等のデータから算出する必要があるためである。
図1 提案システムのイメージ図
4 提案システムの概要
代替品の推薦システムを提案する。なお本稿では飲食店の実データを元とするため、商店における推 薦のアルゴリズムを提案する。
なお、図1 は本システムのイメージ図である。
4.1 準備
推薦を行う前の前準備の手順を記載する。 1.取扱いのある全商品ナンバリングしておく。
2.購買データをナンバリングに商品を合わせて収集を行う。
3.収集したデータを購入の個数をすべて「1」に直し(レシート×商品)行列に表記する。 4.行列を加工し、類似度・仲介度を示す行列を算出する。
5.算出した類似度・仲介度から、各商品ごとに代替品を決める。
4.2 推薦
準備の段階を終えた後、消費者に対して推薦を提示する。 6.消費者 A が商品 I を注文する。
7.A に対し I を提供するとともに、5で求めた商品を推薦する。
4.3.で選んだ中で類似度行列R内での値が比較的に低いものを提示する。
5 検証
本章では、前章で定めた類似度・仲介度が代替性を表現することができる値を出すことができている かの検証を行う。本稿では中野区にある飲食店に協力していただきレシートデータを収集した。レシー トデータ数N= 1086、商品数M = 48として各類似度・仲介度の検証を行った。
5.1 類似度・仲介度データ
類似度と仲介度で定義した関数のi, j成分を行を(= i)、列を(= j)と置き換え、行列の成分を仲介度 の高さをグラデーションで表記した。濃いところは類似度・仲介度が高いことを示している。また、次 の表1 では図2∼5の成分が示す大まかな商品分類を表している。
表1 成分ごとの商品の分類
数値 商品 数値 商品
1∼3 カクテル 20∼27 ウイスキー 4∼13 ビール 29∼32 スピリッツ 14∼16 キープボトル関係 33∼37 焼酎類 17∼19 ワイン 39∼48 フード
注釈:成分20はワンコインサービスshotを示しており、成分48は1日限定フードを示している。その ため、20は21∼27と、48は39∼44のどれかとレシートごとにダブルカウント*6している成分である。
*6ダブルカウント:商品が特定の対象であった時のみ, 購入の記録を既存の商品群へのカウントとは別に、他の成分もカウン トすること
1 10 20 30 40 48 1
10
20
30
40
48
1 10 20 30 40 48
1
10
20
30
40
48
図2 類似度R(i,j)
1 10 20 30 40 48 1
10
20
30
40
48
1 10 20 30 40 48
1
10
20
30
40
48
図3 仲介度Sα(i,j)
1 10 20 30 40 48 1
10
20
30
40
48
1 10 20 30 40 48
1
10
20
30
40
48
図4 仲介度Sβ(i,j)
1 10 20 30 40 48 1
10
20
30
40
48
1 10 20 30 40 48
1
10
20
30
40
48
図5 仲介度Sγ(i,j)
5.2 評価
まず、仲介度αβγの3案を比較し評価する。αγ案に関しては非常に似かよった結果を得ることがで きた。定義の式の形から、この結果は十分に妥当な結果であると言える。β案は他の2案とは異なり行 列全体としてグラデーションに明暗の差が少なく出ている。つまりは、各成分ごとの値の差が少なく結 果に表れている。
次に類似度と仲介度の関係性については、前章の注釈で記述したダブルカウントされる成分に注目する。 類似度・仲介度ともに、n= 20, 21, , , , , 27での(20, n), (n, 20)成分では関係性が高い値を示している。 これらの成分については、それぞれ20と21∼27とが購入日(レシート発効日)ごとに異なる組み合わ せではあるが、ダブルカウントされるため、その日では全く同じ商品を示している。この関係は2.2 で記した代替品の条件に適合している。そのため高い値が出てきていると考えられる。しかし、成分20 は仲介度は高いものの、類似度も高い値を示しているため代替品として推薦には至らない。そこで、代 替品として推薦するための仲介度の評価として、次の条件で評価した。なお、各成分において、類似度
R(i,j)の値が小さいところについて比較した。
5.2.1 (27, 31)成分の比較
成分27の日本のウイスキーと成分31のラムとの関係において、αでは顕著な高さを示しているが、γ ではα程の結果を示していない。また、βに関しては高いと示すことができていない。
5.2.2 (33, 36)成分の比較
成分33の日本酒と成分36のソフトドリンクとの関係においても同様に、α > γ > βの順に仲介度の 高さを示していた。
以上から、3案の中ではα案が最も活用しやすい仲介度であると考察される。
6 考察と今後の課題
本稿では、仲介度を定式化することで代替品の推薦を行えるシステムを実現した。しかし、仲介度と 類似度とを用いた代替度の数値化まで至らなかった。数値化を行うことで、既存の推薦システムと同様 に精度検定やシステムの実証実験を行うことができる。また、実データを今回は飲食店でのメニューに 限られていたが、より幅の広いECサイトでの商品について検証することでビジネスチャンスにつなが る代替品を見つけることができると考える。
参考文献
[1] 神嶌 敏弘 ”推薦システムのアルゴリズム(1)” 人工知能学会誌Vol.22, No.6, pp.966-971 (2006)
[2] Goldberg, D., Nichols, D., Oki, B. M., and Terry, D.”Using collaborative filtering to weave an Information Tapestry”Communication of the ACM Vol.35, No.12, pp.61-70 (1992)
[3] 根来 龍之 ”代替品の戦略” 東洋経済新報社 (2005)
[4] Jain, A., K. and Dobes, R., C”Algorithms for Clustering Data”Prentice Hall (1988) [5] 本村 陽一,岩崎 弘利 ”ベイジアンネットワーク技術” 東京電機大学出版局(2006)
[6] 上田 尚一 ”クラスター分析”朝倉出版(2003)
[7] 神嶌 敏弘 ”データマイニング分野のクラスタリング手法(1)”人工知能学会誌Vol18, No.1, pp.59-65 (2003)