Eine Sammlung der am häufigsten verwendeten Optimierungsalgorithmen für Datenwissenschaft und maschinelles Lernen
Dieses Repository wird von und gehört zu: https://github.com/muradmustafayev-03
Mitwirkende Anleitung: https://github.com/muradmustafayev-03/optimization-algorithms/blob/main/contributing.md
Um Probleme zu melden: https://github.com/muradmustafayev-03/optimization-algorithms/issues
So installieren Sie das Paket als Bibliotheksutz:
PIP Installieren Sie optimierende Algorithmen
Dann zu importieren:
Optimierung importieren_algorithmen
In diesem Projekt versuche ich, so viele nützliche Optimierungsalgorithmen wie möglich zu sammeln und sie auf einfache und wiederverwendbare Weise zu schreiben. Die Idee ist, all diese Algorithmen in Python auf eine grundlegende und dennoch benutzerfreundliche Weise zu schreiben, wobei Numpy die einzige externe Bibliothek ist. Das Projekt befindet sich derzeit in den frühen Phasen der Entwicklung, kann es jedoch bereits in ihren eigenen Projekten umsetzen. Und sicher sind Sie immer herzlich eingeladen, einen Beitrag zu leisten oder Vorschläge zu machen. Jedes Feedback wird geschätzt.
Für weitere Informationen: https://en.wikipedia.org/wiki/mathematical_optimization
Der Optimierungsalgorithmus ist ein Algorithmus, der verwendet wird, um Eingangswerte der globalen Minima oder weniger häufig der globalen Maxima einer Funktion zu finden.
In diesem Projekt suchen alle Algorithmen nach der globalen Minima der angegebenen Funktion. Wenn Sie jedoch die globale Maxima einer Funktion finden möchten, können Sie die Negation Ihrer Funktion übergeben: -F (x) anstelle von f (x) , damit seine Mimima die Maxima Ihrer Funktion ist.
Optimierungsalgorithmen werden häufig in maschinellem Lernen , Mathematik und einer Reihe anderer angewandter Wissenschaften verwendet.
Es gibt mehrere Arten von Optimierungsalgorithmen . Hier finden Sie eine kurze Beschreibung derjenigen, die im Projekt verwendet werden:
TESE -Algorithmen beginnen von einem zufälligen oder angegebenen Punkt und bewegen Sie sich Schritt für Schritt die engste Minima. Sie erfordern häufig das partielle Derivat oder den Gradienten der Funktion, wodurch die Funktion differenzierbar ist. Diese Algorithmen sind einfach und eignen sich gut für Schalenfunktionen .
Diese Algorithmen beginnen mit einer Reihe von zufälligen Lösungen und wählten dann die besten Lösungen aus dem Set und erzeugen auf ihnen eine neue Reihe besserer Lösungen, wodurch sich jede Iteration weiterentwickelt. Diese Algorithmen können nicht mit lokalen Mindestmindestmindestdiensten geliefert werden, finden aber direkt die globale , sodass sie für Funktionen mit vielen lokalen Minimen verwendet werden können.
Benchmark -Funktionen werden verwendet, um Optimierungsalgorithmen zu testen, sie können jedoch selbst verwendet werden. In diesem Projekt werden mehrere Benchmark -Funktionen verwendet, die je nach Form in verschiedene Typen unterteilt sind.
Weitere Informationen und die mathematische Definition der Funktionen finden Sie unter: https://www.sfu.ca/~ssurjano/optimization.html