Muestreo de Tablas de Contingencia para Modelos Log

Anuncio
Muestreo de Tablas de Contingencia para Modelos
Log-Lineales
2 de junio de 2015
UNIVERSIDAD DE LOS ANDES
Resumen
Facultad de Ciencias
Departamento de Matemáticas
Muestreo de Tablas de Contingencia para Modelos Log-Lineales
por Mónica Ribero
El siguiente proyecto estudia el problema de calcular p-valores de pruebas de hipótesis utilizando tests exactos como método alternativo a las pruebas asintóticas. Para estas pruebas se han
desarrollado algoritmos que generan muestras de tablas con entradas enteras de acuerdo con
alguna distribución conocida. Para esto se estudia un nuevo algoritmo que reduce este problema
a muestrear continuamente dentro de un politopo.
Índice general
Resumen
I
Lista de Figuras
III
Lista de Tablas
IV
1. Introducción
1
2. Aproximaciones Al Problema
2.1. Prueba Chi-Cuadrado de independencia . . . . . . . . . . . .
2.2. Test exacto de Fischer . . . . . . . . . . . . . . . . . . . . . .
2.3. Aproximaciones algebráicas . . . . . . . . . . . . . . . . . .
2.3.1. Estadı́stico χ 2 y Estimadores de Máxima Verosimilitud
2.3.2. Muestreo . . . . . . . . . . . . . . . . . . . . . . . .
2.4. Base Lattice . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.1. Cómo encontrar Base Lattice . . . . . . . . . . . . . .
2.4.2. Cómo generar los movimientos . . . . . . . . . . . .
.
.
.
.
.
.
.
.
11
11
13
15
15
17
19
20
22
3. El nuevo algoritmo
3.1. Muestreo Continuo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2. Aproximación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3. Método del Rechazo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
24
25
29
4. Resultados
4.1. Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
32
38
Bibliografı́a
40
II
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Índice de figuras
4.1. Nuevo Algoritmo dimensión 2 . . . . . . .
4.2. Base Lattice dimensión 2 . . . . . . . . . .
4.3. Nuevo Algoritmo dimensión 3 . . . . . . .
4.4. Base Lattice dimensión 3 . . . . . . . . . .
4.5. Nuevo Algoritmo dimensión 3 . . . . . . .
4.6. Base Lattice dimensión 3 . . . . . . . . . .
4.7. Nuevo Algoritmo dimensión 3 . . . . . . .
4.8. Base Lattice dimensión 3 . . . . . . . . . .
4.9. Nuevo Algoritmo dimensión 4 . . . . . . .
4.10. Base Lattice dimensión 4 . . . . . . . . . .
4.11. Nuevo Algoritmo dimensión 4 . . . . . . .
4.12. Base Lattice dimensión 4 . . . . . . . . . .
4.13. Nuevo Algoritmo dimensión 4 . . . . . . .
4.14. Base Lattice dimensión 4 . . . . . . . . . .
4.15. Nuevo Algoritmo dimensión 4 . . . . . . .
4.16. Base Lattice dimensión 4 . . . . . . . . . .
4.17. Nuevo Algoritmo dimensión 4. N = 25000 .
4.18. Hipercubo “puntudo ”. Tomado de [1] . . .
III
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
33
33
33
33
34
34
34
34
35
35
35
35
36
36
37
37
37
39
Índice de cuadros
1.1. Veredictos de Pena de Muerte . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2. Actitudes frente al aborto en la comunidad blanca cristiana . . . . . . . . . . .
4.1.
4.2.
4.3.
4.4.
4.5.
4.6.
4.7.
4.8.
4.9.
Tabla de Contingencia 2 × 3 . . . . . . . .
Tabla de Contingencia 2 × 4 . . . . . . . .
Tabla de Contingencia 2 × 4 . . . . . . . .
Tabla de Contingencia 2 × 4 . . . . . . . .
Tabla de Contingencia 3 × 3 . . . . . . . .
Tabla de Contingencia 3 × 3 . . . . . . . .
Tabla de Contingencia 2 × 5 . . . . . . . .
Tabla de Contingencia 2 × 5 . . . . . . . .
Relación entre mes de nacimiento y muerte
IV
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5
10
32
33
34
34
35
35
36
36
38
Capı́tulo 1
Introducción
El objetivo del presente trabajo es desarrollar pruebas de hipótesis para determinar si una muestra vectorial con componentes discretas proviene de una familia de distribuciones. Particularmente se estudian las familias log-lineales. En el siguiente capı́tulo se introducen los modelos
estadı́sticos y ejemplos donde surgen estas pruebas. Primero se presentan algunas definiciones
esenciales y luego, para ilustrar estas ideas, tres ejemplos que muestran cuándo podrı́a surgir el
problema y por qué es interesante.
Suponga que tiene un vector aleatorio discreto ~X = (X1 , ...Xm ). Donde Xl toma valores en [rl ] :=
1, ..., rl y rl ∈ N. Sea R = ∏m
i=1 [rl ].
Definición 1.1. Definimos ∆k el k-simplex de probabilidad como el conjunto de todas las distribuciones de probabilidad para una variable aleatoria discreta X con k + 1 posibles resultados.
k+1
∆k := {q ∈ Rk+1 | qi ≥ 0 ∀i , ∑ qi = 1}
i=1
Definición 1.2. Un modelo estadı́stico M es una familia de distribuciones de probabilidad. En
nuestro caso nos interesan los modelos M ⊆ ∆k donde las distribuciones provienen de vectores
aleatorios discretos. Un modelo paramétrico es un modelo estadı́stico donde la familia de distribuciones está especificada por un número finito de parámetros θ = (θ1 , θ2 , ..., θm ) para algún
m ∈ N. Un modelo log-lineal es una forma de especificar estos parámetros como se muestra a
continuación.
Sean V1 , ...,Vm espacios vectoriales con bases fijas. Para cada j = 1, ..., m denotamos por er1 , ..., er j
la base de V j y por ei1 ...im la base natural inducida en el producto tensorial ⊗mj=1V j
Sea A : ⊗mj=1V j → F ∼
= Rd una transformación lineal. El modelo log-lineal especificado por A es
el conjunto de distribuciones de probabilidad MA donde
1
2
MA = {p = (pi )i∈R ∈ int(∆R−1 ) | log(p) ∈ rowspan(A)}
donde int(∆R−1 ) denota el interior de ∆R−1
Esto significa que estamos determinando la familia de distribuciones de probabilidad ~p = (pi )i∈R
donde pi = P(~X = i) para i ∈ R donde las probabilidades están dadas por
t
p~i = pi1 ...im =
eθ Aei1 ...im
Z(θ )
para algún vector θ ∈ Rd y Z(θ ) una constante normalizadora.
Ahora suponga que tiene una muestra ~X (1) , ~X (2) , ..., ~X (k) del vector ~X. A partir de esta muestra
se puede crear la tabla de contingencia asociada, es decir, la tabla de frecuencias que clasifica la
muestra de acuerdo a los resultados de cada ~X ( j) .
Definición 1.3. La tabla de contingencia asociada a la muestra ~X (1) , ~X (2) , ..., ~X (k) del vector ~X
es el vector U(~X (1) , ~X (2) , ..., ~X (k) ) ∈ ⊗m V j donde cada entrada está determinada por
j=1
k
U(~X (1) , ~X (1) , ..., ~X (k) )i1 ...im =
∑ 1~X
( j) =(i
j=1
1 ...im )
para (i1 , ..., im ) ∈ R
Estas tablas nos interesan porque si conocemos una de ellas, el estadı́stico AU es suficiente para
el parámetro θ . Es decir que se pierde la dependencia del parámetro θ como se muestra en el
siguiente lema.
Definición 1.4. Defina T (N) como el conjunto de tablas de contingencia que podrı́an resultar
para un tamaño de muestra N:
T (N) = {u ∈ ⊗mj=1V j |
∑ ui = N}
i∈R
Definición 1.5. Defina la fibra de la tabla u para un tamaño de muestra N como
F(u) = {U ∈ T (N) | AU = Au}
Note que como la suma de las columnas de A es constante entonces
~1 = (1, .., 1) ∈ rowspan(A)
3
Esto implica que ~1 = qt A para algún q ∈ ⊗mj=1V j . Entonces si v ∈ F(u), se tiene que Av = Au y
ası́
qt Av = qt Au
~1t v = ~1t u
∑ vi = ∑ ui
i∈R
i∈R
=N
Es decir que la suma de las entradas de v ∈ F(u) es N para cualquier tabla en F(u).
Ahora sı́ probamos que, dada una tabla de contingencia u, el estadı́stico Au es suficiente para el
parámetro θ .
t
Lema 1.1. Sea p = eA θ ∈ MA donde e(v1 ,...,vn ) = (ev1 , . . . , evn ) y u ∈ T (N) una tabla. Entonces
t
N
P(U = u) =
eθ Au
u1 ...u|R|
Adicionalmente,
P(U = u|AU = Au) =
1/ ∏i∈R ui !
∑v∈F (u) 1/ ∏i∈R vi !
(1.1)
Es decir que el estadı́stico Au es suficiente para el parámetro θ .
Demostración. Para encontrar la distribución de una tabla U y probar la primera parte del lema
note que, por definición, la tabla U tiene una distribución multinomial con parámetros p y N pues
tenemos un tamaño de muestra N y queremos que ocurra ui1 ...im veces el evento ~X = (i1 , ..., im ).
Es decir que utilizando la distribución multinomial y propiedades de exponentes se tiene que
N
ui ...i
pi1 1...imm
P(U = u) =
∏
u1 ...u|R| i1 ...im
t
N
(e(θ A)i1 ...im )ui1 ...im
=
∏
u1 ...u|R| i1 ...im
t
N
=
e∑i1 ...im (θ A)i1 ...im ui1 ...im
u1 ...u|R|
t
N
=
eθ Au
u1 ...u|R|
4
probando ası́ la primera parte del lema. Para la distribución de U|AU = Au se tiene que
P(U = u | AU = Au) =
P(U = u, AU = Au)
P(AU = Au)
Sin embargo es claro que el evento U = u está contenido en el el evento AU = Au entonces
P(U = u | AU = Au) =
P(U = u)
P(AU = Au)
Para calcular la probabilidad en el denominador, se puede traducir el evento AU = Au como que
U = v para alguna tabla v en la fibra de u, es decir que
P(AU = Au) =
P(U = v)
∑
v∈F (u)
Usando la primera parte del lema
=
∑
v∈F (u)
t
N
eθ Av
v1 ...v|R|
Como v ∈ F(u), entonces Au = Av ası́ que usando esto y la definición de los coeficientes binomiales
=
N!
∑
v∈F (u)
= eθ
t Au
∏i∈R vi !
∑
v∈F (u)
Ası́ que finalmente se tiene que
eθ
t Au
N!
∏i∈R vi !
5
t
P(U = u|AU = Au) =
=
eθ Au (N!/ ∏i∈R ui !)
t
eθ Au ∑v∈F (u) (N!/ ∏i∈R vi !)
1/ ∏i∈R ui !
∑v∈F (u) 1/ ∏i∈R vi !
Recuerde que quisiéramos realizar pruebas de hipótesis para saber si la distribución de un vector
~X proviene de un modelo log-lineal MA determinado. El lema 1.1 sugiere que si conocemos una
tabla de contingencia u podrı́amos realizar la prueba de hipótesis con hipótesis nula:
H0 : u/N = (ui /N)i∈R ∈ MA
(1.2)
y calcular el p-valor de manera exacta. Esto se explica en el capı́tulo 2 pero por ahora note que
dado Au, las probabilidades del vector U|AU = Au se pueden calcular de manera exacta. Solo se
debe sumar dentro de la fibra F(u) de la tabla u que contiene finitas tablas (todas tienen tamaño
de muestra N). Esto permitirá más adelante calcular de manera exacta también el el p-valor de
la prueba de hipótesis 1.2.
Para ilustrar mejor lo anterior considere primero los siguientes ejemplos que aclaran los conceptos introducidos y muestran en qué situaciones podrı́a surgir la prueba de hipótesis 1.2 que nos
interesa sobre los modelos log-lineales.
Ejemplo 1.1. Modelo de independencia.
Considere la siguiente tabla de contingencia tomada de Drton, Sturmfels, Sullivant [2] que clasifica 376 homicidios ocurridos en la Florida en 1970. La tabla los clasifica de acuerdo con la raza
del acusado y su condena: si obtuvo pena de muerte o no. En este caso nuestro vector aleatorio
serı́a el vector (X,Y ) donde X = Condena y Y = Raza y donde cada variable podrı́a tomar dos
posibles valores.
C UADRO 1.1: Veredictos de Pena de Muerte
Condena
Pena de Muerte
Raza
Blanco
Negro
Total
Sı́
No
Total
19
17
36
141
149
280
160
166
326
6
Una pregunta natural serı́a si estas dos variables están relacionadas, es decir, si la condena del
acusado estuvo influenciada por su raza. Es decir, quisiéramos determinar si las variables X y
Y son independientes. Este problema se puede generalizar de la siguiente manera
Definición 1.6. Sean X y Y dos variables aleatorias discretas con posibles valores [m] y [n]
respectivamente.
Las probabilidades conjuntas de X y Y se definen como
pi j = P(X = i,Y = j) para i = 1, ..., m y j = 1, ..., n
Estas probabilidades determinan las probabilidades marginales que aı́slan las probabilidades de
cada variable.
Definición 1.7. Las probabilidades marginales se definen como
n
pi+ =
∑ pi j = P(X = i)
para i = 1, ..., m
j=1
m
p+ j = ∑ pi j = P(Y = j) para j = 1, ..., n
i=1
Recuerde que se quiere determinar si las variables aleatorias son independientes o no. Para esto
se introduce la siguiente definición.
Definición 1.8. Las variables X y Y son independientes si pi j > 0 para cualquier i = 1, . . . , m
y j = 1, . . . , n y
pi j = pi+ p+ j para i = 1, ..., m y j = 1, ..., n
(1.3)
Tomando logaritmo en la definición anterior esto se reduce a
log pi j = log pi+ + log p+ j = θ(i+) + θ(+ j)
Con esta información se puede escribir la matriz A que codifica este comportamiento. Suponga
por ejemplo que m = 2 y n = 3 . La matriz p = (pi j ) se podrı́a escribir como vector llenándolo por
filas. De esta manera, la matriz A del modelo de independencia que codifica estas restricciones
es la matriz
7
(11)
(12)
(13)
(21)
(22)
(23)
1
1
1
0
0
0

 0


