PyTorch es una biblioteca de aprendizaje automático de código abierto basada en la biblioteca de Torch, que se utiliza para aplicaciones como la visión por computadora y el procesamiento del lenguaje natural. Es un software gratuito y de código abierto publicado bajo la licencia BSD modificada.

Puede usar PyTorch para implementar un detector de objetos basado en You Only Look Once (YOLO) v3. YOLO es un detector de objetos que utiliza características aprendidas por una red neuronal convolucional profunda para detectar un objeto.

Instalar YOLO

YOLO es una implementación mínima de PyTorch, con compatibilidad para capacitación, inferencia y evaluación. PyTorch es una biblioteca de aprendizaje automático (ML) que se puede utilizar con vSphere Bitfusion. Las pruebas de YOLO son aplicaciones de ML de código abierto que se diseñan para probar el rendimiento de su implementación de vSphere Bitfusion.

El procedimiento se aplica a Ubuntu 20.04, CentOS 8 y Red Hat Linux 8.

Requisitos previos

  • Compruebe que ha instalado un cliente de vSphere Bitfusion.
  • Verifique que haya instalado NVIDIA CUDA y NVIDIA cuDNN en su sistema operativo Linux.
  • Compruebe que la máquina virtual tenga al menos 150 GB de espacio libre.

Procedimiento

  1. Cree una carpeta bitfusion y desplácese hasta ella.
    mkdir -p ~/bitfusion
    cd ~/bitfusion
  2. Instale recursos adicionales para un sistema operativo Ubuntu Linux.
    1. Descargue la información del paquete desde todos los orígenes configurados.
      sudo apt update
    2. Instale zip.
      sudo apt install -y zip
    3. Instale los recursos de prueba de Python.
      sudo apt install -y python3-testresources
    4. Instale el paquete libgl1-mesa-glx.
      sudo apt install -y libgl1-mesa-glx
  3. Instale git.
    • Ubuntu 20.04
      sudo apt install -y git
    • CentOS 8 y Red Hat Linux 8
      sudo yum install -y git
  4. Instale pip3 ejecutando la secuencia de comandos correspondiente a su distribución y versión de Linux.
    • Ubuntu 20.04
      sudo apt install -y python3-pip
    • CentOS 8 y Red Hat Linux 8
      sudo yum install -y python36-devel
      sudo pip3 install -U pip setuptools
  5. Instale las pruebas de YOLO y YOLO.
    1. Descargue el repositorio de YOLO mediante el comando git clone.
      git clone https://github.com/eriklindernoren/PyTorch-YOLOv3
    2. Desplácese hasta la carpeta weights.
      cd PyTorch-YOLOv3/weights
    3. Ejecute el script del instalador download_weights.sh.
      bash download_weights.sh
    4. Navegue a la carpeta de datos.
      cd ../data
    5. Ejecute el script del instalador get_coco_dataset.sh.
      bash get_coco_dataset.sh
    6. Desplácese hasta la carpeta principal mediante el comando cd ...
    7. Instale y utilice Poetry para completar el proceso de instalación de YOLO.
      Poetry es una herramienta para administración y empaquetado de dependencias en Python.
      pip3 install poetry --user
      export PATH=~/.local/bin:$PATH
      poetry install

Ejecutar pruebas de YOLO

Al ejecutar las pruebas de YOLO, puede comprobar el rendimiento de las cargas de trabajo de ML en su entorno de vSphere Bitfusion.

Requisitos previos

  • Compruebe que ha instalado un cliente de vSphere Bitfusion.
  • Compruebe que ha instalado CUDA y cuDNN en su distribución de Linux.
  • Compruebe que ha instalado YOLO y los scripts de prueba de YOLO.

Procedimiento

  1. Desplácese hasta la carpeta cd PyTorch-YOLOv3.
  2. (opcional) Compruebe que ha instalado YOLO correctamente.
    1. Ejecute una prueba de YOLO utilizando las CPU de la máquina virtual del cliente de vSphere Bitfusion.
      poetry run yolo-test --weights weights/yolov3.weights
    2. Después de iniciar YOLO, presione Control + C en el teclado para cancelar el proceso de prueba.
      Las pruebas de YOLO que utilizan la potencia informática de la CPU requieren mucho tiempo para finalizar.
  3. Para ejecutar el script de prueba yolov3.weights mediante GPU, utilice el comando bitfusion run.
    Al ejecutar el siguiente comando, se utiliza toda la memoria de una sola GPU.
    bitfusion run -n 1 -- poetry run yolo-test --weights weights/yolov3.weights

Resultados

Ahora puede ejecutar pruebas de Yolo con vSphere Bitfusion con las GPU compartidas desde un servidor remoto. Las pruebas ayudan a comprender cómo utilizar YOLO dentro de la disciplina de aprendizaje automático.