n週連続 推薦システム関連の論文読んだシリーズ8週目(水曜更新): youtubeの強化学習REINFORCE推薦システムにおける"探索"の要素が、ユーザ体験の改善にどんな影響を与えるかに関する論文を読んだ

# Values of User Exploration in Recommender Systems

published date: 13 September 2021,
authors: Minmin Chen, Yuyan Wang, Can Xu, Elaine Le, Mohit Sharma, Lee Richardson, Su-Lin Wu, Ed Chi
url(paper): https://dl.acm.org/doi/pdf/10.1145/3460231.3474236
(勉強会発表者: morinota)

---

## どんなもの?

- 強化学習(Renforcement Learning: RL)は、推薦プラットフォームにおけるユーザ体験をさらに向上させる次世代推薦システムを実現するために求められている.
- 本論文は、RLにおける探索(exploration)が推薦品質、ひいては長期的なユーザ体験に及ぼす影響を測定する.
- その為に...
  - **RLベースの推薦システムにおいてユーザの探索を増加させるアプローチ**を提案し、最終的な推薦品質に対するそれらの効果を研究する.
  - 本論文では、オフライン実験に加え、ユーザ探索の利点を紹介するために、数十億のユーザにサービスを提供する推薦プラットフォームでライブ実験を行った.
  - さらに、カジュアルユーザからコアユーザへの転換を、長期的なユーザ体験向上の全体像の指標として用い、**推薦システムにおけるユーザ探索の価値を研究**した.

## 先行研究と比べて何がすごい？

- 探索(exploration)と活用(exploitation)のトレードオフはRL研究の基礎である.
- しかし推薦においては、**このような探索はユーザの興味にそぐわないものを推薦することになるため，特に短期的にはユーザ体験に対するコスト**とみなされることが多い.
- (RLに基づく)推薦システムにおける探索の価値についてはあまり理解されていない.

## 技術や手法の肝は？

### RL推薦システムにおいて探索を促す手法

ここでは、REINFORCE推薦システム(chen et al 2019において提案された.Youtubeの推薦システムにおいて運用されているRLベースの手法)において、学習中に**ユーザの探索性(i.e 既知のユーザの興味にあまり関係のないコンテンツを推薦し、新しいユーザの興味を発見すること.)**を高めるために、3つの簡単な方法を紹介する.

REINFORCE推薦システムに関しては、[前回記事]()を参照.

#### Entropy Regularization (エントロピー正則化)

最初の方法は、policy $\pi_{\theta}(\cdot|s)$ が **高いエントロピー(乱雑さ)(i.e. 裾野が広い分布?)を持つ確率分布を出力ように促すこと**で、**既知のユーザの興味にあまり関係のないコンテンツを推薦する(i.e actionを選択する)ことを促進**するアプローチ.

Mnihら[本論文 参考文献38]は、policyのエントロピーを学習の目的関数に加える事で、最適でない決定論的ポリシーへの早期収束を阻止し，より良いパフォーマンスにつながることを観察した

具体的には、RL policyの目的関数 $J(\pi_{\theta})$ に対してpolicyのエントロピーの項を追加する. policyは以下の目的関数を最大化するように学習する.

$$
\max_{\theta} J(\pi_{\theta}) + \alpha \sum_{s_t \in d_t^\beta (s)} H(\pi_{\theta}(\cdot|s_t))
\tag{4}
$$

ここで、

- 条件付き確率分布 $\pi_{\theta}(\cdot|s_t)$ のエントロピーは、$H(\pi_{\theta}(\cdot|s_t)) = - \sum_{a \in A} \pi_{\theta}(a|s)$ として定義される.
- $\alpha$ は正則化の強さを制御するハイパーパラメータ.
- ちなみに...
  - エントロピーは、条件付き確率分布$\pi_{\theta}(\cdot|s_t)$の一様分布に対する負の逆KL発散と等価.
  - つまり、 $H(\pi_{\theta}(\cdot|s_t)) = - D_{KL}(\pi_{\theta}(\cdot|s_t)||U ) + const$ になる.
  - ここでUは行動空間Aにわたる一様分布(i.e. user stateが$s_t$の場合に推薦可能な全てのアイテムをランダムに選択するようなpolicy).
  - $\alpha$を強めると、**学習したpolicyがより一様分布に近くなり**、探索を促進することができる.

#### Intrinsic Motivation と Reward Shaping

