izaskunmz
commited on
Commit
·
9976fe8
1
Parent(s):
09e8276
adding training python files
Browse files- train_yolov8n.py +24 -0
- train_yolov8s.py +20 -0
train_yolov8n.py
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from ultralytics import YOLO
|
2 |
+
|
3 |
+
# Cargar el modelo YOLOv8 preentrenado
|
4 |
+
model = YOLO("yolov8n.pt") # Puedes probar con "yolov8s.pt" para mayor precisión
|
5 |
+
|
6 |
+
# Entrenar el modelo con hiperparámetros ajustados
|
7 |
+
model.train(
|
8 |
+
data="/home/izaskunmz/yolo/yolov8-object-detection/datasets/coco8/data.yaml", # Ruta correcta al dataset
|
9 |
+
epochs=300, # Aumentamos las épocas para mejorar precisión
|
10 |
+
batch=8, # Reducimos el batch para estabilidad en CPU
|
11 |
+
imgsz=640, # Tamaño de la imagen
|
12 |
+
device="cpu", # Entrenamiento en CPU
|
13 |
+
lr0=0.0005, # Learning rate inicial más bajo para mejorar estabilidad
|
14 |
+
lrf=0.0001, # Decaimiento más lento del learning rate
|
15 |
+
momentum=0.95, # Aumentamos momentum para estabilizar entrenamiento
|
16 |
+
weight_decay=0.0001, # Regularización más fuerte para evitar sobreajuste
|
17 |
+
optimizer="AdamW", # Mejor optimizador que SGD para convergencia en CPU
|
18 |
+
cos_lr=True, # Usamos learning rate decay con coseno para ajuste fino
|
19 |
+
close_mosaic=5, # Desactivamos aumentación mosaico después de 5 épocas
|
20 |
+
patience=0, # 🔹 Desactiva Early Stopping
|
21 |
+
project="/home/izaskunmz/yolo/yolov8-object-detection/runs/detect", # Ruta correcta para guardar los modelos
|
22 |
+
name="train_optimized", # Nombre del experimento optimizado
|
23 |
+
exist_ok=True # Evita sobreescritura, crea versiones numeradas
|
24 |
+
)
|
train_yolov8s.py
ADDED
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from ultralytics import YOLO
|
2 |
+
|
3 |
+
# Cargar el modelo YOLOv8s preentrenado
|
4 |
+
model = YOLO("yolov8s.pt")
|
5 |
+
|
6 |
+
# Entrenar el modelo y guardar en la carpeta correcta
|
7 |
+
model.train(
|
8 |
+
data="/home/izaskunmz/yolo/yolov8-object-detection/datasets/combined/data.yaml", # Archivo de configuración del dataset
|
9 |
+
epochs=150, # Aumentamos las épocas para mejorar el aprendizaje
|
10 |
+
batch=8, # Reducimos el batch si hay problemas de memoria
|
11 |
+
imgsz=640, # Tamaño de las imágenes
|
12 |
+
device='cpu', # Si tienes GPU, cámbialo a 'cuda'
|
13 |
+
project="/home/izaskunmz/yolo/yolov8-object-detection/runs/detect", # Carpeta donde se guardarán los resultados
|
14 |
+
name="train_yolov8s_v4", # Nombre del experimento
|
15 |
+
exist_ok=True, # Si la carpeta existe, crea una nueva numerada
|
16 |
+
patience=200, # Para evitar que se detenga temprano
|
17 |
+
lr0=0.01, # Ajustamos la tasa de aprendizaje inicial
|
18 |
+
momentum=0.937, # Momentum del optimizador
|
19 |
+
weight_decay=0.0005 # Regularización para evitar overfitting
|
20 |
+
)
|