Skip to main content
ネットショッピングのイメージ

深層強化学習を利用したオンラインショッピングにおけるダイナミックプライシング

Masanari Kida


本記事について

ダイナミックプライシングをオンラインショッピングに導入した事例について、論文が発表されています。今回はそれについて解説していきたいと思います。

論文名:Dynamic Pricing on E-Commerce Platform with Deep Reinforcement Learning

https://arxiv.org/abs/1912.02572v1

概要

皆さんはAmazonや楽天などのショッピングサイトを一度は使用したことがあるかと思います。実際、これらのサイトは非常に多くの方に利用されているようで、今回解説する論文によると、2017年の見積もりにおいて、Amazon.comは3億5600万製品 (現在は5億6200万製品)、米Walmart.comは420万製品を販売しています。

ところで、ネットショッピングを利用していれば気づくと思うのですが、同じ商品でも、日によって価格が変化していますよね?

Amazon も楽天も企業なので、自社の利益を最大化するため、需要と供給に合わせて価格を調整しているのですが、Amazonクラスの製品数ともなってくると、これらを全部人間の手で調整するのはかなり大変です。

適切に価格設定をするには研修が必要で時間がかかりますし、人間なのでミスもします。人件費だってバカになりません。そうなると自動化したくなるものです。

とはいえ、自動化するにしても、できれば価格設定のプロと同等か、あるいはそれ以上の能力が欲しい訳です。

今回の論文は、アリババという会社が運営しているTaobao.com∗1というサイトにおいて、どのように価格設定を自動化すればよいかについて、その手法をまとめたものになります。

今回、論文で紹介されている手法は深層強化学習のアルゴリズムでEnd to End (最初から最後まで全部) で 価格を動的に設定するもので、その中でも状態がマルコフ決定過程(MDP)の確率モデルに従うものとして価格を設定する古典的な手法です。

より新しい手法と比べると以下のような特徴があります。

  1. 価格を離散的 (飛び飛び) にではなく、連続的に捉える。
  2. 報酬∗2 の決定基準として、収入ではなく収益への変換率の差 (DRCR) を使用する。
  3. 事前学習と過去の販売記録のデータによる評価によって、マルコフ決定過程のモデルを使う際に発生するコールドスタート問題 (情報不足によって適切な価格設定ができないという問題) を解決する。

背景

Taobao.comも数十億製品を販売しており、これ以上取り扱う製品の数が増えれば人間の手で適切な価格設定をすることが困難になってきます。Amazonも同様の状況らしく、利益を最大化するためにダイナミックプライシングを導入したようです。

そこで、Taobao.comにおいてもダイナミックプライシングを導入しようという流れになりました。

アリババにおいて最大のネットストアはTmall.comで、これは認定を受けた出品者が販売している商品を消費者向けに小売りしているサイトです。元々はTaobao.comからスピンオフしたもので、日本で言うと楽天市場などが近いかもしれません。

手法

ディープラーニングのイメージ

ダイナミックプライシングの流れは以下の通りです。

  1. これまでの販売記録のデータと、価格設定のプロによる価格設定の記録を使用してエージェント∗3を学習させる。エージェントの性能もこれらのデータを利用して評価する。
  2. エージェントを学習させたら市場に投入する。エージェントは市場にある製品の価格のデータを集め、それを元に価格を決定する。価格を決定した後、望ましい結果が得られたら報酬を得る。
  3. エージェントは、より多くの報酬を得るために、結果を元に自分の戦略を修正する。
  4. 以下、2.と3.を各製品において、製品が売り切れるまで繰り返す。

この論文では、強化学習のアルゴリズムとしてDQNを使用したものと、DDPGを使用したものの2つを用意し、それらの性能を人間による価格設定と比較しています。エージェントの性能はこれまでのTmall.comにおける販売記録のデータを利用したオフライン実験と、実地投入で検証したオンライン実験の2つの観点から検証しています。

結果

オフライン実験

論文ではまず、以下についてオフライン実験で検証しました。

  1. 報酬を決定する基準として、RCR (収益変換率) とDRCR (収益への変換率の差) のどちらが適切か
  2. ハイパーパラメーター (人間が手作業で決めなければならないパラメーター) であるKはどの値にするのが適切か
  3. DQNとDDPGのどちらが高性能か

