#論文リンク: https://arxiv.org/pdf/2105.10375.pdf
##アプリケーションとコード:
この問題を解決する最も直観的な方法は、クラスタリングを通じてより多くのグラフィックス カード リソースを消費することですが、それでも、大規模な ID での分類問題には次の問題が依然として残ります。
1) コストの問題: 分散トレーニング フレームワークに大量のデータがある場合、メモリのオーバーヘッド、マルチマシン通信、データの保存と読み込みにより多くのリソースが消費されます。
2) ロングテール問題: 実際のシナリオでは、データセットが数億の ID に達すると、ほとんどの ID の画像サンプルの数が非常に少なくなることがよくあります。データはロングテールで分散されるため、直接トレーニングではより良い結果を得るのが難しいことは明らかです。
この記事の残りの章では、超大規模分類フレームワークの既存のソリューションと、それに対応する低コスト分類フレームワーク FFC の原理とコツに焦点を当てます。
方法
この方法を紹介する前に、この記事ではまず現在の超大規模分類の主な課題を確認します。課題 1: コストは依然として高い
次に示すように、ID の数が増えるほど、分類器のメモリ要件も大きくなります。図:
ビデオ メモリが大きければ大きいほど、より多くのマシン カードが必要になり、コストも高くなります。マルチマシンに対応するハードウェア インフラストラクチャのコストは、コラボレーションも高くなります。同時に、分類 ID の数が非常に大きな規模に達すると、主要な計算量は分類器の最後の層で無駄になり、スケルトン ネットワークにかかる時間は無視できます。
課題 2: ロングテール学習の難しさ
実際のシナリオでは、数百人のうちの絶対多数がほとんどの ID の画像サンプルの数は非常に少なく、ロングテール データの分布が非常に明白であるため、直接トレーニングを収束させることが困難になります。同じ重みでトレーニングすると、ロングテール サンプルが圧倒され、学習が不十分になります。現時点では、不均衡なサンプルが使用されるのが一般的ですが、この研究テーマでは参考になる手法がたくさんありますが、シンプルな超大規模分類フレームワークに組み込むのに適した手法は何でしょうか?
上記の 2 つの課題について、まず、既存の実現可能なソリューションにはどのようなものがあるのか、そしてそれらが上記 2 つの課題をうまく解決できるかどうかを見てみましょう。
#実現可能な方法 1: 指標の学習
#実現可能な方法2: PFC フレームワーク
実現可能な方法 3: VFC フレームワーク
# #この論文の方法: FFC フレームワーク
#大規模分類のために FC を使用してトレーニングした場合の損失関数は次のとおりです:
しかし、FC は大きすぎます。直観的なアイデアは、クラス センターの特定の割合を合理的に選択することです。つまり、次のように Vj が 1 つの部分になります:
上記の動機により、次のような予備計画が生まれました。
まず、長期にわたる影響を解決するために、この記事では、ID に基づいた 2 つのローダーを紹介します。サンプリング id_loader とサンプル サンプリングに基づいた instance_loader の 2 つのローダーがあります。各エポックでは、サンプルが多いクラスとサンプルが少ない (ショットが少ない) クラスがトレーニングされる機会があります。
次に、トレーニングを開始する前に、サンプルの一部を ID グループに送信します (ここでは、ID サンプルの 10% がグループに入れられると仮定します)。このとき、ギャラリーはランダムなパラメータを使用します。
その後、トレーニングが開始されると、バッチ サンプルが 1 つずつプローブ ネットに入ります。各バッチのサンプルには 2 つの状況があります: 1.) グループ内にこのサンプルと同じ ID を持つフィーチャがある、2.) グループ内に類似サンプルのフィーチャがない。これら 2 つのケースについては、それぞれ既存の ID と新しい ID と呼びます。既存のサンプルの場合、特徴とグループ内の特徴を使用して内積を実行し、ラベルを使用してクロスエントロピー損失関数を計算して、それを返します。新鮮なサンプルの場合、グループ内のサンプルとのコサイン類似性を最小限に抑えます。
最後に、既存のクラス センターに重み付けする原則に基づいて、グループ内のフィーチャを更新し、新しいクラス センターに置き換えます。ギャラリー ネットの場合、移動平均戦略を使用してプローブ内のパラメーターを徐々に更新します。
本稿の手法:裏技紹介 ##1.) 導入するIDグループのサイズは調整可能です パラメータ、通常、デフォルトは 30,000 です。
#2.) 安定した学習を実現するために、moco クラスのメソッドを参照し、移動平均を導入します。対応する収束条件は次のとおりです。
#実験結果
1. ダブルローダーアブレーション実験
## 2. SOTA 手法の効果比較
#3. ビデオ メモリとサンプル スループットの比較
以上がDAMOアカデミーのオープンソース低コスト大規模分類フレームワークFFCの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。