バッチ内対照学習は、ミニバッチ内で異なるインスタンスを遠ざけながら、意味的に類似したインスタンスを近づける最先端の自己教師あり手法です。成功の鍵は、すべてのインスタンスがミニバッチ内の他のインスタンスのネガティブとして機能するネガティブ共有戦略です。最近の研究は、現在のミニバッチ内でハード ネガをサンプリングすることでパフォーマンスを向上させることを目的としていますが、その品質はミニバッチ自体によって制限されています。この研究では、入力データからミニバッチをサンプリングすることで対照学習を改善することを提案します。 BatchSampler を紹介します。コードは https://github.com/THUDM/BatchSampler で入手でき、区別が難しい (つまり、互いに厳しい陰性と真陰性の) インスタンスのミニバッチをサンプリングします。各ミニバッチの偽陰性を少なくするために、ランダムに選択されたインスタンスの近接グラフを設計します。ミニバッチを形成するには、近接グラフ上で再起動を伴うランダム ウォークを利用して、区別しにくいインスタンスをサンプリングします。 BatchSampler は、視覚、言語、グラフの既存の対照学習モデルに直接組み込むことができる、シンプルで一般的な手法です。 3 つのモダリティのデータセットに対する広範な実験により、ImageNet-100 上の SimCLR、STS (言語) 上の SimCSE、グラフ データセット上の GraphCL および MVGRL の大幅な改善によって示されるように、BatchSampler が強力な対照モデルのパフォーマンスを一貫して向上できることが示されました。
In-Batch contrastive learning is a state-of-the-art self-supervised method that brings semantically-similar instances close while pushing dissimilar instances apart within a mini-batch. Its key to success is the negative sharing strategy, in which every instance serves as a negative for the others within the mini-batch. Recent studies aim to improve performance by sampling hard negatives within the current mini-batch, whose quality is bounded by the mini-batch itself. In this work, we propose to improve contrastive learning by sampling mini-batches from the input data. We present BatchSamplerThe code is available at https://github.com/THUDM/BatchSampler to sample mini-batches of hard-to-distinguish (i.e., hard and true negatives to each other) instances. To make each mini-batch have fewer false negatives, we design the proximity graph of randomly-selected instances. To form the mini-batch, we leverage random walk with restart on the proximity graph to help sample hard-to-distinguish instances. BatchSampler is a simple and general technique that can be directly plugged into existing contrastive learning models in vision, language, and graphs. Extensive experiments on datasets of three modalities show that BatchSampler can consistently improve the performance of powerful contrastive models, as shown by significant improvements of SimCLR on ImageNet-100, SimCSE on STS (language), and GraphCL and MVGRL on graph datasets.