Clasificación supervisada
Última actualización
¿Te fue útil?
Última actualización
¿Te fue útil?
No sabemos a qué clase pertenece cada dato. Dejamos que K-Means decida por nosotros los grupos. Nosotros solo decimos cuántos grupos queremos. Ahora vamos a darle indicios de las clases en cada muestra.
Entrenamiento supervisado
Para un entrenamiento supervisado necesitamos pasar por:
Entrenamiento: Cuando ajustas el modelo para tratar de ser óptimo.
Prueba: Cuando muestras datos y comparas la clasificación obtenida vs la esperada.
Datasets de entrenamiento y prueba
Pruebas: muestra si tu modelo de machine learning hace su trabajo.
Entrenamiento: ajusta el modelo.
De todos los datos, debes hacer una división en 2 conjuntos.
División 70 / 30: 70% para entrenamiento, 30% para pruebas.
¿Cómo debes dividir los datos?
Supongamos que tienes un dataset de la siguiente forma… Los datos en “Y” son las salidas que esperas (ya sea binaria o multiclase).
Primer paso: “shuffle” Revolverás las muestras (filas) de forma aleatoria, para asegurarte de que no elijas por error muestras sencillas. No revolver las muestras = problema de “Cherry picking”
Segundo paso: “split”
Cortarás tanto X, como Y, en dos partes proporcionales. La parte de pruebas no debe ser usada jamás para entrenar. Usar las pruebas para entrenar = mentirte a ti mismo sobre la eficacia del sistema.
Separando en Train / Test
Para este ejemplo usaremos make_blobs nuevamente. Generamos 1000 datos de 2 dimensiones, con make_blobs - Puntos amarillos y morados, clase 0 y 1
Neuronas como clasificadores supervisados
Una neurona puede tener un comportamiento de clasificador. Para ello, las neuronas utilizan una función llamada “Función de activación”.
Función sigmoidal
Es una de las funciones de activación más comunes. Toma cualquier valor de una neurona y la transforma en un valor de 0 a 1
0 = respuesta rechazada. 0.5 = incertidumbre 1 = Respuesta aceptada
Las ecuaciones de una neurona
El perceptrón multicapa
¿Qué pasa si ponemos varias neuronas juntas? --> Todas las conectamos a las mismas entradas.
Cada neurona nos puede dar resultados diferentes. Estas neuronas juntas en una línea se le conoce como “Capa neuronal”.
Si hacemos que todas las salidas se conecten a una (o más neuronas) logramos un “perceptrón multicapa”.
Entre más capas: - Comportamientos más inteligentes - Mayor dificultad de entrenamiento
¡Implementando redes neuronales!
SciKit Learn te permite crear Redes neuronales rápidamente. Solo necesitas decirle:
Qué función de activación quieres
Qué método de entrenamiento usar
La tasa de aprendizaje
El ajuste de pesos sinápticos
Cuántas neuronas en cada capa
Obteniendo resultados de clasificación
Con x_prueba vemos que tal predice las clases (predict). Los errores son calculados con:
La precisión se calcula con: