Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案

PHPz
リリース: 2023-04-04 12:50:02
転載
962 人が閲覧しました

OTO は、業界初の自動化されたワンストップのユーザーフレンドリーで多用途なニューラル ネットワーク トレーニングおよび構造圧縮フレームワークです。

人工知能の時代では、ニューラル ネットワークをどのように展開して維持するかが製品化の重要な課題です。モデルのパフォーマンスの損失を可能な限り最小限に抑えながらコンピューティング コストを節約するために、ニューラル ネットワークを圧縮することが重要になっています。 DNN を製品化するための鍵の 1 つ。

Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案

#DNN 圧縮には一般に、枝刈り、知識蒸留、量子化という 3 つの方法があります。プルーニングは、モデルのパフォーマンスを可能な限り維持しながら、冗長な構造を特定して削除し、DNN をスリム化することを目的とした、最も汎用性が高く効果的な圧縮方法です。一般に、3 つの方法は相互に補完し合い、連携して最高の圧縮効果を実現できます。

Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案

ただし、既存のプルーニング手法のほとんどは、特定のモデルと特定のタスクのみを対象としており、専門分野の強力な知識が必要であるため、通常、AI 開発者は多大なエネルギーを費やす必要があります。これらの方法を独自のシナリオに適用すると、多くの人的資源と物的リソースが消費されます。

OTO の概要

既存のプルーニング手法の問題を解決し、AI 開発者に利便性を提供するために、Microsoft チームは Only-Train-Once OTO フレームワークを提案しました。 OTO は、業界初の自動化されたワンストップのユーザーフレンドリーでユニバーサルなニューラル ネットワーク トレーニングおよび構造圧縮フレームワークであり、一連の成果が ICLR2023 および NeurIPS2021 で公開されています。

OTO を使用することで、AI エンジニアはターゲットのニューラル ネットワークを簡単にトレーニングし、高性能かつ軽量なモデルをワンストップで取得できます。 OTO は、開発者のエンジニアリング時間と労力への投資を最小限に抑え、既存の方法で通常必要となる時間のかかる事前トレーニングや追加のモデル微調整を必要としません。

  • 論文リンク:
  • OTOv2 ICLR 2023: https://openreview.net/pdf?id=7ynoX1ojPMt
  • OTOv1 NeurIPS 2021: https://proceedings .neurips.cc/paper_files/paper/2021/file/a376033f78e144f494bfc743c0be3330-Paper.pdf
  • コードリンク:
    https://github.com/tianyic/only_train_once
フレームワーク コア アルゴリズム

理想的な構造枝刈りアルゴリズムは、一般的なニューラル ネットワークをワンストップでゼロから自動的にトレーニングしながら、フォローアップの微調整を必要とせずに、高性能で軽量なモデルを実現できる必要があります。しかし、ニューラル ネットワークは複雑であるため、この目標を達成することは非常に困難です。この最終目標を達成するには、次の 3 つの主要な質問に系統的に対処する必要があります:

    どのネットワーク構造を削除できるかを確認するにはどうすればよいですか?
  • モデルのパフォーマンスをできるだけ失わずにネットワーク構造を削除するにはどうすればよいでしょうか?
  • 上記の 2 つの点を自動的に達成するにはどうすればよいでしょうか?
Microsoft チームは、3 セットのコア アルゴリズムを設計および実装し、これら 3 つのコア問題を初めて体系的かつ包括的に解決しました。

自動化されたゼロ不変グループ (ゼロ不変グループ) のグループ化

ネットワーク構造の複雑さと相関関係により、ネットワーク構造を削除するとネットワークが残る可能性があります。構造が無効です。したがって、自動ネットワーク構造圧縮における最大の問題の 1 つは、残りのネットワークが引き続き有効になるように一緒に枝刈りする必要があるモデル パラメーターをどのように見つけるかということです。この問題を解決するために、Microsoft チームは OTOv1 でゼロ不変グループ (ZIG) を提案しました。ゼロ不変グループは、グループの対応するネットワーク構造が削除された後も、残りのネットワークが引き続き有効であるように、削除可能な最小単位の一種として理解できます。ゼロ不変グループのもう 1 つの優れた特性は、ゼロ不変グループがゼロに等しい場合、入力値が何であっても、出力値は常にゼロになることです。 OTOv2 では、研究者らはさらに、一般ネットワークにおけるゼロ不変グループのグループ化問題を解決するための一連の自動化アルゴリズムを提案および実装しました。自動グループ化アルゴリズムは、一連のグラフ アルゴリズムを慎重に組み合わせて設計されており、アルゴリズム全体が非常に効率的で、時間と空間の複雑さが線形になります。

Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案

