著者:
(1)サスン・ハンバルズミアン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(2)アビナブ・トゥリ、アクティブループ、カリフォルニア州マウンテンビュー、米国
(3)レヴォン・グカシアン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(4)ファリズ・ラーマン、アクティブループ、カリフォルニア州マウンテンビュー、米国。
(5)Hrant Topchyan、Activeloop、カリフォルニア州マウンテンビュー、米国
(6)デビッド・イサヤン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(7)マーク・マククエイド、アクティブループ、カリフォルニア州マウンテンビュー、米国
(8)ミカエル・ハルティニャン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(9)Tatevik Hakobyan、Activeloop、カリフォルニア州マウンテンビュー、米国
(10)イヴォ・ストラニック、アクティブループ、カリフォルニア州マウンテンビュー、米国
(11)Davit Buniatyan、Activeloop、カリフォルニア州マウンテンビュー、米国。
複数のプロジェクトが、非構造化データセットを保存するためのフォーマットを改善または新フォーマットの作成を試みてきました。その中には、Protobuf [5] を拡張した TFRecord、Parquet [79] を拡張した Petastorm [18]、arrow [13] を拡張した Feather [7]、MessagePack [75] を使用した Squirrel、FFCV [39] の Beton などがあります。すべてのユースケースを解決するユニバーサルデータセットフォーマットを設計することは非常に困難です。私たちのアプローチは主に、大容量のバイオメディカルデータを保存するための 4-D チャンク NumPy ストレージである CloudVolume [11] からヒントを得ました。同様のチャンク NumPy 配列ストレージフォーマットには、Zarr [52]、TensorStore [23]、TileDB [57] などがあります。Deep Lake は、型付けシステム、動的に形作られるテンソル、高速なディープラーニングストリーミングデータローダーとの統合、テンソルに対するクエリ、ブラウザ内視覚化サポートを導入しました。大規模データセットを保存する別の方法としては、Lustre [69] などの HPC 分散ファイルシステムを使用し、PyTorch キャッシュ [45] や AIStore [26] などの高性能ストレージ層で拡張する方法があります。Deep Lake データセットは、POSIX または REST API 互換の分散ストレージシステム上に、その利点を活用して保存できます。他の類似のアプローチとしては、埋め込みを保存するためのベクターデータベース [80, 8, 80]、特徴ストア [73, 16]、DVC [46] や LakeFS [21] などのデータバージョン管理システムなどがあります。対照的に、Deep Lake のバージョン管理は、Git などの外部依存関係なしに形式に組み込まれています。Tensor Query Language は、TQP [41] や Velox [59] のアプローチと同様に、ディープラーニングフレームワークの機能をフルに活用して、テンソルストレージ上で n 次元の数値演算を実行します。全体的に、Deep LakeはHudi、Iceberg、Delta [27、15、10]などのデータレイクと類似点を持ち、DatabarickのLakehouse [28]などのシステムを補完してDeep Learningアプリケーションを実現します。
この論文はCC 4.0ライセンスの下でarxivで公開されています。