データサイエンスと機械学習のために最も一般的に使用される最適化アルゴリズムのコレクション
このリポジトリは、https://github.com/muradmustafayev-03によって作成され、属します
寄稿ガイド:https://github.com/muradmustafayev-03/optimisation-algorithms/blob/main/contributing.md
問題を報告するには、https://github.com/muradmustafayev-03/optimisation-algorithms/issues
ライブラリとしてパッケージをインストールするには:
PIPインストールOptimisation-Algorithms
その後、インポートするには:
import optimisation_algorithms
このプロジェクトでは、できるだけ多くの有用な最適化アルゴリズムを収集し、シンプルで再利用可能な方法で書き込みます。アイデアは、これらすべてのアルゴリズムをPythonで書くことです。基本的でありながら使いやすい方法で、 Numpyが使用される唯一の外部ライブラリです。このプロジェクトは現在、開発の初期段階にありますが、すでに自分のプロジェクトでそれを実装しようとすることができます。そして確かに、あなたはいつでも貢献したり、提案をしたりすることを歓迎します。どんなフィードバックも感謝しています。
詳細については、https://en.wikipedia.org/wiki/mathematical_optimization
最適化アルゴリズムはアルゴリズムであり、関数のグローバルな最大値のグローバル最小値以下の入力値を見つけるために使用されます。
このプロジェクトでは、すべてのアルゴリズムが指定された関数のグローバルミニマーを探します。ただし、関数のグローバルな最大値を見つけたい場合は、関数の否定を渡すことができます: -f(x)は、 f(x)ではなく、そのミミマが関数の最大値になることです。
最適化アルゴリズムは、機械学習、数学、およびその他の応用科学の範囲で広く使用されています。
最適化アルゴリズムには複数の種類があります。そのため、プロジェクトで使用されているものの簡単な説明が次のとおりです。
TESEアルゴリズムは、ランダムまたは指定されたポイントから始まり、ステップバイステップで最も近い最小値を動かします。多くの場合、関数の部分微分または勾配を必要とします。これには、関数が微分可能である必要があります。これらのアルゴリズムはシンプルで、ボウルのような機能に適しています。これは、機能が1つ以上の最小値がある場合、ローカルミニマに在庫があり、グローバルなものを見つけることができます。
これらのアルゴリズムは、一連のランダムソリューションから始まり、セットから最適なソリューションを競合的に選択し、それらに基づいて、より良いソリューションの新しいセットを生成し、各反復を進化させます。これらのアルゴリズムは局所的な最小値を在庫していませんが、グローバルなアルゴリズムを直接見つけるため、多くのローカルミニム機能に使用できます。
ベンチマーク関数は、最適化アルゴリズムをテストするために使用されますが、それ自体で使用できます。このプロジェクトでは複数のベンチマーク関数が使用されており、形状に応じていくつかのタイプに分かれています。
詳細と機能の数学的定義については、https://www.sfu.ca/~ssurjano/optimization.htmlを参照してください。