HuggingFace は、大規模モデルの製造パフォーマンスを効率的にリリースするための Transformer 拡張および最適化ライブラリをオープンソース化しました。

HuggingFace は、大規模モデルの製造パフォーマンスを効率的にリリースするための Transformer 拡張および最適化ライブラリをオープンソース化しました。

[[428679]]

Tesla、Google、Microsoft、Facebook などのテクノロジー大手には多くの共通点がありますが、その 1 つは、毎日数十億の Transformer モデル予測を実行していることです。たとえば、トランスフォーマーは、テスラの自動運転システム「オートパイロット」で車を運転したり、Gmail で文章を完成させたり、Facebook でユーザーの投稿を即座に翻訳したり、Bing でユーザーの自然言語クエリに回答したりします。

トランスフォーマーは機械学習モデルの精度を大幅に向上させ、NLP 分野に旋風を巻き起こし、他のモダリティ (音声や視覚など) にも拡大しています。しかし、これらの大規模なモデルを工業生産に適用し、大規模に迅速に実行することは、機械学習エンジニアリング チームにとって大きな課題です。

上記の企業のように、何百人もの高度なスキルを持つ機械学習エンジニアを雇用せずに、このような大規模なモデルを適用するにはどうすればよいでしょうか?最近、Hugging Face は新しいパッケージ「Optimum」をオープンソース化しました。これは、Transformer の工業生産に最適なツールキットを提供することを目的としたもので、特定のハードウェア上でモデルを最高の効率でトレーニングおよび実行できるようにします。

プロジェクトアドレス: https://github.com/huggingface/blog/blob/master/hardware-partners-program.md

OptimumはTransformerの効率的な動作を可能にします

モデルのトレーニングと提供時に最高のパフォーマンスを得るには、モデル アクセラレーション テクノロジーがターゲット ハードウェアと互換性がある必要があります。各ハードウェア プラットフォームは、パフォーマンスに大きな影響を与える可能性のある特定のソフトウェア ツール、機能、およびチューニング方法を提供します。同様に、スパース化や量子化などの高度なモデル加速技術を活用するには、最適化されたカーネルがシリコン上の操作と互換性があり、モデル アーキテクチャから派生したニューラル ネットワーク グラフに固有のものである必要があります。この 3 次元の互換性マトリックスとモデル高速化ライブラリの使用方法について深く考えることは、機械学習エンジニアが経験したことのない難しい作業です。

Optimum は、「この作業を簡素化し、効率的な人工知能ハードウェア向けのパフォーマンス最適化ツールを提供し、ハードウェア パートナーと協力して機械学習エンジニアに機械学習を最適化できる能力を提供する」ために立ち上げられました。

Transformer パッケージを使用すると、研究者やエンジニアは、フレームワーク、アーキテクチャ、ワークフローの複雑さを考慮することなく、最先端のモデルをより簡単に使用できます。また、エンジニアは、ハードウェア プラットフォームでのモデル アクセラレーションの複雑さを考慮することなく、利用可能なすべてのハードウェアの機能を簡単に活用できます。

最適な実践: Intel Xeon CPU 上でモデルを量子化する方法

定量化はなぜそれほど重要でありながら、達成するのが難しいのでしょうか?

事前トレーニング済みの言語モデル BERT は、さまざまな NLP タスクで最高のパフォーマンスを達成しており、ViT や SpeechText などの他の Transformer ベースのモデルも、それぞれコンピューター ビジョンと音声タスクで最適な結果を達成しています。トランスフォーマーは機械学習の世界に遍在しており、今後も存在し続けるでしょう。

しかし、大量の計算能力が必要となるため、Transformer ベースのモデルを工業生産に適用するのは困難でコストもかかります。この問題に対処しようとする技術は数多くありますが、最も一般的なのは量子化です。残念ながら、ほとんどの場合、モデルの量子化には次の理由により多くの作業が必要になります。

まず、モデルを編集する必要があります。具体的には、いくつかの操作を量子化された形式で置き換え、いくつかの新しい操作(量子化ノードと逆量子化ノード)を挿入する必要があり、他の操作は重みとアクティベーションが量子化される状況に適応する必要があります。

たとえば、PyTorch は動的グラフ モードで動作するため、この部分は非常に時間がかかり、上記の変更をモデル実装自体に追加する必要があります。 PyTorch では現在、モデルの実装を変更せずにモデルを変換できる「torch.fx」というツールを提供していますが、モデルがトレースをサポートしていない場合、このツールを使用するのは困難です。これに基づいて、ユーザーはモデルの編集が必要な部分を見つけ、どの操作に利用可能な量子化カーネル バージョンがあるかなどの問題を考慮する必要もあります。

次に、モデルを編集した後、最適な定量的設定を見つけるために多くのパラメータを選択する必要があります。次の 3 つの問題を考慮する必要があります。

  • 距離補正にはどのような観測方法を使用すればよいでしょうか?
  • どの量子化方式を使用すべきでしょうか?
  • ターゲット デバイスではどのような量子化関連のデータ型 (int8、uint8、int16) がサポートされていますか?

ここでも、量子化と許容できる精度損失のバランスをとってください。

最後に、ターゲットデバイスから量子化されたモデルをエクスポートします。

