何か効率的な「錬金術」アーティファクトをお勧めいただけますか? Fudan fastNLPチームが内部パラメータ調整ツールfitlogをリリース

何か効率的な「錬金術」アーティファクトをお勧めいただけますか? Fudan fastNLPチームが内部パラメータ調整ツールfitlogをリリース

このパラメータ調整ツールは、実験結果の表形式表示、カスタムメモ、フロントエンド操作の記録の削除/非表示、自動 git コミットなどの多くの機能を統合しており、「エリクサーの改良」を効率的に行うのに役立ちます。

「時間を大幅に節約できるディープラーニング効率化ツールはありますか?」誰かが Zhihu でこの質問をしました。回答セクションでは、復旦大学コンピュータ科学技術学院の准教授である Qiu Xipeng 氏が、同大学の研究室で使用されている強力なパラメータ調整ツールである fitlog を紹介しました。

fitlog は、自動バージョン管理と自動ログ記録を統合した Python パッケージです。復旦大学コンピューター科学技術学院の自然言語処理および深層学習グループの fastNLP チームによって開発されました。実験を行う際に、現在のコード、パラメータ、結果を簡単に保存できます。

Qiu Xipeng 教授によると、fitlog には、実験結果を Tabular で表示したり、バックグラウンドでコードを自動的に git コミットしたり、ハイパーパラメータを視覚化したり、アーキテクチャに依存しない TensorFlow、Pytorch をサポートしたりするなど、非常に実用的な機能が多数あるそうです...

実験結果が理想的でない場合、fitlog はレコードを削除したり非表示にしたりするフロントエンド操作もサポートしており、ネットユーザーが「素晴らしい」と叫ぶことができます。

さらに、figlog のインストールは非常に簡単で、pip install fitlog を使用して完了できます。

  • GitHub アドレス: https://github.com/fastnlp/fitlog
  • 中国語のドキュメント: https://fitlog.readthedocs.io/zh/latest/

fitlogはどれくらい便利ですか?

Machine Heart の読者は、パラメータを効率的に調整できる TensorBoard をご存知だと思います。 TensorBoard は強力で美しいインターフェースを備えていますが、それでも私たちの日常の「錬金術」のニーズをすべて満たすことはできません。 fitlog を使用すると、ディープラーニングにおけるパラメータ調整の問題点を解決できる可能性があります。その機能を見てみましょう。

表形式を使用して実験結果を表示する

fitlog は、実験結果を表示するために表形式を使用することをサポートしており、これにより、さまざまなハイパーパラメータ間の比較が容易になります。下の図に示すように、表の各行は実験を表します。

具体的には、fitlog は次のことが可能です。

  1. グループ操作をサポートし、特定のデータ セットまたはパラメータのパフォーマンスを簡単に表示できます。
  2. ソートをサポートしており、最も強力なハイパーパラメータが一目でわかります。
  3. 強迫性障害の人を救うために列の順序と表示のカスタマイズをサポートします。

4. 特定の実験のカスタムメモをサポートします。

5. SOTA の結果との比較を容易にするために、他の人の実験パフォーマンス データを追加するためのフロント エンドをサポートします。

6.平均値と標準偏差の計算をサポートします。

7. 実験結果が理想的でない場合、fitlog はレコードを削除および非表示にするフロントエンド操作をサポートします。

8. 分析のニーズを満たすために、Excel、CSV、TXT、JSON などの形式へのエクスポートをサポートします。

9. メトリクスを記録する

機械学習では、トレーニング プロセスがどのように進んでいるかを理解するために、損失などのいくつかの重要なメトリックの使用が必然的に必要になります。これらのメトリックは、モデルが過剰適合しているかどうか、またはまだ改善の余地があるかどうかを判断するのに役立ちます。さらに、これらのメトリックを比較することで、ハイパーパラメータを調整し、モデルのパフォーマンスを向上させることができます。

次の図は、fitlog を使用して記録されたメトリックを示しています。

次の図は、TensorBoard を使用したスカラー記録の概略図を示しています。

上記の 2 つの図から、メトリックの記録に関しては、fitlog と TensorBoard のエクスペリエンスが非常に似ていることがわかります。

バックグラウンドでの自動gitコミットコードのサポート

実験結果を再現するにはハイパーパラメータだけでは不十分なので、fitlog はバックグラウンドでユーザー向けの自動 git コミットコードをサポートしています (fitlog はコード管理に git を使用しますが、開発者自身が管理する git とは競合せず、並列化されています)。特定の実験のコードにロールバックする必要がある場合は、フロントエンドで「ロールバック」をクリックするだけで実行できます。 fitlog はユーザーが乱数シードを管理するのにも役立ちますが、pytorch などのディープラーニング フレームワークのランダム性は解決できません。

ハイパーパラメータの可視化

