Facebookは、さまざまな機械学習の問題に適用できる、勾配フリー最適化のためのオープンソースツール「Nevergrad」をリリースしました。

Facebookは、さまざまな機械学習の問題に適用できる、勾配フリー最適化のためのオープンソースツール「Nevergrad」をリリースしました。

自然言語処理や画像分類から翻訳など、ほとんどの機械学習タスクは、モデル内のパラメータやハイパーパラメータを調整するために勾配フリー最適化に依存しています。パラメータ/ハイパーパラメータのチューニングをより迅速かつ容易にするために、Facebook は Nevergrad (https://github.com/facebookresearch/nevergrad) という Python 3 ライブラリを作成し、オープンソースとしてリリースしました。 Nevergrad は、勾配計算に依存しない多くの最適化アルゴリズムを提供し、それらを標準の Python フレームワークで提供します。さらに、Nevergrad にはテストおよび評価ツールが含まれています。

Nevergrad は現在一般公開されており、AI 研究者や勾配フリー最適化に取り組んでいるその他の研究者は、すぐに Nevergrad を研究に役立てることができます。このプラットフォームにより、最新のアルゴリズムとメソッドを実装し、さまざまな設定でのパフォーマンスを比較できるようになるだけでなく、機械学習の科学者が特定のユースケースに最適なオプティマイザーを見つけるのにも役立ちます。 Facebook AI Research (FAIR) では、研究者が強化学習、画像生成、その他の分野のさまざまなプロジェクトに Nevergrad を適用しています。たとえば、Nevergrad はパラメータスイープを置き換えて、機械学習モデルをより適切に調整するのに役立ちます。

このライブラリには、次のようなさまざまな最適化ツールが含まれています。

  • 差異的進化

  • 逐次二次計画法

  • 高速GA

  • 共分散行列の適応

  • 騒音管理のための人口制御方法

  • 粒子群最適化

これまでは、これらのアルゴリズムを使用するには、研究者が独自のアルゴリズム実装を記述する必要があり、異なる *** 方法を比較することが困難、または不可能になることがよくありました。現在、Nevergrad を使用することで、AI 開発者は特定の機械学習の問題に対してさまざまなアプローチを簡単にテストし、結果を比較できます。あるいは、よく知られたベンチマークを使用して、新しい勾配フリー最適化手法が現在の最先端の手法とどのように比較されるかを評価することもできます。

Nevergrad に含まれる勾配フリー最適化手法は、次のようなさまざまな機械学習の問題に使用できます。

  • マルチモーダル問題、つまり複数の局所最小値を持つ問題。 (言語モデリングのためのディープラーニングハイパーパラメータ化など)

  • 悪条件の問題は、通常、ダイナミクスが大きく異なる複数の変数を最適化するときに発生します (例: 特定の問題に合わせて調整されていないドロップアウトや学習率)。

  • 部分的な回転問題を含む、分離可能な問題または回転問題。

  • 部分的に分離可能な問題の場合、複数の変数ブロックを使用してこのタイプの問題を解決することを検討できます。例としては、ディープラーニングやその他の設計形式のアーキテクチャ検索や、マルチタスク ネットワークのパラメーター化などが挙げられます。

  • 離散的、連続的、または混合的な問題。これらの問題には、電力システム (一部の発電所は調整可能な連続出力を持ち、他の発電所は連続または半連続出力を持つため) や、各層の学習率、重みの減衰、非線形性のタイプの同時選択を必要とするニューラル ネットワーク タスクが含まれます。

  • 強化学習の異なるレベルなど、まったく同じ引数で関数を呼び出したときに異なる結果を返す可能性がある、ノイズの多い問題。

機械学習では、Nevergrad を使用して、学習率、運動量、重みの減衰 (おそらくレイヤーごと)、ドロップアウト アルゴリズム、ディープ ネットワークの各部分のレイヤー パラメーターなどのパラメーターを調整できます。より一般的には、非勾配法は、電力網管理 (https://www.sciencedirect.com/science/article/pii/S0142061597000409)、航空学 (https://www.sciencedirect.com/science/article/pii/S0142061597000409)、レンズ設計 (https://www.researchgate.net/publication/222434804_Human-competitive_lens_system_design_with_evolution_strategies)、その他多くの科学および工学アプリケーションでも使用されています。

勾配フリー最適化が必要なのはなぜですか?

ニューラル ネットワークの重みを最適化するなどのシナリオでは、関数の勾配を解析的に計算するのは簡単です。ただし、関数 f の計算が遅い場合やドメインが不連続な場合など、他のシナリオでは、関数の勾配を推定することはできません。これらのアプリケーションケースでは、勾配フリー法が解決策を提供します。

単純な勾配フリーのソリューションはランダム検索です。これは、多数の検索ポイントをランダムにサンプリングし、各検索ポイントを評価して、最適な検索ポイントを選択することから構成されます。ランダム検索は多くの単純なシナリオではうまく機能しますが、高次元のシナリオではパフォーマンスが低下します。機械学習のパラメータ調整によく使用されるグリッド検索にも、同様の制限があります。ただし、代替アプローチは多数あります。シミュレーターに二次近似を更新する逐次二次計画法などの応用数学から生まれたものもあれば、不確実性を含む目的関数をモデル化するベイズ最適化や、有望な変異体の選択、変異、混合に関する膨大な研究が含まれる進化計算もあります。

この例では、進化アルゴリズムがどのように機能するかを示します。関数空間内の検索ポイントをサンプリングし、最適なポイント クラスターを選択してから、既存のポイントの周囲に新しいポイントを推奨し、現在のポイント クラスターを最適化します。

Nevergradを使用してアルゴリズムベンチマークを生成する

Facebook の研究チームは Nevergrad を使用していくつかのベンチマークを実装し、特定のアルゴリズムが特定の状況でどの程度うまく機能するかを示しました。これらのよく知られた例は、さまざまな設定 (マルチモーダルまたは非マルチモーダル、ノイズありまたはノイズなし、離散または非離散、悪条件または悪条件なし) に対応しており、Nevergrad を使用して最適な最適化アルゴリズムを決定する方法を示しています。

各ベンチマークにおいて、Facebook リサーチ チームは X の異なる値に対して独立した実験を実施しました。これにより、X の複数の値における方法間の一貫したランキングが統計的に有意であることが保証されます。以下の 2 つのベンチマーク例に加えて、簡単なコマンド ラインを使用してそれらを再実行する方法を説明する、より包括的なリストがここにあります。

この図はノイズ最適化の例を示しています

この例では、pcCMSA-ES ノイズ管理原理 (https://homepages.fhv.at/hgb/New-Papers/PPSN16_HB16.pdf) を使用する TBPSA が、いくつかの代替手段よりも優れていることを示しています。 Facebook の研究チームは、ここでのアルゴリズムの限定的な例と TBPSA を比較しただけですが、他の方法よりも優れたパフォーマンスを発揮しました。

Nevergrad プラットフォームは、多くの機械学習シナリオで発生する個別の目的関数も実行できます。これらのシナリオには、たとえば、限られたオプション セット (ニューラル ネットワークのアクティベーション関数など) からの選択や、個々のレイヤー タイプからの選択 (たとえば、ネットワーク内の特定の場所でスキップ接続を必要とするかどうかの決定) が含まれます。

既存の代替プラットフォーム (Bbob および Cutest) には、個別のベンチマークは含まれていません。 Nevergrad は、softmax 関数 (離散問題をノイズの多い連続問題に変換する) または連続変数の離散化によって処理された離散領域で実行できます。

Facebook の研究チームは、このシナリオでは FastGA (https://arxiv.org/abs/1703.03334) が最も優れたパフォーマンスを発揮することに気付きました。 DoubleFastGA は、1/dim と 1/2 ではなく、1/dim と (dim-1)/dim の間の突然変異率に対応します。これは、元の範囲がバイナリ ドメインに対応しているのに対し、ここでは任意のドメインを考慮しているためです。いくつかのシナリオでは、単純な均一な突然変異率の混合 (https://arxiv.org/abs/1606.05551) が適切に機能します。

研究者と機械学習科学者のためのツールボックスの拡張

Facebook は、研究者が新しいアルゴリズムを作成し評価するのを支援するために、Nevergrad に機能を追加し続けます。初期バージョンには基本的な人間によるテスト機能が搭載されていますが、Facebook は物理モデルを表現する機能など、さらに多くの機能を追加する予定です。応用面では、Nevergrad の使いやすさをさらに向上させ、勾配がうまく決定できない PyTorch 強化学習モデルのパラメータを最適化するために使用することを試みます。 Nevergrad は、A/B テストのパラメータスイープやジョブのスケジューリングなどのタスクにも役立ちます。

<<:  BERTに続き、この新しいモデルは11のNLPベンチマークで再び記録を更新しました。

>>:  ディープラーニングの成果は収穫されようとしているのでしょうか? 11人の専門家がAIの現在(2018年)と未来(2019年)について語る

ブログ    

推薦する

...

「ドメイン外」テキストは不要、Microsoft: NLP はターゲットを絞った方法で事前トレーニングする必要がある

[[337084]]バイオメディカルなどの専門分野では、NLP モデルのトレーニングには、特定のデー...

マシンビジョンにはどのようなハードウェアが含まれていますか?

画像およびマシンビジョン技術を使用した産業オートメーションとインテリジェンスの需要があらゆる分野で広...

より強力なLlama 2はオープンソースであり、商用目的で直接使用できます。一夜にして、ビッグモデルの風景は変わりました。

一夜にして、ビッグモデルの状況は再び劇的に変化しました。写真Llama は常に AI コミュニティで...

ビッグデータと人工知能のために生まれた新しい職業:アルゴリズム専門家

[[69076]]映画「マトリックス」でレオが銃弾の雨をかわす難しい動きを誰もが覚えているはずだ。こ...

BBCはOpenAIによるデータスクレイピングをブロックしているが、ニュースでのAIの使用にはオープンである

英国最大の報道機関であるBBCは10月7日、ニュース、アーカイブ、「パーソナライズされた体験」の研究...

米国は戦闘における人工知能の活用を推進し続けている

海外メディアの報道によると、米国防総省は最近、トップレベルの設計を強化し、関連技術の急速な発展を促進...

...

どこにでも「ゴミ」がある: 人工知能には高品質のデータが不足しています!

この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...

...

...

AI「コスプレ」の鍵はキャラクター設定にあり!復旦大学、人民大学などがビッグファイブ性格特性+MBTIテストを発表:特性回復率は82.8%に達し、OOCを否定

好きなアニメ小説のキャラクターとチャットしてみませんか?バーチャルコンパニオンが欲しいですか?あなた...

人工知能と機械学習とデータ分析の違いは何ですか?

調査によると、人工知能はビジネスの生産性を 54% 向上させることができます。さらに、15% の組織...

LLM で会話インターフェースを設計するにはどうすればいいですか?

著者:ヴァルン・シェノイ編纂者:王睿平大規模言語モデル (LLM) で構築されたテキスト ボックスの...

...