BLOG

ブログ

新着記事

2020.01.30 AIディープラーニング機械学習

レコメンドについての備忘録 ー超基礎編ー

こんにちは、日本酒が好きな杜(もり)です。
新人時より約3年勤めたSIer企業からFabeeeに転職し、まだ半年経ってないくらいの今日この頃。
やっと現在の環境に慣れてきたかなぁと思っていますが、実際はどうなんでしょうか?
・・・まあそんな話は置いといて、この記事ではレコメンドについてまとめてみました!
 

レコメンドって?

確かに、あまり聞いたことがない言葉かもしれません。
しかし、様々な商品をインターネット上で売買できるようになった昨今、
「レコメンド」という言葉は知らなくとも、その手法を用いたサービスに触れることは多くあります。
 
代表例を挙げれば、Amazonや楽天、もしくは、ECサイトなど、
インターネットが普及したこのご時世、数多くのオンラインショップがあります。
そのようなサイトで、「あなたにオススメ!」などの文言を目にしたことはないでしょうか?
使ったことがある方なら、きっと目にしたことはあるはずです。
 
そう、レコメンドとは文字通り「推薦(レコメンド)」することなのです。至極単純ですね。
商品情報(カテゴリや値段など)やユーザー情報(年齢や性別など)を基に購入される確率を予想し、
高確率の商品を優先的に紹介して、売り上げを高めるのが狙いなのです。
 

 

それって必要なこと?

パッと聞いた感じでは、確かにそう思えないかもしれません。
なので、まず「レコメンド」について、何処でどのように使われているかを考えてみましょう。
先ほどオンラインショップを例に挙げましたが、これは実際のお店でも使われるものです。
意味や方法は知らずとも、それと同義的な手法は用いられているはずです。
 
例えば、ある服屋さんに買い物に来た場合、(迷惑かそうでないかの話は置いといて)
店員さんに話かけられ、何を求めているかの質問をされることは多いはず。
それは好みだったり、体格だったり、使用用途だったりしますが、
共通することは、お客さんが欲しい商品として何の要素を望んでいるか、を聞くためということです。
 
実際のお店では、直接質問することにより高確率でお客さんが望む商品を提供可能でしょう。
しかしながらオンラインショップの場合、商品数の多さなどという数多の情報量により、
本当に欲しい商品にたどり着く前に、他の商品を買ってしまう、ということが多々あるはずです。
だからこそ、「レコメンド」のシステムは売る側にとっても、買う側にとっても、重要なのです。
 

どのような手法があるの?

大きな括りで言えば、2種類に分けられると考えています。
それは「コンテンツベースフィルタリング」と「協調フィルタリング」です。
名前だけでは分かりにくいので、簡単にですが、どういったものかを説明しましょう。
 
コンテンツベースフィルタリング
 商品の持つ属性(カテゴリー、値段、ブランド名など)を基に分析し、
 似た属性を持つ商品をレコメンドする方法です。
 
協調フィルタリング
 ユーザーの行動履歴(視聴履歴、購入履歴、評価、コメントなど)を基に分析し、
 ユーザー同士の嗜好を計算、それをレコメンドのシステムに加味する方法です。
 この方法には「アイテムベース」「ユーザーベース」といった異なるアプローチが存在しますが、
 ここでの説明は一旦、控えさせていただきます。
 興味がある方は調べてみてください、どのような方法なのかが分かるはずです。
 
コンテンツベースフィルタリングは、基本的に同じカテゴリーの商品がレコメンドされるため、
同系統の商品をレコメンドするのには有効ですが、
全く別系統の、新しい商品をレコメンドすることは難しいと言われています。
 
しかしながら、協調フィルタリングではユーザーの行動履歴を基にレコメンドするため、
比較的リアルタイムで、レコメンドする商品が更新されることとなります。
「この商品を買った人は、この商品も買っています」など目にすることはありませんか?
それはきっと「協調フィルタリング」に属する手法が用いられていることでしょう。
実際にそれで購入するユーザーも少なくはないはずです。
 

まとめ

一概にレコメンドと言っても多種多様で、サービスごとに適切な方法を選ぶことが重要となります。
レコメンドについての論文も多く公開されているので、気になる方は調べてもいいかもしれません。
 
次回は(未定ですが)、レコメンドシステムのアルゴリズムや活用方法などを紹介できればと思います。
それでは、またの機会に。
 
AIコンサル/SES/受託開発はこちら