MoTLab -GO Inc. Engineering Blog-MoTLab -GO Inc. Engineering Blog-

DRIVE CHART で 実験管理ツール としてClearMLを採用しました

AI
December 22, 2022

この記事はMobility Technologies Advent Calendar 2022の22日目です。

スマートドライビング事業部システム開発部AI基盤グループの石井です。

この記事ではDRIVE CHARTの機械学習チームで採用している実験管理ツールであるClearMLについて紹介します。


ClearMLとは

ClearMLはAllegro AI社が開発している機械学習のための実験管理ツールです。

https://clear.ml/

聞き慣れない人が多いかと思いますが、Weights & BiasesやMLflowといったメジャーな実験管理ツール同様、少量のソースコードの追加で簡単にメトリクスやロスの記録といった実験管理を行うことができるほか、SaaS版が用意されているため、簡単に利用を開始することができます。

一般的な実験管理ツールに備わっているような実験同士のメトリクスやハイパーパラメータの比較といった基本的な機能は網羅されていますし、後述しますがClearMLには多彩な機能が実装されています。

An image from Notion

An image from Notion

採用に至った背景

これまでDRIVE CHARTでは特定の実験管理ツールを採用しておらず何を使用するかについては各メンバーに委ねていましたが、見直しを行い、チーム全体で使用するツールを導入することになりました。

まずデータサイエンティストやCVエンジニア達とブレストを行い、新しい実験管理ツールへの要求を洗い出しました。その中から選定に当たって重視したものをいくつか紹介します。

  • ログの記録
  • 再現性
  • 計算資源管理
  • 未コミットのソースコード管理

コストの観点なども盛り込みつついくつかのツールが候補として上がりましたが、最終的に上げられた要求を最も満たすことができるClearMLを選択しました。

ClearMLの機能

ClearMLには痒いところに手が届くような機能が数多くあります。ここではそれらの機能の中から特に便利であると感じたものを紹介します。

未コミットのソースコードの記録

ClearMLでは以下のようにコミットされていないソースコードが実験結果とともに記録されます。過去の実験を再現しようとした時、コミットしていないソースコードが紛れてしまい再現できないということがあるかと思いますが、この問題をツール側で解決してくれるのはありがたいです。

An image from Notion

パッケージやPythonのバージョンの記録

ClearMLではさらに使用したパッケージやPythonのバージョンも自動で記録してくれます。

An image from Notion

使

コンソール画面のトラッキング

コンソールに表示されたログ等を記録してくれます。これがあるとエラーが発生した時に原因を特定しやすくなったり、ブラウザから実験の進捗を確認できたりと様々な恩恵があるかと思います。

An image from Notion

これから

ClearMLには実験管理機能以外にもClearML側で用意している計算リソースを使用して実験を行うClearML Agentと呼ばれる機能や、Oputunaなどを使用してハイパーパラメータチューニングを行う機能なども存在します。

現時点ではDRIVE CHARTでは実験管理機能のみ導入していますが、今後これらの機能についても検討・導入を進めていこうと考えています。


We're Hiring!

📢
Mobility Technologies ではともに働くエンジニアを募集しています。

興味のある方は 採用ページ も見ていただけると嬉しいです。

Twitter @mot_techtalk のフォローもよろしくお願いします!