機械学習(ML)の実験トラッキングと管理のためのトップツール(2023年)
機械学習(ML)の実験トラッキングと管理のためのトップツール(2023年)' 'Top tool for experiment tracking and management in machine learning (2023)
機械学習プロジェクトを行う際に、単一のモデルトレーニング実行から良い結果を得ることは一つのことです。機械学習の試行をきちんと整理し、信頼性のある結論を導き出すための方法を持つことは別のことです。
実験トラッキングはこれらの問題に対する解決策を提供します。機械学習における実験トラッキングとは、実施する各実験の関連データを保存することの実践です。
実験トラッキングは、スプレッドシート、GitHub、または社内プラットフォームを使用するなど、さまざまな方法でMLチームによって実装されています。ただし、ML実験の管理とトラッキングに特化したツールを使用することが最も効率的な選択肢です。
- Google AIは、アーキテクチャシミュレータにさまざまな種類の検索アルゴリズムを接続するための、マシンラーニングのためのオープンソースのジム「ArchGym」を紹介しました
- 「生成型AIとMLOps:効率的で効果的なAI開発のための強力な組み合わせ」
- CarperAIは、コードと自然言語の両方で進化的な検索を可能にするために設計されたオープンソースライブラリ、OpenELMを紹介します
以下は、ML実験トラッキングと管理のトップツールです
Weight & Biases
重みとバイアスと呼ばれる機械学習フレームワークは、モデルの管理、データセットのバージョン管理、および実験の監視に使用されます。実験トラッキングコンポーネントの主な目的は、データサイエンティストがモデルトレーニングプロセスの各ステップを記録し、モデルを可視化し、試行を比較するのを支援することです。
W&Bは、オンプレミスまたはクラウド上の両方で使用できるツールです。Weights & Biasesは、Keras、PyTorch環境、TensorFlow、Fastai、Scikit-learnなど、さまざまなフレームワークとライブラリの統合をサポートしています。
Comet
Comet MLプラットフォームを使用すると、データサイエンティストはモデルのトレーニングから本番まで、実験とモデルの追跡、比較、説明、最適化を行うことができます。実験トラッキングでは、データセット、コードの変更、実験履歴、モデルを記録することができます。
Cometは、チーム、個人、学術機関、企業向けに提供され、誰もが実験を行い、作業を容易にし、結果を素早く可視化することができます。ローカルにインストールするか、ホステッドプラットフォームとして使用することができます。
Sacred + Omniboard
Sacredは、オープンソースのプログラムであり、機械学習の研究者は実験を設定、配置、ログ記録、複製することができます。Sacredには優れたユーザーインターフェースがないため、Omniboardなどのダッシュボードツールとリンクすることができます(他のツールとも統合することができます)。しかし、Sacredは他のツールのスケーラビリティに欠け、チームの協力のために設計されていない(別のツールと組み合わせる場合を除く)が、単独の調査には多くの可能性があります。
MLflow
MLflowと呼ばれるオープンソースのフレームワークは、機械学習のライフサイクル全体を管理するのに役立ちます。これには実験、モデルの保存、複製、使用が含まれます。Tracking、Model Registry、Projects、Modelsの4つのコンポーネントは、それぞれこれらの要素を代表しています。
MLflow TrackingコンポーネントにはAPIとUIがあり、パラメータ、コードバージョン、メトリック、出力ファイルなどの異なるログメタデータを記録し、後で結果を表示することができます。
TensorBoard
TensorBoardはTensorFlowのグラフィカルツールキットであり、ユーザーはしばしばそれから始めます。TensorBoardを通じて機械学習モデルの可視化やデバッグツールを利用することができます。ユーザーはモデルグラフを調べたり、埋め込みを低次元空間に投影したり、損失や精度などの実験メトリックを追跡したりすることができます。
TensorBoard.devを使用すると、機械学習実験の結果を誰とでも共有することができますが、TensorBoardには協力機能はありません。TensorBoard.devは、管理されたサーバー上の無料サービスとして提供されますが、TensorBoardはオープンソースであり、ローカルでホストされます。
Guild AI
Apache 2.0のオープンソースライセンスで提供されるGuild AIは、機械学習の実験トラッキングシステムです。分析、可視化、差分操作、パイプラインの自動化、AutoMLハイパーパラメータの調整、スケジューリング、並列処理、リモートトレーニングなどを可能にします。
Guild AIには、実験を比較するためのいくつかの統合ツールも含まれています。これには、以下のものがあります:
- Guild Compare:フラグとスカラーデータを含むスプレッドシート形式の実行を表示できるcursesベースのプログラム
- Guild View:結果を比較し、実行を表示するオンラインアプリケーション
- Guild Diffコマンドを使用して、2つの実行を対比することができます。
Polyaxon
Polyaxonは、スケーラブルで再現性のあるディープラーニングと機械学習アプリケーションのプラットフォームです。モデルの管理、実行のオーケストレーション、規制の遵守、実験のトラッキングと最適化など、さまざまな機能を備えています。その作成者の主な目標は、出力と生産性を最大化し、コストを最小化することです。
重要なモデルのメトリック、ハイパーパラメータ、視覚化、アーティファクト、リソースをPolyaxonで自動的に記録することができます。また、コードとデータのバージョン管理も行うことができます。Polyaxon UIを利用するか、TensorBoardなどの他のボードに組み込んで後でログされたメタデータを表示することもできます。Polyaxonをオンプレミスまたは特定のクラウドサービスプロバイダーでデプロイすることができます。TensorFlow、Keras、Scikit-learnなどの主要なMLおよびDLライブラリもサポートされています。
ClearML
Allegro AIのチームは、マシンラーニングプロセスを簡素化するためのツールのコレクションであるオープンソースプラットフォームのClearMLをサポートしています。このパッケージには、データ管理、オーケストレーション、デプロイメント、MLパイプラインの管理、データ処理などの機能が含まれています。ClearMLの5つのモジュールは、これらの機能をすべて備えています:
- ClearMLを現在のコードベースに統合するためのPythonパッケージ
- ClearMLサーバーに実験、モデル、ワークフローのデータを保存し、Web UI実験マネージャーもサポートしています
- スケーラブルな実験とワークフローの再現性を実現するML-OpsオーケストレーションエージェントClearML Agent
- ファイルシステムとオブジェクトストレージの上に構築されたデータ管理およびバージョニングプラットフォームであるClearML Data
- ClearMLセッションを使用してVSCodeとJupyter Notebooksのリモートインスタンスを起動する
モデルのトレーニング、ハイパーパラメータの最適化、チャートツール、ストレージソリューション、および他のフレームワークとライブラリはすべてClearMLに統合されています。
Valohai
MLOpsプラットフォームのValohaiは、モデルのデプロイからデータの抽出までを自動化します。このツールの開発者によれば、Valohaiは「セットアップ不要のマシンオーケストレーションとMLFlowのような実験のトラッキングを提供します。」このプラットフォームは、主な焦点とはしていませんが、実験の比較、バージョン管理、モデルのラインナップ、トレーサビリティなどの特定の機能を提供しています。
Valohaiは任意の言語やフレームワーク、さまざまなプログラムやツールと互換性があります。オンプレミスまたは任意のクラウドプロバイダーでセットアップすることもできます。このプログラムはチームワークを重視して設計されており、さまざまな機能が備わっています。
Pachyderm
Pachydermは、ユーザーが完全な機械学習サイクルを管理できるオープンソースのエンタープライズグレードのデータパイプラインプラットフォームです。スケーラビリティの選択肢、実験の構築、トラッキング、およびデータのラインナップを可能にします。
ソフトウェアには3つのバージョンがあります:
- Community — プロフェッショナルグループによって作成およびサポートされている無料のオープンソースのPachydermバージョン
- Enterprise Editionでは、完全にバージョン管理されたプラットフォームをユーザーの選択したKubernetesインフラストラクチャにインストールすることができます。
Kubeflow
Kubeflowは、Kubernetesのマシンラーニングモデルのスケーリングを簡素化するためにKubernetesの能力を利用する機械学習ツールボックスです。このプラットフォームは特定のトラッキング機能を提供していますが、それがプロジェクトの主な目的ではありません。以下のパーツがあります:
- コンテナベースのDockerコンテナに基づいてスケーラブルな機械学習(ML)ワークフローを作成および展開するためのフレームワークであるKubeflow Pipelines
- Kubeflowの主要なユーザーインターフェース(UI)であるCentral Dashboard
- Kubeflowモデルのデプロイとサービス化のためのツールキットであるKFServing、およびJupyterノートブックの作成と管理のためのサービスであるNotebook Servers
- Kubeflow内のMLモデルのオペレータ(例:PyTorch、TensorFlow)をトレーニングするためのオペレータ
Verta.ai
Vertaはビジネス向けのMLOpsプラットフォームです。このソフトウェアは、完全な機械学習ライフサイクルの管理を容易にするために開発されました。トラック、コラボレート、デプロイ、モニタリングという4つのキーワードがその主な機能を表しています。Vertaの主要な製品である実験管理、モデルレジストリ、モデルデプロイメント、モデルモニタリングは、これらの機能を組み込んでいます。
実験の監視と視覚化、さまざまなタイプのメタデータの記録、実験のブラウズと比較、モデルの再現性の確保、チームでのMLプロジェクトでの共同作業など、実験管理コンポーネントでさまざまなことができます。
VertaはTensorFlow、PyTorch、XGBoost、ONNXなど、よく知られたMLフレームワークをサポートしています。オープンソース、SaaS、エンタープライズサービスとして利用可能です。
SageMaker Studio
AWSプラットフォームの1つであるSageMaker Studioは、データサイエンティストや開発者が優れた機械学習(ML)モデルを作成し、構築、トレーニング、展開することができるようにするものです。これは最初のML固有の統合開発環境(IDE)と称されています。準備、トレーニング、チューニング、デプロイ、管理の4つのパートがあります。3番目のパートであるトレーニングとチューニングでは、実験のトラッキング機能が提供されます。ユーザーはハイパーパラメータのチューニングを自動化したり、トレーニングランのデバッグ、実験のログ記録、整理、比較を行ったりすることができます。
DVCスタジオ
DVCスタジオは、イテレーションに所属するAiパワードのDVCツールの一員です。DVCは、元々機械学習特化のオープンソースバージョン管理システムとして設計されました。このコンポーネントは、データサイエンティストが自分のMLモデルを共有し複製するために使用されます。DVCスタジオは、MLプロジェクトのための視覚的なインタフェースであり、ユーザーが実験を追跡し、視覚化し、チームで作業するのを支援するために開発されました。
DVCスタジオアプリケーションはオンラインでもローカルでも利用できます。
Deepkit
Deepkit.aiを使用して、インテリジェントで迅速で再現可能なモダンな機械学習のためのオープンソースの機械学習開発ツールおよびトレーニングスイートであるDeepkit.aiを使用してください。Deepkit.aiを使用して、計算サーバーを管理し、トライアルをログに記録し、モデルをデバッグできます。
実験管理モデルデバッグ計算管理:Deepkit.aiの主な利点
Trains
プロダクショングレードのディープラーニングモデルは、Trainsとして知られるオープンソースプラットフォームを介して追跡および管理されます。モデル開発段階のどの研究チームも、わずかなコード行数でオンプレミスのTrainsサーバー上で洞察に富んだエントリを設定および維持することができます。
Trainsは、どのDL/MLワークフローにも簡単に統合できます。それはjupyterノートブックを自動的にPythonコードにアーカイブし、実験をトレーニングコード(git commit + local diff + Pythonパッケージのバージョン)とリンクします。
DAGsHub
Git(ソースコードのバージョン管理)とDVCの強みを活かして、オープンソースのデータサイエンスおよび機械学習コラボレーションプラットフォームであるDagsHubを使用して、簡単に機械学習プロジェクト(データバージョン管理)を構築、成長、展開できます。
DAGsHubは、データチームが毎回ゼロから始める手間と時間を節約しながら、機械学習およびデータサイエンスプロジェクトを構築、配布、再利用することを容易にします。DAGsHubの次の特徴は、他の従来のプラットフォームとの違いを示しています:
ビルトインのリモート(ソースコード管理のためのGit、データバージョン追跡のためのDVC、実験追跡のためのMLflowなど)が提供するのは、設定なしですべてを1か所にリンクする機能です。
DAGsHubは、美しいユーザーエクスペリエンスの利便性を提供しながら、さまざまな人々によって実施されたさまざまなML実験を追跡および監視することができます。MLプロジェクトのトライアルは、それぞれのモデル、コード、データの特定のバージョンに接続して監視することができます!
実験の記録を保持するだけでなく、DAGsHubの直感的な可視化と各実験の記録データにより、さまざまなトライアルを並べて比較し、パフォーマンスメトリックとハイパーパラメータの変動を理解することができます。
注意:私たちはCool Toolsを取り上げるために最善を尽くしましたが、もし何か見落としてしまった場合は、お気軽に[email protected]までお問い合わせください。
記事「トップツール:機械学習(ML)実験追跡と管理(2023年)」は、MarkTechPostで最初に公開されました。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles
- AIによる生産性向上 生成AIが様々な産業において効率の新たな時代を開く
- 「機械学習支援コンピュータアーキテクチャ設計のためのオープンソースジムナジウム」
- 「脳のように機能するコンピュータビジョンは、人々が見るように見ることができます」
- 「テキスト生成推論によるコンピュータからの大規模言語モデルの提供」
- 「高次元のカテゴリ変数に対する混合効果機械学習 – 第二部 GPBoostライブラリ」
- ソフトウェア開発の革命:AIとコードのダイナミックなデュオ
- ウィスコンシン大学の新しい研究では、ランダム初期化から訓練された小さなトランスフォーマーが、次のトークン予測の目標を使用して効率的に算術演算を学ぶことができるかどうかを調査しています