La regla del valor Z
Parte de la sección Estadística para ML del Journey de Machine Learning de Coddy. Lección 26 de 64.
Una granja pesó 300 huevos y después introdujo dos a mano: 6.2 g y 94.6 g; ambos eran errores tipográficos. Sus puntuaciones z (distancias respecto a la media, en desviaciones estándar) los delatan:
np.abs elimina los signos menos, así que una comparación detecta ambos lados:
rng = np.random.default_rng(3)
eggs = np.concatenate([rng.normal(60, 4, size=300), np.array([6.2, 94.6])])
z = (eggs - eggs.mean()) / eggs.std()
print(np.abs(np.array([-4, 2, -1])))
print(eggs[np.abs(z) > 3])Esto imprime:
[4 2 1]
[ 6.2 94.6]En los datos con forma de campana, el 99.7% de los valores se encuentran dentro de 3 desviaciones estándar, así que np.abs(z) > 3 señala los valores poco frecuentes que debes revisar antes del entrenamiento.
Pero un valor atípico infla la desviación estándar con la que se mide, así que las muestras pequeñas lo ocultan: usa la regla del RIC en ese caso.
Desafío
IntermedioLa báscula de una panadería pesó 250 hogazas y las guardó en loaves, y se introdujeron 3 más a mano. El programa lee un umbral.
- Calcula la puntuación z de cada hogaza usando
.mean()y.std()del arreglo. - En orden de posición, imprime cada hogaza cuya puntuación z esté a una distancia de 0 mayor que el umbral: su posición, peso (1 decimal) y puntuación z (2 decimales).
- Imprime cuántas enumeraste.
Para otro día y con el umbral 3:
Loaf 200: 702.5 g, z = -5.38
Loaf 201: 889.3 g, z = 4.91
Loaves to re-weigh: 2Pruébalo tú mismo
import numpy as np
# No cambies las líneas siguientes: 250 barras de pan pesadas en la báscula y luego 3 pesos introducidos manualmente
rng = np.random.default_rng(25)
loaves = np.concatenate([rng.normal(800, 15, size=250), np.array([731.4, 868.9, 912.3])])
cutoff = float(input())
# Escribe tu código a continuación
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Estadística para ML
1Centro y dispersión
Media y medianaPercentiles y cuartilesVarianza y desviación estándar¿Muestra o población?El valor más frecuenteRepaso: tiempos de entrega4Muestras y poblaciones
Población y muestraLas medias muestrales varíanLa distribución muestralMuestras más grandes, menos ruidoRepaso: Encuestar a un pueblo7Líneas de tendencia
ResiduosAjuste por mínimos cuadradosTrazar el ajustePredecir con una línea¿Qué tan bueno es el ajuste?Repaso: horas de práctica10Codificación de categorías
Categorías como númerosCodificación one-hotAgrupación de números en intervalosRepaso: anuncios de autos2Distribuciones
Histogramas de densidadFormas de los datosCurva normalRegla del 68-95-99,7Puntuaciones zRepaso: duración de la batería5Valores atípicos
Diagramas de cajaLa regla del RICLa regla del valor ZTratamiento de valores atípicosRepaso: fallos de los sensores3Probabilidad mediante simulación
La probabilidad como frecuenciaLa ley de los grandes númerosSuma de dadosValor esperadoProbabilidad condicionalRepaso: probabilidades del puesto de dados6Relaciones
Lectura de diagramas de dispersiónCorrelaciónMatriz de correlaciónMapas de calor de correlaciónCorrelación no es causalidadRepaso: helado y sol9Escalado de características
Por qué escalar las característicasEscalado mín-máxEstandarizaciónStandardScalerRepaso: compañeros de escaladaPractica por tu cuenta: Compilador de Python online