YOLOv5 🚀 en Instancia de aprendizaje profundo de AWS: Tu guía completa
La configuración de un entorno de aprendizaje profundo de alto rendimiento puede resultar desalentadora para los recién llegados, pero no se preocupe. 🛠️ Con esta guía, le guiaremos a través del proceso de puesta en marcha de YOLOv5 en una instancia de aprendizaje profundo de AWS. Al aprovechar la potencia de Amazon Web Services (AWS), incluso los principiantes en el aprendizaje automático pueden comenzar de forma rápida y rentable. La escalabilidad de la plataforma de AWS es perfecta tanto para la experimentación como para la implementación en producción.
Otras opciones de inicio rápido para YOLOv5 incluyen nuestro Cuaderno Colab , GCP Deep Learning VMy nuestra imagen Docker en Centro Docker .
Paso 1: Inicio de sesión en la consola de AWS
Comience creando una cuenta o iniciando sesión en la consola de AWS en https://aws.amazon.com/console/. Una vez iniciada la sesión, seleccione el servicio EC2 que desea administrar y configure sus instancias.
Paso 2: Inicie su instancia
En el panel de EC2, encontrará el botón Lanzar instancia, que es su puerta de entrada para crear un nuevo servidor virtual.
Selección de la imagen de máquina de Amazon (AMI) adecuada
Aquí es donde eliges el sistema operativo y la pila de software para tu instancia. Escriba"Aprendizaje profundo" en el campo de búsqueda y seleccione la última AMI de aprendizaje profundo basada en Ubuntu, a menos que sus necesidades indiquen lo contrario. Las AMI de aprendizaje profundo de Amazon vienen preinstaladas con frameworks populares y controladores GPU para agilizar el proceso de configuración.
Elegir un tipo de instancia
Para tareas de aprendizaje profundo, generalmente se recomienda seleccionar un tipo de instancia GPU , ya que puede acelerar enormemente el entrenamiento del modelo. En cuanto al tamaño de la instancia, recuerda que los requisitos de memoria del modelo nunca deben superar lo que la instancia puede proporcionar.
Nota: El tamaño de su modelo debe ser un factor a la hora de seleccionar una instancia. Si su modelo supera la memoria RAM disponible de una instancia, seleccione otro tipo de instancia con memoria suficiente para su aplicación.
Para obtener una lista de los tipos de instancia disponibles en GPU , visite Tipos de instancia EC2, concretamente en Accelerated Computing.
Para más información sobre la supervisión y optimización de GPU , consulte GPU Supervisión y optimización. Para obtener información sobre precios, consulte Precios bajo demanda y Precios al contado.
Configuración de su instancia
Las instancias de subasta de Amazon EC2 ofrecen una forma rentable de ejecutar aplicaciones, ya que le permiten pujar por la capacidad no utilizada a una fracción del costo estándar. Para disfrutar de una experiencia persistente que conserve los datos incluso cuando la instancia de subasta se caiga, opte por una solicitud persistente.
Recuerde ajustar el resto de la configuración de su instancia y las configuraciones de seguridad según sea necesario en los Pasos 4-7 antes de iniciar.
Paso 3: Conéctese a su instancia
Una vez que su instancia se esté ejecutando, seleccione su casilla de verificación y haga clic en Conectar para acceder a la información SSH. Utilice el comando SSH mostrado en su terminal preferido para establecer una conexión con su instancia.
Paso 4: Correr YOLOv5
Conectado a su instancia, ya está listo para clonar el repositorio YOLOv5 e instalar las dependencias en un entorno Python 3.8 o posterior. YOLOv5 Los modelos y conjuntos de datos se descargarán automáticamente de la última versión.
git clone https://github.com/ultralytics/yolov5 # clone repository
cd yolov5
pip install -r requirements.txt # install dependencies
Una vez configurado el entorno, puede empezar a entrenar, validar, realizar inferencias y exportar los modelos de YOLOv5 :
# Train a model on your data
python train.py
# Validate the trained model for Precision, Recall, and mAP
python val.py --weights yolov5s.pt
# Run inference using the trained model on your images or videos
python detect.py --weights yolov5s.pt --source path/to/images
# Export the trained model to other formats for deployment
python export.py --weights yolov5s.pt --include onnx coreml tflite
Extras opcionales
Para añadir más memoria swap, que puede ser una salvación para grandes conjuntos de datos, ejecute:
sudo fallocate -l 64G /swapfile # allocate 64GB swap file
sudo chmod 600 /swapfile # modify permissions
sudo mkswap /swapfile # set up a Linux swap area
sudo swapon /swapfile # activate swap file
free -h # verify swap memory
¡Y ya está! 🎉 Ha creado correctamente una instancia de AWS Deep Learning y ha ejecutado YOLOv5. Tanto si está comenzando con la detección de objetos como si está escalando para producción, esta configuración puede ayudarle a alcanzar sus objetivos de aprendizaje automático. ¡Feliz entrenamiento, validación e implementación! Si encuentra algún problema por el camino, la sólida documentación de AWS y la comunidad activa de Ultralytics están aquí para ayudarle.