A = 1

 0

0
0
0
1
1
0
0
1
0
1
0
0
1
0
1
0
0

1 


0 

0 

1


Note primero que efectivamente si multiplicamos A por un vector θ t = (θ1+ , θ2+ , θ+1 , θ+2 , θ+3 )
obtenemos el vector log pi j como se definió en la ecuación 1.3.
Otro dato interesante es que si multiplicamos esta matriz A por una tabla de contingencia u
obtenemos el vector con las sumas de filas y columnas de u.
(11)

(12)
(13)
(21)
(22)
(23)
1
1
1
0
0
0

 0


 1

 0

0
0
0
1
1
1
0
0
1
0
0
1
0
0
1
0
0
1
0
0
1













u11
u12
u13
u21
u22
u23



 
 
 
 
 =
 
 
 


u1+


u2+ 


u+1 

u+2 

u+3
Es decir que las tablas v en la fibra de u son las tablas cuyas sumas de filas y columnas son
iguales a las de la tabla u. Por ejemplo, suponga que tenemos la tabla u 1.1 de veredictos de
pena de muerte y quisiéramos saber si las variables son independientes. Relizarı́amos la prueba
de hipótesis con hipótesis nula H0 : u/N ∈ MA y como conocemos el estadı́stico Au, para
calcular el p-valor de la prueba deberı́amos considerar solamente las tablas cuyas sumas de filas
y columnas sean iguales a las de la tabla 1.1.
Ejemplo 1.2. Modelo de Birkhoff
Piense ahora que se quiere hacer un estudio sobre unas elecciones donde hay n candidatos y N
votantes. Se le pregunta a cada votante que ordene a sus primeros r (1 ≤ r ≤ n) candidatos
preferidos. Por ejemplo suponga que n = 5, r = 3 donde tiene los candidatos (a, b, c, d, e). Un
votante podrı́a clasificar a sus preferidos como (b, d, e), es decir a b en primer lugar, d en segundo
y e en tercero. Todas las posibilidades para un votante serı́an
S5,3 = {σ = (σ (1), σ (2), σ (3)) | σ es permutación de r elementos de [n]}
8
En el caso general el conjunto de las posibles elecciones de los votantes es el conjunto de permutaciones de r elementos de n, es decir
Sn,r = {σ = (σ (1), ..., σ (r)) |σ es inyección de [r] en [n]}
Bajo esta notación, σ ( j) denota el candidato que el votante eligió en la posición j.
En este caso el vector aleatorio discreto que quisiéramos estudiar es el vector ~X = (X1 , ..., Xr )
donde X j ∈ [n] es el candidato elegido en la posición j.
Para cada candidato k ∈ [n] se especifica una distribucion sobre las posiciones j ∈ [r] con
P{Candidato k quede en el lugar j} = p jk donde p jk es un parámetro positivo y se asume que
los eventos
C jk = Candidato k en el lugar j
son entre sı́ independientes para todo ( j, k) ∈ [n] × [r]
Esto induce la siguiente distribución sobre Sn,r .
p(σ ) =
1
Z
r
∏ p jσ ( j)
(1.4)
j=1
donde Z := ∑σ ∈Sn,r ∏rj=1 θ jσ ( j) es una constante normalizadora. Si θ jk es grande es más probable que el candidato j esté en el ranking en la posición k.
Tomando logaritmos sobre la ecuación 1.4 este modelo nos estarı́a diciendo que
log(pσ ) = θ1σ (1) + θ2σ (2) + ... + θrσ (r)
es decir que la probabilidad de que que los candidatos elegidos sean (σ (1), ..., σ (r)) es el producto de las probabilidades marginales de que el candidato σ (i) sea ubicado en la posición i.
De acuerdo con esto el modelo de Birkhoff es un modelo log-lineal. La matriz de configuración
del modelo es la matriz A cuyas columnas están rotuladas de acuerdo a todas las posibles permutaciones. Adicionalmente las filas podrı́an marcarse por (i, j) donde cada par ordenado significa
que en la posición i queda el candidato j. Para hacer esto más claro suponga n = 4 y r = 2 la
matriz A4,2 es la siguiente matriz
9
(11)
(12)
(13)
(14)
(21)
(22)
(23)
(24)
(12)
(13)
(14)
(21)
(23)
(24)
(31)
(32)
(34)
(41)
(42)
(43)

