◆ 何をすべきかを見える化する「レコメンド」のためのデータ分析
データを分析することで、例えば次の2種類の情報を得ることができます。レコメンド(勧める)情報とモニタリング情報です。レコメンド情報とは「どのようなアクションなどをすべきか」について勧めるための情報です。モニタリング情報とは、アクションした結果どうなったのかという情報です。通常「見える化」といった場合、モニタリング情報を指すことが多いのですが「モニタリング情報だけ渡されても、アクションに繋がりにくい」という問題があります。とはいえ「レコメンド情報が必要です」と言われても、どうやればいいか悩まれている方もいると思います。今回は「何をすべきかを見える化する『レコメンド』のためのデータ分析」についてお話します。
【目次】
1.モニタリング情報だけ渡されても、アクションに繋がりにくい
(1)必要なのは「何をすべきかの見える化」
(2)2つのレコメンドのためのデータ分析
2.古典的な3つの方法
(1)シミュレーションから最適なアクションを探る
(2)数理最適化モデルを活用したレコメンド
(3)レコメンドモデルを活用したレコメンド
3.レコメンドモデルを活用したレコメンド
(1)協調型
(2)内容ベース型
(3)知識ベース型
1.モニタリング情報だけ渡されても、アクションに繋がりにくい
問題なのは、アクションの結果(例:売上、受注など)に関するデータだけを集めてしまい、モニタリング情報として現場に提供するケースです。例えば「売上が悪化した」とか「生産の歩留まり(良品の割合)が悪化した」という結果だけ見せられても、具体的に何をすべきかについては、ベテランか相当センスの良い方でないとみえこないでしょう。つまり多くの人にとって、モニタリング情報だけ渡されても、アクションに繋がりにくいということです。
(1)必要なのは「何をすべきかの見える化」
そのため、アクションの結果である「モニタリング情報」を現場に提供するとともに、何をすべきかという「レコメンド情報」も併せて現場に提供したほうがいいでしょう。要は、モニタリング情報は「結果の見える化」であり、レコメンド情報は「何をすべきかの見える化」といえるかもしれません。この2種類の情報(レコメンド情報とモニタリング情報)を「見える化」するためには、この2種類の情報(レコメンド情報とモニタリング情報)を生み出す必要があります。それがデータ分析です。
(2)2つのレコメンドのためのデータ分析
レコメンドのためのデータ分析といっても色々あります。次の二つが代表的なものです。
- 【都度データ分析】重要な意思決定をサポートする情報を、データサイエンティストやデータ分析担当者などがデータを分析する
- 【数理モデル構築】レコメンド・システムを構築し、機械的に情報を提供するためにデータ分析を行い、レコメンドのための数理モデルを構築する
前者は、都度データ分析をするため、データサイエンティストやデータ分析担当者などのデータを分析する側の、データに表れない情報を取り込み、洞察する力量が大きく問われます。後者は、レコメンドのための数理モデルを構築するため、将来を予測する数理モデルを構築する時と同様、汎用性や解釈性など気を付けるべきポイントを踏まえ、構築する必要があります。また、使ってみなければ善し悪しの判断がつかないため、通常は複数のレコメンドのための数理モデルを構築し、実際に試して取捨選択したり、実運用しながら数理モデルを都度改良し続けたりすることなどが必要になります。
2.古典的な3つの方法
以下は、古典的な3つのレコメンドのやり方です。
- シミュレーションから最適なアクションを探る
- 数理最適化モデルを活用したレコメンド
- レコメンドモデルを活用したレコメンド
(1)シミュレーションから最適なアクションを探る
「シミュレーションから最適なアクションを探る」とは、構築した予測モデルを使い、シミュレーションを実施することで、最適なアクションを探ろうというアプローチです。「X(説明変数)を変化させた時に、回帰分析を実施し構築するケースが多いです。「シミュレーションから最適なアクションを探る」方法は、一番やりやすく分かりやすい方法です。
(2)数理最適化モデルを活用したレコメンド
「数理最適化モデル」とは、数理計画法というアルゴリズムを使って、最適解を数理的に求めるアプローチです。「シミュレーションから最適な~」のような方法を行わずに求めるのが特徴です。
例えば……
マーケティングの広告・販促であれば、MROI(Marketing Return On Investment)を最大化する広告・販促費の最適配分(説明変数X、Xはコスト配分)を求めるであるとか、小売店の棚割り系であれば、利益最大化する最適棚割りを求めるであるとか、開発・生産系であれば、一定基準以上の品質特性(通常Yは1変量ではなく多変量)を実現するための最適な設計条件(説明変数X)を求めるなどです。
……目的変数Yを最大化、もしくは最小化するための説明変数Xを算出します。
数理計画法(線形計画法・非線形計画法・混合整数計画法など)のモデリング技術(事象の数式化)はそれなりのスキルが必要なため、ツールがあればできるというものではありませんが、非常に強力な手段の一つです。
数理計画法では、同計画法で解くための問題を「いかに定式化するのか」(モデリング)、それを「いかに解くのか」という大きな2つの問題にぶち当たります。意外と厄介(やっかい)なのが「いかに定式化するのか」で、対象となる現象を定式化することが不慣れな方が多い印象があります。若干、定式化のテクニックが必要になります。
「いかに解くのか」もそれなりに厄介です。数理計画法の中でも非線形計画法や混合整数計画法の範疇(はんちゅう)になると、厳密解(大域的最適解)を求めようとすると膨大な計算時間が必要となり、実務活用できないケースもあります。そのため、妥協解(局所的最適解の中で実務上受け入れ可能な解)を求めるシステムにすることが多いです。多くの場合、解を出すためのコンピューターの計算速度と、求めた妥協解の厳密解からの乖離(かいり)度合いで評価したりします。例えば、厳密解を求めるのに10日前後必要だが、厳密解からの乖離が10%以内の妥協解なら計算時間1分以内に出せる。などです。
3.レコメンドモデルを活用したレコメンド
以下は、よくある3つのレコメンドモデルです。
- 協調型
- 内容型
- 知識型
(1)協調型
レコメンドモデルで最も有名なのが、協調型です。中でも代表的なのが協調フィルタリングです。協調フィルタリングの場合、ユーザ(...