🐶

DagsHubに入門する ~1. DagsHubって?~

2024/03/20に公開

DagsHubって?

はじめに

MLflowやDVCを触っており、どうにか組み合わせて使えないか四苦八苦していたところに、ちょうどいいサービスを見つけた。しかし、日本ではまだマイナーなサービスのようで日本語記事が見つからなかったため備忘録代わりに記す。

  1. DagsHubって? ←イマココ
  2. DagsHub+DVC
  3. DagsHub+DVC+MLflow

概要

DagsHubは、データサイエンスと機械学習プロジェクトのためのバージョン管理とコラボレーションを強化するプラットフォームである。Gitのような使い心地で、コード、データセット、MLモデルの管理を一元化し、プロジェクトの透明性と再現性を向上させることができる。

主な機能

  • バージョン管理: コード、データセット、機械学習モデルの変更をトラッキングし、履歴を保持する。

  • コラボレーション: プロジェクトメンバーとの効率的なコラボレーションを促進し、レビューやコメントを通じて意見交換が可能。

  • 実験のトラッキング: MLflowと統合しており、実験の設定、結果、パフォーマンス指標をトラッキングし、比較することができる。

他のサービスとの比較・利点

GitHub/GitLabとの比較

DagsHubはデータサイエンスと機械学習プロジェクトのために特化しており、データとMLモデルのバージョニングに関して優れている。
DagsHubは、DVC(Data Version Control)とMLflowを統合したプラットフォームであり、データのバージョン管理と実験追跡を簡単に行える環境を提供している。

W&Bや他のMLプラットフォームとの比較

W&B(Weights & Biases)などの他のMLプラットフォームは、実験追跡と可視化に強みを持っているが、DagsHubはこれらの機能に加えて、DVCやMLflowといったオープンソースのツールとの統合を通じて、データとコードのバージョン管理にも重点を置いている。
これにより、プロジェクトのすべての側面を一元管理でき、チームメンバー間での協力が容易になる。

移行の容易さとOSSの強み

DVCやMLflowはオープンソースソフトウェア(OSS)として、広く利用されており、既存の技術スタックに統合したり、他のサービスからDagsHubへの移行を容易にする。
これは、既存のワークフローを大きく変更することなく、データ管理と実験管理を改善したいチームにとって大きなメリットとなる。

料金プラン

料金プラン - DagsHub

所感

個人での利用なら無料プランで十分すぎるくらい使える。
ただ、プライベートリポジトリだとコラボレーターが二人までなので、Kaggleコンペにチームを組んで参加するといった場合は2人[1]以内のチームでしか使えない。

以下詳細

無料プラン($0)

  • パブリックリポジトリ: 無制限
  • プライベートリポジトリ: 非商用利用なら無制限
  • ML実験のトラッキング: 無制限
  • コラボレーター: パブリックなら無制限、パブリックなら最大2人まで
  • DagsHubストレージ: 100GB
  • その他: データのバージョン管理とリネージュ、パブリックリポジトリのアノテーションワークスペース、ノートブックのバージョン管理と比較、CI/CD/CTの統合、インタラクティブなパイプライン、コミュニティサポートが利用可能

チームプラン(月額$99/ユーザー数)

  • 無料プランに含まれる全ての機能
  • プライベートリポジトリ: 無制限
  • ストレージ: 独自のストレージ接続可能
  • データ容量: 最大1TBまたは最大200万ファイル(問い合わせで上限を上げることも可能)
  • その他: プライベートリポジトリで最大5つのアノテーションプロジェクト、プライベートリポジトリ用のData Engine、チームアクセスコントロール、DagsHubのメールサポート

エンタープライズプラン(要問い合わせ):

  • チームプランに含まれる全ての機能
  • データ容量: 無制限
  • VPCまたはオンプレミスでのインストール
  • LDAP認証
  • 専門家によるダイレクトサポートやその他サービス

始め方

サインアップ

https://dagshub.com

サイトに飛び、真ん中のSTART NOWか右上のRegisterをクリックするとサインアップできる。
ちなみにこのトップページが最高にかっこいいのでサインアップしなくても一度飛んでみてほしい。

初期設定

パーソナライズ

アカウントが作れたらまずはパーソナライズという画面に飛ぶがここはスキップできる。
お好みで入力する。

オンボーディング

次にオンボーディングとして、以下のうちDagsHubでどれをしたいか聞かれるので好みで選択する。

  • コードとデータのバージョン管理
  • ML実験のトラッキング
  • データセットの生成
  • データのアノテーション

リポジトリ作成

すると、my-first-repoというパブリックリポジトリが自動で作成される。
また、「Get Started with xxx」という表示が画面上部に出てきて、それをクリックすることでどのように始められるかが分かるので、あとはそれに従って進めていける。

まとめ

DagsHubの概要を説明し、アカウント作成まで実施した。
次回はDVCを用いたパイプラインを実装する。
https://zenn.dev/marcy_lab/articles/70bd98bda74f0c

脚注
  1. プロジェクト作成者も人数に含めるか否かは読み取れなかったが、UIを見るとプロジェクト作成者もコラボレーター欄に含まれていたので最大2人と思われる。 ↩︎

Discussion