paint-brush
ディープラーニングのためのレイクハウス、Deep Lake: 機械学習のユースケース@dataology
188 測定値

ディープラーニングのためのレイクハウス、Deep Lake: 機械学習のユースケース

長すぎる; 読むには

研究者らは、ディープラーニング フレームワーク向けに複雑なデータ ストレージとストリーミングを最適化する、ディープラーニング用のオープンソース レイクハウスである Deep Lake を紹介します。
featured image - ディープラーニングのためのレイクハウス、Deep Lake: 機械学習のユースケース
Dataology: Study of Data in Computer Science HackerNoon profile picture
0-item

著者:

(1)サスン・ハンバルズミアン、アクティブループ、カリフォルニア州マウンテンビュー、米国

(2)アビナブ・トゥリ、アクティブループ、カリフォルニア州マウンテンビュー、米国

(3)レヴォン・グカシアン、アクティブループ、カリフォルニア州マウンテンビュー、米国

(4)ファリズ・ラーマン、アクティブループ、カリフォルニア州マウンテンビュー、米国。

(5)Hrant Topchyan、Activeloop、カリフォルニア州マウンテンビュー、米国

(6)デビッド・イサヤン、アクティブループ、カリフォルニア州マウンテンビュー、米国

(7)マーク・マククエイド、アクティブループ、カリフォルニア州マウンテンビュー、米国

(8)ミカエル・ハルティニャン、アクティブループ、カリフォルニア州マウンテンビュー、米国

(9)Tatevik Hakobyan、Activeloop、カリフォルニア州マウンテンビュー、米国

(10)イヴォ・ストラニック、アクティブループ、カリフォルニア州マウンテンビュー、米国

(11)ダビット・ブニアティアン、アクティブループ、カリフォルニア州マウンテンビュー、米国。

リンク一覧

5. 機械学習のユースケース

このセクションでは、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 データセットのトレーニング、バージョン管理、クエリ、および品質の検査方法については以下で説明します。

5.1 ディープラーニングモデルのトレーニング

ディープラーニング モデルは、パーソナル コンピューターで行われる探索的トレーニングから、多数の GPU を含む分散マシンで行われる大規模なトレーニングまで、組織内の複数のレベルでトレーニングされます。長期ストレージからトレーニング クライアントにデータを移動するために必要な時間と労力は、多くの場合、トレーニング自体に匹敵します。Deep Lake は、下流のトレーニング プロセスをボトルネックにすることなくデータの高速ストリーミングを可能にすることでこの問題を解決し、ローカル ストレージにデータを複製するために必要なコストと時間を回避します。

5.2 データ系統とバージョン管理

ディープラーニング データは、新しいデータが追加され、既存のデータが品質管理されるにつれて、常に進化しています。分析とトレーニングのワークロードは、データが変更される一方で並行して発生します。したがって、特定のワークロードで使用されたデータ バージョンを知ることは、データとモデルのパフォーマンスの関係を理解するために重要です。Deep Lake を使用すると、ディープラーニングの実践者は、どのバージョンのデータが分析ワークロードで使用されたかを理解し、監査が必要な場合はこれらのバージョン間をタイム トラベルできます。すべてのデータは変更可能であるため、コンプライアンス関連のプライバシー要件を満たすように編集できます。コード用の Git と同様に、Deep Lake ではデータ ブランチの概念も導入されており、同僚の作業に影響を与えることなくデータの実験と編集が可能です。

5.3 データのクエリと分析

ディープラーニング モデルのトレーニングは、組織が特定のアプリケーション用に収集したすべてのデータに対して行われることはほとんどありません。トレーニング データセットは、多くの場合、モデルのパフォーマンスを向上させる条件に基づいて生データをフィルタリングすることによって構築されます。これには、データのバランス調整、冗長データの削除、特定の機能を含むデータの選択などが含まれます。Deep Lake は、ディープラーニング エンジニアが最高精度のモデルを生み出すデータセットを作成できるように、データをクエリおよび分析するためのツールを提供します。

5.4 データ検査と品質管理

教師なし学習は現実世界のユースケースでより適用しやすくなっていますが、ほとんどのディープラーニング アプリケーションは依然として教師あり学習に依存しています。教師あり学習システムの質はデータの品質によって決まり、多くの場合、手作業による徹底的なデータ検査によって達成されます。このプロセスは時間がかかるため、膨大な量のデータを非常に迅速に検査するためのツールを関係者に提供することが重要です。Deep Lake を使用すると、セットアップ時間やデータのダウンロードを必要とせずに、ブラウザーから任意のサイズのディープラーニング データセットを検査できます。さらに、ツールを拡張して、モデルの結果を実際の結果と比較することもできます。クエリとバージョン管理を組み合わせることで、データの反復的な改善に適用し、可能な限り最高のモデルを実現できます。


この論文はCC 4.0ライセンスの下でarxivで公開されています