この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載しています。転載の際は出典元にご連絡ください。 機械学習には、 SGD 、 Adam 、 AdaGrad 、 AdaDeltaなど、多くの最適化アルゴリズムがあります。それらの反復式だけでも、人々に頭痛の種を与えるのに十分です。 幸いなことに、これらの最適化ツールは TensorFlow、Keras、PyTorch に統合されていますが、ステップごとの反復でどのように最小値に「スライド」するかを本当にご存知ですか? 現在、機械学習最適化アルゴリズムのデモがあり、パラメータ調整が画像からのアルゴリズム結果に与える影響や、それぞれの長所と短所を直感的に感じることができます。 小さくなりました!開発者はデモを提供しているだけでなく、プログラマー向けの C++ データベースもパッケージ化しています。まずは試してみましょう。 デモを試す 試用方法は非常に簡単で、ソフトウェアをインストールする必要もありません。ensmallen の Web サイトにアクセスし、[デモ] タブを選択するだけで、一連の最適化アルゴリズムの 3D 概略図が表示されます。 デフォルトのページでは、一般的な Adam アルゴリズムが使用されています。パラメータが赤いルートをたどり、最終的に損失関数の最高点に下がることがわかります。 左側にはパラメータの初期値の場所(図の赤い点)があり、マウスで自由にドラッグできます。 中央と右のグラフはどちらも損失関数の「等高線」です。中央では異なる高さが異なる色でマークされ、損失関数の勾配フィールドが右側に直接示され、矢印は勾配の方向を示し、長さは勾配のサイズを示します。等高線が密になればなるほど、勾配が大きくなることがわかります。 上記の損失関数のグラフが明確で直感的ではないと思われる場合は、高解像度の 3D グラフもあります。 反復回数が増えるにつれて、損失関数の値は減少し続けます。 Adam アルゴリズムで調整できるハイパーパラメータは、ステップ サイズ、反復回数、許容誤差、 β1 、 β2 、ファジー係数 ϵ 、バッチ サイズです。 スライダーをドラッグしてハイパーパラメータを調整すると、「赤い線」の形状と終点がそれに応じて変化します。ステップ サイズを調整して、このパラメーターが結果にどのような影響を与えるかを確認しましょう。 ステップ サイズを大きくすると学習曲線の振動が大きくなり、ステップ サイズが小さすぎると損失関数の収束が遅くなります。 △ステップサイズはそれぞれ0.3、0.03、0.003です 上記は最も単純なケースです。デモ インターフェースでは、他にも奇妙な損失関数が提供されています。 ほぼすべての一般的な最適化アルゴリズム: これらの最適化アルゴリズムには、さまざまな形状の損失関数においてそれぞれ長所と短所があります。 損失関数の「輪郭」が楕円の場合、Adam は非常に速く収束し、わずか 100 回の反復で収束しますが、AdaGrad では収束までに 300 回近くの反復が必要です。 しかし、アダムには絶対的な優位性はありません。複数の鞍点と極小値を持つグラフでは、Adam は初期段階では急速に減少しますが、最終段階ではより激しく振動し、収束速度は AdaGrad よりも遅くなります。 上記の「遊び方」はデモのほんの一部です。もっと試してみたい方は、記事末尾のリンクをご覧ください。 C++プログラマーにとって朗報 ensmallen は単なる楽しいデモだと思わないでください。実際には効率的な C++ 最適化ライブラリです。 C++ を使用して AI をプログラミングするプログラマーにとっては、任意の関数に対して数学的最適化を実行できるため、C++ 機械学習ツールの不足という問題点が解決されます。 基本的な最適化アルゴリズムをパッケージ化するだけでなく、ensmallen では、ユーザーがシンプルな API を使用して新しいオプティマイザーを簡単に追加することもできます。新しいオプティマイザーを実装するには、メソッドと新しい目的関数のみが必要であり、通常は 1 つまたは 2 つの C++ 関数で実行できます。 ensmallen をインストールするには、次の要件を満たす必要があります。
ensmallen 内のすべては ens 名前空間内にあるため、コード内に using ディレクティブを配置すると便利な場合がよくあります。
Adam を例にとると、コードは次のようになります。
このうち、Adam オプティマイザーのパラメータの順序は、ステップ サイズ、バッチ サイズ、β 1 、β 2 、ϵ、最大反復回数、許容誤差、各関数にランダムにアクセスするかどうかです。 その他の最適化アルゴリズムについては、Web サイトにアクセスして詳細なドキュメントを参照できます。 ***すべてのリソースを添付します: 縮小圧縮パッケージのダウンロードアドレス: https://ensmallen.org/files/ensmallen-1.14.2.tar.gz デモアドレス: https://vis.ensmallen.org/ |
>>: 人工知能の知られざる歴史: 目に見えない女性プログラマーたち
世界の通信業界の専門家が2024年を予測5G が世界をカバーし、人工知能がネットワークを再形成し、デ...
[[429116]]最近、福島邦彦氏が2021年度バウアー賞および科学業績賞を受賞したというニュース...
2019年国際産業インターネット革新・開発フォーラムがこのほど、第2回中国国際輸入博覧会で開催され...
ニシャ・アーヤ著翻訳者 | ブガッティレビュー | Chonglou生成 AI には現在どのような機...
数日前、Meta は Llama 2 の無料商用バージョンをリリースし、AI コミュニティに大きなセ...
1. AIフレームワークの重要性AIフレームワークは、人工知能のオペレーティングシステムであり、基本...
科学技術の発展にはいつも驚かされます。携帯電話がいつからこんなにスマートになったのか、コンピューター...
この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...
ディープニューラルネットワークは、数学モデルを使用して画像やその他のデータを処理する多層システムであ...
[[406628]]仮想環境 (ALE、MuJoCo、OpenAI Gym) は、エージェントの制御...
最近では、「顔スキャン」、つまり顔認識技術を使うことで、解決できることが増えています。買い物の際の「...
この記事では、人工知能がインテリジェントでない領域と、ナレッジ グラフに基づく認知知能がインテリジェ...