ÁRBOL DE DECISIONES: PREDECIR SI UN ESTUDIANTE APROBARÁ O NO UN EXAMEN
DIPLOMADO EN EN INTELIGENCIA ARTIFICIAL
MODULO IV
APRENDIZAJE AUTOMATICO CON PYTHON Y ASISTENTES INTELIGENTES
Ortega Irusta Elsy Nilda
Este es el enlace con Chat GPT:
PREDECIR
SI UN ESTUDIANTE APROBARÁ O NO UN EXAMEN BASÁNDONOS EN DOS CARACTERÍSTICAS:
HORAS DE ESTUDIO Y ASISTENCIA A CLASES.
https://chat.openai.com/c/15df2d14-b174-4164-94ab-54aa149ae44e
Ejemplo práctico utilizando un árbol de decisiones para clasificar datos ficticios en el contexto educativo. Supongamos que queremos predecir si un estudiante aprobará o no un examen basándonos en dos características: horas de estudio y asistencia a clases.
Primero, generaremos datos ficticios y luego implementaremos un modelo de árbol de decisiones utilizando Python, junto con gráficos y métricas para evaluar su rendimiento.
Esta es mi interacción con Google Colab.
# Importar bibliotecas necesarias
Este código crea datos ficticios sobre horas de
estudio y asistencia, etiqueta a los estudiantes según si aprueban o no,
entrena un modelo de árbol de decisiones y evalúa su rendimiento. Además,
muestra el árbol de decisiones visualmente.
Este es solo un ejemplo básico y ficticio. En un
escenario real, necesitarías datos más complejos y un proceso más detallado
para la preparación de datos. Además, podrías considerar ajustar los
hiperparámetros del modelo para mejorar el rendimiento.
EJEMPLO DE ÁRBOL DE
DECISIONES.
En el ejemplo
anterior ya hemos utilizado un árbol de decisiones para predecir si un
estudiante aprueba o no basándonos en las horas de estudio y la asistencia a
clases. Vamos a analizar con más detalle cómo funciona el árbol de decisiones
en este caso.
Primero,
entrenamos el modelo de árbol de decisiones utilizando el conjunto de
entrenamiento y luego visualizamos el árbol resultante:
El código anterior utiliza la biblioteca `plot_tree` de scikit-learn
para visualizar el árbol de decisiones. La representación gráfica del árbol nos
permite entender cómo el modelo toma decisiones basadas en las características
proporcionadas.
El árbol de decisiones se divide en nodos, donde cada nodo representa
una pregunta sobre una característica específica. Las ramas del árbol
representan las posibles respuestas a estas preguntas, y las hojas del árbol
contienen las decisiones finales o las etiquetas de clase. En nuestro caso, las
etiquetas son "Aprueba" o "No Aprueba".
INTERPRETEMOS EL ÁRBOL:
- Nodo Raíz (Root Node): La primera pregunta que el árbol
realiza es si la asistencia a clases es menor o igual a 0.5 (la probabilidad de
asistir es 0.7). Si la respuesta es sí, el árbol se divide a la izquierda, de
lo contrario, se divide a la derecha.
- Nodo Izquierdo: Si la asistencia es menor o igual a 0.5, el
árbol pregunta sobre las horas de estudio. Si las horas de estudio son mayores
o iguales a 6.413, se predice "Aprueba"; de lo contrario, se predice
"No Aprueba".
- Nodo Derecho: Si la asistencia es mayor que 0.5, el árbol
directamente predice "Aprueba" sin hacer más preguntas.
Este es un ejemplo simplificado, pero puedes notar cómo el árbol de
decisiones organiza las preguntas para llegar a una predicción final. En un
escenario más complejo, el árbol puede tener más nodos y decisiones para
abordar la complejidad de los datos.
GRAFICA EN BASE A LA INFORMACION BRINDADA
Ejemplo práctico utilizando un árbol de decisiones para clasificar datos ficticios en el contexto educativo. Supongamos que queremos predecir si un estudiante aprobará o no un examen basándonos en dos características: horas de estudio y asistencia a clases.
Primero, generaremos datos ficticios y luego implementaremos un modelo de árbol de decisiones utilizando Python, junto con gráficos y métricas para evaluar su rendimiento.
Esta es mi interacción con Google Colab.
# Importar bibliotecas necesarias
Este script instala las bibliotecas necesarias, genera datos ficticios,
entrena un modelo de árbol de decisiones y visualiza el árbol resultante.
Puedes ejecutar este código en celdas separadas dentro de un notebook de Google
Colab. Asegúrate de seleccionar el entorno de ejecución adecuado (Python 3) y
ejecuta cada celda una por una.
Este código crea datos ficticios sobre horas de
estudio y asistencia, etiqueta a los estudiantes según si aprueban o no,
entrena un modelo de árbol de decisiones y evalúa su rendimiento. Además,
muestra el árbol de decisiones visualmente.
Este es solo un ejemplo básico y ficticio. En un
escenario real, necesitarías datos más complejos y un proceso más detallado
para la preparación de datos. Además, podrías considerar ajustar los
hiperparámetros del modelo para mejorar el rendimiento.
Ejemplo práctico utilizando un árbol de
decisiones para clasificar datos ficticios en el contexto educativo. Supongamos
que queremos predecir si un estudiante aprobará o no un examen basándonos en
dos características: horas de estudio y asistencia a clases.
Primero, generaremos datos ficticios y luego implementaremos un modelo de árbol de decisiones utilizando Python, junto con gráficos y métricas para evaluar su rendimiento.
Esta es mi interacción con Google Colab.
Este código crea datos ficticios sobre horas de
estudio y asistencia, etiqueta a los estudiantes según si aprueban o no,
entrena un modelo de árbol de decisiones y evalúa su rendimiento. Además,
muestra el árbol de decisiones visualmente.
Ejemplo simple para ilustrar cómo funciona un árbol de decisiones en el contexto educativo. Supongamos que queremos predecir si un estudiante aprobará un examen basándonos en dos características: "Horas de estudio" y "Asistencia a clases". Vamos a construir un árbol de decisiones para este propósito.
Reglas del Árbol de Decisiones:
-----Horas de Estudio menor o igual a 5.35
---- Class: 0
---- Horas Estudio
mayor a 5.35
----- Asistencia menor o igual a 0.50
---- Class: 0
----- Asistencia mayor a 0.50
---- Class: 1
Este código generará un archivo PDF llamado
"arbol_decisiones.pdf" que contiene la representación gráfica del
árbol de decisiones. Puedes abrir el archivo PDF para visualizar el árbol y
entender cómo se toman las decisiones en base a las características proporcionada.
Este código utiliza un modelo de
árbol de decisiones para clasificar si un estudiante aprueba o no en función de
las horas de estudio y la asistencia a clases. La visualización del árbol de
decisiones proporcionará una representación gráfica de cómo se toman las
decisiones basadas en las características dadas. Recuerda que en situaciones
del mundo real, se necesitarían datos más significativos y ajustes en el modelo
para obtener resultados más precisos.
La importancia de las
características y la poda del árbol son aspectos importantes en el análisis y
mejora de modelos de árboles de decisión. Aquí te proporciono información sobre
ambos temas:
Análisis de la Importancia de las Características:
Después de entrenar un modelo de árbol de
decisiones, puedes acceder a la importancia de las características. La
importancia de las características indica cuánto contribuye cada característica
a las decisiones tomadas por el árbol. Puedes obtener esta información a través
del atributo `feature_importances_` del modelo.
ANÁLISIS DE LA
IMPORTANCIA DE LAS CARACTERÍSTICAS Y LA PODA DEL ÁRBOL EN BASE A LA INFORMACION
BRINDADA.
La importancia de las
características y la poda del árbol son aspectos importantes en el análisis y
mejora de modelos de árboles de decisión. Aquí te proporciono información sobre
ambos temas:
Análisis de la Importancia de las Características:
Después de entrenar un modelo de árbol de
decisiones, puedes acceder a la importancia de las características. La
importancia de las características indica cuánto contribuye cada característica
a las decisiones tomadas por el árbol. Puedes obtener esta información a través
del atributo `feature_importances_` del modelo.
Este código crea un gráfico de barras que muestra la
importancia relativa de cada característica en la toma de decisiones del árbol.
Puedes analizar este gráfico para entender qué características son más
relevantes para la predicción.
Poda
del Árbol:
La poda del árbol es un proceso mediante el cual se
eliminan ciertas ramas (nodos y hojas) del árbol para evitar sobreajuste y
mejorar la generalización del modelo. Puedes controlar la complejidad del árbol
ajustando parámetros como la profundidad
máxima.
Este código crea un árbol
de decisiones con una profundidad máxima de 3. Puedes ajustar este valor según
tus necesidades para evitar sobreajuste.
Ambos análisis te ayudarán
a comprender mejor el modelo y a optimizar su rendimiento en base a la
relevancia de las características y la complejidad del árbol.
Conclusiones y reflexiones: La importancia conocer estas herramientas como el árbol de decisiones (aprendizaje supervisado) y el desarrollo de un modelo de árbol de decisiones para un caso de estudio para predecir si un estudiante aprobara o no un examen son de gran ayuda para la practica en la docencia.
.png)
.png)
.png)
.png)
Comentarios
Publicar un comentario