Creación, despliegue, prueba y supervisión de un modelo predictivo de aprendizaje automático
Esta guía de aprendizaje puede incurrir en costes. Utilice Estimador de costes para generar una estimación del coste basada en el uso previsto.
Esta guía de aprendizaje le guiará por el proceso de creación de un modelo predictivo de aprendizaje automático, de desplegar el modelo generado como una API que se utilizará en las aplicaciones y de probar el modelo, todo esto sucederá en una experiencia personal integrada y unificada de IBM Cloud. A continuación, supervisará el modelo desplegado con IBM Watson OpenScale.
En esta guía de aprendizaje, se utiliza un conjunto de datos sobre la flor iris para crear un modelo de aprendizaje automático para clasificar las especies de esta flor.
En la terminología del aprendizaje automático, la clasificación se considera una instancia de aprendizaje supervisado, es decir, aprendizaje en el que se encuentra disponible un conjunto de datos de entrenamiento con observaciones correctamente identificadas.
Watson Studio le proporciona el entorno y las herramientas que necesita para resolver sus problemas de negocio trabajando de forma conjunta con los datos. Puede elegir las herramientas que necesita para analizar y visualizar datos, para limpiar y configurar datos, para ingerir datos en modalidad continua, o para crear y entrenar modelos de aprendizaje automático.
Objetivos
- Importación de datos en un proyecto.
- Creación de un modelo de aprendizaje automático.
- Despliegue del modelo y prueba de la API.
- Prueba de un modelo de aprendizaje automático.
- Supervisión del modelo desplegado
- Reentrenamiento del modelo.

- El administrador carga un archivo CSV desde una máquina local.
- El archivo CSV cargado se almacena en el servicio IBM Cloud Object Storage como un conjunto de datos.
- A continuación, el conjunto de datos se utiliza para crear y desplegar un modelo de aprendizaje automático. El modelo desplegado se expone como una API (punto final de puntuación).
- El usuario realiza una llamada de API para predecir el resultado con los datos de prueba.
- Con los datos de prueba, se supervisa la calidad, la precisión y otros parámetros del modelo de aprendizaje automático desplegado.
Importación de datos en un proyecto
Un proyecto es la forma en que se organizan los recursos para alcanzar un determinado objetivo. Los recursos del proyecto pueden incluir datos, colaboradores y herramientas de análisis, como por ejemplo cuadernos de Jupyter y modelos de aprendizaje automático.
Puede crear un proyecto para añadir datos y abrir un activo de datos en el pulidor de datos para limpiar y adaptar los datos.
Crear un proyecto
- Desde el catálogo, cree Watson Studio
- Seleccione una región
- Seleccione un plan de precios Lite
- Cambie el Nombre de servicio por watson-studio-tutorial
- Seleccione un grupo de recursos y pulse Crear
- Pulse Iniciar en twisty y seleccione IBM watsonx.
- Cree un proyecto pulsando + Crear un nuevo proyecto en la sección Proyectos.
- Proporcione iris_project como nombre de proyecto.
- En Definir almacenamiento, añada una nueva instancia de un servicio Object Storage.
- Pulse Crear. El nuevo proyecto se abre y puede empezar a añadirle recursos.
Importar datos
Tal como se ha mencionado anteriormente, utilizará el conjunto de datos Iris. El conjunto de datos Iris se utilizó en R.A. El artículo clásico de 1936 de Fisher, El uso de múltiples mediciones en problemas taxonómicos, y también se puede encontrar en el Repositorio UCI Machine Learning. Este pequeño conjunto de datos se suele utilizar para probar los algoritmos de aprendizaje automático y las visualizaciones. El objetivo es clasificar las flores de iris entre las tres especies (Setosa, Versicolor o Virginica) a partir de mediciones de longitud y anchura de los sépalos y pétalos. El conjunto de datos iris contiene 3 clases de 50 instancias cada una, donde cada clase se refiere a un tipo de planta de iris.