第二の方法は，reward shaping を通して、探索性の向上に役立てるアプローチ.(目的関数ではなく、報酬関数をいじるイメージ??)
報酬関数(reward function) $r(s, a)$ は、user state $s$ に対する推薦(action) $a$ の即時報酬 を記述するもので、policyの学習を決定する上で重要な役割を持つ.
Reward Shaping とは、MDPが提供する元々の報酬関数を変換したり、追加報酬(additional reward)を供給したりすることで、**アルゴリズム設計者が望むpolicyを生み出すようにRLエージェントの学習を導く**のに非常に有効なアプローチ.

探索を促すような reward shapingにおいては、curiosity(好奇心)や**intrinsic motivation(内発的動機付け)**という定性的な概念を用いて、エージェントが環境を探索し、後で役に立つかもしれないスキルを学習することを促す.(=intrinsic motivation の概念を報酬として考慮する!)
その為に、エージェントが未知の領域を探索したり、新しいスキルを学ぶのを助けるために、環境から直接提供される**extrinsic reward(外在的報酬)** $r^{e}(s, a)$ (=元々の報酬関数!)に、不確実性や好奇心を捉えた**intrinsic reward(内在的報酬)** $r^{i}(s, a)$ を追加する.
つまり、報酬関数を以下のように変換する:

$$
r(s, a) = c \cdot r^{i}(s, a) + r^{e}(s, a)
\tag{5}
$$

ここで、$c$ は環境から放出される extrinsic reward に対する intrinsic rewardの相対的重要度を制御するハイパーパラメータ.(cを大きく設定する程、agentはintrinsic rewardをより重要とみなし、policyの学習に考慮する.)

Schmidhuber [本論文 参考文献49] は、creativity, fun, curiosityの理論を、**環境の驚くべきパターン(surprising patterns)を発見したいというintrinsic reward**として正式に捉え、curiosity-drivenのエージェントはexternal reward(元々の報酬関数)が無くても学習できると主張している.(=ほうほう...!)
さて本論文の提案は、エージェントが**ユーザ=環境のこれまで知られていなかったパターンを発見した時**に、より多くの報酬を与えるという同じ原理を担っている.
$R_t^{e}(s_t, a_t) = I_{r^e(st ,at )>0} \cdot \sum_{t'=t}^{T}\gamma^{t' - t}r^{e}(s_{t'}, a_{t'})$ を、軌道上で観測されたstate-actionペア $(s_{t'}, a_{t'})$ の extrinsic rewardの割引累積報酬とする.
そして、勾配更新(=policy-gradientによるpolicyの学習)に用いる累積報酬(cumulative reward)$R_t(s_t, a_t)$ を次のように定義する:

$$
R_{t}(s_t, a_t) = \begin{cases}
  c \cdot R^{e}_{t}(s_t, a_t) && \text{surprise and relevance} \\
  R^{e}_t(s_t, a_t) && \text{otherwise}
\end{cases}
\tag{6}
$$

ここで、

- c > 1 はconstant multiplier(定数倍).(=**surprise and relevanceな結果が得られた時の報酬の値を高める=ボーナス的な役割**...!)
- $\text{surprise and relevance}$: user state $s_t$ の下で$a_t$を推薦することで、これまで知られていなかったユーザの興味を発見することができる場合.

エージェントはユーザの履歴 $H_t = {(A_0, a_0, r_0), - - , (A_{t-1}, a_{t-1},r_{t-1})}$ によって環境(ユーザ)の興味とcontextを認識する.
もし、状態 $s_t$ が与えられたときに推薦されるアイテムが以下の条件を満たす場合、agentの環境モデリング(=policyモデル)に**大きな更新(surprise)**があると想像される.

- 1. **surprise**: ユーザが過去にやりとりしたアイテムのどれとも大きく異なる
- 2. **relevance**: ユーザが楽しんでいる、すなわち、$r_e(s_t , a_t)$ または $R_e(s_t, a_t)$ が高い. (=ユーザの嗜好とのrelevanceというイメージ?)

この2つの条件、**surprise**と**relevance**は、セレンディピティのメトリックと一致する.