1
1
1
0
0
0
0
0
0
0
0
0
















0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
1
0
0
1
0
1
0
0
0
0
0
0
1
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
0
1
0
0
1
0
0
1
0
0

0 


0 

1 


0 


0 

1 

0

Para este modelo tendrı́amos una tabla de contingencia contarı́a la frecuencia de cada permutación de los candidatos, es decir u = (uσ | σ ∈ Sn,r ) donde uσ nos estarı́a diciendo cuántos
de los N votantes eligieron la clasificación σ de los candidatos. El problema serı́a determinar
si la distribución de probabilidad especificada por esta tabla u proviene del modelo log-lineal
especificado por la matriz An,r .
Ejemplo 1.3. Modelo de no interacción de tres factores
Otro ejemplo de modelo log-lineal es el modelo de no interacción entre tres factores. También
se conoce como el modelo de asociación homogénea. En este ejemplo las tablas de contingencia
son de tres dimensiones. Consideramos este modelo pues es uno de los ejemplos utilizados por
Aoki, Hara y Takemura en [3] para probar sus resultados y su método para calcular los p-valores
de las pruebas de hipótesis que nos interesan.
Suponga que tiene una variable aleatoria Y cuyo efecto se podrı́a medir en términos de variables aleatorias X1 , ..., Xm . En estadı́stica la interacción mide el efecto de las variables Xi
sobre la variable Y . Suponga que Y depende de 3 variables X1 , X2 , X3 y que, en principio,
Y = β1 X1 + β2 X2 + β3 X3 + β12 (X1 X2 ) + β13 (X1 X3 ) + β23 (X2 X3 ) + β123 (X1 X2 X3 ). Si el efecto sobre Y es simplemente la suma de los efectos de cada variable decimos que no hay interacción,
es decir Y = β1 X1 + β2 X2 + β3 X3 . En caso de que los demás coeficientes no sean cero decimos
que hay interacción pues el resultado no es simplemente la suma de los efectos de X1 , X2 , y
X3 si no que las variables interactúan ya sea para disminuir el resultado total Y o aumentarlo.
Sean X1 , X2 , X3 tres variables y nuevamente pi jk = P(X1 = i, X2 = j, X3 = k). Como se mencionó
anteriormente podrı́a haber diferentes tipos de interacción entre estas variables. El modelo de no
interacción entre tres factores es una de estas formas de interacción. Otras formas de interacción
entre tres factores se pueden encontrar en [4]. El modelo de no interacción entre tres factores se
puede describir a partir de la siguiente ecuación.
log(pi jk ) = θ + θi + θ j + θk + θi j + θik + θ jk
10
Exponenciando a ambos lados las probabilidades por celdas tienen la forma
pi jk = ψi j φ jk ωik
En general no existe una expresión para pi jk en términos de las marginales de pi jk .
Considere la siguiente tabla tomada de [5] que clasifica una muestra de personas de acuerdo a
su religión, nivel de educación y actitud frente al aborto.
Protestantes Norte
P
M
N
9
16
41
M
85
52
A
77
30
B
Protestantes Sur
8
8
105
35
29
38
37
15
46
Católicos
11
14
38
54
47
35
115
22
25
21
42
C UADRO 1.2: Actitudes frente al aborto en la comunidad blanca cristiana
La primera variable serı́a el tipo de Cristiano: Protestante Norte, Protestante Sur o Católico. La
segunda variable es educación: Baja (B), Media (M) o Alta (A). La tercera variable es la actitud
frente al aborto no terapéutico (Positivo, Mixto o Negativo). Se podrı́a querer determinar si las
variables interactúan de alguna manera particular, por ejemplo, si la distribución proviene del
modelo de no interacción de tres factores.
Como se verá más adelante, concluir que la muestra proviene de la familia de distribuciones del
modelo de no interacción entre tres factores es posible usando los algoritmos desarrollados en
los capı́tulos 2 y 3.
Estos tres ejemplos muestran tres situaciones donde se necesita calcular el p-valor de una prueba
de hipótesis para determinar si una muestra de un vector aleatorio discreto proviene de un modelo log-lineal. En el siguiente capı́tulo se realiza una revisión sobre las formas de abordar este
problema que existen. En el capı́tulo 3 se propone un nuevo algoritmo para calcular el p-valor
de la prueba de hipótesis y en el último capı́tulo se muestran resultados de la implementación y
se compara con otro método.
Capı́tulo 2
Aproximaciones Al Problema
Recuerde el problema inicial que se quiere estudiar. Se tiene una tabla de contingencia u ∈ Z|R|
que clasifica una muestra de un vector aleatorio discreto ~X. A partir de esto se quiere determinar
si la distribución de probabilidad p ∈ ∆|R|−1 que especifica esta tabla pertenece a algún modelo
log-lineal determinado MA donde A es la transformación lineal que describe el modelo.
Para esto se plantea la prueba de hipótesis
H0 : p ∈ MA
vs.
Ha : p ∈
/ MA
En el siguiente capı́tulo se estudian diferentes métodos que resuelven este problema ya sea en el
caso general de cualquier modelo log-lineal o para algún modelo particular. Este es el caso de
la prueba Chi-Cuadrado de independendencia que que se utiliza para resolver el ejemplo 1.1 de
determinar si dos variables son independientes. Luego se estudian los tests exactos y finalmente
las aproximaciones algebráicas al problema.
2.1.
Prueba Chi-Cuadrado de independencia
En 1900 Pearson propuso la siguiente prueba para determinar si dos variables eran independientes a partir de una tabla de contingencia. Esta prueba de hipótesis se basa en la distribución
chi-cuadrado y vale remarcar que fue uno de los primeros tests utilizados de inferencia estadı́stica.
Lo que Pearson propuso fue que dadas dos variables aleatorias discretas X y Y con posibles
valores [m] y [n] y una muestra de tamaño N, (X k ,Y k ), k = 1, ..., N de estas variables se podrı́a
plantear el test con hipótesis nula
11
12
H0 : ~p ∈ MA
donde A es la matriz de configuración del modelo de independencia y p la distribución de (X,Y ).
Sea U = (Ui j ) ∈ Nm×n una tabla aleatoria. Considere el estadı́stico
m
n
(Ui j − ûi j )2
ûi j
i=1 j=1
XN2 (U) = ∑ ∑
(2.1)
donde ûi j son las frecuencias esperadas.
Note que este estadı́stico cuenta para una tabla U qué tan alejados están los valores observados
de los valores esperados por celda. Esto es,
m
n
(Observados − Esperados)2
Esperados
i=1 j=1
X 2 (U) = ∑ ∑
De esta manera, para rechazar la hipótesis nula esperarı́amos que dada nuestra tabla u observada,
la probabilidad de obtener un estadı́stico mayor al nuestro fuera pequeña. Para ilustrar esto
considere la siguiente probabilidad.
P(X 2 (U) ≥ X 2 (u))
(2.2)
Un valor pequeño de esta probabilidad en 2.2 es evidencia en contra de la hipótesis nula pues nos
dice que obtener nuestro resultado es muy improbable si la hipótesis nula fuera cierta.Es decir,
un valor pequeño nos estarı́a indicando que si las variables realmente fueran independientes
haber observado esos resultados serı́a muy improbable. Este valor se conoce como el p-valor de
la prueba de hipótesis.
Ahora quisiéramos entonces calcular la probabilidad en 2.2. El siguiente teorema es la base del
test chi-cuadrado pues permite encontrar la distribución para el estadı́stico y de esta manera
calcular la región de rechazo y el p-valor de la prueba de hipótesis. Una prueba de este teorema
se puede encontrar en [4]
Teorema 2.1. X 2 (U) sigue una distribución aproximadamente chi-cuadrado con (m − 1)(n − 1)
grados de libertad, esto es
2
lı́m P(X 2 (U) ≥ t) → P(χ(m−1)(n−1)
≥ t)
n→∞
13
Ahora faltarı́a ver cómo calcular los valores esperados uˆi j de Ui j en 2.1. Dado que estas son
las frecuencias que esperarı́amos si la distribución de estas frecuencias proviniera del modelo
de independencia quisiéramos que
ui j
N
=
ui+ u+ j
N2
pues, por la definición 1.8, si X y Y son
independientes pi j = pi+ p+ j . Ası́ que en 2.1 podemos reemplazar ûi j utilizando la suma de filas
y columnas, esto es, ûi j =
ui+ u+ j
N .
El test se puede concluir calculando el p-valor de la prueba utilizando el teorema 2.1.
Por ejemplo, para la tabla 1.1 se obtiene un p-valor de 0.638 es decir que no hay evidencia
suficiente para rechazar la hipótesis nula.
Este test tiene un defecto importante y es su dependencia del teorema 2.1. Es un test asintótico
y para poder asegurar cierto nivel de confiabilidad se requieren tamaños grandes de muestras. Y
esto todavı́a no es suficiente. Se requiere, además, que al menos ui j ≥ 5 haciendo que el test sea
poco confiable si alguno de los eventos evento es poco probable [4]. Adicionalmente, este test,
descrito de esta forma, funciona únicamente para el modelo de independencia y se quisieran
tests para cualquier modelo log-lineal.
Considere ahora la aproximación de Fishcer al mismo problema problema pero para tablas de
contingencia 2 × 2. Esta aproximación dio nacimiento a lo que se conoce como “ tests exactos”
pues, en principio, permiten calcular el p-valor de la prueba de manera exacta y sin dependencia
del teorema 2.1. De esta manera se soluciona el problema de la dependencia del tamaño muestra
y las frecuencias por celda en las tablas de contingencia.
Esta idea de los tests exactos fue la que dio nacimiento a la solución propuesta por Diaconis y
Sturmfels [5] para tablas de contingencia de cualquier modelo log-lineal.
2.2.
Test exacto de Fischer
Nuevamente, recuerde la tabla 1.1 de veredictos de pena de muerte. Note que al fijar las sumas
de filas y columnas de la tabla solo una entrada de la tabla queda libre. Si ya se conoce por
ejemplo la cantidad u11 de hombres blancos que sı́ recibieron la pena de muerte como condena,
las otras tres entradas de la tabla ya están determinadas por las sumas de filas y columnas pues
14
u12 = u1+ − u11
u21 = u+1 − u11
y
u22 = u+2 − u12 = u+2 − u1+ + u11
Teorema 2.2. Sea u ∈ T (N) una tabla de contingencia 2x2. Entonces para la variable aleatoria
U de 2x2
P(U11 = u11 |U1+ = u1+ ,U+1 = u+1 ) =
u1+
u11
n−u1+
u+1 −u11
n
u+1
Note que este es un caso particular del teorema 1.1 pues como se mostró en el ejemplo 1.1 esta
suma de filas y columnas son el estadı́stico suficiente, es decir
AU =
U1+
!
U+1
ası́ que la condición U1+ = u1+ ,U+1 = u+1 es equivalente a AU =
u1+
!
= Au
u+1
Por ejemplo para la tabla 1.1 esta proposición nos dice que para calcular el p-valor de la prueba,
dado que solo hay finitas tablas en T (n) con esa determinada suma de filas y columnas, consiste
en sumar sobre estas tablas. Es decir, la probabilidad en 2.1 es el número de tablas que cumplen
X 2 (U) ≥ X 2 (u) sobre el número total, cantidad que se puede calcular exactamente y por esta
razón se llaman tests exactos. Más precisamente,
∑ 1χ 2 (v)≥χ 2 (u)
p − valor =
v∈F (u)
∑v∈F (u) 1
∑ 1χ 2 (v)≥χ 2 (u)
=
v∈F (u)
|F(u)|
Por ejemplo para la tabla 1.1 se obtiene un p-valor de 0.7246 que aunque tampoco permite rechazar la hipótesis nula es significativamente mayor al obtenido utilizando el test chi-cuadrado.
A continuación se muestra cómo generalizar este test exacto a los demás modelos.
15
2.3.
Aproximaciones algebráicas
El test exacto de Fischer se podrı́a generalizar a tablas de mayores dimensiones del modelo de
independencia pero más importante aún, a cualquier modelo log-lineal gracias al lema 1.1 y es
lo que se introduce ahora.
2.3.1.
Estadı́stico χ 2 y Estimadores de Máxima Verosimilitud
Recuerde que en el test exacto de Fischer se calcula la probabilidad P(X 2 (U) ≥ X 2 (u)|AU = Au)
de manera exacta. Basados en el lema 1.1 esta probabilidad se calcula usando el estadı́stico 2.1
m
n
(Ui j − ûi j )2
ûi j
i=1 j=1
X 2 (U) = ∑ ∑
.
En este caso si ri y c j son las sumas de filas y columnas respectivamente, como uˆi j eran las frecuencias esperadas, las tomábamos como ri c j /n dado que bajo la hipótesis nula eran independientes. Para cualquier otro modelo log-lineal MA la generalización natural de este estadı́stico
serı́a
n
X 2 (U) =
(Ui − ûi )2
ûi
j=1
∑
donde ûi = N p̂i , N el tamaño de la muestra en u y p̂i es el estimador de máxima verosimilitud
discutido a continuación.
Si tenemos esto ya se podrı́a diseñar un test exacto de acuerdo con la definición del p-valor de
la prueba y el lema 1.1. Si µ es la medida no uniforme sobre la fibra F(u) definida en este lema
tenemos que
p − valor = P(X 2 (U) ≥ X 2 (u)|AU = Au)
= Eµ [1X 2 (U)≥X 2 (u) ]
=
∑v∈F (u) 1X 2 (U)≥X 2 (u)
|F(u)|
Definición 2.1. Sea ~X (1) , ~X (2) , ..., ~X (n) ∼ Pθ variables independientes e idénticamente distribuidas de acuerdo una distribución Pθ . la función de verosimilitud se define como
n
Ln (θ ) := ∏ P(~X = ~X ( j) )
j=1
(2.3)
16
y la función de log-verosimilitud como
`(θ ) := log(Ln (θ ))
(2.4)
El estimador de máxima verosimilitud (estimador ML) es la variable
Θ := argmaxθ Ln (θ )
n
= argmaxθ ∏ P(~X = ~X ( j) )
j=1
Para el caso que nos interesa
t
Θ = argmaxθ
eθ AU
Z(θ )n
(2.5)
donde U(~X (1) , ..., ~X (n) )i es el número de X ( j) iguales a i ∈ R. Note que U es una variable aleatoria. Para cada muestra particular x(1) , ..., x(n) tenemos el estimado de máxima verosimilitud
t
eθ Au
θ̂ := argmaxθ
Z(θ )n
El estimador ML θ̂ es el valor del parámetro tal que maximiza la probabilidad de observar
~X (1) , ..., ~X (n) .
Lema 2.1. Si A tiene rango completo entonces el estimador de máxima similitud está dado por
la única solución p(θ ∗ ) de la ecuación A un = Ap(θ ∗ ) donde
p(α) :=
∑ pi (α)ei
i∈R
Demostración. Recuerde que Z(θ ) := ∑i∈R eθ
t Ae
i
. Como resultado se tiene entonces que la fun-
ción de log-verosimilitud está dada por
`(θ ) = θ t Au − n log(Z(θ ))
y el gradiente respecto a θ está dado por
t
eθ Aei A ji
e j = Au − nA ∑ pi (θ )ei
Au − n ∑ ∑
j=1n i∈R Z(θ )
17
que es cero si y solo si θ satisface la ecuación A un = Ap(θ ). Diferenciando nuevamente observamos que la Hessiana de `(θ ) está dada por la matriz
H(θ ) := A[diag(pi (α)) − p(θ )p(θ )t ]At
Ahora veamos que la matriz [diag(pi (α)) − p(θ )p(θ )t ]At es negativa semidefinida. Esto se
debe a que representa la forma cuadrática ψ(q) := ∑ pi q2i − (∑ pi qi )2 . Ahora, la función x2 es
estrictamente convexa en R entonces por la desigualdad de Jensen sabemos que para cualquier
variable aleatoria Y se tiene
E(Y )2 ≤ E(Y 2 )
Si Y es una variable aleatoria con
P(Y = qi ) = pi (θ )
esta desigualdad de traduce en que ψ(q) sea negativa semidefinida. Más aún, como los pi (θ )
son estrictamente positivos, la igualdad se tiene si y solo si todos los qi coinciden, caracterizando ası́ el kernel de la forma. Concluimos entonces que `(θ ) es cóncava y entonces su máximo
global se alcanza en cualquier punto donde su gradiente sea 0. Más aún, si θ1 y θ2 son óptimos
globales de la función de verosimilitud entonces el vector uniéndolos es una dirección hacia
donde la hessiana evaluada en θ1 se desvanece que por nuestra hipótesis sobre la inyectividad
de At implica que θ1t A − θ2t A = [c, ..., c] para alguna constante c. Esto significa que ambas distribuciones son iguales módulo una constante multiplicativa. Es decir, p(θ1 ) = p(θ2 ) mostrando
ası́ la unicidad.
2.3.2.
Muestreo
Note que el test exacto de Fischer necesita calcular la probabilidad de todas las tablas en la fibra.
En general este es un problema defı́cil por la cardinalidad de este conjunto.
La solución presentada por Diaconis y Sturmfels en [5] consiste en tomar una muestra de estas
tablas con la distribución apropiada dada por el lema 1.1 para calcular una aproximación del
p-valor evitando encontrar todas las tablas.
Por ejemplo para el modelo de independencia donde el estadı́stico suficiente son las sumas de
filas y columnas, para obtener una muestra de tablas de contingencia con la suma de filas y
columnas deseadas se podrı́a pensar en empezar con una tabla dentro de la fibra F(u) y moverse
18
a la siguiente tabla escogiendo dos filas y dos columnas y sumando y restando 1 de alguna de
las siguientes maneras, cada una con probabilidad
1
2
+ −
− +
− +
+ −
(2.6)
De esta forma la tabla obtenida también tendrá la misma suma de filas y columnas. Si el resultado
es una tabla con entradas negativas se descarta y se vuelve a intentar. Esta es la idea general
del procedimiento propuesto por Diaconis y Sturmfels en [5]. Los “movimientos.entre tablas son
realmente una base de Markov para el espacio F(u). En el caso general de cualquier modelo loglineal habrı́a que encontrar entonces una una base de Markov para F(u) y moverse dentro de la
fibra para obtener una muestra con las probabilidades dadas por el lema 1.1. Este procedimiento
permite definir una cadena de Markov para muestrear tablas con la distribución de U|AU = Au
evitándose calcular exactamente el p-valor de la prueba.
Para crear la cadena la idea es encontrar movimientos que conecten a todas las tablas de la fibra
y ajustar la probabilidad con el algoritmo de Metropolis-Hastings.
Cómo conectar la fibra es ilustrado a continuación.
Definición 2.2. Sea MA el modelo log-lineal asociado a la matriz A ∈ Z|R|×d con kernel entero
KerZ (A) = Ker(A) ∩ N|R|×d = {v ∈ Z|R|×d |Av = 0}.
B ⊆ KerZ(A) es una base de Markov para MA si para cualquier u ∈ T (n) y cualesquiera v, v0 ∈
F(u) existe L ∈ N y u1 , u2 , ...uL ∈ B tales que
L
l
k=1
k=1
v0 = v + ∑ uk y v + ∑ uk ≥ 0∀l = 1, ..., L
Los elementos de B se llaman movimientos
Dado que esta base de Markov nos garantiza que podemos llegar a cualquier tabla en la fibra con
probabilidad positiva podemos muestrear tablas ajustando las probabilidades con el algoritmo
Metropolis-Hastings como se muestra a continuación.
Algoritmo 2.1. (Metropolis-Hastings)
Entrada: Una tabla u ∈ T (n) y una base de Markov B para MA , un tamaño de muestra N.
N
Salida: Sucesión de estadı́sticos (X 2 (vt ))t=1
1. inicialice v1 = u
19
2. Para t = 1, ..., N − 1:
a) seleccione uniformemente ut ∈ B
b) Si mı́n(vt + ut ) < 0, vt+1 = vt . De lo contrario
(
vt+1 =
vt + ut
con probabilidad
q
1−q
vt
donde
P(U = vt + ut |AU = Au)
q = mı́n 1,
P(U = vt |AU = Au)
c) calcule χ 2 (vt )
Note que para calcular la probabilidad q en el paso 2 no hay necesidad de calcular la constante normalizadora, es decir sumar sobre todas las tablas pues es la razón entre dos de estas
probabilidades cancelando ası́ la constante, ası́, en cada paso t del algoritmo
1/ ∏i∈R (uti + vti )!
q = mı́n 1,
1/ ∏i∈R vti !
N del algoritmo 2.1 es una cadena de Markov aperiódica,
Teorema 2.3. La salida (X 2 (vt ))t=1
reversible e irreducible con distribución estacionaria igual a la de la tabla aleatoria
X 2 (U)|AU = Au
M del algoritmo 2.1 satisface
Corolario 2.1. La salida (X 2 (vt ))t=1
N
∑ 1X (v )≥X (u)) = P(X 2 (U) ≥ X 2 (u)|AU = Au)
N→∞
lı́m
2
t
2
t=1
2.4.
Base Lattice
Para el algoritmo 2.1 es necesaria una base de Markov para KerZ (A). Esta base no siempre
es fácil de encontrar. En algunos casos se puede utilizando el software 4ti2 pero en general es
costoso en tiempo y difı́cil computacionalmente.
Dado que la base de Markov conecta cualquier fibra y no solo una en particulas F(u) se podrı́a
pensar en simplificar el problema encontrando un conjunto que garantice conectividad al menos
dentro de la fibra que nos interesa. Esto sigue siendo un problema difı́cil como se muestra en [3].
20
Estos autores proponen entonces cambiar el problema por el de encontrar una base del lattice
que es mucho más fácil.
Como se verá, todo movimiento de la base de Markov se puede expresar como combinación
lineal de elementos de esta base lattice ası́ que se pueden generar los coeficientes de la combinación con diferentes distribuciones siempre y cuando cualquier combinación entera (pues
queremos quedarnos dentro de la fibra) de coeficientes tenga probabilidad positiva. Esto garantizarı́a que con probabilidad positiva obtenemos todos los movimientos de una base de Markov.
Definición 2.3. L = {z1 , ..., zk } ⊆ KerZ (A) es una base lattice si cualquier z ∈ KerZ (A) se puede
escribir de manera única como combinación entera de estos, es decir que existen únicos αi ∈ Z
i = 1, ..., k tales que
z = α1 z1 + α2 z2 + ... + αk zk
Ası́, garantizando que cualquier combinación entera α1 , ..., αk tiene probabilidad positiva podemos generar cualquier elemento de la base de Markov con probabilidad positiva (no necesariamente de manera uniforme como en el algoritmo 2.1 de Diaconis y Sturmfels)
2.4.1.
Cómo encontrar Base Lattice
Para encontrar la base lattice de una matriz A Aoki, Hara y Takemura [3] utilizan la descomposición de l’Hermite de la matriz A descrita a continuación. Esta descomposición es el equivalente
a la reducción escalonada de una matriz pero sobre los enteros.
Definición 2.4. Sea H = (hi j ) una matriz de m con coeficientes enteros. Se dice que H está en
forma normal de l’Hermite si existe r ≤ n y una función estrictamente creciente de {r + 1, ..., n}
en {1, ..., m} tal que
1. Las primeras r columnas de H son 0.
2. Para r + 1 ≤ j ≤ n
h f ( j) j ≥ 1
hi j = 0 si i > f ( j)
0 ≤ m f (k) j < m f (k)k si k < j
Teorema 2.4. Sea A ∈ Zm×n una matriz con entradas enteras. Entonces existe una única matriz
H ∈ Zm×n en forma normal de l’Hermite y U ∈ GLn (Z) tales que H = AU.
21
Demostración. La demostración de la existencia en este teorema se da con el siguiente algoritmo tomado de [6] que retorna las matrices H y U.
Algoritmo 2.2.
Sea A = (ai j ) una matriz de m × n con columnas Ak para k = 1, ..., m
1. Inicialice: Si m ≤ n i ← m, k ← k,l ← 1. Si m > n, l ← m − n + 1
2. Terminó fila?: Si ai j = 0 para j < k, si aik < 0 reemplace Ak por −Ak y vaya a 5.
3. Escoja pivote: Sea ai j0 una entrada diferente de 0 con valor absoluto mı́nimo entre las
entradas diferentes de 0.
Si j0 < k intercambie la calumna Ak con la columna A j0 . Adicionalmente, si aik < 0
reemplace Ak por −Ak . Fije b ← aik
4. Reduzca: para j = 1, ..., k − 1: q ← ai j /b y A j ← A j − qAk . Vaya a 2.
5. Reducciones finales set b ← aik . Si b = 0, k ← k + 1 y vaya a 6. De lo contrario, para
j > k repita: q ← ai j /b y A j ← A j − qAk
6. Terminó?: Si i = l entonces para j = 1, ..., n − k + 1 fije H j ← A j+k−1 y termine el
algoritmo. De lo contrario, i ← i − 1, k ← k − 1 y vaya a 2.
Ası́, si se tiene una base lattice para el kernel entero de la matriz H, suponga KerZ (H) =
sp{v1 , ..., vl } entonces Hvi = AUvi = 0 ∀i es decir que como U es invertible la una base lattice para A es {Uv1 , ...,Uvl }
Para encontrar {v1 , ..., vl } note que como H esta en forma normal de l’Hermite, si H es de m × n