Un sepal es una parte de la flor de angiospermas (plantas en flor). Por lo general verde, los sépalos suelen funcionar como protección para la flor en brote, y a menudo como apoyo para los pétalos cuando están en flor. Los pétalos son hojas modificadas que rodean las partes reproductivas de las flores. A menudo son de color brillante o inusualmente formados para atraer a los polinizadores. https://en.wikipedia.org/wiki/Iris_flower_data_set
Descargar iris_initial.csv que consta de 40 instancias de cada especie. Asegúrese
de que el archivo descargado se llama iris_initial.csv
.
- Seleccione la pestaña Activos si todavía no se ha seleccionado.
- En Datos de este proyecto, pulse Drop data files here or browse for files to upload.
- Sube el archivo descargado
iris_initial.csv
. - Una vez añadido, debería ver
iris_initial.csv
en la sección Todos los activos del proyecto.
Asociación del servicio Machine Learning
- En el menú de navegación superior, de
iris-project
pulse Gestionar y, a continuación, seleccione la sección Servicios e integraciones de la izquierda. - Pulse Asociar servicio.
- Si ya dispone de una instancia de servicio Watson Machine Learning, vaya al paso siguiente. De lo contrario, continúe con los pasos siguientes para crear una instancia nueva.
- Pulse Nuevo servicio y, a continuación, pulse el mosaico Watson Machine Learning.
- Seleccione la misma región del servicio Watson Studio y elija un plan Lite.
- Especifique
machine-learning-tutorial
como Nombre de servicio y seleccione un grupo de recursos. - Pulse Crear para suministrar un servicio Machine Learning.
- Marque la casilla situada junto al servicio Machine Learning y haga clic en Asociar.
Creación de un modelo de aprendizaje automático
- En el menú de navegación superior, pulse Activos.
- Pulse Nuevo activo + y busque auto.
- Pulse el mosaico Crear modelos de máquina automáticamente.
- Pon el nombre iris_auto.
- En Instancia de servicio deWatson Machine Learning, observe el servicio asociado anteriormente.
- Pulse Crear.
Una vez que se haya creado el modelo,
-
Añada los datos de entrenamiento haciendo clic en Seleccionar datos del proyecto.
- Elija el Activo de datos en Categorías y seleccione iris_initial.csv.
- Pulse Seleccionar activo.
-
Si se le solicita, responda No a ¿Crear un análisis de series temporales?.
-
Seleccione Especie como ¿Qué es lo que quiere predecir?.
-
Haga clic en Valores del experimento.
-
Seleccione Origen de datos.
-
En Método de entrenamiento y retención, establezca División de datos de retención en 14% moviendo el graduador.
-
En el menú de la izquierda, pulse Predicción:
- Establezca Tipo de predicción en Clasificación multiclase.
- Establezca Métrica optimizada en Precisión.
- Pulse Guardar valores.
-
Pulse Ejecutar experimento.
-
El Experimento AutoAI puede tardar hasta 5 minutos en seleccionar el algoritmo correcto para el modelo.
Cada conducto del modelo se puntúa con base a una variedad de métricas y, a continuación, se clasifica. La métrica de clasificación predeterminada de los modelos de clasificación binarios es el área bajo la curva ROC, para los modelos de clasificación de varias clases es la precisión, y para los modelos de regresión es el error cuadrático promedio de raíz (RMSE). Los conductos con la clasificación más alta se visualizan en un marcador, de modo que puede ver más información sobre ellos. El marcador también proporciona la opción de guardar los conductos del modelo seleccionados una vez revisados.
Una vez que el experimento termine de ejecutarse,
- Desplácese hacia abajo hasta el Pipeline leaderboard.
- Pulse un conducto para ver más detalles sobre las métricas y el rendimiento. Cuando haya terminado, descarte pulsando la X.
- Junto al modelo con Rango 1 , pulse Guardar como
- Seleccione el modelo.
- Mantenga el nombre predeterminado.
- Pulse Crear.
- En la notificación recibida, pulse Ver en proyecto.
Desplegar y probar el modelo
En esta sección, desplegará el modelo guardado y probará el modelo desplegado.
- Utilizando el rastro de navegación, pulse iris_project.
- En la pestaña Activos, abra Modelos a la izquierda.
- En la tabla Modelos localice el modelo y pulse en el menú de hamburguesa y elija Promocionar al espacio. Los espacios de despliegue se utilizan para desplegar modelos y gestionar los despliegues.
- Defina el Nombre a iris_deployment_space.
- Seleccione el servicio de almacenamiento Object Storage utilizado en los pasos anteriores en el desplegable correspondiente.
- Seleccione el servicio
machine-learning-tutorial
en el desplegable correspondiente. - Pulse Crear.
- Pulse Promocionar.
- Desde la notificación recibida, vaya al espacio de despliegue.
En Despliegues > iris_deployment_space:
- Haga clic en el nombre del modelo que acaba de crear.
- Haga clic en el botón Nuevo despliegue.
- Seleccione En línea como tipo de despliegue, proporcione iris_deployment como nombre y, a continuación, pulse Crear.
- En el separador Despliegues, una vez que el estado cambie a Desplegado, pulse el Nombre en la tabla. Se mostrarán las propiedades del servicio web desplegado para el modelo.
Probar el modelo desplegado
- En la pestaña Prueba de su despliegue, haga clic en el icono de entrada JSON junto a Introducir datos de entrada y proporcione los
JSON
como entrada.{ "input_data": [{ "fields": ["sepal_length", "sepal_width", "petal_length", "petal_width"], "values": [ [5.1,3.5,1.4,0.2], [3.2,1.2,5.2,1.7] ] }] }
- Pulse Predecir y debería ver los Resultados de la predicción en la vista de tabla y JSON.
- Puede cambiar los datos de entrada y seguir probando el modelo.
Probar la API
Junto con la interfaz de usuario, también puede realizar predicciones utilizando el punto final de puntuación de la API exponiendo el modelo desplegado como una API a la que se puede acceder desde las aplicaciones.
-
En la pestaña de referencia API de la implantación, puede ver el Endpoint en Direct link y fragmentos de código en varios lenguajes de programación.
-
Copie el Public endpoint en un bloc de notas para futuras referencias.
-
En un navegador, inicie el Shell de IBM Cloud y exporte el punto final de puntuación que se va a utilizar en solicitudes posteriores. Asegúrese de no cerrar esta ventana/pestaña.
export SCORING_ENDPOINT='<SCORING_ENDPOINT_FROM_ABOVE_STEP>'
El shell de IBM Cloud es un espacio de trabajo de shell basado en la nube al que puede acceder a través del navegador. Está preconfigurado con la CLI de IBM Cloud completa y multitud de plugins y herramientas que puede utilizar para gestionar aplicaciones, recursos y la infraestructura.
-
To use the Watson Machine Learning REST API, you need to obtain an IBM Cloud Identity and Access Management (IAM) token. Ejecute el siguiente comando, que copiará el token IAM completo junto con
Bearer
de la respuesta anterior y exportarlo como unIAM_TOKEN
para ser utilizado en las siguientes solicitudes de APIexport IAM_TOKEN=$(ibmcloud iam oauth-tokens --output JSON | jq -r .iam_token) echo $IAM_TOKEN
-
Ejecute el código cURL siguiente en el shell de Cloud para ver los resultados de la predicción.
curl -X POST \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --header "Authorization: $IAM_TOKEN" \ -d '{"input_data": [{"fields": ["sepal_length", "sepal_width", "petal_length","petal_width"],"values": [[5.1,3.5,1.4,0.2], [3.2,1.2,5.2,1.7]]}]}' \ $SCORING_ENDPOINT
Si se fija, el código procede del separador cURL del despliegue que ha creado anteriormente. Después de eso, sustituya el marcador de posición
[$ARRAY_OF_INPUT_FIELDS]
por ["set_length", "sepal_width", "petal_length", "petal_width"], el marcador[$ARRAY_OF_VALUES_TO_BE_SCORED]
con [5.1,3.5,1.4,0.2] y el marcador[$ANOTHER_ARRAY_OF_VALUES_TO_BE_SCORED]
con [3.2,1.2,5.2,1.7] respectivamente.
Supervisión del modelo desplegado con IBM Watson OpenScale
IBM® Watson OpenScale realiza un seguimiento y mide los resultados de sus modelos de IA, y ayuda a garantizar que sigan siendo justos, explicables y compatibles dondequiera que se hayan construido o se estén ejecutando sus modelos. Watson OpenScale también detecta y ayuda a corregir la deriva en la precisión cuando un modelo de IA está en producción.
Para facilitar la comprensión, la guía de aprendizaje se centra únicamente en mejorar la calidad (precisión) del modelo de IA a través del servicio Watson OpenScale.
Suministrar servicio IBM Watson OpenScale
En esta sección, creará un servicio Watson OpenScale para supervisar las métricas de estado, rendimiento, precisión y calidad de su modelo de aprendizaje automático desplegado.
- Cree un servicio IBM Watson OpenScale (watsonx.governance)
- Seleccione una región preferiblemente en la misma región donde ha creado el servicio Machine Learning.
- Elija el plan Lite.
- Establezca el nombre de servicio en watson-openscale-tutorial.
- Seleccione un grupo de recursos.
- Pulse Crear.
- Una vez aprovisionado el servicio, haga clic en Gestionar en el panel izquierdo y haga clic en Iniciar Watson OpenScale.
- Pulse Configuración manual para configurar manualmente los supervisores.
Configuración del sistema
En esta sección, como parte de la preparación del modelo para la supervisión, configurará y habilitará supervisores para todos los despliegues de los que esté realizando un seguimiento con IBM Watson OpenScale.
- Pulse Base de datos. Esto es para almacenar las transacciones de modelo y los resultados de evaluación de modelo. (es posible que ya esté seleccionado)
- Haga clic en el icono Editar del mosaico Base de datos
- Elija la base de datos del plan Free lite como tipo de base de datos
- Pulse Guardar.
- Pulse Proveedores de aprendizaje automático
- Pulse Añadir proveedor de aprendizaje automático y pulse el icono Editar en el mosaico Conexión.
- Seleccione Watson Machine Learning(V2) como tipo de proveedor de servicios.
- En el desplegable Espacio de despliegue, seleccione el espacio de despliegue
iris_deployment_space
que ha creado anteriormente. - Deje el tipo de entorno en Preproducción.
- Pulse Guardar.
- En el panel de la izquierda:
- Pulse el icono del panel de control de Insights(primer icono) para añadir un despliegue
- Pulse Añadir a panel de control para iniciar el asistente en la página Seleccionar ubicación de modelo.
- En el separador Espacios de despliegue, pulse el botón de selección
iris_deployment_space
. - Pulse Siguiente
- En el separador Espacios de despliegue, pulse el botón de selección
- En la página Seleccionar modelo desplegado:
- Pulse iris_deployment
- Pulse Siguiente
- En la página Proporcionar información de modelo:
- Tipo de datos: Numérico/categórico
- Tipo de algoritmo: Clasificación multiclase
- Haga clic en Ver resumen
- Pulse Finalizar
Ahora se muestra el panel de control de preproducción iris_deployment.
Haga clic en Acciones > Configurar monitores
- Pulse el icono lápiz en el mosaico Datos de entrenamiento para iniciar el asistente.
- En la página de método Seleccionar configuración
- Haga clic en Utilizar configuración manual
- Pulse Siguiente
- En la página de método Especificar datos de entrenamiento
- Para la opción Datos de entrenamiento, elija Almacenamiento de base de datos o en la nube
- Para Ubicación, elija Cloud Object Storage
- Para obtener el ID de instancia de recurso y la clave API, ejecute el siguiente comando en Cloud Shell. Asegúrese de cambiar el valor después de
--instance-name
para que coincida con el nombre de la instancia de Object Storage que ha estado utilizando para esta guía de aprendizaje.ibmcloud resource service-key $(ibmcloud resource service-keys --instance-name "cloud-object-storage-tutorial" | awk '/WDP-Project-Management/ {print $1}')
- Copie y pegue el ID de instancia de recurso de credenciales. Empezará por crn y finalizará con dos puntos ::.
- Copie y pegue la clave de API de credenciales sin espacios finales.
- Pulse Conectar.
- Seleccione el cubo que empiece por
irisproject-donotdelete-
. - Seleccione
iris_initial.csv
en el desplegable Conjunto de datos. - Pulse Siguiente
- En la página de método Seleccionar las columnas de característica y la columna de etiqueta
- Los valores predeterminados deben ser correctos. Especies como la Etiqueta/Objetivo y el resto como Características.
- Pulse Siguiente
- En la página de método Seleccionar salida de modelo
- Los valores predeterminados deben ser correctos, predicción para Predicción y probabilidad para Probabilidad.
- Haga clic en Ver resumen
- Pulse Finalizar
- En la página de método Seleccionar configuración
- Pulse el icono lápiz en el mosaico Detalles de salida de modelo para iniciar el asistente.
- En la página de método Especificar detalles de salida de modelo
- Los valores predeterminados deben ser correctos.
- Pulse Guardar
- En la página de método Especificar detalles de salida de modelo
- En el panel izquierdo, haga clic en Calidad en Evaluaciones y haga clic en el icono de edición en el mosaico Umbrales de calidad
- En la página Umbrales de calidad, establezca los valores siguientes:
- Precisión 0.98
- Pulse Siguiente
- En la página Tamaño de muestra
- Establezca el tamaño mínimo de la muestra en 10
- Pulse Guardar
- En la página Umbrales de calidad, establezca los valores siguientes:
En el panel de la izquierda, pulse Ir a resumen de modelo
El supervisor de calidad (anteriormente denominado supervisor de exactitud) le revela la exactitud con la que su modelo predice los resultados.
Como la guía de aprendizaje utiliza un conjunto de datos pequeño, la configuración de equidad y desviación no afectará.
Evaluar el modelo desplegado
En esta sección, evaluará el modelo cargando un archivo iris_retrain.csv
que contiene 10 instancias de cada especie. Descargar iris_retrain.csv.
- Pulse en Acciones y, a continuación, Evaluar ahora.
- Elija desde archivo CSV como opción de importación y pulse Examinar y cargue el archivo
iris_retrain.csv
. - Pulse y pulse Cargar y evaluar.
- Una vez finalizada la evaluación, debería ver el panel de control con distintas métricas.
Para comprender las métricas de calidad, consulte Visión general de la métrica de calidad
Eliminación de recursos
- Vaya a la Lista de recursos de IBM Cloud®.
- En Nombre, especifique guía de aprendizaje en el recuadro de búsqueda.
- Suprima los servicios que ha creado para esta guía de aprendizaje.
En función del recurso, es posible que no se suprima de inmediato sino que se retenga (durante 7 días de forma predeterminada). Puede reclamar el recurso suprimiéndolo de forma permanente o lo puede restaurar dentro del periodo de retención. Consulte este documento sobre cómo utilizar una reclamación de recurso.