Logo de CursoIA
CursoIA Curso de Inteligencia Artificial

Matemáticas para IA, Unidad 5 — Probabilidad intuitiva para IA, 5.2 — Variables aleatorias ·

Lectura de distribuciones

Lectura de distribuciones

Introducción

En la inteligencia artificial, especialmente en los campos de la clasificación y la inferencia probabilística, comprender las distribuciones es fundamental. Las distribuciones nos permiten modelar cómo se espera que se comporten nuestros datos bajo ciertas condiciones. Sin una comprensión sólida de cómo leer y analizar estas distribuciones, es difícil obtener resultados precisos y confiables en modelos predictivos.

Las variables aleatorias son el núcleo de la probabilidad en IA. Nos permiten modelar incertidumbre y variación en nuestros datos. En este artículo, exploraremos diferentes tipos de distribuciones comunes y cómo interpretarlas.

Explicación principal

Distribución Normal (Distribución Gaussiana)

La distribución normal es una de las más famosas y se usa extensivamente en la IA debido a su simetría y propiedades útiles. Se caracteriza por dos parámetros: media (\(\mu\)) y desviación estándar (\(\sigma\)). La función de densidad de probabilidad (PDF) para una distribución normal es:

\[ f(x; \mu, \sigma^2) = \frac{1}{\sqrt{2\pi\sigma^2}} e^{-\frac{(x-\mu)^2}{2\sigma^2}} \]

Un ejemplo en Python puede ilustrar esto mejor:

import numpy as np
from scipy.stats import norm

# Parámetros de la distribución normal
mu = 0
sigma = 1

# Generar valores en el rango (-5, 5)
x = np.linspace(-5, 5, 100)

# Calcular PDF para estos valores
pdf_values = norm.pdf(x, loc=mu, scale=sigma)

print(pdf_values[:5])  # Mostramos los primeros valores de la PDF

Distribución Uniforme

La distribución uniforme es simple y directa. Todos los posibles valores dentro del rango tienen la misma probabilidad. Se define por dos parámetros: el valor mínimo (\(a\)) y el máximo (\(b\)). La función de densidad de probabilidad (PDF) para una distribución uniforme es:

\[ f(x; a, b) = \begin{cases} 0 & \text{si } x < a \\ \frac{1}{b-a} & \text{si } a \leq x \leq b \\ 0 & \text{si } x > b \end{cases} \]

Un ejemplo en Python:

from scipy.stats import uniform

# Parámetros de la distribución uniforme
a = 1
b = 5

# Generar valores aleatorios
uniform_samples = uniform.rvs(a=a, b=b, size=10)

print(uniform_samples)

Distribución Bernoulli y Binomial

La distribución Bernoulli es una forma especial de la binomial donde solo hay dos posibles resultados (exito o fracaso). Se caracteriza por un único parámetro \(p\), que representa la probabilidad del éxito. La función de masa de probabilidad (PMF) para una distribución Bernoulli es:

\[ P(X = 1) = p, \quad P(X = 0) = 1 - p \]

La binomial, en cambio, mide el número de éxitos en un cierto número de intentos independientes. Se define por dos parámetros: \(n\) (número de ensayos) y \(p\) (probabilidad de éxito en cada ensayo). La PMF para una distribución binomial es:

\[ P(X = k) = \binom{n}{k} p^k (1-p)^{n-k}, \quad k \in [0, n] \]

Un ejemplo en Python con la distribución binomial:

from scipy.stats import bernoulli

# Parámetros de Bernoulli
p = 0.75

# Generar un valor aleatorio Bernoulli
bernoulli_value = bernoulli.rvs(p)
print(bernoulli_value)

from scipy.stats import binom

# Parámetros de Binomial
n = 10
p = 0.3

# Generar una muestra binomial
binomial_samples = binom.rvs(n, p, size=10)

print(binomial_samples)

Distribución Exponencial

La distribución exponencial modela el tiempo entre eventos en un flujo de Poisson. Se caracteriza por un único parámetro \(\lambda\), que es la tasa a la cual los eventos ocurren.

\[ f(x; \lambda) = \lambda e^{-\lambda x}, \quad x \geq 0 \]

Un ejemplo:

from scipy.stats import expon

# Parámetro de la distribución exponencial
lambda_ = 1/3

# Generar valores aleatorios exponenciales
exponential_samples = expon.rvs(scale=1/lambda_, size=10)

print(exponential_samples)

Errores típicos / trampas

Asociación de distribución normal con datos no normales

Una de las trampas más comunes es asumir que los datos siguen una distribución normal cuando esto no es cierto. Los datos pueden tener asimetrias, modales o extremos que no se ajustan a la distribución normal.

Confusión entre variables aleatorias y observaciones

Otra trampa común es confundir las variables aleatorias con las observaciones individuales. Por ejemplo, en una encuesta de satisfacción, cada respuesta individual es una observación, pero el conjunto completo podría seguir alguna otra distribución (no necesariamente normal).

Interprete erróneamente la varianza

La varianza puede ser confundida con desviación estándar. La varianza es la media de los cuadrados de las diferencias entre cada observación y la media, mientras que la desviación estándar es simplemente la raíz cuadrada de la varianza.

Ignorar la probabilidad condicional

Ignorar cómo la probabilidad de un evento puede cambiar dependiendo de otros eventos es una gran trampa. Es especialmente importante en problemas de clasificación, donde los resultados pueden variar según las condiciones previas.

Checklist accionable

  1. Entiende la diferencia entre distribuciones normales y no normales.
  2. Identifica si tus datos son adecuados para una distribución uniforme o exponencial.
  3. Asegúrate de distinguir entre variables aleatorias y observaciones.
  4. Revisa la varianza y desviación estándar en tu conjunto de datos.
  5. Considera la probabilidad condicional cuando interpretes tus datos.

Cierre: Siguientes pasos

  • Exploremos más distribuciones: Hay muchas otras distribuciones que son igualmente importantes, como la Poisson, la log-normal y la gamma.
  • Aprende a manipular y visualizar datos: Herramientas como NumPy, Pandas y Matplotlib son fundamentales para trabajar con datos en IA.
  • Practica con datasets reales: Aplica lo que aprendiste en conjuntos de datos reales para mejorar tus habilidades.

¡Estos pasos te ayudarán a fortalecer tu comprensión de las distribuciones y cómo interpretarlas en la IA!

Contacto

Indica tu objetivo (ChatGPT, RAG, agentes, automatización) y tu stack (web/backend).