¡Participa de la Maratón Behind the Code, la competencia de programación más desafiante! Inscríbete aqui

Genera canales de modelos de aprendizaje automático para elegir el mejor modelo para tu problema

Era inevitable esperar que la inteligencia artificial, que facilita todos los aspectos de nuestras vidas, facilitara su propio proceso de desarrollo. Crear mejores modelos requiere procedimientos de inteligencia artificial complejos más costosos y que toman mucho tiempo, lo que requiere conocimientos especializados desde la limpieza de datos hasta la ingeniería, el diseño de arquitecturas y la optimización de parámetros. Para facilitar este proceso y hacerlo eficiente en términos de tiempo y esfuerzo, es necesario automatizar esas cargas de trabajo. Con el objetivo de crear inteligencia artificial para inteligencia artificial, IBM introdujo un servicio en Watson™ Studio llamado AutoAI. AutoAI se puede ejecutar en nubes públicas y privadas, incluido IBM Cloud Pak™ para datos.

AutoAI es un servicio que automatiza las tareas de aprendizaje automático para facilitar las tareas de los científicos de datos. Prepara automáticamente tus datos para la elaboración de modelo, elige el mejor algoritmo para tu problema y crea canales para los modelos capacitados.

Objetivos del aprendizaje

Este tutorial explica los beneficios del servicio AutoAI en un caso de uso para que puedas comprender mejor cómo se pueden manejar los problemas de regresión y clasificación sin ningún código y cómo se realizan las tareas (ingeniería de características, selección de modelo, ajuste de hiperparámetros, etc.) con este servicio. El tutorial también incluye detalles para elegir el mejor modelo entre los canales y cómo desplegar y usar estos modelos.

Requisitos previos

Para continuar, es necesario:

  • Registrarse para obtener una cuenta de IBM Cloud. (Este tutorial puede completarse utilizando una cuenta de IBM Cloud Lite).
  • Crear una instancia de servicio Cloud Object Storage.
  • Crear una instancia de servicio Watson Studio.
  • Crear una instancia de servicio Watson Machine Learning.
  • Tener conocimientos básicos de algoritmos de aprendizaje automático.

Tiempo estimado

Este tutorial toma aproximadamente 20 minutos para completarse, incluyendo la capacitación en AutoAI.

Pasos

Después de crear una cuenta de IBM Cloud Lite e iniciar sesión, sigue estos pasos.

Paso 1: Crea las instancias de servicio requeridas

Almacenamiento de objetos

Para almacenar los datos, es necesario un servicio de almacenamiento que esté vinculado con tu proyecto posteriormente. Para hacer eso, busca Almacenamiento en el Catálogo de IBM Cloud o ve a la pestaña Almacenamiento desde el menú izquierdo en la misma página y haz clic en el servicio

Almacenamiento de objetos.

Servicio Object Storage

Opcionalmente, es posible asignar un nombre a esta instancia de servicio y hacer clic en Crear.

Asignar un nombre a instancia de almacenamiento de objetos en la nube

Watson Studio

  1. Busca Watson Studio en el Catálogo de IBM Cloud y haz clic en la placa de servicio Watson Studio.

    Placa de Watson Studio

  2. Como has hecho con el servicio de almacenamiento de objetos, es posible asignar un nombre a tu servicio y hacer clic en Crear.

    Asigna un nombre la instancia de Watson Studio

  3. Después de aprovisionar el servicio de Watson Studio, haz clic en Comenzar o ve a la plataforma de Watson Studio e inicia sesión con tu cuenta de IBM Cloud.

    Iniciar sesión

  4. Revisa el tutorial introductorio para saber más sobre Watson Studio.

Paso 2: Capacita un modelo con AutoAI

Watson Studio es una plataforma integrada diseñada para organizar tus activos de proyecto, como conjuntos de datos, colaboradores, modelos y notebooks. Vas a utilizar Watson Studio para crear un proyecto en el que se capacita un modelo con AutoAI y despliega este modelo entrenado.

