前回の続きで、KDD2023の読んだ論文に対する感想をつらつら書いていく。
Alibaba のリランキングにおける accuracy と diversity の両立に関する論文。ユーザーが上から順にアイテムフィードを見ていくような場面で、それまで見たアイテムを考慮して次に提示するアイテムを決めるような文脈を考えている。
既存のDeterminantal point process (DPP) という手法をベースに、ユーザー $u$ に推薦するアイテムの集合 $S$ を、$h(u, S) = \sum_{i\in S}g(u,i|S) + \alpha \log\mathrm{det}(D^u_S)$ を最大化するものとして選ぶとしている。$g(u,i|S)$ がユーザー $u$ のアイテム $i$ に対する選好度で、$D^u_S$ が $S$ に含まれるアイテムの、ユーザー $u$ への推薦という文脈を考慮した類似度行列。類似度がユーザー依存性を持っているのがポイントで、多様性を考慮する重要度をユーザーに応じて変えられるのが良いらしい。こういう定式化があるのかと勉強になった。
これも Alibaba の論文で、multi-objective の各目的関数間の相対的な重みの変更に強いランキングアルゴリズムを作ろうという提案。セールや季節性などの影響で、時々重みを変えたくなるが、毎回それに適したモデルをスクラッチで学習させるのはコストが高いというのが背景にある。正しく読めているか怪しいが、大雑把にいうとモデルの最後の数層(MLPなど)のパラメータを生成する hypernetwork を別に用意し、それ以外のパラメータは固定の上で、multi-objective の重みが変わったらこの数層だけを取り替えるというような提案をしている。
ランキング能力の最適化と、calibration を同時に実現する方法の提案。通常二値分類の logit は一次元だが、これを二次元に拡張し (positive probability, negative probability) 両方に対して用意する。ロスが二値分類の cross entropy のみであれば、この差しか学習できいが、ranking loss を追加することで両方学習できるようにしている。理論的には energy based model とみなせるとも書いてあって面白かったが、実質的には普通の listwise loss に比べて負例同士の比較部分にしか差がなさそうで、そんなに既存手法と変わるのだろうかという疑問がある。
あとこれは自分が知識不足なだけだが、線形でない複雑なモデルの場合も cross entropy で学習させれば必ず calibration されるのだっけ。Negative downsampling とかをせずデータセットの正例・負例のバランスを壊さなければ良いのだろうか。
Google のレコメンドに関する論文で、interaction の少ないアイテムの推薦を増やしてカバレッジを増やしつつ、エンゲージメントも落としたくないというのがモチベーション。通常の推薦枠の一つを fresh content 用の枠に置き換えて新規アイテムのデータを取得しているらしい。またこの枠の推薦では、アイテムIDなどは使わずできるだけ汎化しやすい特徴量のみを利用し、fresh content のデータの溜まり具合に応じて使うモデルを変えたりしているらしい。なんとなく全体的に要領を得ないというか、ポイントが絞られていない論文だった。
これも Google の論文で、long-tail アイテムの推薦を改善する手法を提案している。普通の協調フィルタリング的手法では tail のアイテムの評価が悪く、かといって既存手法に倣って全データで学習したあと、tail のアイテム中心のデータで再学習するなどすると head のアイテムの性能が落ちる(最初の学習内容の忘却が起こる)。そこで、head アイテムの性能を維持しつつ tail でも良い性能を得るため、アイテム特徴量の分離と tail アイテムデータセットによる正則化を導入した。特徴量の分離というのは、アイテムIDのような暗記が中心の埋め込みと、カテゴリIDのように複数アイテム間で汎化させることが目的の埋め込みを別に集約し、アイテムの frequency に応じたゲートに通して足し合わせるというもの。なかなか面白かった。
ByteDance の推薦におけるバイアス除去に関する論文。動画推薦では、短い動画の方が視聴完了率が高い = positive feedback が得やすいため、推薦にも表示されやくすなってしまう(duration bias が強い)。そこで、動画を見終わったかどうかでなく、何割まで見たかという閾値を定義して二クラスに分けるようにしたとのこと。分け方は、クラス内分散を小さく、クラス間分散を大きくなるように決めている。また DAG に基づいた因果推論をして、total indirect effect を計算し推薦に用いている。