著者:
(1)サスン・ハンバルズミアン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(2)アビナブ・トゥリ、アクティブループ、カリフォルニア州マウンテンビュー、米国
(3)レヴォン・グカシアン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(4)ファリズ・ラーマン、アクティブループ、カリフォルニア州マウンテンビュー、米国。
(5)Hrant Topchyan、Activeloop、カリフォルニア州マウンテンビュー、米国
(6)デビッド・イサヤン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(7)マーク・マククエイド、アクティブループ、カリフォルニア州マウンテンビュー、米国
(8)ミカエル・ハルティニャン、アクティブループ、カリフォルニア州マウンテンビュー、米国
(9)Tatevik Hakobyan、Activeloop、カリフォルニア州マウンテンビュー、米国
(10)イヴォ・ストラニック、アクティブループ、カリフォルニア州マウンテンビュー、米国
(11)ダビット・ブニアティアン、アクティブループ、カリフォルニア州マウンテンビュー、米国。
このセクションでは、Deep Lake のアプリケーションについて説明します。
ディープラーニングアプリケーションの典型的なシナリオは、
(1) オブジェクトストレージバケットに収集された生のファイルセット。JPEG、PNG、MP4などのネイティブ形式の画像、ビデオ、その他の種類のマルチメディアデータが含まれる場合があります。
(2)リレーショナルデータベースに保存されている関連メタデータとラベル。オプションで、CSV、JSON、Parquet形式などの正規化された表形式で生データとともに同じバケットに保存することもできます。
図4に示すように、空のDeep Lakeデータセットが作成されます。次に、生データとメタデータの両方を格納するための空のテンソルが定義されます。テンソルの数は任意です。画像分類タスクの基本的な例では、2つのテンソルがあります。
• htypeが𝑖𝑚𝑎𝑔𝑒でサンプル圧縮がJPEGの画像テンソル
• htype が 𝑐𝑙𝑎𝑠𝑠_𝑙𝑎𝑏𝑒𝑙 で、チャンク圧縮が LZ4 のテンソルにラベルを付けます。
テンソルを宣言した後、データをデータセットに追加できます。生の画像圧縮がテンソル サンプルの圧縮と一致する場合、バイナリは追加のデコードなしでチャンクに直接コピーされます。ラベル データは、SQL クエリまたは CSV テーブルからカテゴリ整数に抽出され、ラベル テンソルに追加されます。ラベル テンソル チャンクは、LZ4 圧縮を使用して保存されます。Deep Lake データはすべてバケットに保存され、自己完結型です。保存後、データには NumPy インターフェイスまたはストリーミング可能なディープ ラーニング データローダーとしてアクセスできます。次に、コンピューティング マシンで実行されるモデルが画像テンソルのストリームを反復処理し、モデルの出力を予測と呼ばれる新しいテンソルに保存します。さらに、Deep Lake データセットのトレーニング、バージョン管理、クエリ、および品質の検査方法については以下で説明します。
ディープラーニング モデルは、パーソナル コンピューターで行われる探索的トレーニングから、多数の GPU を含む分散マシンで行われる大規模なトレーニングまで、組織内の複数のレベルでトレーニングされます。長期ストレージからトレーニング クライアントにデータを移動するために必要な時間と労力は、多くの場合、トレーニング自体に匹敵します。Deep Lake は、下流のトレーニング プロセスをボトルネックにすることなくデータの高速ストリーミングを可能にすることでこの問題を解決し、ローカル ストレージにデータを複製するために必要なコストと時間を回避します。
ディープラーニング データは、新しいデータが追加され、既存のデータが品質管理されるにつれて、常に進化しています。分析とトレーニングのワークロードは、データが変更される一方で並行して発生します。したがって、特定のワークロードで使用されたデータ バージョンを知ることは、データとモデルのパフォーマンスの関係を理解するために重要です。Deep Lake を使用すると、ディープラーニングの実践者は、どのバージョンのデータが分析ワークロードで使用されたかを理解し、監査が必要な場合はこれらのバージョン間をタイム トラベルできます。すべてのデータは変更可能であるため、コンプライアンス関連のプライバシー要件を満たすように編集できます。コード用の Git と同様に、Deep Lake ではデータ ブランチの概念も導入されており、同僚の作業に影響を与えることなくデータの実験と編集が可能です。
ディープラーニング モデルのトレーニングは、組織が特定のアプリケーション用に収集したすべてのデータに対して行われることはほとんどありません。トレーニング データセットは、多くの場合、モデルのパフォーマンスを向上させる条件に基づいて生データをフィルタリングすることによって構築されます。これには、データのバランス調整、冗長データの削除、特定の機能を含むデータの選択などが含まれます。Deep Lake は、ディープラーニング エンジニアが最高精度のモデルを生み出すデータセットを作成できるように、データをクエリおよび分析するためのツールを提供します。
教師なし学習は現実世界のユースケースでより適用しやすくなっていますが、ほとんどのディープラーニング アプリケーションは依然として教師あり学習に依存しています。教師あり学習システムの質はデータの品質によって決まり、多くの場合、手作業による徹底的なデータ検査によって達成されます。このプロセスは時間がかかるため、膨大な量のデータを非常に迅速に検査するためのツールを関係者に提供することが重要です。Deep Lake を使用すると、セットアップ時間やデータのダウンロードを必要とせずに、ブラウザーから任意のサイズのディープラーニング データセットを検査できます。さらに、ツールを拡張して、モデルの結果を実際の結果と比較することもできます。クエリとバージョン管理を組み合わせることで、データの反復的な改善に適用し、可能な限り最高のモデルを実現できます。
この論文はCC 4.0ライセンスの下でarxivで公開されています。