Estás leyendo la publicación: Un tutorial completo sobre la visualización de distribuciones de probabilidad en python
La distribución de probabilidad es uno de los principales conceptos en el campo de la ciencia de datos y el aprendizaje automático. Tiene una gran importancia en el análisis de datos, especialmente cuando se trata de conocer las propiedades de los datos. En teoría, es posible que hayamos repasado los conceptos de estas distribuciones varias veces. Pero siempre hay curiosidad sobre cómo demostrar estas distribuciones de probabilidad en Python. En este artículo, repasaremos las distribuciones de probabilidad populares e intentaremos comprender la diferencia entre ellas. Junto con esto, también aprenderemos cómo visualizar la popular distribución de probabilidad en python. Los puntos principales que se discutirán en este artículo se enumeran a continuación.
Tabla de contenido
- ¿Qué es una distribución de probabilidad?
- tipos de datos
- Elementos de la distribución de probabilidad
- Función de probabilidad
- función de densidad de probabilidad
- Distribución de probabilidad discreta
- Distribución binomial
- distribución de veneno
- Distribución de probabilidad continua
- Distribución normal
- Distribución uniforme
Comencemos por entender qué es la distribución de probabilidad.
¿Qué es una distribución de probabilidad?
En matemáticas, especialmente en teoría de probabilidad y estadística, la distribución de probabilidad representa los valores de una variable que contiene las probabilidades de un experimento. En el aprendizaje automático y la ciencia de datos, hay un gran uso de la distribución de probabilidad. En el contexto del aprendizaje automático, debemos tratar con una gran cantidad de datos y el proceso de encontrar patrones en los datos adquiere muchos estudios según la distribución de probabilidad.
Podemos entender que la mayoría de los modelos relacionados con el aprendizaje automático son necesarios para aprender la incertidumbre en los datos. Sus resultados y el incremento de la incertidumbre hacen que la teoría de la probabilidad sea más relevante para el proceso. Para explorar más sobre el tema de la distribución de probabilidad en el aprendizaje automático, se requiere la categorización de una distribución de probabilidad que pueda ser seguida por la categorización de los datos. Comencemos por comprender las categorías de datos.
tipos de datos
En el aprendizaje automático, la mayor parte del tiempo nos encontramos trabajando con diferentes formatos de datos. Los conjuntos de datos se pueden considerar como muestras diferenciadas de una población de muestras. Estas muestras diferenciadas de la población requieren el reconocimiento de patrones en sí mismos para que podamos construir predicciones para todo el conjunto de datos o toda la población.
Por ejemplo, queremos predecir el precio de los vehículos dado un determinado conjunto de características de los vehículos de una empresa. Después de un análisis estadístico de algunas muestras de conjuntos de datos de vehículos, podemos predecir los precios de los vehículos de diferentes empresas (nuestra población).
Al observar el escenario anterior, podemos decir que un conjunto de datos puede constar de dos tipos de elementos de datos:
- Numérico (enteros, flotantes, etc.): Este tipo de datos se puede clasificar en dos tipos:
- Discreto: Este tipo de dato numérico puede ser solo un cierto valor como el número de manzanas en la canasta y el número de personas en un equipo, etc.
- Continuo: Este tipo de datos numéricos pueden ser valores reales o fraccionarios, por ejemplo, la altura del árbol, el ancho del árbol, etc.
- Categóricas (nombres, etiquetas, etc.): Pueden ser categorías como género, estado, etc.
Usando las variables aleatorias discretas del conjunto de datos podemos calcular la función de masa de probabilidad y usando la variable aleatoria continua podemos calcular la función de densidad de probabilidad.
Aquí, hemos visto cómo podemos categorizar los tipos de datos. Ahora podemos entender fácilmente que la distribución de probabilidad puede representar la distribución de la probabilidad de diferentes resultados posibles de un experimento. Explorémoslo más mediante la categorización de la distribución de probabilidad.
Elementos de la distribución de probabilidad
Se utilizan las siguientes funciones para obtener las distribuciones de probabilidad:
- Función de probabilidad: Esta función da la probabilidad de similitud, que es la probabilidad de que una variable aleatoria discreta sea igual a algún valor. También podemos llamarlo una distribución de probabilidad discreta.
Fuente de imagen
La imagen de arriba es una representación de la función de masa de probabilidad donde se siguen las condiciones que establecen que “todos los valores deben ser positivos y sumar 1”.
- Función de densidad de probabilidad: Esta función representa la densidad de una variable aleatoria continua que se encuentra entre un rango específico de valores. También podemos llamarlo distribución de probabilidad continua.
Fuente de imagen
En la imagen de arriba, podemos ver una representación de la función de densidad de probabilidad de una distribución normal. Los tipos mencionados anteriormente son los dos tipos principales de distribución de probabilidad.
Cuando hablamos de las categorías por naturaleza, podemos categorizar la distribución de probabilidad como en la siguiente imagen:
En las secciones anteriores, hemos visto qué es una distribución de probabilidad discreta y una distribución de probabilidad continua. En las siguientes secciones, describiremos las subcategorías de estas dos categorías principales.
Distribución de probabilidad discreta
Las distribuciones populares bajo las categorías de distribución de probabilidad discreta se enumeran a continuación, cómo se pueden usar en python.
Distribución binomial
Esta distribución es una función que puede resumir la probabilidad de que una variable tome uno de dos valores bajo un conjunto de parámetros asumidos previamente. Principalmente usamos esta distribución en la secuencia de experimentos donde requerimos soluciones en forma de sí y no, positivo y negativo, etc. Este tipo de experimentos se denominan prueba de Bernoulli o experimento de Bernoulli. La función de masa de probabilidad para binomial es:
Donde k es {0,1,….,n,}, 0<=p<=1
Usando las siguientes líneas de códigos en python, podemos generar variables aleatorias binomiales discretas.
import numpy as np import matplotlib.pyplot as plt import scipy.stats as stats import matplotlib.pyplot as plt for prob in range(3, 10, 3): x = np.arange(0, 25) binom = stats.binom. pmf(x, 20, 0.1*prob) plt.plot(x, binom, ‘-o’, label=”p = {:f}”.format(0.1*prob)) plt.xlabel(‘Variable aleatoria’, fontsize=12) plt.ylabel(‘Probabilidad’, fontsize=12) plt.title(“Distribución binomial variable p”) plt.legend()
Producción:
En el gráfico podemos ver una visualización de la distribución binomial.
distribución de veneno
Es una subcategoría de una distribución de probabilidad discreta que representa la probabilidad de un número de eventos que pueden ocurrir en un rango fijo de tiempo. De manera más formal, representa cuántas veces puede ocurrir un evento durante un período de tiempo específico. Esta distribución lleva el nombre del matemático Siméon Denis Poisson. Principalmente usamos esta distribución cuando la variable de interés en los datos es discreta. La función de masa de probabilidad para la distribución de Poisson es:
Para k>= 0
Usando las siguientes líneas de representamos la distribución de Poisson
for lambd in range(2, 8, 2): n = np.arange(0, 10) poisson = stats.poisson.pmf(n, lambd) plt.plot(n, poisson, ‘-o’, label=” λ = {:f}”.format(lambd)) plt.xlabel(‘Número de eventos’, tamaño de fuente=12) plt.ylabel(‘Probabilidad’, tamaño de fuente=12) plt.title(“Distribución de Poisson variable λ”) plt.leyenda()
Producción:
Distribución de probabilidad continua
Las distribuciones populares bajo las categorías de distribución de probabilidad continua se enumeran a continuación, cómo se pueden usar en python.
Distribución normal
Esta es una subcategoría de distribución de probabilidad continua que también puede llamarse distribución gaussiana. Esta distribución representa una distribución de probabilidad para una variable aleatoria de valor real. La función de densidad de probabilidad para la distribución normal es:
para un número real x.
Usando las siguientes líneas de códigos, representamos la distribución normal de un valor real.
from seaborn.palettes import color_palette n = np.arange(-70, 70) norm = stats.norm.pdf(n, 0, 10) plt.plot(n, norm) plt.xlabel(‘Distribution’, fontsize=12 ) plt.ylabel(‘Probabilidad’, tamaño de fuente=12) plt.title(“Distribución normal de x”)
Producción:
Distribución uniforme
Esta distribución es una subcategoría de una distribución continua, esta distribución representa una probabilidad similar para que ocurran todos los eventos. La función de densidad de probabilidad para una distribución uniforme es:
Podemos entenderlo con el ejemplo de tirar un dado justo donde la ocurrencia de cualquier cara en el dado tiene la misma probabilidad.
Usando las siguientes líneas de código podemos representar la distribución de probabilidades de tirar un dado justo.
probs = np.full((6), 1/6) face = [1,2,3,4,5,6]
plt.bar(cara, problemas) plt.ylabel(‘Probabilidad’, tamaño de fuente=12) plt.xlabel(‘Resultado de la tirada de dados’, tamaño de fuente=12) plt.title(‘Distribución uniforme justa de dados’, tamaño de fuente=12) ejes = plt.gca() ejes.set_ylim([0,1])
Producción:
Ultimas palabras
En este artículo, hemos discutido la distribución de probabilidad y entendimos cómo podemos categorizarlos. Hay varias distribuciones de probabilidad disponibles según la naturaleza y cubrimos algunas de las distribuciones importantes con sus visualizaciones en python.