Configuración de un entorno de aprendizaje automático e IA de código abierto

Configure rápidamente un entorno de aprendizaje automático e inteligencia artificial (IA) mediante una pila de GPU preconfigurada con IDE, blocs de notas y marcos comunes preinstalados para que pueda empezar a producir resultados.

El entorno preconfigurado de Oracle para el aprendizaje exhaustivo es útil en muchos sectores en una amplia gama de aplicaciones.

  • Procesamiento de lenguaje natural

  • Reconocimiento y clasificación de imágenes

  • Detección de fraudes para servicios financieros

  • Motores de recomendación para minoristas en línea

  • Gestión de riesgos

Este entorno preconfigurado incluye una máquina virtual (VM) con controladores NVIDIA GPU y CUDA y cuDNN, entornos de desarrollo integrados Python y R (IDE), blocs de notas de Jupyter y marcos de aprendizaje automático de código abierto (ML) y aprendizaje profundo (DL).

Puede escalar los recursos informáticos mediante la ampliación automática o puede parar la instancia informática cuando no sea necesario para controlar los costos. La VM incluye datos de ejemplo básicos y código para que pueda probar y explorar.

La imagen de VM de ciencia de datos de IA para Oracle Cloud Infrastructure está disponible en Oracle Cloud Marketplace.

Arquitectura

En esta arquitectura de referencia, se muestra cómo implantar un entorno de aprendizaje automático e inteligencia artificial (IA) en una región de Oracle Cloud Infrastructure.

Esta arquitectura de referencia despliega un host bastión, un nodo de formación, un nodo de inferencia, una máquina virtual de aplicación de usuario y otros componentes en Oracle Cloud Infrastructure. La arquitectura utiliza una región con un dominio de disponibilidad y subredes regionales. Puede utilizar la misma arquitectura en una región con varios dominios de disponibilidad.



Esta arquitectura tiene los siguientes componentes:

  • Host bastión

    Instancia informática que proporciona acceso a otras instancias informáticas en una subred privada.

  • Nodo de formación

    Instancia informática en la que los clientes desarrollan y verifican el modelo de su aplicación, como una simulación de red neural. Los nodos de formación son instancias potentes que recuperan datos de Object Storage, realizan operaciones en los datos según el modelo que se utilice y almacenan los datos en el almacenamiento de volúmenes en bloque compartidos asociados.

  • Servidor de referencia

    Instancia informática que prepara los datos almacenados en los volúmenes en bloque (procesados por los nodos de formación) para que los utilicen las aplicaciones de usuario. Los servidores de inferencia almacenan sus datos procesados en File Storage.

  • VM de aplicación de usuario

    Esta VM ejecuta la aplicación de usuario y accede a los datos procesados por el servidor de inferencia que está almacenado en el almacenamiento de archivos compartido.

  • Equilibrador de carga

    El equilibrador de carga distribuye el tráfico entrante a las máquinas virtuales de la aplicación de usuario.

  • Almacenamiento de archivos

    El sistema de archivos está montado en el servidor de inferencia y en las máquinas virtuales de la aplicación de usuario.

  • Almacenamiento de objetos

    Object Storage se utiliza como un data lake para almacenar datos que utilizan los nodos de formación.

  • Volumen en bloque

    El servicio Oracle Cloud Infrastructure Block Volume le permite aprovisionar y gestionar volúmenes de almacenamiento en bloque de forma dinámica. Puede crear, asociar, conectar y mover volúmenes, así como cambiar el rendimiento de volumen para cumplir con los requisitos de almacenamiento, rendimiento y aplicación. Después de asociar y conectar un volumen a una instancia, puede utilizar el volumen como disco duro normal. También puede desconectar un volumen y asociarlo a otra instancia sin perder datos. Utilice el almacenamiento de bloques para almacenar archivos log o de diario.

  • Red virtual en la nube (VCN) y subredes

    Cada instancia informática se despliega en una VCN que se puede segmentar en subredes.

  • Listas de seguridad

    Para cada subred, puede crear reglas de seguridad que especifiquen el origen, el destino y el tipo de tráfico que se debe permitir dentro y fuera de la subred.

  • Dominios de disponibilidad

    Los dominios de disponibilidad son centros de datos independientes e independientes dentro de una región. Los recursos físicos de cada dominio de disponibilidad están aislados de los recursos de los otros dominios de disponibilidad, lo que proporciona tolerancia a fallos. Los dominios de disponibilidad no comparten infraestructura, como alimentación o refrigeración, ni la red interna del dominio de disponibilidad. Por lo tanto, un fallo en un dominio de disponibilidad es poco probable que afecte a los otros dominios de disponibilidad de la región.

  • Dominios de errores

    Un dominio de errores es una agrupación de hardware e infraestructura dentro de un dominio de disponibilidad. Cada dominio de disponibilidad tiene tres dominios de errores con alimentación y hardware independientes. Cuando distribuye recursos en varios dominios de errores, las aplicaciones pueden tolerar fallos del servidor físico, mantenimiento del sistema y fallos de alimentación dentro de un dominio de errores.

