Referenz für ultralytics/engine/tuner.py
Hinweis
Diese Datei ist verfügbar unter https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/engine/tuner .py. Wenn du ein Problem entdeckst, hilf bitte, es zu beheben, indem du einen Pull Request 🛠️ einreichst. Vielen Dank 🙏!
ultralytics.engine.tuner.Tuner
Klasse, die für die Abstimmung der Hyperparameter von YOLO Modellen zuständig ist.
Die Klasse entwickelt die Hyperparameter des Modells YOLO über eine bestimmte Anzahl von Iterationen weiter. indem sie sie entsprechend dem Suchraum verändert und das Modell neu trainiert, um ihre Leistung zu bewerten.
Attribute:
Name | Typ | Beschreibung |
---|---|---|
space |
dict
|
Hyperparameter-Suchraum mit Schranken und Skalierungsfaktoren für die Mutation. |
tune_dir |
Path
|
Verzeichnis, in dem die Entwicklungsprotokolle und Ergebnisse gespeichert werden. |
tune_csv |
Path
|
Pfad zu der CSV-Datei, in der die Evolutionsprotokolle gespeichert werden. |
Methoden:
Name | Beschreibung |
---|---|
_mutate |
dict) -> dict:
Ändert die angegebenen Hyperparameter innerhalb der Grenzen, die in |
__call__ |
Führt die Entwicklung der Hyperparameter über mehrere Iterationen aus. |
Beispiel
Stimme die Hyperparameter für YOLOv8n auf COCO8 bei imgsz=640 und epochs=30 für 300 Abstimmungsiterationen ab.
from ultralytics import YOLO
model = YOLO('yolov8n.pt')
model.tune(data='coco8.yaml', epochs=10, iterations=300, optimizer='AdamW', plots=False, save=False, val=False)
Abstimmen mit benutzerdefiniertem Suchraum.
Quellcode in ultralytics/engine/tuner.py
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 |
|
__call__(model=None, iterations=10, cleanup=True)
Führt den Prozess der Hyperparameterentwicklung aus, wenn die Tuner-Instanz aufgerufen wird.
Bei dieser Methode wird die Anzahl der Iterationen durchlaufen, wobei in jeder Iteration die folgenden Schritte durchgeführt werden:
1. Laden der vorhandenen Hyperparameter oder Initialisieren neuer Parameter.
2. Verändere die Hyperparameter mit Hilfe der mutate
Methode.
3. Trainiere ein YOLO Modell mit den veränderten Hyperparametern.
4. Protokolliere den Fitnesswert und die veränderten Hyperparameter in einer CSV-Datei.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
model |
Model
|
Ein vorinitialisiertes YOLO Modell, das für das Training verwendet wird. |
None
|
iterations |
int
|
Die Anzahl der Generationen, für die die Evolution durchgeführt werden soll. |
10
|
cleanup |
bool
|
Ob die Iterationsgewichte gelöscht werden sollen, um den während der Abstimmung verwendeten Speicherplatz zu reduzieren. |
True
|
Hinweis
Die Methode nutzt die self.tune_csv
Pfadobjekt zum Lesen und Protokollieren von Hyperparametern und Fitnesswerten.
Stelle sicher, dass dieser Pfad in der Tuner-Instanz richtig eingestellt ist.
Quellcode in ultralytics/engine/tuner.py
160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 |
|
__init__(args=DEFAULT_CFG, _callbacks=None)
Initialisiere den Tuner mit Konfigurationen.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
args |
dict
|
Konfiguration für die Entwicklung der Hyperparameter. |
DEFAULT_CFG
|