**あるアイテム$a_t$の surprise の度合い**を測るために、時刻tまでにユーザがinteractionしたアイテムの集合を $I_t = {a_{t'}, \forall t′ < t \And r_{t'} > 0}$ として定義する.
推薦アイテムは、様々な属性と関連付けられていることが多いので、これらの属性を用いて、action候補$a_t$の **$I_t$に対する類似性(または差異)を計測** する.
例えば，$I_t$に含まれるアイテムのいずれともtopicクラスタが異なる場合，**そのアイテム$a_t$はsurprising (different)である**と考える.

本論文で提案した乗法設計(multiplicative design)のreward shaping(式6)は、**relevance(関連性)**の考慮を自然に達成する.
既存の加法型(additive form)のreward shaping(式5)と比較して、式6は以下のような挙動になる.

- 1. extrinsic reward(従来の報酬関数)が0のaction候補$a_t$の場合(i.e. $R^e_t(s_t, a_t) = 0$)、surpriseであっても報酬のボーナスを受けない.
- extrinsic reward $R^e_t(s_t, a_t)$ が高いaction $a_t$は、同程度にsurpriseだがextrinsic rewardが低いアイテムに比べて、さらに多くのボーナス報酬を得る.

これは、extrinsic reward が intrinsic reward に影響を与えない加法的なデザイン(式5)とは対照的. (=一方で乗法型の場合は、$(c-1)* \text{extrinsic reward}$ がintrinsic rewardとなる...!)
つまり加法的デザインは、surprise条件だけを満たすactionに一律のボーナスを与えるようなアプローチになる.
一方で乗法的なデザインは、ユーザ体験の改善(=より高いextrinsic reward = **ユーザの嗜好との relevance**)に実際につながるような、且つ**surprise 条件**を満たすような action を探究できる.

### Actionable Representation for Exploration

3つ目の方法は、新たに発見されたユーザの興味を**表現学習(representation learning)**によって補強するようなアプローチ.
多くの機械学習アルゴリズムのサンプル効率を向上させるためには、**効果的な表現を学習することが重要**であり、RLも例外ではない.
RLのための表現学習に関する先行研究のほとんどは、生成的なアプローチに焦点を当てており、観測空間(observation space)の変動のすべての根本的な要因を、より分離された、あるいは、よく秩序だった方法で捉える表現を学習している.
また、環境のDynamics(state $s_t$ とactin $a_t$が与えられた時に、環境がどのように 次のstate $s_{t+1}$ と reward $r_t$ を返すか?の設定)を完全に捉えるための自己教師付き学習[20, 25, 50, 54]も最近注目されている.
一方でGhoshら[参考文献 16]は、機能的に顕著な表現(functionally salient representations)を学習することを主張している：観察空間における変動の全ての要因を捕らえるという点では必ずしも完全ではなく、むしろ**意思決定にとって重要な、つまり "action可能な(actionableな)"**変動の要因を捕らえることを目指した表現である.