Crea un proyecto de Watson Studio.

  1. Haz clic en Crear un proyecto.

    Crear un proyecto

  2. Selecciona Crear un proyecto vacío.

    Crear un proyecto vacío

  3. Asigna un nombre a tu proyecto. Si tienes una cuenta de Cloud Lite, el servicio de almacenamiento de objetos creado en el paso anterior se seleccionará automáticamente. De lo contrario, selecciona un servicio del menú desplegable.

    Asignar un nombre a tu proyecto

  4. Se abre la página de activos de datos y es donde se almacenan y organizan los activos de tu proyecto. Al hacer clic en la barra Activos, es posible cargar tu conjunto de datos desde la interfaz izquierda.

  5. Carga el conjunto de datos german_credit_data.csv(CSV, 120 KB).

    Subir un conjunto de datos

Configura tu entorno de AutoAI y genera canales.

  1. Para iniciar la experiencia AutoAI, haz clic en Agregar al proyecto en la parte superior y selecciona AutoAI.

    Agregar un proyecto

  2. Asigna un nombre a tu servicio.

    Asignar un nombre a tus servicios

  3. Para asociar una instancia de Watson Machine Learning, haz clic en el enlace indicado. Si tienes una instancia existente, selecciónala desde la pestaña existente. De lo contrario, crea una nueva desde la pestaña Nuevo.

    Asociar una instancia

  4. Después de aprovisionar tu instancia de Watson Machine Learning, este te redirecciona a la misma página. Haz clic en Recargar y luego en Crear.

Información acerca del conjunto de datos

La minimización del riesgo junto con la maximización de las ganancias requiere algunas reglas básicas para los bancos. Una necesidad es que necesitan minimizar sus pérdidas en cualquier interacción con el cliente, como al conceder préstamos. El objetivo de este conjunto de datos es predecir si el cliente podrá pagar el préstamo considerando los perfiles demográficos y socioeconómicos de los solicitantes.

  • Si el solicitante tiene un buen riesgo de crédito (es decir, es probable que pague el préstamo), entonces no aprobar el préstamo a la persona resulta en una pérdida de negocios para el banco.
  • Si el solicitante tiene un mal riesgo de crédito (es decir, es probable que no pague el préstamo), aprobar el préstamo a la persona resulta en una pérdida financiera para el banco.
  • El conjunto de datos consta de 1000 puntos de datos de solicitantes de préstamos con 20 variables cada uno: siete son numéricos y 13 son categóricos. No entraremos en detalles sobre las variables de este conjunto de datos. Es posible consultar toda la información detallada.

Configura instancia de AutoAI

Sigue los siguientes pasos para configurar tu instancia de AutoAI.

  1. Selecciona tu conjunto de datos (es posible cargarlo desde tu sistema local o seleccionarlo desde el proyecto).
  2. Configura la columna para predecir en Resultado.
  3. Cambia la métrica optimizada a ROC AUC (Área bajo la curva ROC).
  4. Establece el número de algoritmos de mejor rendimiento a considerar en tres. De forma predeterminada, AutoAI selecciona los dos algoritmos de mejor rendimiento, pero es posible cambiar el número de 1 a 4.

    Configurar instancia de AutoAI

Canal de AutoAI

El experimento comienza justo después de completar los procesos anteriores.

Después del preprocesamiento de datos, AutoAI identifica los tres algoritmos de mejor rendimiento y para cada uno de estos tres algoritmos, AutoAI genera los siguientes 4 canales.

  • Selección de modelo automatizada (Canal 1)
  • Optimización de hiperparámetro (Canal 2)
  • Ingeniería de funciones automatizada (Canal 3)
  • Optimización de hiperparámetro (Canal 4)

De esta manera, AutoAI genera un total de 12 canales que es posible ver, comparar y guardar como modelos.

Visualización de canales

Mientras AutoAI genera los modelos, hay dos vistas diferentes a través de las cuales es posible visualizar el progreso de la creación de estos canales. Son el mapa de progreso y el mapa de relaciones como se ve en las siguientes imágenes. Verás que AutoAI ha elegido XGB, Random Forest y Decision Tree Classifiers como los algoritmos de mejor rendimiento para este caso de uso.