0 ... 0 ∗ ∗ ... ∗


0 ... 0 0 ∗ ... ∗


H =

..


.


0 ... 0 0 ... 0 ∗
Una base lattice para KerZ (H) es entonces el conjunto {e1 , ..., er } donde ei es el i−ésimo vector
de la base canónica de Rn y {Ue1 , ...,Uer } es base lattice para A.
22
2.4.2.
Cómo generar los movimientos
Ya teniendo la base lattice se puede proceder a generar movimientos a partir de combinaciones
lineales con coeficientes enteros de los vectores en la base lattice. Para garantizar que cualquier
movimiento tenga probabilidad positiva (y ası́ mantener la conectividad dentro de cada fibra
F(u) para u ∈ N|R| ) Aoki, Hara y Takemura [3] proponen los dos siguientes algoritmos para
generar los coeficientes.
Algoritmo 2.3.
1. Genere |αi | ∼ Pois(λ ) para i = 1, ..., k. Excluya el caso α1 = α2 = ... = αk = 0
2. αi ← |α|
o
αi ← −|α| cada uno con probabilidad
1
2
Algoritmo 2.4.
1. Genere ∑ki=1 |αi | = |α| ∼ geom(p)
2. Asigne α1 , .., αk con la distribución multinomial haciendo que
(α1 , ..., αk ) ∼ Mn(|α|, 1k , ..., 1k )
De esta forma se puede reemplazar el paso 2.a en el algoritmo 2.1 que utiliza la base de Markov.Si bien se daña la uniformidad en la selección de los movimientos, este algoritmo permite
muestrear tablas de modelos donde no se conoce una base de Markov. Un ejemplo de esto es el
modelo de no interacción de tres factores descrito en el ejemplo 1.3 definido en el capı́tulo uno.
Utilizando estos algoritmos Aoki, Hara y Takemura [3] muestran resultados buenos para este
ejemplo y resultados comparables a los de Diaconis y Sturmfels [5] en los casos en que sı́ se
conoce una base de Markov para el modelo.
Capı́tulo 3
El nuevo algoritmo
Retomando el algoritmo 2.1 de Diaconis y Sturmfels [5]se puede ver que el algoritmo consiste en
empezar con una tabla de contingencia u ∈ N|R| y tomar una muestra de F(u) con la distribución
de U|AU = Au. Acá, A es la matriz asociada a un modelo log-lineal y quisiéramos saber si la
distribución especificada por las frecuencias en u proviene de este modelo. En resumen se está
tomando una muestra del politopo P = {x ∈ R|R| |Ax = Au} intersectado con el lattice N|R| con
la distribución deseada.
En el siguiente capı́tulo se propone un nuevo algoritmo para generar esta muestra que parte de
realizar un muestreo continuo dentro del politopo P. Este problema tiene varias componentes.
Primero se quisiera realizar el muestreo continuo dentro del politopo P. Sin embargo estas tablas
no tendrán entradas enteras con probabilidad 1 ası́ que en segunda instancia habrı́a que corregir
esto. En tercer lugar está el problema de que la muestra resultante tenga la distribución deseada.
Ası́ en resumen el problema consiste en:
1. Muestrear continuamente en P
2. Aproximar las tablas para que tengan entradas enteras
3. La muestra final proviene de la distribución deseada (dada por el lema 1.1).
Para resolver estos tres problemas se propone el siguiente algoritmo.
Algoritmo 3.1.
Entrada: Una tabla u ∈ T (n), la matriz A que define el modelo log-lineal MA
M
Salida: Sucesión de estadı́sticos (X 2 (vt ))t=1
1. Tome una muestra continua uniforme sobre el politopo P = {x ∈ R|R| |Ax = Au}.
23
24
2. Redondee cada tabla sin dañar la uniformidad de la muestra.
3. Ajuste las probabilidades utilizando el método del rechazo.
A continuación se muestra entonces cómo se realizan cada uno de estos pasos.
3.1.
Muestreo Continuo
El problema de muestrear continuamente dentro de un politopo P ha sido estudiado por muchos
autores y existen varios métodos para resolverlo. Una revisión de este tema se puede encontrar
en [7]. El procedimiento general está dado por caminatas aleatorias que empiezan en un punto x0
dentro del politopo P y en cada paso se mueven a otro punto en un vecindario de x0 de acuerdo
a alguna distribucuón que depende del punto donde se encuentra. El método que se utilizó para
implementar el muestreo continuo es conocido como Hit and Run.
Considere un politopo P definido por P = {x ∈ Rn | Ax ≤ b} donde A es una matriz A ∈ Rm×n
y b un vector b ∈ Rm .
Siempre se cuenta con un oráculo que indica si un punto x ∈ Rn pertenece o no al politopo P.
Este método de muestreo continuo es una caminata geométrica en P que primero selecciona un
segmento por el punto actual x y luego un punto uniforme en este segmento.
Algoritmo 3.2. Hit and Run
Entrada: Un punto inicial x0 ∈ P ⊆ Rn , matriz A y vector b que definen el politopo P, un
tamaño de muestra N.
Salida: Sucesión de puntos (xi )Ni=0 en el politopo.
Para t = 1, ..., N − 1, si está en el punto xt ,
1. Escoja una dirección: Genere u1 , ..., un ∼ N(0, 1) que definen la dirección~u = (u1 , ..., un )
y tome d~ = ~u/k~uk el vector normalizado. Defina la recta l = ~xt + sd~ para s ∈ R que pasa
por xt y tiene dirección d.
2. Escoja un punto: Escoja uniformemente un punto r en el intervalo [a, b] definido por la
longitud de la cuerda l ∩ P. Muévase al punto ~xt+1 =~xt + rd~
El punto escogido en el paso 2 del algoritmo efectivamente pertenece a P pues P es politopo y
por lo tanto es convexo.
Teorema 3.1. La distribución estacionaria del algoritmo 3.2 es la distribución uniforme.
Una prueba de este teorema se puede encontrar en [7]
25
3.2.
Aproximación
Para el problema que nos interesa solo necesitamos tablas de contingencia que cuentan frecuencias, es decir que siempre tendrán entradas en los naturales. Sin embargo las tablas obtenidas en
la anterior sección no tendrán entradas enteras con probabilidad 1. Para solucionar este problema
se utiliza un redondeo. Este problema no es tan sencillo como aproximar cada entrada al natural
más cercano pues bajo este redondeo las tablas en la frontera tendrán menos probabilidad al
haber menos tablas que se redondean a ellas.
Para el caso particular del modelo de independencia Ben Morris propone en [8] ampliar el politopo P a un politopo P0 que satisfaga que, luego del redondeo, la probabilidad de cualquier punto
del lattice tenga igual probabilidad. Este resultado puede ser extendido a cualquier politopo y es
uno de los resultados principales del presente proyecto. El teorema 3.4 es un nuevo resultado que
se encontró en el desarrollo de este trabajo y que permite muestrear tablas de cualquier modelo
log-lineal de manera uniforme.
Primero considere solo el modelo de independencia. Recuerde que se tiene una muestra de
tamaño N de dos variables X y Y clasificada en una tabla de contingencia u con sumas de filas
~r = (r1 , ..rm ) y de columnas ~c = (c1 , ..., cn ). Sea
n
P = {x ∈ Rm×n
≥0 |
m
∑ xi j = ri ∀i ∈ [m] ,
j=1
∑ xi j = c j ∀ j ∈ [n]}
i=1
el conjunto de todas las tablas con entradas reales no negativas con sumas de filas y columnas
dadas y
I(r, c) = Zm×n ∩ P
.
En resumen, la idea de Morris en [8] es la siguiente:
1. Tome P0 ⊇ P un politopo más grande que P.
2. Tome y ∈ P0
3. Redondee y a z. Si z ∈
/ I(r, c) repita 2.
Para una tabla x ∈ I(r, c) sea vol(x) el número de tablas que se redondean a x. Queremos que
para cada tabla en I(r, c) este volumen sea constante y de esta forma si se toma una muestra
uniforme en P0 , la muestra redondeada será uniforme en I(r, c). Sin embargo es claro que hay
que compensar el ajuste de este volumen con la probabilidad de que la tabla final esté en I(r, c).
Es decir, entre más se corrija el volumen de cada tabla x mayor será el politopo P0 y mayor la
26
probabilidad de que las tablas finales estén por fuera del politopo original P y por ende de la
fibra F(u) haciendo que el tiempo que se demorara en correr el algoritmo sea superior.
Para el modelo de independencia el politopo P de las tablas en la fibra F(u) de la tabla inicial u
con sumas r y c está descrito por las tablas x ∈ N m×n que cumplen las igualdades
n
∑ xi j = ri
para
i = 1, ..., m
∑ xi j = c j
para
j = 1, ..., n
j=1
m
i=1
Note que las tablas están completamente especificadas por los valores en las entradas (i, j) para
i < m, j < n. Es decir, bajo las siguientes identificaciones
n−1
xin = ri − ∑ xi j
i = 1, ..., m − 1
para
j=1
m−1
xm j = c j −
∑ xi j
j = 1, ..., n
para
i=1
este politopo se puede describir con las desigualdades
n−1
∑ xi j ≤ ri
para
i = 1, ..., m − 1
para
j = 1, ..., n − 1
j=1
m−1
∑ xi j ≤ c j
i=1
m−1 n−1
m−1
∑ ∑ xi j ≥ ∑ ri − cn
i=1 j=1
i=1
La ventaja de esta descripción es que permite muestrear de un politopo de dimensión completa
en R(m−1)×(n−1) . Recuerde que tenemos que vol(x) para x ∈ Nm×n se define como el volumen
de tablas en el politopo “agrandado”P0 que se redondean a x, es decir que es el volumen de la
intersección entre P0 y el hipercubo (m − 1)(n − 1)-dimensional centrado en x. Dicho de esta
manera se puede caracterizar vol(x) de la siguiente manera. Sea E una matriz aleatoria de (m −
1) × (n − 1) con entradas distribuidas uniformemente en el intervalo [− 21 , 12 ]. Entonces tenemos
27
que vol(x) = Pr(x + E ∈ P0 ) y quisiéramos que vol(X) ≈ 1 para cualquier tabla x ∈ I(r, c). Se
puede entonces definir el politopo P0 de la siguiente manera. Sea 0 < ε <
1
2
un parámetro de
error y sean C1 ,C2 ,C3 constantes definidas por
C1 =
1
log(2/ε),
2
C2 =
log(4/ε) 1
+ ,
2 log m
2
C3 =
log(4/)n 1
+
2 log n
2
P0 es el conjunto de las matrices Y ∈ R(m−1)×(n−1) que satisfacen
−1
2
p
Ymn ≥ − C1 mn
p
Yin ≥ − C2 n log m
p
Ym j ≥ − C3 m log n
Yi j ≥
para i < m y j < n. Como se muestra en el siguiente teorema estas desigualdades que definen P0
permiten que efectivamente vol(X) ≈ 1.
Teorema 3.2. Sea 0 < ε < 12 . Para cualquier tabla X ∈ I(r, c) se tiene que
1 − ε ≤ vol(X) ≤ 1
La prueba de este teorema y la elección de las constantes C1 , C2 y C3 se basa en la desigualdad
de Hoeffding. Adicionalmente, Morris en [8] demuestra que no solo esta elección de P0 permite
obtener una muestra uniforme sino que además se puede realizar en algunos casos en tiempo
polinomial. Su resultado principal es el siguiente teorema que prueba que si las sumas de filas y
columnas cumplen ciertas condiciones entonces el algoritmo corre en tiempo polinomial.
Teorema 3.3. Suponga que las sumas de filas y columnas satisfacen ri = Ω(n3/2 mlogm) y
c j = Ω(m3/2 nlogn) para todo i y todo j. Entonces el número esperado de ensayos antes de que
el algoritmo genere un punto uniforme de I(r, c) es O(1/ε)
Como se mencionaba anteriormente se logró extender el teorema 3.2 al problema más general
de muestrear puntos del lattice contenido en un politopo P y por lo tanto al de muestrear tablas
de contingencia de cualquier modelo log-lineal.
Teorema 3.4. Sea P = {x ∈ Rn | Ax ≤ b} donde A ∈ Rm×n y b ∈ Rm y K = Zn ∩ P. Sea
K 0 = {x ∈ Zn | Ax ≤ b + k} donde
28
k = (k1 , ..., km )
n
y ki = −2 ∑ a2i j log(ε/n)
j=1
Sea E un vector aleatorio (n − 1)-dimensional con entradas distribuidas uniformemente en el
/ P0 ) < ε
intervalo [− 12 , 21 ] y x ∈ K. Entonces, Pr(x + E ∈
Para probar este teorema se utiliza la desigualdad de Hoeffding enunciada a continuación
Teorema 3.5. Sean Y1 , ...,Yn variables aleatorias independientes tales que ai ≤ Yi ≤ bi
(i =
1, ..., n). Sea Ȳ = (Y1 + ... +Yn )/n y µ = EȲ . Entonces para t > 0
Pr(Ȳ − µ > t) ≤ e−2t
2/
∑ni=1 (bi −ai )2
(3.1)
Demostración. Teorema 3.4
Sea x0 = x + E. Si ai denota el vector con la i-ésima fila de la matriz A = (ai j ) tenemos que
Pr(x + E ∈
/ K 0 ) = Pr(x0 ∈
/ K0)
= Pr( at1 x0 > b1 + k1 ∨ at2 x0 > b2 + k2 ∨ ... ∨ atn x0 > bn + kn )
m
= ∑ Pr(ati x0 > bi + ki )
i=1
Ahora, para cada i ∈ [m] se tiene que ati x ≤ bi entonces bi − ati x ≥ 0 y
Pr(ati x0 > bi + ki ) = Pr(ati x + ati E > bi + ki )
= Pr(ati E > (bi − ati x) + ki )
< Pr(ati E > ki )
29
Como E j se distribuye uniforme en [− 12 , 12 ]
j = 1, ..., n entonces ai j E j es uniforme en [−
|ai j | |ai j |
2 , 2 ].
Entonces Ē = 0 por linealidad del valor esperado. Aplicando la desigualdad de Hoeffding a las
variables ai j E j
j = 1, ..., n
2
n
2
Pr(ati E > ki ) ≤ e−ki / ∑ j=1 2(ai j )
ε
<
m
Y finalmente se tiene entonces que
m
Pr(x + E ∈
/ K 0 ) = ∑ Pr(ati x0 > bi + ki )
i=1
m
< ∑ Pr(ati E > ki )
i=1
m
ε
i=1 m
<∑
=ε
3.3.
Método del Rechazo
Hasta ahora, el algoritmo produce una muestra casi uniforme de tablas de contingencia de la
fibra F(u) para alguna tabla de contingencia u de algún modelo log-lineal MA . Pero se quiere
que la muestra tenga la distribución de U|AU = Au dada por el lema 1.1.
Una forma de ajustar estas probabilidades es el método del rechazo. Asuma que Ω es un conjunto
finito y se quiere una muestra de una distribución p∗ (x) en Ω. Suponga que
Se conoce una función p(x) proporcional a p∗ (x) que se puede evaluar.
Se conoce una distribución q∗ (x) en Ω de la cual se puede muestrear y una función q∗ (x)
que se puede evaluar.
Se conoce una constante c > 0 tal que cq(x) ≥ p(x) para cualquier x ∈ Ω
El método del rechazo realiza lo siguiente
30
Algoritmo 3.3.
1. En el paso t = 0 empiece con cualquier punto x0 ∈ Ω
2. En el paso t muestree w ∈ Ω de acuerdo a q∗ (x) y genere y ∼ Unif(0, cq(w)).
Si y < p(w) defina xt+1 := w (Acepta la muestra)
Si y > p(w) defina xt+1 := xt (Rechace la muestra)
La sucesión (xt )t∈N es una cadena de Markov con distribución estacionaria p∗ (x).
Para el caso que nos interesa de los modelos log-lineales se puede tomar la medida uniforme
en F(u) donde q(x) = 1 para cualquier x ∈ F(u). p(x) se puede tomar como p(x) =
1
.
∏ vi !
La
constante c óptima para esta elección de q serı́a
c := máx
v∈F (u)
1
1
=
∏i∈R vi ! mı́nv∈F (u) ∏i∈R vi !
Sin embargo aparece nuevamente el problema de la cardinalidad del conjunto F(u) para encontrar este máximo. El siguiente lema que permitirá encontrar un aproximado de esta constante
c.
Lema 3.1. Sean v1 , ..., vm enteros no negativos y k = ∑m
i=1 vi . Entonces
m
k
∏ vi ! ≥ ( n !)n
i=1
y
m
1
1
∏ vi ! ≤ ( k !)n
i=1
n
Demostración. Sean v1 y v2 enteros no negativos y suponga sin pérdida de generalidad v1 ≥ v2
entonces
v1 (v1 − 1)!(v2 + 1)!
v2 + 1
v1
=
(v1 − 1)!(v2 + 1)!
v2 + 1
v1 !v2 ! =
31
Como v1 y v2 son enteros no negativos y v1 > v2 se tiene que
v1
v2 +1
≥ 1, entonces
≥ (v1 − 1)!(v2 + 1)!
Ası́, el producto v1 , . . . , vn se minimiza cuando más cercanos están los factores.
Note entonces que si la distribución p∗ está dada por
p∗ (u) = P(U = u|AU = Au)
=
1/ ∏i∈R ui !
∑v∈F (u) 1/ ∏i∈R vi !
podemos tomar p(x) = 1/ ∏i∈R xi ! y usando el lema anterior p(x) ≤ c para cualquier x ∈ F(u).
Como q(u) = 1 efectivamente p(x) ≤ cq(x) .
Capı́tulo 4
Resultados
En este capı́tulo se muestran algunos ejemplos para el modelo de independencia para los que
se implementó el nuevo algoritmo. En el ejemplo 4.1 se muestran ejemplos en dimensión baja
donde el algoritmo funciona correctamente. Para comparar, también se implementó el muestreo utilizando la base Lattice y se observa en algunos casos un desempeño comparable. En el
ejemplo 4.2 se considera un ejemplo en dimensión mayor y se muestran algunas debilidades del
nuevo algoritmo. Finalmente se muestran algunas conclusiones sobre los resultados
4.1.
Ejemplos
Ejemplo 4.1. Se generaron diferentes tablas aleatorias de dimensiones m × n con entradas
en diferentes intervalos [a, b]. Se generó una muestra de tamaño N = 2500 y se comparó el
algoritmo propuesto con el algoritmo que utiliza la base lattice, encontrando los coeficientes
para los movimientos de la base de Markov utilizando el el algoritmo 2.3. Para cada m, n, a y b
2
se muestra el histograma del estadı́stico chi-cuadrado y la densidad χ(m−1)(n−1)
.
1. Modelo independencia para dos variables X y Y con 3 y 2 posibles resultados respectivamente y entradas ui j ∈ {3, ..., 9}
X
Y
1
2
3
1
3
7
8
2
7
4
5
C UADRO 4.1: Tabla de Contingencia 2 × 3
32
33
F IGURA 4.1: Nuevo Algoritmo dimensión
2
F IGURA 4.2: Base Lattice dimensión 2
2. Modelo de intependencia para dos variables X y Y con 4 y 2 posibles resultados respectivamente.
Tabla con entradas ui j ∈ {3, ..., 9}
X
Y
1
2
3
4
1
4
3
8
7
2
5
7
4
4
C UADRO 4.2: Tabla de Contingencia 2 × 4
F IGURA 4.3: Nuevo Algoritmo dimensión
3
Tabla con entradas ui j ∈ {4, ..., 9}
F IGURA 4.4: Base Lattice dimensión 3
34
X
Y
1
2
3
4
1
8
8
4
9
2
8
8
6
7
C UADRO 4.3: Tabla de Contingencia 2 × 4
F IGURA 4.5: Nuevo Algoritmo dimensión
3
F IGURA 4.6: Base Lattice dimensión 3
Tabla con entradas ui j ∈ {5, ..., 9}
X
Y
1
2
3
4
1
9
6
6
5
2
8
5
6
6
C UADRO 4.4: Tabla de Contingencia 2 × 4
F IGURA 4.7: Nuevo Algoritmo dimensión
3
F IGURA 4.8: Base Lattice dimensión 3
3. Modelo de intependencia para dos variables X y Y con 3 posibles resultados cada una.
35
Tabla con entradas ui j ∈ {3, ..., 9}
X
Y
1
2
3
1
5
9
9
2
7
9
3
3
6
5
9
C UADRO 4.5: Tabla de Contingencia 3 × 3
F IGURA 4.9: Nuevo Algoritmo dimensión
4
F IGURA 4.10: Base Lattice dimensión 4
4. Tabla con entradas ui j ∈ {7, ..., 10}
X
Y
1
2
3
1
10
10
9
2
10
9
8
3
10
8
10
C UADRO 4.6: Tabla de Contingencia 3 × 3
F IGURA 4.11: Nuevo Algoritmo dimensión 4
F IGURA 4.12: Base Lattice dimensión 4
36
Modelo de intependencia para dos variables X y Y con 5 y 2 posibles resultados respectivamente.
Tabla con entradas ui j ∈ {4, 5, 6}
X
Y
1
2
3
4
5
1
5
4
6
4
4
2
4
4
5
4
5
C UADRO 4.7: Tabla de Contingencia 2 × 5
F IGURA 4.13: Nuevo Algoritmo dimensión 4
F IGURA 4.14: Base Lattice dimensión 4
Tabla con entradas ui j ∈ {6, 7, 8}
X
Y
1
2
3
4
5
1
7
8
7
8
6
2
7
6
6
8
6
C UADRO 4.8: Tabla de Contingencia 2 × 5
• Tamaño de muestra N = 2500
37
F IGURA 4.15: Nuevo Algoritmo dimensión 4
F IGURA 4.16: Base Lattice dimensión 4
• Tamaño de muestra N = 25000 para el nuevo algoritmo
F IGURA 4.17: Nuevo Algoritmo dimensión 4. N = 25000
Ejemplo 4.2. El siguiente ejemplo fue tomado de [5]. La siguiente tabla de contingencia clasifica una muestra de 82 personas de acuerdo a su fecha de nacimiento y de deceso. Este ejemplo
es interesante pues al intentar correr el nuevo algoritmo no fue posible generar nuevas tablas
dentro de la fibra.
38
Mes Nacimiento
Mes de Muerte
Ene
Feb
Mar
Abr
May
Jun
Jul
Ago
Sep
Oct
Nov
Dic
Total
Ene
1
0
0
0
1
2
0
0
1
0
1
0
6
Feb
1
0
0
1
0
0
0
0
0
1
0
2
5
Mar
1
0
0
0
2
1
0
0
0
0
0
1
5
Abr
3
0
2
0
0
0
1
0
1
3
1
1
12
May
2
1
1
1
1
1
1
1
1
1
1
0
12
Jun
2
0
0
0
1
0
0
0
0
0
0
0
3
Jul
2
0
2
1
0
0
0
0
1
1
1
2
10
Ago
0
0
0
3
0
0
1
0
0
1
0
2
7
Sept
0
0
0
1
1
0
0
0
0
0
1
0
3
Oct
1
1
0
2
0
0
1
0
0
1
1
0
7
Nov
0
1
1
1
2
0
0
2
0
1
1
0
9
Dic
0
1
1
0
0
0
1
0
0
0
0
0
3
Total
13
4
7
10
8
4
5
3
4
9
7
8
82
C UADRO 4.9: Relación entre mes de nacimiento y muerte
Para tamaños de muestra 10000, al agrandar el politopo usando el teorema 3.4 todas las tablas
encontradas estaban fuera de la fibra (tenı́an entradas negativas o la suma de filas y columnas no
era correcta) y al intentar correr el algoritmo sin agrandar el politopo simplemente la cadena no
se movı́a.
El ejemplo es importante para ver posibles fallas y mejoras del algoritmo como el problema de
dimensionalidad pues el algoritmo depende fuertemente de la forma del politopo.Esto podrı́a
estar relacionado con problemas numéricos en el código o con problemas de concentración de
la medida.
4.2.
Conclusiones
En el ejemplo 4.1 hay varios casos que muestran que el algoritmo propuesto funciona. Esto es
cuando la dimensión del politopo en el que se toma la muestra es pequeña.
Sin embargo es claro que la primera limitación del código implementado es la dimensión. Por
ejemplo, el simple hecho de pasar de una tabla 2 × 3 a una 3 × 3 equivale a muestrear en un
politopo de dimensión 2 y pasar a uno de dimensión 4 y la diferencia es evidente en las gráficas.
En estos casos aumentar el tamaño de muestra ayuda como se ve para la tabla de 2×5 al final del
ejemplo 4.1 pero esto aumenta considerablemente el tiempo que se tarda el algoritmo mientras
que el método de Aoki, Hara y Takemura se mantiene prácticamente igual en los diferentes
ejemplos.
39
Otra limitación que podrı́a llegar a tener el método es la concentración de la medida en dimensión alta. Como muestra Köppen en [1] un hipercubo en dimensión alta se debe imaginar como
un erizo. Es decir, en el hipercubo n− dimensional el volumen está concentrado en una bola
√
central de radio 1/2 cubierta por 2n puntas de longitud n/2.
F IGURA 4.18: Hipercubo “puntudo ”. Tomado de [1]
Si se inicia en una tabla en alguna de las puntas el algoritmo podrı́a tardarse mucho en converger.
Adicionalmente a medida que aumenta la dimensión el método del rechazo se empieza a tardar
más pues es más propenso a rechazar las tablas.
A futuro se podrı́a pensar en métodos que permitieran iniciar el algoritmo no necesariamente en
la tabla de contingencia dada sino en algún punto central del politopo que hiciera que el muestreo
fuera más eficiente. Además se podrı́a pensar en mejorar la constante c del método del rechazo
que es difı́cil de calcular para números grandes y también podrı́a causar errores numéricos en la
implementación.
Bibliografı́a
[1] Mario Köppen. The curse of dimensionality. In 5th Online World Conference on Soft
Computing in Industrial Applications (WSC5), pages 4–8, 2000.
[2] Mathias Drton, Bernd Sturmfels, and Seth Sullivant. Lectures on algebraic statistics. Springer Science & Business Media, 2008.
[3] Hisayuki Hara, Satoshi Aoki, and Akimichi Takemura. Running markov chain without
markov basis. arXiv preprint arXiv:1109.0078, 2011.
[4] Alan Agresti. Categorical data analysis. John Wiley & Sons, 2013.
[5] Persi Diaconis, Bernd Sturmfels, et al. Algebraic algorithms for sampling from conditional
distributions. The Annals of statistics, 26(1):363–397, 1998.
[6] Henri Cohen. A course in computational algebraic number theory, volume 138. Springer
Science & Business Media, 1993.
[7] Santosh Vempala. Geometric random walks: a survey. MSRI volume on Combinatorial and
Computational Geometry, 2005.
[8] Ben J Morris. Improved bounds for sampling contingency tables. Random Structures &
Algorithms, 21(2):135–146, 2002.
40
Descargar