ディープラーニングには多くのハイパーパラメータの調整が伴います。場合によっては、ハイパーパラメータの適切な組み合わせによってもたらされるパフォーマンスの向上が、一部のアルゴリズムの向上を上回ることもあります。したがって、これらのハイパーパラメータがモデルのパフォーマンスに与える影響を記録することが重要です。メトリックを選択し、さまざまなハイパーパラメータの組み合わせにおけるこのメトリックの変化傾向を視覚的に表示することで、ハイパーパラメータ検索の効率を大幅に向上させることができます。そして、fitlog は必要な視覚化を提供します (下の図の各行は実験を表し、左端の行は開発環境でのパフォーマンスです)。

この関数は、次の図に示すように、TensorBoard の HParams に似ています。

アーキテクチャに依存せず、TensorFlow および PyTorch で使用可能

fitlog はアーキテクチャに依存せず、Tensorflow と PyTorch の両方で使用できます。自然言語処理に加えて、コンピュータービジョンのタスクにも使用できます。自然言語処理タスクの場合は、fastNLP フレームワークと組み合わせて使用​​できます。メトリックと損失の自動記録を実現するには、3 行または 5 行のコードのみが必要です。

改善すべき点

軽量ツールである fitlog にも、次のような欠点があります。

  • モデル出力の画像の保存はサポートされていませんが、トレーニング中のテキスト出力の表示はサポートされています。
  • 損失とメトリック以外の曲線の表示はサポートされていません。

たとえば、入力データを表示し、ネットワーク層の重みを視覚化する必要がある場合、画像を記録して表示すると非常に役立ちます。次の図は、TensorBoard に表示された Fashion-MNIST データセットの画像をいくつか示しています。

さらに、混同行列を視覚化することは、分類モデルのパラメータを調整するのにも役立ちます。混同行列は、機械学習で分類モデルの予測結果を要約するために使用される分析方法の 1 つです。混同行列は、実際のカテゴリとモデルによって予測されたカテゴリを要約する行列の形式を使用して、モデルが予測のパフォーマンスが優れていないサンプルをより直感的に理解できるようにします。下の図から、分類モデルがシャツ、T シャツ、プルオーバーを混同していることがはっきりとわかり、モデルの予測性能を向上させる必要があります。

上記の機能は fitlog では使用できません。これが必須の機能である場合は、今のところ TensorBoard を選択する必要があるかもしれません。

<<:  自動運転車インフラの新たなビジョン

>>:  AIはあなたの建物をスマートで健康的な建物にします

ブログ    

推薦する

顔認証決済の登場:「決済戦争」の次なる激戦点となるか?

[[280749]]最近、支払いをするために携帯電話を取り出すと、「顔支払い」を選択すると割引があ...

7年間の変革:WOT2018がテクノロジーの背後にある真実を明らかにする

2018 年のインターネット業界が新たな変化の時期を迎えていることは否定できません。新たなアップグレ...

正確な画像認識を望むなら、AIデータの精度を効果的に向上させることが鍵となる

技術の継続的な反復的発展により、人工知能の応用は人々の日常生活に巧妙に浸透してきました。インテリジェ...

海洋工学における生成AI:独自のデータセットが不十分なため、実用化が制限されている

現代のコンピューティングは造船や海洋工学における設計および建設プロセスを大幅に改善していますが、限ら...

2018 年に最も人気のあるディープラーニング フレームワークはどれでしょうか?この科学的なランキングからわかることは

ディープラーニングは、機械学習の分野で最も注目されているテクノロジーです。ディープラーニング フレー...

デジタルツインの登場: 医薬品開発における今後の革命

51年前、アポロ13号が宇宙に打ち上げられました。打ち上げ直後、宇宙船は大きな爆発に遭遇した。宇宙船...

パフォーマンスは 5000 個の H100 でトレーニングされた GPT-4 に近いです。 DeepMindが新世代の大規模モデルを共同開発

最近、InflectionAI は新しい AI モデルをリリースしました。さらに衝撃的なのは、Inf...

顔の特徴を検出するシンプルなディープラーニング手法を教えます

著者注: 携帯電話で、人の顔に特殊効果を加えるアプリを見たことがあるかもしれません。これらのアプリは...

青島市と銀河水滴が共同でAIアート応用イノベーション実験室を建設

最近、2020年中国(青島)芸術博覧会の期間中、青島の「ダブル募集・ダブル紹介」特別イベントが開催さ...

...

2018年に人工知能はどのように発展するでしょうか? 13人の専門家の予測を聞いてみよう

ウォール・ストリート・ジャーナル、フォーブス、フォーチュンなどの出版物は、2017 年を「AI の年...

量子プロセッサのパフォーマンスはなぜ変動するのでしょうか? Googleが見つけた答えは、素材に欠陥があるということだ

量子プロセッサは最先端の研究テーマです。世界トップクラスの研究室や企業の研究機関が常に新たな進歩を遂...

推奨アルゴリズム集(パート1) - 協調フィルタリングアルゴリズム

【51CTO.comオリジナル記事】 1. ロングテール効果?動物の尻尾と関係があるのでしょうか?前...

...

不確実な環境での自動運転の軌道計画を改善するにはどうすればよいでしょうか?

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...