[PYTHON] Wie man optuna einstellt (wie man einen Suchraum schreibt)

Notieren Sie sich, wie Sie Hyperparameter in Optuna einstellen.

Verwendung von Optuna, einem Framework zur Optimierung von Hyperparametern. Es wurde von Preferred Networks erstellt.

Offizielles Tutorial https://optuna.readthedocs.io/en/stable/tutorial/first.html API-Referenz https://optuna.readthedocs.io/en/stable/reference/index.html

Definieren Sie die Zielfunktion und den Suchraum. Erstellen Sie als Nächstes eine "Studien" -Instanz und führen Sie die Optimierung mit der "Optimierungs" -Methode durch.

import optuna

#Objektive Funktionsdefinition
def objective(trial):
    #Beschreiben Sie hier den Suchraum


    return ***Zielfunktion**Kann maximiert oder minimiert werden***

Der Erkundungsraum ist Setze mit trial.suggest_. Übergeben Sie es wie folgt als Ganzzahl, Kategorie usw.

Wählen Sie im Beispiel unter "suggest_categorical (Name, Auswahlmöglichkeiten)" 3 für den Parameter "Kernel" aus. suggest_int (name, low, high, step = 1, log = False) gibt den Wert eines Integer-Parameters an. suggest_uniform (name, low, high) gibt einen linearen und kontinuierlichen Wert zwischen low und high an suggest_loguniform (name, low, high) gibt kontinuierliche Werte in logarithmischen Intervallen an. suggest_float (Name: str, niedrig: float, hoch: float, *, Schritt: Optional [float] = Keine) enthält den Wert des Gleitkommaparameters. Mit suggest_discrete_uniform (name, low, high, q) wird der Wert aus dem Bereich low, high abgetastet und der Dispersionswert in Schritt q angegeben.

def objective(trial):
#Wie man einen Suchraum gibt
    # Categorical parameter
    kernel = trial.suggest_categorical('kernel', ['linear', 'poly', 'rbf'])

    # Int parameter
    num_layers = trial.suggest_int('num_layers', 1, 3)

    # Uniform parameter
    dropout_rate = trial.suggest_uniform('dropout_rate', 0.0, 1.0)

    # Loguniform parameter
    learning_rate = trial.suggest_loguniform('learning_rate', 1e-5, 1e-2)

    # Discrete-uniform parameter
    drop_path_rate = trial.suggest_discrete_uniform('drop_path_rate', 0.0, 1.0, 0.1)
#Automatische Optimierung von Hyperparametern
study = optuna.create_study()
#n_Legt die Anzahl der Iterationen fest, die in Versuchen untersucht werden sollen.
study.optimize(objective, n_trials = 100)

Recommended Posts

Wie man optuna einstellt (wie man einen Suchraum schreibt)
So richten Sie SVM mit Optuna ein
So stellen Sie xg boost mit Optuna ein
So richten Sie eine zufällige Gesamtstruktur mit Optuna ein
So richten Sie eine zufällige Gesamtstruktur mit Optuna ein
XPath-Grundlagen (2) - So schreiben Sie XPath
Wie man nüchtern mit Pandas schreibt
Wiederverwendung von Flaschen Wie schreibe ich HTML?
So schreiben Sie ein Docker-Basis-Image
Wie benutzt man Bing Search API?
Wie schreibe ich Django1.9 umweltunabhängig wsgi.py
Hinweise zum Schreiben von require.txt
Qiita (1) Wie schreibe ich einen Codenamen?
So stellen Sie die Serverzeit auf japanische Zeit ein
So schreiben Sie Python-Dokumentkommentare (Docstrings)
So suchen Sie in Google Colaboratory nach Google Drive
Wie schreibe ich diesen Prozess in Perl?
Wie schreibe ich Ruby to_s in Python
Zusammenfassung des Schreibens von AWS Lambda
Wie schreibe ich pydoc und mehrzeilige Kommentare
So schreiben Sie einen Komponententest für den URL-Abruf in GAE / P.
So legen Sie den Browserstandort in Headless Chrome fest
So stellen Sie Djangos DB auf mongodb visual studio 2019 ein
Antwort auf "Offline in Echtzeit, wie man ein F02-Problem schreibt"
So fügen Sie einen Suchpfad für Python-Module hinzu
So schreiben Sie einen ShellScript Bash für Anweisung
Antwort auf "Offline-Echtzeit, wie man ein F01-Problem schreibt"
So richten Sie einen lokalen Entwicklungsserver ein
So suchen Sie HTML-Daten mit Beautiful Soup
Antwort auf "Offline-Echtzeit, wie man ein E13-Problem schreibt"
Wie schreibe ich ein benanntes Tupeldokument im Jahr 2020?
[Go] So schreiben oder rufen Sie eine Funktion auf
So schreiben Sie eine ShellScript-Bash-Case-Anweisung
Festlegen der CPU-Affinität für Prozessthreads
So richten Sie die Authentifizierung mit öffentlichem Schlüssel mit ssh ein
20. Offline-Echtzeit So schreiben Sie Probleme in Python
So schreiben Sie eine GUI mit dem Befehl maya
So richten Sie eine Python-Umgebung mit pyenv ein
So schreiben Sie in Python die Verkettung von Zeichenfolgen in mehrere Zeilen
So führen Sie Python im virtuellen Raum aus (für MacOS)
So schreiben Sie einen Listen- / Wörterbuchtyp von Python3
So konfigurieren Sie Layer auf Lambda mit AWS SAM
[Python] So schreiben Sie eine Dokumentzeichenfolge, die PEP8 entspricht
[Blender] So legen Sie die Auswahlelemente von EnumProperty dynamisch fest
[Einführung in die Udemy Python3 + -Anwendung] 30. Verwendung des Sets
So richten Sie die Cython-Umgebung ein und kompilieren sie
Wie man schneller schreibt, wenn man numpy wie deque verwendet
Vergleichen Sie, wie die Verarbeitung für Listen nach Sprache geschrieben wird
[Einführung in Python] So schreiben Sie sich wiederholende Anweisungen mit for-Anweisungen
[AWS] So erweitern Sie den Speicherplatz unter Amazon Linux
Verwendung von xml.etree.ElementTree
Wie benutzt man Python-Shell
Hinweise zur Verwendung von tf.data
Verwendung von virtualenv
Schaben 2 Wie man kratzt
Wie benutzt man Seaboan?
Verwendung von Image-Match
Wie man Shogun benutzt