Fundamentos Teóricos del Aprendizaje Supervisado y No Supervisado.ipynb
Fundamentos
Teóricos del Aprendizaje Supervisado y No Supervisado
1. Aprendizaje
Supervisado
Conceptos
Teóricos:
Definición: En el aprendizaje
supervisado, se entrena un modelo en un conjunto de datos que incluye tanto las
entradas (features) como las salidas correctas (labels). El objetivo es que el
modelo aprenda a predecir las salidas a partir de nuevas entradas.
Enfoque: Utiliza pares de
entrada-salida para aprender una función que mapea entradas a salidas.
Ejemplos de
Algoritmos:
Regresión Lineal: Predice un valor
continuo.
Clasificación
Logística:
Clasifica los datos en categorías.
Fragmento de
Código:
Regresión Lineal con Scikit-Learn
from
sklearn.linear_model import
LinearRegression
from
sklearn.model_selection import
train_test_split
from
sklearn.metrics import
mean_squared_error
import numpy as np
# Ejemplo de datos
X = np.array([[1],
[2], [3], [4]])
y = np.array([2,
3, 5, 7])
# Dividir los datos
X_train, X_test, y_train, y_test =
train_test_split(X, y, test_size=0.2)
# Crear y entrenar el modelo
model = LinearRegression()
model.fit(X_train, y_train)
# Predecir y evaluar
y_pred = model.predict(X_test)
print("Error Cuadrático Medio:",
mean_squared_error(y_test, y_pred))
RESULTADO:
Error
Cuadrático Medio: 0.44444444444444486
2. Aprendizaje No
Supervisado
Conceptos
Teóricos:
Definición: En el aprendizaje
no supervisado, el modelo trabaja con datos que no tienen etiquetas. El
objetivo es explorar la estructura de los datos para encontrar patrones.
Enfoque: Descubre patrones
ocultos en los datos sin necesidad de intervención humana.
Ejemplos de
Algoritmos:
K-Means: Un algoritmo de
agrupamiento que divide los datos en grupos (clusters) basados en sus
características.
Análisis de
Componentes Principales (PCA): Reduce la dimensionalidad de los datos
manteniendo la mayor cantidad de información posible.
Fragmento de
Código: K-Means con Scikit-Learn
from
sklearn.cluster import
KMeans
import numpy as np
# Ejemplo de datos
X = np.array([[1,
2], [1, 4], [1, 0],
[10, 2], [10, 4], [10, 0]])
# Crear y entrenar el modelo
kmeans = KMeans(n_clusters=2, random_state=0).fit(X)
# Centroides de los clusters
print("Centroides:", kmeans.cluster_centers_)
RESULTADO:
Centroides: [[10.
2.]
[ 1. 2.]]
Cómo Elegir entre
Aprendizaje Supervisado y No Supervisado
Supervisado: Se elige cuando
se tienen datos etiquetados y se busca predecir o clasificar.
No Supervisado: Útil cuando se
exploran datos sin etiquetar para encontrar patrones o reducir dimensiones.
Imágenes y
Gráficos
Generaré una imagen que ilustre el
concepto de ambos tipos de aprendizaje.
Aquí tienes una imagen que ilustra la diferencia entre el aprendizaje supervisado y no supervisado. En el lado del aprendizaje supervisado, se muestran puntos de datos etiquetados con un límite de decisión, representando algoritmos como la regresión lineal. En el lado del aprendizaje no supervisado, se observan agrupaciones de puntos de datos sin etiquetas, simbolizando algoritmos como el K-Means.
Conclusiones y
Reflexiones
El aprendizaje supervisado es
poderoso para tareas de predicción y clasificación con datos etiquetados.
El no supervisado es esencial para
entender y reducir la complejidad de los datos sin etiquetas.
La elección entre ambos depende del
tipo de datos disponibles y del problema a resolver.
Reflexiones
Finales
Adaptabilidad: La IA, tanto
supervisada como no supervisada, es increíblemente adaptable a una variedad de
datos y problemas.
Desafíos y
Oportunidades: Cada
tipo tiene sus desafíos únicos, pero también ofrece oportunidades distintas
para la comprensión de datos y la toma de decisiones.
Avance Continuo: El campo está en
constante evolución, ofreciendo nuevas técnicas y enfoques para mejorar el
rendimiento y la eficiencia.
