Dirichlet

Más sobre cómo obtener distribuciones uniformes dentro de triángulos

Pero hay otra forma de muestrear la distribución de Dirichlet (frase que no entenderán quienes no traigan esto leído):

  • Supóngase que tiene parámetros $(a_1, a_2, \dots, a_n)$.
  • Entonces se comienza muestreando una Beta de parámetros $(a_1, a_2 + \dots + a_n)$ para obtener $x_1$.
  • Y $x_j$ se obtiene a partir de una $B(a_j, a_{j + 1} + \dots + a_n)$ en el rango $[0, 1 - (x_0 + \dots + x_{j-1})]$.

Entonces, cuando hace una semana hacía

¿Cómo obtener distribuciones uniformes dentro de triángulos?

Me entretuve el otro día en cómo muestrear uniformemente dentro de triángulos motivado por Randomly selecting points inside a triangle de John D. Cook.

Hay uno que se le ocurriría a cualquiera: el del rechazo. Se inserta el triángulo en un cuadrado y se seleccionan solo aquellos valores que caigan dentro del triángulo.

Hay otro, que no está en esa entrada, y que consiste en transformar el triángulo en un triángulo rectángulo mediante una transformación lineal que preserve el área (shear o cizallamiento), del tipo

LDA para dummies (y con un ejemplo)

Tema de hoy: LDA (Latent Dirichlet Allocation). A raíz de la pregunta de una atenta lectora que quiere saber de qué va la cosa. Con un ejemplo: reproducir el mecanismo mental para tratar de averiguar a qué partido vota alguien.

Supongamos que hay cuatro partidos (PP, PSOE, Ciudadanos, IU). Supongamos que una persona al azar votaría a uno de los cuatro. Pero no sabemos a cuál. De todos modos, como leemos las encuestas, sabemos que la probabilidad de que vote PP es alrededor del 30% etc.