著者:
(1)サスン・ハンバルズミアン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(2)アビナブ・トゥリ、アクティブループ、カリフォルニア州マウンテンビュー、米国
(3)レヴォン・グカシアン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(4)ファリズ・ラーマン、アクティブループ、カリフォルニア州マウンテンビュー、米国。
(5)Hrant Topchyan、Activeloop、カリフォルニア州マウンテンビュー、米国
(6)デビッド・イサヤン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(7)マーク・マククエイド、アクティブループ、カリフォルニア州マウンテンビュー、米国
(8)ミカエル・ハルティニャン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(9)Tatevik Hakobyan、Activeloop、カリフォルニア州マウンテンビュー、米国
(10)イヴォ・ストラニック、アクティブループ、カリフォルニア州マウンテンビュー、米国
(11)Davit Buniatyan、Activeloop、カリフォルニア州マウンテンビュー、米国。
このセクションでは、フォーマットへの取り込みから大規模なトレーニングまで、他のデータローダーやフォーマットと比較した Deep Lake の大規模なパフォーマンスを実験的に実証します。さまざまなストレージ バックエンドからのストリーミング データセットを比較し、クラウドでのトレーニング中のパフォーマンスの向上とスケーラビリティを紹介します。
FFHQ [43]データセットからの10,000枚の画像が圧縮されず、NumPy形式で保存されました。各1024x1024x3の生画像は3MBの配列です。次に、図6に示すように、画像を各形式にシリアルに書き込みました。パフォーマンスを向上させるために、TensorStore [23]を使用してZarr [52]およびN5 [24]形式に書き込みました。実験はAWS c5.9xlargeマシンで行われました。Deep Lakeは、配列形式と比較して大幅に高速な書き込みパフォーマンスを実現し、WebDataset [19]やFFCV Beton [39]などのバイナリ形式と同等です。
図7に示すように、Deep LakeはモデルなしでPyTorchトレーニングループでより高速なデータ読み込みを実現します。実験は、1つのNvidia V100 GPUを搭載したAWS P3.2xlargeインスタンスで実行されました。
カード。データセットは、JPEGファイルとして保存された250x250x3の画像50,000枚をランダムに生成したものです。ベンチマークが実行されたライブラリのリストは、Deep Lake、FFCV [39]、Squirrel [75]、Webdataset [19]、ネイティブPyTorchデータローダー[58]です。
図8に示すこの実験では、セクション6.2と同じデータセットを使用して、リモートストリーミング用のさまざまなストレージバックエンドを調査します。MinIO [17]は、ローカルネットワーク内の別のマシンで実行されています。注目すべきことに、Deep Lakeは、AWS S3と比較して、データがマシンにローカルにある場合と同様のパフォーマンスを実現します。WebDatasetとDeep Lakeはどちらも、データをストリーミングしている間は大幅に遅くなります。
MinIOとAWS S3の比較。より詳細なデータローダーベンチマークについては、Ofeidisらによる徹底的なデータローダー概要調査[54]をお勧めします。
Deep Lakeはクラウドファーストで構築されているため、このセクションと次のセクションでは、クラウド上でのモデルのトレーニングにDeep Lakeがもたらすメリットを説明します。ImageNetデータセット[35]をAWS S3 [1]にオリジナルとテンソルストレージ形式で保存します。データセットには120万枚の画像とラベルが含まれており、合計150GBです。Deep Lakeは、データがマシンのローカルにある場合とほぼ同じトレーニングパフォーマンスを実現します。これにより、図9に示すように、GPUの計算時間とコストを最大4倍節約できます。
2番目の実験として、4億の画像とテキストのペアを含むLAIONデータセット[67]を取り、10億のパラメータを持つ画像とテキストの埋め込みモデルであるCLIP [60]をトレーニングします。元のデータセットは、画像のURLの列を含むParquetファイルのテーブルです。ソースからのデータセットのダウンロードには100時間かかりましたが、Tensor Storage形式への取り込みには6時間しかかからず、合計サイズは1.9TBでした。データセットは、米国東部リージョンのAWSに保存され、米国中部リージョンのGPUマシンがトレーニングされました。図10に示すように、Deep Lakeは、16台のNvidia A100 GPUに毎秒5,100枚の画像をストリーミングすることで高いGPU使用率を実現し、モデルなしでは、同じリージョンのマシンあたり最大80,000画像/秒を実現します。
この論文はCC 4.0ライセンスの下でarxivで公開されています。