対象とする製品は40,000SKU (最小管理単位) 以上のFMCG (日用消費財) から慎重に選んだものです。検証は60日分のデータを利用し、最初の59日間を学習に、最後の60日目の記録でモデルを評価しました。結果はそれぞれについて以下のようになりました。

  1. DRCRの方がRCRよりも成績が良く、結果も安定している
  2. Kの値を10, 20, 50, 100, 200 にして検証したところ、Kの値は100が最良
  3. DDPGの方がDQNよりも性能が良い

オンライン実験

次に、実地投入して、人間による価格設定との性能比較を行いました。

性能比較をするためには、なるべくなら条件が変わらないようにするために、同じ時間、同じ商品で実験した方が良いのですが、今回の場合それはできません。

顧客の目線に立ってみればわかると思いますが、全く同じ商品なのに顧客Aには1000円、顧客Bには2000円ということになればそれは不平等です。

なので、比較対象は「よく似ているけど別の商品」で検証します。検証期間は30日間です。また、検証期間の16日目からは値下げシーズンに入りました。

結果は以下の通りです。

  1. 収益変換率でみると、1~15日目まではDQN、人間による価格設定のどちらにおいても平均で0.04だったが、16~30日目ではDQNが0.22、人間による価格設定が0.16となり、DQNの方が良い結果となった。
  2. 利益変換率でみると、1~15日目まではDQN、人間による価格設定のどちらにおいても平均で0.06だったが、16~30日目ではDQNが0.16、人間による価格設定が-0.04となり、こちらでもDQNの方が良い結果となった。
  3. DRCRでみると、人間による価格設定の平均DRCRを1とした場合、DQNのDRCRは平均で5.10となった。
  4. DDPGとDQNの性能を比較するため、人間による価格設定をする製品はそのままで、AIによって価格設定をする製品をDDPGとDQNでランダムに割り振ってそれぞれ価格設定させると、 人間による価格設定のDRCRを1とした場合、DDPGでは平均6.07、DQNでは平均5.03となった。

これらの結果から、AIの方が人間より上手く価格設定ができるという結果になりました。

今後の課題

今回の論文は深層強化学習によるダイナミックプライシングの可能性を示すものでしたが、同時に新たな課題も提示しました。例えば以下の点です。

  1. エージェントの学習は各製品ごとに個別に行っているため、販売量が少ない製品だと学習用のデータが不足する。この問題は類似製品を1つのグループにまとめ、そのデータを用いて転移学習することで解決できる。メタ学習も役立つ可能性がある。
  2. 今回は価格設定の戦略も各製品ごとに個別に決定している。しかし、場合によっては経営戦略上、別々の製品を同一の戦略で価格設定したいこともある。これは組み合わせ行動空間を導入することにより解決できる。
  3. 今回のモデルは環境の状態しか考慮していないため、将来的にはプロモーション価格やメンバーシップ価格など、より具体的な状況下のシナリオも考慮できるようにしたい。

所感

今回論文を読んで思ったことですが、古い手法だから絶対ダメというわけではなくて、それが使える時は使ったほうが良い時もあるのだと感じました。

もちろん最新手法は最新手法で良い点もありますが、大抵の場合、古典的手法に比べて複雑になりがちです。また、古典的手法の方が多くの人に使われて知見がたまっているので、もし結果が悪くても何が原因なのか分かりやすいというメリットもあります。

特に企業の場合、ミスや問題は早く発見・解決しないと時として莫大な損失を被ることもあるわけですから、このメリットはなおのこと魅力的でしょう。

また、今回の論文はAIが価格設定のプロと同等か、あるいはそれ以上の成果を上げられることを示しました。

これにより、ダイナミックプライシングの手法を導入することで、企業としては人的資源を他のタスクに投入できるとも言えますし、消費者の側に立ってみると価格変動について不公平感が薄まるといった印象を持つのではないでしょうか。

今回はこれで解説を終わります。

それではまたどこかでお会いしましょう。


注釈

∗1: 中国においてAmazonの地位を得ているオンラインショッピングサイト

∗2: AIが取った行動を評価するためのスコア

∗3: 実際に価格を決定するAI

この記事をシェアする