La siguiente figura muestra el mapa con las relaciones entre cada uno de estos canales. Coloca el cursor sobre el mapa para ver más.

Vista de análisis de crédito 1

La siguiente figura muestra el mapa de progreso con la secuencia y detalles de los 12 canales creados en total.

Vista de análisis de crédito 2

La siguiente figura muestra la vista de la tabla de clasificación de canales con los detalles de los 12 canales junto con métricas de alto nivel. Inferimos que el clasificador XGB con dos conjuntos de optimización de hiperparámetros e ingeniería de características ha generado el mejor modelo posible. Este es el cuarto canal de la secuencia.

Canales de análisis de crédito

AutoAI también proporciona una imagen para comparar el rendimiento de cada uno de estos modelos en función de diferentes métricas.

Canales métricos

El siguiente paso es seleccionar el modelo que ofrece el mejor resultado observando las métricas. En este caso, Canal 4 dio el mejor resultado con la métrica «Área bajo la Curva ROC (ROC AUC)». Es posible ver los resultados detallados haciendo clic en el canal correspondiente en la tabla de clasificación. Además, es posible guardar tu canal modelo haciendo clic en Guardar como y luego seleccionando Modelo en la tabla de clasificación o página de canal. Simplemente vas a guardar el modelo que nos dio el mejor resultado.

Evaluación del modelo

Se abre una ventana que solicita el nombre del modelo, la descripción (opcional), etc. Después de completar estos campos, haz clic en Guardar.

Guardar el nombre del modelo

Recibes una notificación para indicar que tu modelo está guardado en tu proyecto. Haz clic en Ver en proyecto.

Notificación de modelo

Despliega y prueba el modelo

  1. Para que el modelo esté listo para el despliegue, haz clic en la pestaña Despliegues y Agregar despliegue.

    Desplegar el modelo

  2. Consulta el siguiente video para conocer los próximos pasos.

    Video para el despliegue del modelo

  3. Ahora es posible probar tu modelo desde la interfaz que se proporciona después del despliegue. Es posible proporcionar tu entrada en formato JSON o ingresar los detalles de entrada en los campos dados en la interfaz.

    • Entrada con formato JSON Entrada con formato JSON

    • Entrada en los campos Entrada en los campos

    Datos de entrada:
    {"input_data": [{"fields": ["Check_Account ", "Duration", "Credit_history", "Purpose", "Credit amount ", "Saving_account", "Employment", "Install_rate", "Personal_status", "Other_debrotors", "Present_residence", "Property", "Age", "Installment_plant", "Housing", "Num_credits", "Job", "Num_dependents", "Telephone", "Foreign"],
                                  "values": [["A14", "48", "A34", "A43", "3573", "A65", "A75", "4", "A93", "A101","1","A121","47","A143","A152","1","A173","1","A192","A201"]]}]}
    
  4. También es posible utilizar modelos desplegados en tus aplicaciones haciendo llamadas API. Para mostrar un caso de uso, llama a tu modelo desde el notebook. Para hacerlo, regresa a la página Activos del proyecto, haz clic en Agregar al proyecto y selecciona Notebook.

    Usar un caso de uso

Es posible crear notebooks de tres maneras:

  1. Crear un notebook en blanco.
  2. Importar un archivo de notebook (.ipynb) desde tu dispositivo local.
  3. Importar un notebook desde URL.

En esta demostración, vas a subir un notebook desde Test WML model.ipynb(CSV, 2.43 KB) .

Subir un notebook

  1. En la primera celda, ingresa tu clave API de Watson Machine Learning. Al final de esta celda, recibirás un token de acceso de IBM Cloud. La segunda celda es la parte donde llamas al modelo y realizas las predicciones.

    Ingresar clave API

Conclusión

En este tutorial, se explicó cómo capacitar tu modelo con el servicio AutoAI Watson. Junto con este proceso de capacitación, has aprendido cómo desplegar y probar los modelos. También adquiriste conocimientos sobre cómo hacer una llamada API para el modelo desplegado a través de un notebook.