PyTorch と TensorFlow は量子化の簡素化において大きな進歩を遂げていますが、Transformer ベースのモデルは複雑であり、市販のツールを使用して多大な労力をかけずに動作させることは困難です。

Intel の量子化アーティファクト: ニューラル コンプレッサー

Neural Compressor アーキテクチャの図。アドレス: https://github.com/intel/neural-compressor

Intel のオープンソース Python ライブラリ Neural Compressor (旧称「Low Precision Optimization Tool」- LPOT) は、ユーザーが低精度推論ソリューションを展開するのを支援するために使用されます。ディープラーニング モデルの低精度メソッドを通じて、推論パフォーマンスやメモリ使用量などの最適な生産目標を達成します。

Neural Compressor は、トレーニング後の量子化、量子化トレーニング、動的量子化をサポートします。量子化方法、ターゲット、パフォーマンス評価基準を指定するには、ユーザーはチューニング パラメータを指定する構成 yaml ファイルを提供する必要があります。構成ファイルは、Hugging Face のモデル ハブでホストすることも、ローカル フォルダー パス経由で提供することもできます。

Optimumを使用してIntel Xeon CPUにTransformer量子化を簡単に実装する

実装コードは次のとおりです。

ML 生産パフォーマンスの民主化への道

SOTAハードウェア

Optimum は、ソフトウェアとハ​​ードウェアのアクセラレーション技術を使用して効率を最大化できる専用ハードウェア上で最適な生産パフォーマンスを実現することに重点を置いています。 Optimum チームは、ハードウェア パートナーと協力して、アクセラレーション テクノロジを有効にし、テストし、維持し、使いやすい方法でインタラクティブ化します。チームは、効率的な機械学習を実現するために協力する新しいハードウェア パートナーを近日中に発表する予定です。

SOTA モデル

Optimum チームはハードウェア パートナーと協力して、特定のハードウェア向けに最適化されたモデル設定とコンポーネントを研究し、その結果を Hugging Face モデルに関する AI コミュニティに公開します。チームは、Optimum と特定のハードウェア向けに最適化されたモデルによって、機械学習で消費される総エネルギーの大部分を占める生産プロセスの効率が向上することを期待しています。最も重要なことは、Optimum によって一般の人々による Transformer の大量導入が促進されることを期待しているということです。

<<:  TransformerがCNNバックボーンネットワークを活性化、HKUとTencentの視覚的自己教師あり表現学習CARE

>>:  ロボットは意識を獲得できるのか?もしそうなら、どうやって知るのでしょうか?

ブログ    
ブログ    
ブログ    

推薦する

PaddlePaddleのクリック率に基づくディープラーニング手法の試み

序文チーム内でクリック率に関する記事をいくつか共有した際に、広告のクリック率の推定値を計算する一般的...

機械が人間に取って代わるというのは空想ではありません。最初に影響を受けるのは 3 つの職業です。油断しないでください。

科学技術の継続的な発展により、多くの業界で「ロボット」が使用され、効率が向上するだけでなく、人件費も...

AIは病気の診断や新薬の設計に大きな可能性を秘めている

ヘルスケア業界は常にイノベーションの先駆者であり続けています。しかし、病気やウイルスが変異し続ける中...

決済の未来は生体認証にかかっている

現在、生体認証技術は比較的成熟しており、さまざまな応用シナリオがあります。国内の生体認証市場全体は、...

インドネシアのゴミ分別:人工知能が役に立つ

上海市は7月に「史上最も厳しいゴミ分別措置」を実施し始めて以来、ゴミ分別は多くの人々の日常生活におけ...

VB.NET コーディングアルゴリズム学習ノート

この記事では、VB.NET コーディング アルゴリズムを紹介します。おそらく、まだ多くの人が VB....

28 歳の中国人 Meta ソフトウェア エンジニアが、次のような理由で年収 37 万ドルの仕事を辞めました...

物語の主人公は中国人のソフトウェアエンジニア、エリック・ユーです。 2016年、Google、Met...

ロボット工学の分野にディープラーニングを取り入れる新たな試みはありますか?

ディープラーニングが人気を集めている今、誰もが自分の研究分野でそれを活用できないか考えています。その...

アルゴリズムの質問: 計算された π の値が正確かどうかをどのように判断するのでしょうか?

以下を読む前に、まず考えてみてください。 πの値を計算する世界記録保持者であるMysticialから...

CPU、GPU、NPU、FPGA はディープラーニングでどのように優位性を発揮するのでしょうか?

AIの応用が広まるにつれ、ディープラーニングは現在のAI研究と応用の主流の方法となっています。膨大...

会話型 AI は FMCG 業界でどのように導入されていますか?

今日、ますます多くの消費財 (CPG) 企業が、日用消費財 (FMCG) 事業に AI テクノロジー...

もう感情を隠せない?歩く姿勢からAIがわかる!

歩き方は人それぞれ違います。歩き方は、その時々の気分など、あなたに関する秘密を明らかにします。たとえ...

職場におけるAIとARの進化

[[434145]]職場における支援/拡張現実 (AR) と人工知能 (AI) の可能性を最大限に引...

...

馬化騰氏は「人工知能の4つの主要な発展傾向が今後10年間で世界を変えるだろう」と述べた。

今後10年間で世界を変える人工知能の4つの主要な発展トレンドの分析61歳のビル・ゲイツ氏は大学卒業生...