二重半平面投影勾配最適化アルゴリズム (DHSPG)

ターゲット ネットワークのすべてのゼロ不変グループを分割した後、次のモデルのトレーニングおよび枝刈りタスクでは、どのゼロ不変グループが冗長で、どのグループが重要であるかを特定する必要があります。圧縮モデルのパフォーマンスを確保するには、冗長なゼロ不変グループに対応するネットワーク構造を削除する必要がありますが、重要なゼロ不変グループは保持する必要があります。研究者らは、この問題を構造的スパース化問題として定式化し、それを解決するための新しいデュアル半空間投影勾配 (DHSPG) 最適化アルゴリズムを提案しました。

Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案

DHSPG は、冗長なゼロ不変式グループを非常に効果的に見つけてゼロに投影し、重要なゼロ不変式グループを継続的にトレーニングして、元のモデルと同等のパフォーマンスを達成できます。

従来のスパース最適化アルゴリズムと比較して、DHSPG はより強力で安定したスパース構造探索機能を備え、トレーニング検索スペースを拡大するため、通常はより高い実際のパフォーマンス結果が得られます。

Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案

軽量圧縮モデルを自動的に構築する

DHSPG を使用してモデルをトレーニングすると、ゼロ不変 A ソリューションが得られます。グループの構造的疎性が高い、つまり、ゼロに射影される多くのゼロ不変グループを含む解は、モデルのパフォーマンスも高くなります。次に、研究者らは、圧縮ネットワークを自動的に構築するために、冗長なゼロ不変グループに対応するすべての構造を削除しました。ゼロ不変グループの特性により、つまり、ゼロ不変グループがゼロに等しい場合、入力値が何であっても、出力値は常にゼロになるため、冗長なゼロ不変グループを削除しても、ネットワークに影響を与える可能性があります。したがって、OTO を通じて取得された圧縮ネットワークは、従来の方法で必要とされたモデルのさらなる微調整を必要とせずに、完全なネットワークと同じ出力を持ちます。

数値実験

分類タスク

Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案

##表 1: CIFAR10 BN モデルの VGG16 および VGG16-パフォーマンス

CIFAR10 の VGG16 実験では、OTO は浮動小数点数を 86.6%、パラメータ数を 97.5% 削減し、そのパフォーマンスは印象的でした。

Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案

#表 2: CIFAR10 の ResNet50 実験

CIFAR10 の ResNet50 実験では、量子化なしで OTO が優れたパフォーマンスを発揮 SOTA ニューラル ネットワーク圧縮フレームワーク AMC と ANNC は、FLOP の 7.8% とパラメータの 4.1% のみを使用します。

Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案#表 3. ImageNet の ResNet50 実験

ImageNet の ResNet50 実験では、さまざまな構造的疎性ターゲットの下での OTOv2 のパフォーマンスが示されています。既存の SOTA メソッドと同等かそれ以上です。

Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案表 4: より多くの構造とデータ セット

OTO はさらに多くのデータ セットとモデル構造を実現しました。悪くないパフォーマンスです。

低レベル視覚タスク

Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案表 4: CARNx2

の実験超解像タスクでは、OTOワンストップトレーニングによりCARNx2ネットワークを圧縮し、オリジナルモデルと同等の性能を達成し、計算量とモデルサイズを75%以上圧縮しました。

言語モデル タスク

#さらに、研究者らは、Bert のコア アルゴリズムの 1 つである DHSPG 最適化アルゴリズムも実行しました。比較実験により、他のスパース最適化アルゴリズムと比較してその高いパフォーマンスが検証されます。 Squad では、トレーニングに DHSPG を使用することで得られるパラメーター削減とモデルのパフォーマンスが、他のスパース最適化アルゴリズムよりもはるかに優れていることがわかります。 Microsoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案

結論

Microsoft チームは、OTO (Only-Train-Once) と呼ばれる、自動化されたワンストップ ニューラル ネットワーク トレーニング構造プルーニング フレームワークを提案しました。高いパフォーマンスを維持しながら、完全なニューラル ネットワークを軽量ネットワークに自動的に圧縮できます。 OTO は、既存の構造プルーニング手法の複雑な多段階プロセスを大幅に簡素化し、さまざまなネットワーク アーキテクチャとアプリケーションに適しており、ユーザーの追加のエンジニアリング投資を最小限に抑え、多用途で効果的で使いやすいです。

以上がMicrosoft、ワンストップで高性能軽量モデルを取得できる自動ニューラルネットワークトレーニングプルーニングフレームワーク「OTO」を提案の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:51cto.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート