wantedly / machine-learning-round-table

Gather around the table, and have a discussion to catch up the latest trend of machine learning 🤖
https://www.wantedly.com/projects/391912
306 stars 2 forks source link

[2022/04/28]Machine Learning 輪講 #141

Open nogawanogawa opened 2 years ago

nogawanogawa commented 2 years ago

Why

Machine Learning 輪講は最新の技術や論文を追うことで、エンジニアが「技術で解決できること」のレベルをあげていくことを目的にした会です。

prev. https://github.com/wantedly/machine-learning-round-table/issues/139

What

話したいことがある人はここにコメントしましょう! 面白いものを見つけた時点でとりあえず話すという宣言だけでもしましょう!

nogawanogawa commented 2 years ago

Related Pins at Pinterest: The Evolution of a Real-World Recommender System

論文URL

https://arxiv.org/abs/1702.07969

著者

David C. Liu, Stephanie Rogers, Raymond Shiau, Dmitry Kislyuk, Kevin C. Ma, Zhigang Zhong, Jenny Liu, Yushi Jing

会議

WWW '17

歴史的経緯

Pinterestでの推薦は下記のように推移してきた。

image

Candidate Generation

Candidate Generationは基本的にユーザーが作成したボードとピンのグラフに基づいて生成される。 ここでは様々な方法によってCandidate Generationが行われている。

ボードの共起

現在はPixieと呼ばれるランダムウォークによってCandidate Generationされている。 これはPinとボードの二部グラフを使用し、関連性の低いピンを除去した後、ランダムウォークによってユーザー固有のPageRankを算出する。

これによって、Pinから数ステップ離れたボードについても検索することができ、希少なピンが推薦される範囲を拡大できる。

image

セッションの共起

同じセッション内で保存したPinの系列をword2vecと同様の方法で、Pin2Vecとして学習することで、同一セッションで保存されたPin間の距離を最小化するように学習したEmbeddingを使用している。

image

候補の補充

先に挙げた方法とは並行して、Cold start問題や推薦の多様性確保に対応するために候補の補充を行った。

セグメントによるフィルタリングした候補の追加

Pinterestが国際化したことによって、localeごとにPinの付き方が大きく異なっていた。 そこで、Boardの共起の結果から、localeが合致したPinのみを取得するようにFilteringを行っている。

Memboost

Memboostは、過去にあったクエリとなるPinと結果のペアを記録しておいてそれを使用する。 ログデータには強いポジションバイアスがかかるので、ログデータをそのまま使用することはできない。

image

そこで、位置に関するクリックの期待値に対して、実際にクリックされたかを使用し、最終的にこのスコアを使用してソートする。

image

Ranking

長らくCandidate GenerationとMemboostだけでRelated Pinの推薦を行ってきたが、その後Rankingモデルを導入した。 Memboostのスコアに加えて、Pinのデータや、後にユーザーに関する情報(最新のクエリなど)をFeature Extractorによって特徴量化され、それらをモデルのインプットとしている。

image
  1. Memboost学習データ、関連性ペアラベル、ペアワイズロス、線形
  2. 個別のRelated pinのセッションに移行
      1. で使用するMemboostは、ユーザーを集約して得られる値のため、本質的なパーソナライズは難しい
    • またpopulation biasがかかることもわかっていた
    • そこで個別のRelated pinの情報を使用するように移行
  3. RankNet GBDT モデルへ移行
    • 線形モデルではスコアが線形に縛られるため表現が難しかった
    • RankNet GBDTを使用
  4. ポイントワイズ分類損失、バイナリラベル、ロジスティックGBDTモデルへ移行
    • 本来保存というアクションが重要なのに、クリック等が強く反映されることを懸念した
    • 合わせてポイントワイズに移行

memo

https://github.com/nogawanogawa/paper_memo/issues/45

zerebom commented 2 years ago

Learning Transferable Visual Models From Natural Language Supervision

モチベーション

画像にアノテーションをつけるのはとんでも無くコストがかかるので、未加工の画像・文章(=labelなしデータ)から直接学習したい。

弱教師学習手法あるが、静的なソフトマックスを使っていて、出力の柔軟性を欠く。ゼロショットの能力を制限する。従来手法が精度が低いのは、学習データセットが小さいことが要因。 →ネットから画像, テキストを集めて4億組のデータセットで構築した。

利用データ

学習

(画像、テキスト)ペアをN個与え、N*Nのうち、どれがマッチングするかを予測する。画像enc, text encを同時に訓練し、正解ペアの画像とtextのembの cos simを最大化・不正解なペアのembのcos simを最小化させる。

推論(Zero-shot画像分類)

プロンプトと画像を与え、正解を埋めてもらう。

参考