REINFORCEエージェントは、ユーザの過去の活動$H_t$を符号化することで、環境、つまりユーザを記述する($u_{st} = RNN_{\theta}(H_t)$).
ユーザが(エージェントにとって) surprise なアイテムとinteractし、高い報酬を得た(i.e. relevanceが高い!)場合、user state $u_{s_t}$は、エージェントが次に異なるactionを取れるように、新しい情報を捕らえるために更新されるべき.
つまり、**ユーザの新しい興味(surprise & relevanceなアイテム)に関する新しく得た情報に従って(=積極的に活用して?)、推薦を行う**ことである.
エージェントがそのuser state にこの情報(=直近で取得したsurprise & relevanceなアイテムの情報)を取り込むのを助ける為に、本論文では、**"ユーザがinteractionするアイテムがsurprise & relevanceを満たすか否かの情報"を historical event $H_t$に追加**する.
すなわち、historical eventを $H_{t} ={(A_0, a_0, r_0, i_0), \cdots, (A_{t-1}, a_{t-1}, r_{t-1}, i_{t-1})}$ と拡張する.
ここで以下の条件を満たす場合に$i_{t′}=1$となり、その他のケースは$i_{t'}=0$とする.

- 1. $a_t$の属性(ex. トピッククラスタ)が $I_{t′}$内のどのアイテムとも異なる場合(=**being a surprice**)
- 2. $r_t > 0$ (=**being relevant**)

ここで、$I_{t′}$ は、時刻$t'$までにユーザがinteractionしたアイテムのリスト.
この特徴は、その後、RNNによって、アイテムを説明する他の特徴とともに埋め込まれ、消費される.

## どうやって有効だと検証した?

### 推薦品質のmetricsの設計F

現代の推薦システムの基礎となっているPersonalizationは、ユーザの過去の行動履歴をもとに、ターゲットを絞った正確な推薦を行うことを目的としている.
しかし、**精度(accuracy)を重視するあまり、限られたコンテンツにしかアクセスできなくなる危険性がある**.
これは、**短期的にはユーザの注目を集めることができても、長期的にはユーザ体験を損なう可能性がある**.
このように，推薦の品質に対するユーザの認識を形成する要因として，**精度以外の要素(factors other than accuracy)** を検討する研究が増えてきている.
特に，推薦のdiversity(多様性), novelty(新規性), serendipity等の側面が研究されている.
本論文では，RLベースの推薦システムにおいて，これら**4つの側面**を測定するためのmetricsを設計し、オフライン & オンライン実験にて採用する.
設計したmetricsは，推薦品質の4要素を定量化した多くの先行研究と類似している.

#### Attributes 属性

まず、前述した式(6)のsurprice factor と 後述するmetrics を定義するために使用される2つのアイテム属性を紹介する.

まずはTopic cluster. 各アイテムのTopic Cluster は次のようにして作成される.

- 1. アイテム共起行列(co-occurrence matrix)(entry(i, j)は、アイテム i と j が同じユーザによって連続的に操作された回数を数える)を取得.
- 2. 行列分解を行って**各アイテムの埋め込みを生成**(アイテム\*アイテムの行列分解をするのか...!)
- 3. k-means を使って学習した埋め込みを 10K クラスタにまとめる.
- 4. 最も近い Cluster を各アイテムに割り当てる.

２つ目は Content provider. 作成方法は単にアイテムに紐づいてる.
Content provider は、次のような理由から注目される属性である.

- 同じ provider によって作られたコンテンツ間の一貫性が観察された.(ex. 料理ブロガーは特定の料理について書くことが多い, etc.)
- 著者達は、content-providerの多様性/新規性 [37, 64] が長期的なユーザ体験にどの程度重要な影響を与えるのか?を理解することに興味がある.

#### Accuracy 精度

推薦の最も重要な特性は、ユーザが消費することに興味があるコンテンツを検索できることであると言える.
そこで、推薦アイテム集合 $A_{\pi_{\theta}}$ のK = 50におけるmean average precision at K=50(mAP@50) を計算し、精度、すなわち$A_{\pi_{\theta}}$の中からユーザが消費したいと思うアイテムを特定できる平均精度を計測する.

#### Diversity 多様性

Diversityは、推薦セットが含む異なるfaucets(蛇口?)の数を測定する.
セットの多様性の測定は多く提案されているが、その中でも，**集合に含まれるすべてのペアの平均非類似度(average dissimilarity)**はよく選ばれている.
(dissimilarity = 1 - 正規化(min=0, max=1にスケーリング)したsimillarity みたいなイメージ.)

$$
\text{Diversity}(A^{\pi_{\theta}})
= E_{s \in d^{\beta}}[1 - \frac{1}{|A^{\pi_{\theta}}|(|A^{\pi_{\theta}}| -1)}
\sum_{i, j \in A^{\pi_{\theta}}} \text{sim}(i,j)
]
\tag{7}
$$

2つのアイテムiとjの間の類似度を topic cluster level と content provoder levelの両方で定義する.
すなわち、iとjが同じ topic cluster に属する場合は $Sim(i, j) = 1$、そうでない場合は0とする. content provoder levelについても同様.

#### Novelty 新規性

**Novelty(新規性)とセレンディピティという2つの用語は、文献上では互換的に用いられている**.(へぇー！)
本論文ｄでは、グローバルな人気に基づく測定に焦点を当てるためにNoveltyを使用し、unexpectedness(意外性)を捉えるためにセレンディピティを使用している.

$$
I(a) = - \log p(a)
= - \log \frac{\text{# user consumed item a}}{\text{# users}}
\\
= - \log (\text{# users consumeed item a}) + \text{const}
\tag{8}
$$

ここで、 $p(a)$ は**ランダムなユーザがアイテムaを消費する確率**を表す.
定義によれば、グローバルに"探索されていない"("under-explored"な)アイテム(tail content = long-tailアイテムの事か!)は、**より高いself-information**(自己情報??)$I(a)$を持つことになる.
上記のアイテムレベルのself-information $I(a)$ の定義により、学習されたポリシー $\pi_{\theta}$ の Novelty を次のように測定できる:

$$
\text{Novelty}(\pi_{\theta})
= E_{s_t \in d_t^{\beta}}[\sum_{a \in A} \pi_{\theta}(a|s_t) I(a)]
\tag{9}
$$

**self-informantionの高いアイテムにより多くの質量(=そのアイテムを選ぶ確率質量?)を投じ**、"開拓されていない"アイテムを推薦できる学習済みポリシー$\pi_{\theta}$は、よりNoveltyが高いと判断される.
属性についても、content-providerの人気度など、**属性のself-informationを代わりに見る**ことで、同様にNoveltyの指標を定義できる.

#### Serendipity

セレンディピティは、特定のユーザに対する推薦の**unexpectedness(surprise)** を表現するもの.
推薦システムが、ユーザの通常の関心事以外の関連コンテンツを推薦する能力を測るものである.
ここでは、2つの重要な要素がある. (上述した intrinsic rewardの条件と同じ)

- 1. unexpectedness/surprise：反例として、ビートルズのリスナーにジョン・レノンを推薦しても、surpriseな推薦にはならない.
- 2. relevance：surprise なコンテンツは、ユーザにとって興味があるものでなければならない.

つまり、 Serendipity とは、**推薦者がユーザの(推薦者にとっての)未知の興味を発見する能力を測定するもの**である.

本論文では、"$I_t$の interaction history を持つユーザに対して、アイテム$a_t$ を推薦する事"の serendipity 値を以下のように定義する:

$$
S^{topic}(a_t|s_t, I_t) = \begin{cases}
  1, & \text{hoge} \\
  0, & \text{otherwise}
\end{cases}
\tag{10}
$$

(ここでも同様に、content-providerレベルの Serendipity 値を定義することもできる.)
あるアイテム $a_t$ の Serendipity 値が定義されると、推薦アイテム集合 $A_{\pi_{\theta}}$ の Serendipity は以下のように定量化される:

```math
\text{Serendipity}(A^{\pi_{\theta}})
= E_{s_t \in d^{\beta}_t}
[\frac{1}{|A^{\pi_{\theta}}|} \sum_{a \in A^{\pi}} S^{topic}(a_t|s_t, H_t)]
\tag{11}
```

### 長期的なユーザ体験の改善度合いのmetrics:

過去の研究では、調査やインタビューを通じて、長期的なユーザ体験に向けたこれらの推薦品質の間の関連性が示唆されている.
本論文では、長期的なユーザ経験の改善の全体的な測定として，以下の２つを使用し，これらのmetricsと長期的なユーザ経験の間の関係を仮定した上で、RLの探索がユーザ体験に与える影響の評価を試みている.

- ユーザがプラットフォームに戻ること
- ユーザがプラットフォーム上で低活動バケットから高活動バケットに移動すること

### オフライン実験

提案した３つの探索アプローチを比較するために、オフライン実験を実施した.
ベースライン REINFORCE レコメンダー上に上述した探索アプローチを構築した.
**異なるハイパーパラメータの設定と異なる探索方法の間でmetricsの動きを比較**した.

#### 結果1: Entropy Regularization が探索に与える影響

ベースラインのREINFORCEエージェントと、正則化係数$\alpha$を[0.1, 0.5, 1.0, 10.0]としたエントロピー正則化項を目的関数に加えた方法を比較した.

![](https://camo.qiitausercontent.com/6fe16dd55daded5dcb008d9f03eec043fc996fac/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f313639373237392f62303437633135342d643430332d613366332d383461332d3336346136306462613537362e706e67)

表1に示すように、**エントロピー正則化は、精度の低下を代償に、システムに多様性と新規性を導入する非常に効率的な方法**である.
また、**正則化の強度が大きいと、relevanceが失われるため、ユーザにセレンディピティなコンテンツを紹介するシステムの能力が大きく低下する**.
例えば、正則化の強さをα=1.0とすると、topic serendipity の値は-21.6%（0.037→0.029）低下する.

#### 結果2: Intrinsic Motivation (Intrinsic reward の追加) が探索に与える影響

まず、**どの属性で"surprise"を定義するか**について.
トピッククラスタ(表2では"topic"と表記)とコンテンツプロバイダー(表2では"provider"と表記)によって"surprise"を定義する実験を行った.

第二に、**"surprise"を定義するために使用するユーザの履歴イベントの長さ**について.
ユーザのコンテンツの"surprise"に対する認識は，時間の経過とともに漂うことがある.
**また，過去にinteractionを行ったが，長い間サービスやインタラクションを行っていないコンテンツは，再び登場したときに"surprise"と感じることがある**.
そこで，**過去1日，1週間，1年（表2においてそれぞれd=1，d=7，d=365と表記）にユーザが接触したすべてのアイテムを$I_t$に含ませて実験した.**

![](https://camo.qiitausercontent.com/bf5773c26908dea829116427e7069049fbfac613/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f313639373237392f63623561633531372d363337302d373831612d366532632d3864353637366235353235302e706e67)

表2は、intrinsic motivation アプローチの 異なるバリエーション間の比較をまとめたもの.
**エントロピー正則化と同様に、すべてのバリエーションは精度を下げる代償にDiversityを向上させる**.
この方法は、アイテムレベルでもコンテンツプロバイダレベルでも、新規性の指標を大きく変えることはない.
したがって，**tailコンテンツは必ずしも人気コンテンツよりもセレンディピティ(i.e. relevantとsurprise)が高いとは言えないと結論づけることができる**.(まあなー...)
しかし，これらの手法の全体的な精度はベースラインと比較して劣るものの，セレンディピティ metrics には大きな改善が見られる.

例えば、トピッククラスタと7日間の履歴ウィンドウサイズを使用するバリエーションは、mAP@50で測定された全体的な精度が-13.7% (0.070 → 0.063) 減少しても、セレンディピティのレベルが+18.9% (0.037 → 0.044) 改善されている.

##### surpriseを定義する属性についての比較結果.

オフライン分析では、トピッククラスタとコンテンツプロバイダに基づく驚きの定義の両方が、セレンディピティを向上させる上で**等しく有効**であることが示された.
トピッククラスタの定義は、オフラインでのトピックセレンディピティの指標を0.037から0.044へ+18.9%改善し、コンテンツプロバイダーの定義は、コンテンツプロバイダセレンディピティを0.078から0.087へ+11.5%改善することが示された.
しかし後述するライブ実験では、ユーザメトリクスのパフォーマンスが非常に異なっており、**全体的なユーザ体験を最適化する上で、一方の角度（トピックセレンディピティ）が他方（コンテンツプロバイダセレンディピティ）よりも重要であること**が示唆されている.

##### window size("surprise"を定義するために使用するユーザの履歴イベントの長さ)に関する実験結果.

"surprise"を定義するために使用する履歴ウィンドウを拡張すると、つまり、より長いユーザ履歴を含むようにすると、**"surprise"の定義がより厳しくなる**.

#### 結果3: Actionable Representation が探索に与える影響

この実験では、以下の4つのセットアップを比較した:

- 1. ベースライン REINFORCE アルゴリズム:
- 2. repre. alone:
  - ベースライン REINFORCE に Actionable Representation を適用させたもの.
  - すなわち、ユーザの過去のinteraction history $I_t$ に従って状態 $s_t$ でアイテムがセレンディピティ(surprise & relevant)であるかどうかを示す追加ビットを、軌跡に加えたもの.
- 3. intrinsic alone:
  - ベースラインREINFORCEに対して、intrinsic motivationに基づく reward shapingを加えたもの.
- 4. repre. + intrinsic:
  - ベースライン REINFORCE に intrinsic motivation と Actionable Representation の**両方**を適用させたもの.

![](https://camo.qiitausercontent.com/8e74c74511586da48d8c8f338fa978bfdbfcc231/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f313639373237392f31653132373361332d623232322d663538322d623964332d6435326461646163313765382e706e67)

表3に示すように、Actionable Representation を単独で追加した場合(2行目)と、Actionable Representation を intrinsic motivation とともに追加した場合(4行目)では、非常に異なるmetricsとなった.
reward shaping無しで Actionable Representation を単独で追加すると、ベースライン手法と非常に似たパフォーマンスを示し、**reward shapingと組み合わせた場合にActionable Representation がより有用である**ことが示唆された.
セレンディピティ値は、(4)と(1)を比較すると+24.3% (0.037 → 0.046) 、(3)を比較すると+4.5% (0.044 → 0.046) の向上が見られた.
このことから、セレンディピティ行動(i.e. これまで知られていなかったユーザの興味を発見する行動に対して高い報酬を与える事)がintrinsic motivationによって考慮されている場合に、追加した Actionable Representation が意思決定に有用であることが示唆された.

![](https://camo.qiitausercontent.com/2045b024bbdfdea69a1a1b07abb37a389add5f02/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f313639373237392f38376561623331362d663633632d316637392d343664622d3964643439393937623161362e706e67)

「Actionable Representation(historical eventが提供されたときにsurpriseか否かを示す追加のビット)をエージェントがどのように利用するのか?」をより深く理解するために、
ベースラインREINFORCEアルゴリズムの学習を、**intrinsic motivationのみ(図1のオレンジで示す)と、intrinsic motivationとactionable representationの両方を組み合わせたもの（図1のシアン色で示す）とを比較**してみる.
学習終了時、"surprising"と"relevant"のあるevent(i.e. セレンディピティ的なevent)（左図）に対する平均活性度は、intrinsic motivation だけの場合0.1741であるのに対し、 intrinsic motivation ＋ actionable representation では0.1765（+1.4%）になっている.
一方、セレンディピティではない事象（右）に対する活性化の平均値は、 intrinsic motivation ＋ actionable representation では0.1409（-11.2%）となり、 intrinsic motivation のみの場合の0.1586と比較して低くなっている.
これにより、RNNが extrinsic reward だけに頼っていても、**historical eventが surprising だと思われる場合には、これら2つのグループの違いを認識し、やや大きな更新を行うことができる**ことを示唆している.
Adding the feature helps RNN differentiate the two groups better.
特徴を加えることで、RNNが2つのグループをよりよく区別することができる.

### オンライン実験

提案する探索アプローチの影響を評価するために、数十億のユーザーにサービスを提供する産業推薦プラットフォーム上(=youtube??)で一連のライブA/Bテストを実施した.

我々は以下の3つの別々の実験を行った.

- 1. エントロピー正則化：セクション4.1で説明したように、エントロピー正則化でREINFORCEエージェントを提供する.
- 2. Intrinsic motivation ：セクション4.2で説明したように、新しいユーザーの興味を発見するための本質的動機づけ（7日の履歴ウィンドウとセレンディピティ・ブーストc = 4でトピッククラスタ属性を使用）をREINFORCEエージェントに与える.
- 3. Intrinsic motivation + Actionable Representation：セクション4.3で紹介したように、 Intrinsic motivation と Actionable Representation 両方でREINFORCEエージェントへ与える.

1と2は、エントロピー正則化と Intrinsic motivation の効果を測定する為にベースラインREINFORCEシステムと比較し、3は、Intrinsic motivation の上にActionable Representation を導入することによる付加価値を測定するために、controlとして2と比較した.

#### 結果:

![](https://camo.qiitausercontent.com/270f8b53ce0eb828c7741cf7c8a2b9de501ee345/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f313639373237392f63656632643165382d313262312d303730652d373832312d3239636465376235363138392e706e67)

図3は、**ユーザのプラットフォームに対する総合的な楽しさを表す top-line metric** における、これらの探索アプローチのパフォーマンスをまとめたものである.
図3a（赤がα=0.1、青がα=0.5）に示すように、**エントロピー正則化はオフラインとライブの両方の実験で多様性と新規性を高めるが、ユーザの楽しみを大きく改善することにはつながらない.**
つまり、**多様性や新規性の向上だけでは、必ずしもユーザ体験の向上につながらないのである**.

もうひとつの重要な指標は、**ユーザがプラットフォームを再び利用する日数**である.
これは、推薦の質が向上することで、ユーザがプラットフォームに戻ってくるようになることを示唆している.

![](https://camo.qiitausercontent.com/a7d13488ea4fad93a4a13f3d6af463ada6a85315/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f313639373237392f64363830343138382d323736322d656166642d663266392d6538353238343734623261372e706e67)

図2は、Intrinsic motivationを用いたREINFORCE(control群)と比較して、actionable representationの実験(treatment群)におけるユーザの再訪率の向上を示しており、**セレンディピティ情報を用いて表現学習を支援することで、学習したポリシーがさらに向上し、全体としてより良いユーザ体験につながっている**ことが示唆される. (オンライン実験3の結果!)

## 議論はある？

RLの探索が長期的なユーザ体験改善に与える影響の話.

### Intrinsic Motivationの学習効果.

長期間における intrinsic motivation と reward shaping の効果をよりよく理解するために、我々は、上記で報告された集約された aggregated metrics に加えて、live metrics(オンラインで観測するようなmetrics?)の時間的傾向を調べる.
intrinsic motivation に関する 6 週間の実験では、各週のユーザ活動を集計して、前週比のmetricsを調べる.
具体的には、**ユーザが1週間にわたって交流したユニークなトピッククラスタの数**と、**それらのトピッククラスタのエントロピー(=乱雑さの度合い?)の追跡**を行う.
ユーザがトピッククラスタ $i$ から $N_i$ 個のアイテムと相互作用したとすると、その履歴のエントロピーは $- \sum_{i} \hat{p}_{i} \log (\hat{p}_i)$ と計算される. ここで $\hat{p}_i = \frac{N_i}{\sum_{i} N_i}$ はトピッククラスタ $i$ から相互作用したアイテムの割合である.

![](https://camo.qiitausercontent.com/94b7e22457d293a7ca2b5a889596bb24432be4ed/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f313639373237392f66653763373339322d303633632d316331612d333066332d6239646535373039643764392e706e67)

図4は、式(6)のように、未知のユーザの興味に対してブースティング乗数 $c$ を4とした場合の、control群とtreatment群の比較を示している.
reward shaping を行わない control群のユーザに比べ、**treatment群のユーザは実験期間全体を通して一貫して、より多くのトピッククラスタと交流し（図4a）、クラスタ分布に対するより高いエントロピーを生成している（図4c）**.
さらに興味深いことに、control群に対する(=比較した)改善量は時間とともに増加している(図4b、図4d).
これは、**探索による経時的な学習効果により、ユーザが継続的に新しいトピックを見つけ、それに関わることができるようになったこと**を示唆している.

### ユーザの活動レベルの変化

推薦プラットフォームにやってくるユーザーは、活動レベルの点で異なる.
たまに訪れるユーザもいれば、定期的かつコンスタントに訪れるユーザーもいる.
推薦プラットフォームの長期的な目標は、**現在のセッションでユーザのニーズを満たすだけでなく、将来的にユーザがより頻繁に推薦プラットフォームを訪れるようになること**が理想的である.
**レコメンデーションに探索を加えることで、ユーザのアクティビティレベルを動かす効果があるかどうか**を確認した.

![](https://camo.qiitausercontent.com/19523141f52b5839ccc4767f573fab299a230860/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f313639373237392f66396539666564342d643764352d663464302d633563652d6134666531616365366337642e706e67)

図5aに示すように、**2週間のうち何日プラットフォーム上で活動しているかという観点から、4つのユーザ活動レベルを定義**している.
例えば、カジュアルなユーザとは、過去14日間のうち1～4日間アクティブであったことを意味する.
ユーザは、プラットフォームでの経験や、レコメンデーションではコントロールできない外的要因によって、よりアクティブになったり、よりアクティブでなくなったりすることがある.
この conversion を測定する直感的な方法は、**カジュアルユーザからコアユーザ になったユーザの数を数えること**である.
これは、異なるユーザーの活動レベル間の移動を測定する、**ユーザの活動レベル遷移行列(user activity level transition matrix)**で実現できる.

実験開始日前と実験終了時のユーザの活動量をtreatment群ごとに調べて遷移行列を計算し、control群と比較する.
図5bは、アクショナブル表現処理グループ(treatment群の一つ )とcontrolの遷移行列 の**差の割合**である.
カジュアルからコアへの変換率が大きく上昇していることがわかる.
これは、**探索戦略が成功すると、あまりアクティブでないユーザがプラットフォーム上でより熱心になるため、望ましいユーザの動きになることを示唆している**.

## 次に読むべき論文は?

- 推薦タスクをMarkov 決定過程 (MDP) として定式化し、RLアプローチを適用した最初の論文らしい?[An MDP-Based Recommender System](https://www.jmlr.org/papers/volume6/shani05a/shani05a.pdf)
- DQN をニュース推薦に応用した論文 [DRN: A Deep Reinforcement Learning Framework for News Recommendation](https://dl.acm.org/doi/pdf/10.1145/3178876.3185994)

## お気持ち実装

今週も余力なかったです...!(機会があれば今度...!)