Recomendaciones

Los requisitos pueden ser diferentes de la arquitectura que se describe aquí. Utilice las siguientes recomendaciones como punto de partida.

  • Host bastión

    Utilice una unidad de computación VM.Standard.1.1. Este host se utiliza para acceder a otros nodos de Compute y no participa en el procesamiento de datos ni en otras tareas.

  • Nodo de formación

    Utilice la unidad BM.GPU3.8, que proporciona 2x25 Gbps de ancho de banda de red y una GPU suficiente (8xV100) para las aplicaciones de Data Science. Este nodo despliega y verifica el modelo de la aplicación, por lo que necesita una mayor potencia de GPU. Comience con hasta tres nodos y utilice la función de escala automática para ampliar o reducir verticalmente según sea necesario.

  • Servidor de referencia

    Utilice la unidad BM.GPU2.2, que proporciona 2x25 Gbps de ancho de banda de red y una GPU suficiente (2xP100) para las aplicaciones de Data Science. Este nodo requiere un poco menos de potencia de GPU debido a la naturaleza de su rol. Comience con un nodo y utilice la función de ampliación automática para ampliar según sea necesario.

  • VM de aplicación de usuario

    Utilice VM.Standard.2.2shape. Estos nodos se utilizan para la aplicación de usuario, por lo que una VM debe ser suficiente. Comience con dos nodos de VM y utilice la función de ampliación automática para escalar hacia arriba o hacia abajo según sea necesario.

  • Equilibrador de carga

    El equilibrador de carga distribuye el tráfico entrante a las máquinas virtuales de la aplicación de usuario. Utilice la forma 100-Mbps.

  • Almacenamiento de archivos

    El almacenamiento de archivos se amplía automáticamente según sea necesario.

  • Almacenamiento de objetos

    Utilice un único cubo privado con un enlace autenticado previamente para un objeto de data lake.

  • Volumen en bloque

    Además del almacenamiento conectado localmente, utilice al menos tres volúmenes en bloque (1 TB) con la función de varias conexiones. Esta adición proporciona más almacenamiento.

  • VCN
    • Al crear una VCN, determine el número de bloques CIDR necesarios y el tamaño de cada bloque según el número de recursos que planea asociar a subredes de la VCN. Utilice bloques CIDR que estén dentro del espacio de direcciones IP privadas estándar.

    • Seleccione bloques CIDR que no se superpongan con ninguna otra red (en Oracle Cloud Infrastructure, su centro de datos local u otro proveedor en la nube) a la que desee configurar conexiones privadas.

    • Después de crear una VCN, puede cambiar, agregar y eliminar sus bloques de CIDR.

    • Al diseñar las subredes, tenga en cuenta sus requisitos de funcionalidad y seguridad. Conecte todas las instancias informáticas del mismo nivel o rol a la misma subred.

    • Utilizar subredes regionales.

  • Lista de seguridad

    Utilice listas de seguridad para definir reglas de entrada y salida que se aplican a toda la subred. Por ejemplo, esta arquitectura permite ICMP internamente para toda la subred privada.

Consideraciones

Tenga en cuenta los siguientes puntos al desplegar esta arquitectura de referencia.

  • Rendimiento

    Para obtener el mejor rendimiento, seleccione la unidad de computación correcta con el ancho de banda adecuado.

  • Disponibilidad

    Considere el uso de una opción de alta disponibilidad basada en los requisitos y la región del despliegue. Las opciones incluyen el uso de varios dominios de disponibilidad en una región y dominios de errores.

  • Costo

    Una instancia de GPU con hardware dedicado proporciona la potencia de CPU necesaria para un costo mayor. Evalúe los requisitos para seleccionar la unidad de computación adecuada.

  • Supervisión y alertas

    Configure la supervisión y las alertas sobre el uso de CPU y memoria para los nodos, de modo que pueda ampliar o reducir la unidad según sea necesario.

Desplegar

El código de Terraform para esta arquitectura de referencia está disponible como pila en Oracle Cloud Marketplace.

  1. Vaya a Oracle Cloud Marketplace.
  2. Haga clic en Obtener aplicación.
  3. Siga las indicaciones de la pantalla.

Log de Cambios

Este log sólo muestra los cambios significativos: