Pinterestにおける機械学習システムの性能改善論文:『Shop The Look: Building a Large Scale Visual Shopping System at Pinterest』

概要

KDD 2020 Applied Data Science Track Paper の以下の論文を読んだ。

Shop The Look: Building a Large Scale Visual Shopping System at Pinterest

Applied Data Science Trackは実際に使われている機械学習システムの話が多く、読んでいてためになる。
PinteresにおけるShop The Lookというシステムの性能を改善していった記録。機械学習システムを実運用する際の、泥臭い多方面からの改善が書かれていて面白かった。

このシステムは、写真を入力として、その写真に写っている家具や洋服などを選択すると、そのオブジェクトをキーとして画像検索して類似商品を検索購入できる。

機械学習システムのパイプラインは以下の通り、オブジェクト認識・バウンディングボックス抽出・画像をベクトル化して類似商品の検索という流れになっている。

性能を向上するために

基本的に精度を上げるために行ったことは、データを増やす、高性能なモデルを使う、システム的な方面から改善する、といった観点が書かれており、それぞれ改善によりどれほど精度が増していったかが書かれており、地道な努力の積み重ねが重要だとわかる。

データを増やすという点では、既存の画像(ラベリングの品質は低いかもしれない)をトレーニングデータとして活用するようにして、特定ジャンルの精度を高めている。

システム的な改善では、選択されたオブジェクトに対して全データから類似商品を検索すると関係ない画像まで取ってきてしまうことが多かったため、まず選択されたオブジェクトのカテゴリを予測してから、そのカテゴリから類似画像を検索するようにしている。 単純でリーズナブルな考え方であるが、確かに性能向上に寄与している。

Lessons Learned

最後にLessons Learnedという賞が用意されており、そこではLabel subjectivity is challengingとImpact comes from diverse areasの2点が強調されている。

ラベリングについては、データのラベリングを改善したことも非常に大きな影響を与えていることが書かれており、共通の認識を持ったin-house labeling teamが居ることが重要だと述べている(Amazonのメカニカルタークでやってみたところ一貫性が取れなかったらしい)。この辺りの重要性は結構認識されてきていると思う。特にエッジケースをチーム内で共有しないとラベルに一貫性がなくなりやすいので、エッジケースはlabelerのトレーニングガイドに盛り込まれるようになっているらしい。

“Impact comes from diverse areas”とはつまり、何か単一のことをやれば十分な性能が出るということはなく、このシステムではデータセットの改善、モデルの改善、システムインフラ面の改善など様々な改善ポイントがあるということで、確かに機械学習システムの実運用を行っているとモデル改善以外にも山ほどやるべきことがあるのがわかる。

所感

やるべきことをキチンとやって精度を地道に上げていっており、非常にためになった。特にラベリングの重要性に言及されているところは、実際にシステムを運用してみて、自分たちでラベル付けも行ってみているからこそ大変さがわかっているのだと感じた。ほかにも類似の論文を読んでみようと思う。