Muestreo de Tablas de Contingencia para Modelos Log-Lineales

46
Muestreo de Tablas de Contingencia para Modelos Log-Lineales 2 de junio de 2015

Transcript of Muestreo de Tablas de Contingencia para Modelos Log-Lineales

Page 1: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

Muestreo de Tablas de Contingencia para Modelos

Log-Lineales

2 de junio de 2015

Page 2: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

UNIVERSIDAD DE LOS ANDES

ResumenFacultad de Ciencias

Departamento de Matematicas

Muestreo de Tablas de Contingencia para Modelos Log-Lineales

por Monica Ribero

El siguiente proyecto estudia el problema de calcular p-valores de pruebas de hipotesis utilizan-

do tests exactos como metodo alternativo a las pruebas asintoticas. Para estas pruebas se han

desarrollado algoritmos que generan muestras de tablas con entradas enteras de acuerdo con

alguna distribucion conocida. Para esto se estudia un nuevo algoritmo que reduce este problema

a muestrear continuamente dentro de un politopo.

Page 3: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

Indice general

Resumen I

Lista de Figuras III

Lista de Tablas IV

1. Introduccion 1

2. Aproximaciones Al Problema 112.1. Prueba Chi-Cuadrado de independencia . . . . . . . . . . . . . . . . . . . . . 112.2. Test exacto de Fischer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.3. Aproximaciones algebraicas . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.3.1. Estadıstico χ2 y Estimadores de Maxima Verosimilitud . . . . . . . . . 152.3.2. Muestreo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.4. Base Lattice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.4.1. Como encontrar Base Lattice . . . . . . . . . . . . . . . . . . . . . . . 202.4.2. Como generar los movimientos . . . . . . . . . . . . . . . . . . . . . 22

3. El nuevo algoritmo 233.1. Muestreo Continuo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243.2. Aproximacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253.3. Metodo del Rechazo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4. Resultados 324.1. Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324.2. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Bibliografıa 40

II

Page 4: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

Indice de figuras

4.1. Nuevo Algoritmo dimension 2 . . . . . . . . . . . . . . . . . . . . . . . . . . 334.2. Base Lattice dimension 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334.3. Nuevo Algoritmo dimension 3 . . . . . . . . . . . . . . . . . . . . . . . . . . 334.4. Base Lattice dimension 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334.5. Nuevo Algoritmo dimension 3 . . . . . . . . . . . . . . . . . . . . . . . . . . 344.6. Base Lattice dimension 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344.7. Nuevo Algoritmo dimension 3 . . . . . . . . . . . . . . . . . . . . . . . . . . 344.8. Base Lattice dimension 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344.9. Nuevo Algoritmo dimension 4 . . . . . . . . . . . . . . . . . . . . . . . . . . 354.10. Base Lattice dimension 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354.11. Nuevo Algoritmo dimension 4 . . . . . . . . . . . . . . . . . . . . . . . . . . 354.12. Base Lattice dimension 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354.13. Nuevo Algoritmo dimension 4 . . . . . . . . . . . . . . . . . . . . . . . . . . 364.14. Base Lattice dimension 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364.15. Nuevo Algoritmo dimension 4 . . . . . . . . . . . . . . . . . . . . . . . . . . 374.16. Base Lattice dimension 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374.17. Nuevo Algoritmo dimension 4. N = 25000 . . . . . . . . . . . . . . . . . . . . 374.18. Hipercubo “puntudo ”. Tomado de [1] . . . . . . . . . . . . . . . . . . . . . . 39

III

Page 5: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

Indice de cuadros

1.1. Veredictos de Pena de Muerte . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.2. Actitudes frente al aborto en la comunidad blanca cristiana . . . . . . . . . . . 10

4.1. Tabla de Contingencia 2×3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 324.2. Tabla de Contingencia 2×4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 334.3. Tabla de Contingencia 2×4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 344.4. Tabla de Contingencia 2×4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 344.5. Tabla de Contingencia 3×3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 354.6. Tabla de Contingencia 3×3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 354.7. Tabla de Contingencia 2×5 . . . . . . . . . . . . . . . . . . . . . . . . . . . 364.8. Tabla de Contingencia 2×5 . . . . . . . . . . . . . . . . . . . . . . . . . . . 364.9. Relacion entre mes de nacimiento y muerte . . . . . . . . . . . . . . . . . . . 38

IV

Page 6: Muestreo de Tablas de Contingencia para Modelos Log-Lineales
Page 7: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

Capıtulo 1

Introduccion

El objetivo del presente trabajo es desarrollar pruebas de hipotesis para determinar si una mues-

tra vectorial con componentes discretas proviene de una familia de distribuciones. Particular-

mente 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 cuando podrıa surgir el

problema y por que es interesante.

Suponga que tiene un vector aleatorio discreto ~X = (X1, ...Xm). Donde Xl toma valores en [rl] :=

1, ...,rl y rl ∈ N. SeaR= ∏mi=1[rl].

Definicion 1.1. Definimos ∆k el k-simplex de probabilidad como el conjunto de todas las dis-

tribuciones de probabilidad para una variable aleatoria discreta X con k+1 posibles resultados.

∆k := q ∈ Rk+1 | qi ≥ 0 ∀i ,k+1

∑i=1

qi = 1

Definicion 1.2. Un modelo estadısticoM es una familia de distribuciones de probabilidad. En

nuestro caso nos interesan los modelosM⊆ ∆k donde las distribuciones provienen de vectores

aleatorios discretos. Un modelo parametrico es un modelo estadıstico donde la familia de dis-

tribuciones esta especificada por un numero finito de parametros θ = (θ1,θ2, ...,θm) para algun

m ∈ N. Un modelo log-lineal es una forma de especificar estos parametros como se muestra a

continuacion.

Sean V1, ...,Vm espacios vectoriales con bases fijas. Para cada j = 1, ...,m denotamos por er1 , ...,er j

la base de Vj y por ei1...im la base natural inducida en el producto tensorial ⊗mj=1Vj

Sea A :⊗mj=1Vj→ F ∼=Rd una transformacion lineal. El modelo log-lineal especificado por A es

el conjunto de distribuciones de probabilidadMA donde

1

Page 8: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

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 estan dadas por

p~i = pi1...im =eθ t Aei1 ...im

Z(θ)

para algun 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).

Definicion 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)) ∈ ⊗mj=1Vj donde cada entrada esta determinada por

U(~X (1),~X (1), ...,~X (k))i1...im =k

∑j=1

1~X ( j)=(i1...im)para (i1, ..., im) ∈R

Estas tablas nos interesan porque si conocemos una de ellas, el estadıstico AU es suficiente para

el parametro θ . Es decir que se pierde la dependencia del parametro θ como se muestra en el

siguiente lema.

Definicion 1.4. Defina T (N) como el conjunto de tablas de contingencia que podrıan resultar

para un tamano de muestra N:

T (N) = u ∈ ⊗mj=1Vj | ∑

i∈Rui = N

Definicion 1.5. Defina la fibra de la tabla u para un tamano 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)

Page 9: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

3

Esto implica que~1 = qtA para algun q ∈ ⊗mj=1Vj. Entonces si v ∈ F(u), se tiene que Av = Au y

ası

qtAv = qtAu

~1tv =~1tu

∑i∈R

vi = ∑i∈R

ui

= 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

parametro θ .

Lema 1.1. Sea p = eAt θ ∈MA donde e(v1,...,vn) = (ev1 , . . . ,evn) y u ∈ T (N) una tabla. Entonces

P(U = u) =(

Nu1...u|R|

)eθ t Au

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 parametro θ .

Demostracion. Para encontrar la distribucion de una tabla U y probar la primera parte del lema

note que, por definicion, la tabla U tiene una distribucion multinomial con parametros p y N pues

tenemos un tamano de muestra N y queremos que ocurra ui1...im veces el evento ~X = (i1, ..., im).

Es decir que utilizando la distribucion multinomial y propiedades de exponentes se tiene que

P(U = u) =(

Nu1...u|R|

)∏

i1...im

pui1 ...imi1...im

=

(N

u1...u|R|

)∏

i1...im

(e(θt A)i1...im )ui1 ...im

=

(N

u1...u|R|

)e∑i1 ...im

(θ t A)i1 ...im ui1 ...im

=

(N

u1...u|R|

)eθ t Au

Page 10: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

4

probando ası la primera parte del lema. Para la distribucion 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 esta 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) = ∑v∈F(u)

P(U = v)

Usando la primera parte del lema

= ∑v∈F(u)

(N

v1...v|R|

)eθ t Av

Como v ∈ F(u), entonces Au = Av ası que usando esto y la definicion de los coeficientes bino-

miales

= ∑v∈F(u)

N!∏i∈R vi!

eθ t Au

= eθ t Au∑

v∈F(u)

N!∏i∈R vi!

Ası que finalmente se tiene que

Page 11: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

5

P(U = u|AU = Au) =eθ t Au(N!/∏i∈R ui!)

eθ t Au ∑v∈F(u)(N!/∏i∈R vi!)

=1/∏i∈R ui!

∑v∈F(u) 1/∏i∈R vi!

Recuerde que quisieramos realizar pruebas de hipotesis para saber si la distribucion de un vector~X proviene de un modelo log-linealMA determinado. El lema 1.1 sugiere que si conocemos una

tabla de contingencia u podrıamos realizar la prueba de hipotesis con hipotesis 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 tamano

de muestra N). Esto permitira mas adelante calcular de manera exacta tambien el el p-valor de

la prueba de hipotesis 1.2.

Para ilustrar mejor lo anterior considere primero los siguientes ejemplos que aclaran los concep-

tos introducidos y muestran en que situaciones podrıa surgir la prueba de hipotesis 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 clasi-

fica 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.

CUADRO 1.1: Veredictos de Pena de Muerte

Condena

Pena de Muerte Sı No TotalRazaBlanco 19 141 160Negro 17 149 166Total 36 280 326

Page 12: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

6

Una pregunta natural serıa si estas dos variables estan relacionadas, es decir, si la condena del

acusado estuvo influenciada por su raza. Es decir, quisieramos determinar si las variables X y

Y son independientes. Este problema se puede generalizar de la siguiente manera

Definicion 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.

Definicion 1.7. Las probabilidades marginales se definen como

pi+ =n

∑j=1

pi j = P(X = i) para i = 1, ...,m

p+ j =m

∑i=1

pi j = P(Y = j) para j = 1, ...,n

Recuerde que se quiere determinar si las variables aleatorias son independientes o no. Para esto

se introduce la siguiente definicion.

Definicion 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 definicion anterior esto se reduce a

log pi j = log pi++ log p+ j = θ(i+)+θ(+ j)

Con esta informacion 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 llenandolo por

filas. De esta manera, la matriz A del modelo de independencia que codifica estas restricciones

es la matriz

Page 13: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

7

A =

(11) (12) (13) (21) (22) (23)

1 1 1 0 0 0

0 0 0 1 1 1

1 0 0 1 0 0

0 1 0 0 1 0

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 definio en la ecuacion 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 0 0 1 1 1

1 0 0 1 0 0

0 1 0 0 1 0

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 quisieramos saber si las variables son independientes. Relizarıamos la prueba

de hipotesis con hipotesis 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 permutacion de r elementos de [n]

Page 14: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

8

En el caso general el conjunto de las posibles elecciones de los votantes es el conjunto de per-

mutaciones de r elementos de n, es decir

Sn,r = σ = (σ(1), ...,σ(r)) |σ es inyeccion de [r] en [n]

Bajo esta notacion, σ( j) denota el candidato que el votante eligio en la posicion j.

En este caso el vector aleatorio discreto que quisieramos estudiar es el vector ~X = (X1, ...,Xr)

donde X j ∈ [n] es el candidato elegido en la posicion j.

Para cada candidato k ∈ [n] se especifica una distribucion sobre las posiciones j ∈ [r] con

PCandidato k quede en el lugar j = p jk donde p jk es un parametro 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 distribucion sobre Sn,r.

p(σ) =1Z

r

∏j=1

p jσ( j) (1.4)

donde Z := ∑σ∈Sn,r ∏rj=1 θ jσ( j) es una constante normalizadora. Si θ jk es grande es mas proba-

ble que el candidato j este en el ranking en la posicion k.

Tomando logaritmos sobre la ecuacion 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 pro-

ducto de las probabilidades marginales de que el candidato σ(i) sea ubicado en la posicion i.

De acuerdo con esto el modelo de Birkhoff es un modelo log-lineal. La matriz de configuracion

del modelo es la matriz A cuyas columnas estan rotuladas de acuerdo a todas las posibles permu-

taciones. Adicionalmente las filas podrıan marcarse por (i, j) donde cada par ordenado significa

que en la posicion i queda el candidato j. Para hacer esto mas claro suponga n = 4 y r = 2 la

matriz A4,2 es la siguiente matriz

Page 15: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

9

(12) (13) (14) (21) (23) (24) (31) (32) (34) (41) (42) (43)

(11) 1 1 1 0 0 0 0 0 0 0 0 0

(12) 0 0 0 1 1 1 0 0 0 0 0 0

(13) 0 0 0 0 0 0 1 1 1 0 0 0

(14) 0 0 0 0 0 0 0 0 0 1 1 1

(21) 0 0 0 1 0 0 1 0 0 1 0 0

(22) 1 0 0 0 0 0 0 1 0 0 1 0

(23) 0 1 0 0 1 0 0 0 0 0 0 1

(24) 0 0 1 0 0 1 0 0 1 0 0 0

Para este modelo tendrıamos una tabla de contingencia contarıa la frecuencia de cada permu-

tacion de los candidatos, es decir u = (uσ | σ ∈ Sn,r) donde uσ nos estarıa diciendo cuantos

de los N votantes eligieron la clasificacion σ de los candidatos. El problema serıa determinar

si la distribucion de probabilidad especificada por esta tabla u proviene del modelo log-lineal

especificado por la matriz An,r.

Ejemplo 1.3. Modelo de no interaccion de tres factores

Otro ejemplo de modelo log-lineal es el modelo de no interaccion entre tres factores. Tambien

se conoce como el modelo de asociacion homogenea. 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 metodo para calcular los p-valores

de las pruebas de hipotesis que nos interesan.

Suponga que tiene una variable aleatoria Y cuyo efecto se podrıa medir en terminos de va-

riables aleatorias X1, ...,Xm. En estadıstica la interaccion 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 = β1X1 +β2X2 +β3X3 +β12(X1X2)+β13(X1X3)+β23(X2X3)+β123(X1X2X3). Si el efecto so-

bre Y es simplemente la suma de los efectos de cada variable decimos que no hay interaccion,

es decir Y = β1X1 +β2X2 +β3X3. En caso de que los demas coeficientes no sean cero decimos

que hay interaccion pues el resultado no es simplemente la suma de los efectos de X1, X2, y

X3 si no que las variables interactuan 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 menciono

anteriormente podrıa haber diferentes tipos de interaccion entre estas variables. El modelo de no

interaccion entre tres factores es una de estas formas de interaccion. Otras formas de interaccion

entre tres factores se pueden encontrar en [4]. El modelo de no interaccion entre tres factores se

puede describir a partir de la siguiente ecuacion.

log(pi jk) = θ +θi +θ j +θk +θi j +θik +θ jk

Page 16: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

10

Exponenciando a ambos lados las probabilidades por celdas tienen la forma

pi jk = ψi jφ jkωik

En general no existe una expresion para pi jk en terminos de las marginales de pi jk.

Considere la siguiente tabla tomada de [5] que clasifica una muestra de personas de acuerdo a

su religion, nivel de educacion y actitud frente al aborto.

Protestantes Norte Protestantes Sur CatolicosP M N

B 9 16 41 8 8 46 11 14 38

M 85 52 105 35 29 54 47 35 115

A 77 30 38 37 15 22 25 21 42

CUADRO 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 Catolico. La

segunda variable es educacion: Baja (B), Media (M) o Alta (A). La tercera variable es la actitud

frente al aborto no terapeutico (Positivo, Mixto o Negativo). Se podrıa querer determinar si las

variables interactuan de alguna manera particular, por ejemplo, si la distribucion proviene del

modelo de no interaccion de tres factores.

Como se vera mas adelante, concluir que la muestra proviene de la familia de distribuciones del

modelo de no interaccion 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 hipotesis para determinar si una muestra de un vector aleatorio discreto proviene de un mo-

delo log-lineal. En el siguiente capıtulo se realiza una revision 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 hipotesis y en el ultimo capıtulo se muestran resultados de la implementacion y

se compara con otro metodo.

Page 17: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

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 distribucion de probabilidad p ∈ ∆|R|−1 que especifica esta tabla pertenece a algun modelo

log-lineal determinadoMA donde A es la transformacion lineal que describe el modelo.

Para esto se plantea la prueba de hipotesis

H0 : p ∈MA vs. Ha : p /∈MA

En el siguiente capıtulo se estudian diferentes metodos que resuelven este problema ya sea en el

caso general de cualquier modelo log-lineal o para algun 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 algebraicas al problema.

2.1. Prueba Chi-Cuadrado de independencia

En 1900 Pearson propuso la siguiente prueba para determinar si dos variables eran indepen-

dientes a partir de una tabla de contingencia. Esta prueba de hipotesis se basa en la distribucion

chi-cuadrado y vale remarcar que fue uno de los primeros tests utilizados de inferencia estadısti-

ca.

Lo que Pearson propuso fue que dadas dos variables aleatorias discretas X y Y con posibles

valores [m] y [n] y una muestra de tamano N, (Xk,Y k), k = 1, ...,N de estas variables se podrıa

plantear el test con hipotesis nula

11

Page 18: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

12

H0 : ~p ∈MA

donde A es la matriz de configuracion del modelo de independencia y p la distribucion de (X ,Y ).

Sea U = (Ui j) ∈ Nm×n una tabla aleatoria. Considere el estadıstico

X2N(U) =

m

∑i=1

n

∑j=1

(Ui j− ui j)2

ui j(2.1)

donde ui j son las frecuencias esperadas.

Note que este estadıstico cuenta para una tabla U que tan alejados estan los valores observados

de los valores esperados por celda. Esto es,

X2(U) =m

∑i=1

n

∑j=1

(Observados−Esperados)2

Esperados

De esta manera, para rechazar la hipotesis nula esperarıamos que dada nuestra tabla u observada,

la probabilidad de obtener un estadıstico mayor al nuestro fuera pequena. Para ilustrar esto

considere la siguiente probabilidad.

P(X2(U)≥ X2(u)) (2.2)

Un valor pequeno de esta probabilidad en 2.2 es evidencia en contra de la hipotesis nula pues nos

dice que obtener nuestro resultado es muy improbable si la hipotesis nula fuera cierta.Es decir,

un valor pequeno 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 hipotesis.

Ahora quisieramos entonces calcular la probabilidad en 2.2. El siguiente teorema es la base del

test chi-cuadrado pues permite encontrar la distribucion para el estadıstico y de esta manera

calcular la region de rechazo y el p-valor de la prueba de hipotesis. Una prueba de este teorema

se puede encontrar en [4]

Teorema 2.1. X2(U) sigue una distribucion aproximadamente chi-cuadrado con (m−1)(n−1)

grados de libertad, esto es

lımn→∞

P(X2(U)≥ t)→ P(χ2(m−1)(n−1) ≥ t)

Page 19: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

13

Ahora faltarıa ver como calcular los valores esperados ui j de Ui j en 2.1. Dado que estas son

las frecuencias que esperarıamos si la distribucion de estas frecuencias proviniera del modelo

de independencia quisieramos que ui jN =

ui+u+ jN2 pues, por la definicion 1.8, si X y Y son

independientes pi j = pi+p+ j. Ası que en 2.1 podemos reemplazar ui j utilizando la suma de filas

y columnas, esto es, ui 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 hipotesis nula.

Este test tiene un defecto importante y es su dependencia del teorema 2.1. Es un test asintotico

y para poder asegurar cierto nivel de confiabilidad se requieren tamanos grandes de muestras. Y

esto todavıa no es suficiente. Se requiere, ademas, 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 unicamente para el modelo de independencia y se quisieran

tests para cualquier modelo log-lineal.

Considere ahora la aproximacion de Fishcer al mismo problema problema pero para tablas de

contingencia 2×2. Esta aproximacion 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 tamano muestra

y las frecuencias por celda en las tablas de contingencia.

Esta idea de los tests exactos fue la que dio nacimiento a la solucion 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 estan determinadas por las sumas de filas y columnas pues

Page 20: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

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

)( nu+1

)Note que este es un caso particular del teorema 1.1 pues como se mostro 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 condicion U1+ = u1+,U+1 = u+1 es equivalente a AU =

(u1+

u+1

)= Au

Por ejemplo para la tabla 1.1 esta proposicion 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 numero de tablas que cumplen

X2(U) ≥ X2(u) sobre el numero total, cantidad que se puede calcular exactamente y por esta

razon se llaman tests exactos. Mas precisamente,

p− valor =∑

v∈F(u)1χ2(v)≥χ2(u)

∑v∈F(u) 1

=

∑v∈F(u)

1χ2(v)≥χ2(u)

|F(u)|

Por ejemplo para la tabla 1.1 se obtiene un p-valor de 0.7246 que aunque tampoco permite re-

chazar la hipotesis nula es significativamente mayor al obtenido utilizando el test chi-cuadrado.

A continuacion se muestra como generalizar este test exacto a los demas modelos.

Page 21: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

15

2.3. Aproximaciones algebraicas

El test exacto de Fischer se podrıa generalizar a tablas de mayores dimensiones del modelo de

independencia pero mas importante aun, 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 Maxima Verosimilitud

Recuerde que en el test exacto de Fischer se calcula la probabilidad P(X2(U)≥X2(u)|AU =Au)

de manera exacta. Basados en el lema 1.1 esta probabilidad se calcula usando el estadıstico 2.1

X2(U) =m

∑i=1

n

∑j=1

(Ui j− ui j)2

ui j

.

En este caso si ri y c j son las sumas de filas y columnas respectivamente, como ui j eran las fre-

cuencias esperadas, las tomabamos como ric j/n dado que bajo la hipotesis nula eran indepen-

dientes. Para cualquier otro modelo log-linealMA la generalizacion natural de este estadıstico

serıa

X2(U) =n

∑j=1

(Ui− ui)2

ui

donde ui = N pi, N el tamano de la muestra en u y pi es el estimador de maxima verosimilitud

discutido a continuacion.

Si tenemos esto ya se podrıa disenar un test exacto de acuerdo con la definicion 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(X2(U)≥ X2(u)|AU = Au)

= Eµ [1X2(U)≥X2(u)]

=∑v∈F(u)1X2(U)≥X2(u)

|F(u)|

Definicion 2.1. Sea ~X (1),~X (2), ...,~X (n) ∼ Pθ variables independientes e identicamente distribui-

das de acuerdo una distribucion Pθ . la funcion de verosimilitud se define como

Ln(θ) :=n

∏j=1

P(~X = ~X ( j)) (2.3)

Page 22: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

16

y la funcion de log-verosimilitud como

`(θ) := log(Ln(θ)) (2.4)

El estimador de maxima verosimilitud (estimador ML) es la variable

Θ := argmaxθ Ln(θ)

= argmaxθ

n

∏j=1

P(~X = ~X ( j))

Para el caso que nos interesa

Θ = argmaxθ

eθ t AU

Z(θ)n (2.5)

donde U(~X (1), ...,~X (n))i es el numero de X ( j) iguales a i ∈ R. Note que U es una variable alea-

toria. Para cada muestra particular x(1), ...,x(n) tenemos el estimado de maxima verosimilitud

θ := argmaxθ

eθ t Au

Z(θ)n

El estimador ML θ es el valor del parametro tal que maximiza la probabilidad de observar~X (1), ...,~X (n).

Lema 2.1. Si A tiene rango completo entonces el estimador de maxima similitud esta dado por

la unica solucion p(θ ∗) de la ecuacion A un = Ap(θ ∗) donde

p(α) := ∑i∈R

pi(α)ei

Demostracion. Recuerde que Z(θ) := ∑i∈R eθ t Aei . Como resultado se tiene entonces que la fun-

cion de log-verosimilitud esta dada por

`(θ) = θtAu−n log(Z(θ))

y el gradiente respecto a θ esta dado por

Au−n ∑j=1n

∑i∈R

eθ t AeiA ji

Z(θ)e j = Au−nA∑ pi(θ)ei

Page 23: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

17

que es cero si y solo si θ satisface la ecuacion A un = Ap(θ). Diferenciando nuevamente obser-

vamos que la Hessiana de `(θ) esta 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 cuadratica ψ(q) := ∑ piq2i − (∑ piqi)

2. Ahora, la funcion 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. Mas aun, como los pi(θ)

son estrictamente positivos, la igualdad se tiene si y solo si todos los qi coinciden, caracterizan-

do ası el kernel de la forma. Concluimos entonces que `(θ) es concava y entonces su maximo

global se alcanza en cualquier punto donde su gradiente sea 0. Mas aun, si θ1 y θ2 son optimos

globales de la funcion de verosimilitud entonces el vector uniendolos es una direccion hacia

donde la hessiana evaluada en θ1 se desvanece que por nuestra hipotesis sobre la inyectividad

de At implica que θ t1A−θ t

2A = [c, ...,c] para alguna constante c. Esto significa que ambas distri-

buciones son iguales modulo 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 solucion presentada por Diaconis y Sturmfels en [5] consiste en tomar una muestra de estas

tablas con la distribucion apropiada dada por el lema 1.1 para calcular una aproximacion 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

Page 24: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

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 12

+ −− +

− +

+ −(2.6)

De esta forma la tabla obtenida tambien tendra 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 espacioF(u). En el caso general de cualquier modelo log-

lineal 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 distribucion de U |AU = Au

evitandose 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.

Como conectar la fibra es ilustrado a continuacion.

Definicion 2.2. SeaMA 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 paraMA si para cualquier u ∈ T (n) y cualesquiera v,v′ ∈F(u) existe L ∈ N y u1,u2, ...uL ∈ B tales que

v′ = v+L

∑k=1

uk y v+l

∑k=1

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 continuacion.

Algoritmo 2.1. (Metropolis-Hastings)

Entrada: Una tabla u ∈ T (n) y una base de Markov B paraMA, un tamano de muestra N.

Salida: Sucesion de estadısticos (X2(vt))Nt=1

1. inicialice v1 = u

Page 25: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

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

vt 1−q

donde

q = mın

1,P(U = vt +ut |AU = Au)

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 cons-

tante normalizadora, es decir sumar sobre todas las tablas pues es la razon entre dos de estas

probabilidades cancelando ası la constante, ası, en cada paso t del algoritmo

q = mın

1,1/∏i∈R(uti + vti)!

1/∏i∈R vti!

Teorema 2.3. La salida (X2(vt))

Nt=1 del algoritmo 2.1 es una cadena de Markov aperiodica,

reversible e irreducible con distribucion estacionaria igual a la de la tabla aleatoria

X2(U)|AU = Au

Corolario 2.1. La salida (X2(vt))Mt=1 del algoritmo 2.1 satisface

lımN→∞

N

∑t=1

1X2(vt)≥X2(u)) = P(X2(U)≥ X2(u)|AU = Au)

2.4. Base Lattice

Para el algoritmo 2.1 es necesaria una base de Markov para KerZ(A). Esta base no siempre

es facil 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].

Page 26: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

20

Estos autores proponen entonces cambiar el problema por el de encontrar una base del lattice

que es mucho mas facil.

Como se vera, todo movimiento de la base de Markov se puede expresar como combinacion

lineal de elementos de esta base lattice ası que se pueden generar los coeficientes de la com-

binacion con diferentes distribuciones siempre y cuando cualquier combinacion entera (pues

queremos quedarnos dentro de la fibra) de coeficientes tenga probabilidad positiva. Esto garan-

tizarıa que con probabilidad positiva obtenemos todos los movimientos de una base de Markov.

Definicion 2.3. L= z1, ...,zk⊆KerZ(A) es una base lattice si cualquier z∈KerZ(A) se puede

escribir de manera unica como combinacion entera de estos, es decir que existen unicos αi ∈ Zi = 1, ...,k tales que

z = α1z1 +α2z2 + ...+αkzk

Ası, garantizando que cualquier combinacion entera α1, ...,αk tiene probabilidad positiva pode-

mos generar cualquier elemento de la base de Markov con probabilidad positiva (no necesaria-

mente de manera uniforme como en el algoritmo 2.1 de Diaconis y Sturmfels)

2.4.1. Como encontrar Base Lattice

Para encontrar la base lattice de una matriz A Aoki, Hara y Takemura [3] utilizan la descomposi-

cion de l’Hermite de la matriz A descrita a continuacion. Esta descomposicion es el equivalente

a la reduccion escalonada de una matriz pero sobre los enteros.

Definicion 2.4. Sea H = (hi j) una matriz de m con coeficientes enteros. Se dice que H esta en

forma normal de l’Hermite si existe r≤ n y una funcion estrictamente creciente de r+1, ...,nen 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 unica matriz

H ∈ Zm×n en forma normal de l’Hermite y U ∈ GLn(Z) tales que H = AU .

Page 27: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

21

Demostracion. La demostracion de la existencia en este teorema se da con el siguiente algorit-

mo 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. Termino 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. Termino?: 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) =

spv1, ...,vl entonces Hvi = AUvi = 0 ∀i es decir que como U es invertible la una base lat-

tice 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

H =

0 ... 0 ∗ ∗ ... ∗0 ... 0 0 ∗ ... ∗

...

0 ... 0 0 ... 0 ∗

Una base lattice para KerZ(H) es entonces el conjunto e1, ...,er donde ei es el i−esimo vector

de la base canonica de Rn y Ue1, ...,Uer es base lattice para A.

Page 28: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

22

2.4.2. Como 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 12

Algoritmo 2.4.

1. Genere ∑ki=1 |αi|= |α| ∼ geom(p)

2. Asigne α1, ..,αk con la distribucion 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 Mar-

kov.Si bien se dana la uniformidad en la seleccion 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 interaccion 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.

Page 29: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

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 deF(u) con la distribucion

de U |AU = Au. Aca, A es la matriz asociada a un modelo log-lineal y quisieramos saber si la

distribucion especificada por las frecuencias en u proviene de este modelo. En resumen se esta

tomando una muestra del politopo P = x ∈ R|R||Ax = Au intersectado con el lattice N|R| con

la distribucion 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 tendran entradas enteras con probabilidad 1 ası que en segunda instancia habrıa que corregir

esto. En tercer lugar esta el problema de que la muestra resultante tenga la distribucion 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 distribucion 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-linealMA

Salida: Sucesion de estadısticos (X2(vt))Mt=1

1. Tome una muestra continua uniforme sobre el politopo P = x ∈ R|R||Ax = Au.

23

Page 30: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

24

2. Redondee cada tabla sin danar la uniformidad de la muestra.

3. Ajuste las probabilidades utilizando el metodo del rechazo.

A continuacion se muestra entonces como 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 metodos para resolverlo. Una revision de este tema se puede encontrar

en [7]. El procedimiento general esta 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 distribucuon que depende del punto donde se encuentra. El metodo que se utilizo 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 oraculo que indica si un punto x ∈ Rn pertenece o no al politopo P.

Este metodo de muestreo continuo es una caminata geometrica 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

tamano de muestra N.

Salida: Sucesion de puntos (xi)Ni=0 en el politopo.

Para t = 1, ...,N−1, si esta en el punto xt ,

1. Escoja una direccion: Genere u1, ...,un∼N(0,1) que definen la direccion~u=(u1, ...,un)

y tome ~d =~u/‖~u‖ el vector normalizado. Defina la recta l =~xt + s~d para s ∈ R que pasa

por xt y tiene direccion d.

2. Escoja un punto: Escoja uniformemente un punto r en el intervalo [a,b] definido por la

longitud de la cuerda l∩P. Muevase al punto~xt+1 =~xt + r~d

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 distribucion estacionaria del algoritmo 3.2 es la distribucion uniforme.

Una prueba de este teorema se puede encontrar en [7]

Page 31: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

25

3.2. Aproximacion

Para el problema que nos interesa solo necesitamos tablas de contingencia que cuentan frecuen-

cias, es decir que siempre tendran entradas en los naturales. Sin embargo las tablas obtenidas en

la anterior seccion no tendran 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

mas cercano pues bajo este redondeo las tablas en la frontera tendran 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 poli-

topo P a un politopo P′ 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 encontro 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

tamano 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

P = x ∈ Rm×n≥0 |

n

∑j=1

xi j = ri ∀i ∈ [m] ,m

∑i=1

xi j = c j ∀ j ∈ [n]

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 P′ ⊇ P un politopo mas grande que P.

2. Tome y ∈ P′

3. Redondee y a z. Si z /∈ I(r,c) repita 2.

Para una tabla x ∈ I(r,c) sea vol(x) el numero 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 P′, la muestra redondeada sera 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 este en I(r,c).

Es decir, entre mas se corrija el volumen de cada tabla x mayor sera el politopo P′ y mayor la

Page 32: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

26

probabilidad de que las tablas finales esten 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 esta descrito por las tablas x ∈ Nm×n que cumplen las igualdades

n

∑j=1

xi j = ri para i = 1, ...,m

m

∑i=1

xi j = c j para j = 1, ...,n

Note que las tablas estan completamente especificadas por los valores en las entradas (i, j) para

i < m, j < n. Es decir, bajo las siguientes identificaciones

xin = ri−n−1

∑j=1

xi j para i = 1, ...,m−1

xm j = c j−m−1

∑i=1

xi j para j = 1, ...,n

este politopo se puede describir con las desigualdades

n−1

∑j=1

xi j ≤ ri para i = 1, ...,m−1

m−1

∑i=1

xi j ≤ c j para j = 1, ...,n−1

m−1

∑i=1

n−1

∑j=1

xi j ≥m−1

∑i=1

ri− cn

La ventaja de esta descripcion es que permite muestrear de un politopo de dimension 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”P′ que se redondean a x, es decir que es el volumen de la

interseccion entre P′ 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 [−1

2 ,12 ]. Entonces tenemos

Page 33: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

27

que vol(x) = Pr(x+ E ∈ P′) y quisieramos que vol(X) ≈ 1 para cualquier tabla x ∈ I(r,c). Se

puede entonces definir el politopo P′ de la siguiente manera. Sea 0 < ε < 12 un parametro de

error y sean C1,C2,C3 constantes definidas por

C1 =12

log(2/ε), C2 =log(4/ε)

2logm+

12, C3 =

log(4/)n2logn

+12

P′ es el conjunto de las matrices Y ∈ R(m−1)×(n−1) que satisfacen

Yi j ≥−12

Ymn ≥−√

C1mn

Yin ≥−√

C2n logm

Ym j ≥−√

C3m logn

para i < m y j < n. Como se muestra en el siguiente teorema estas desigualdades que definen P′

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 eleccion de las constantes C1, C2 y C3 se basa en la desigualdad

de Hoeffding. Adicionalmente, Morris en [8] demuestra que no solo esta eleccion de P′ permite

obtener una muestra uniforme sino que ademas 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/2mlogm) y

c j = Ω(m3/2nlogn) para todo i y todo j. Entonces el numero esperado de ensayos antes de que

el algoritmo genere un punto uniforme de I(r,c) es O(1/ε)

Como se mencionaba anteriormente se logro extender el teorema 3.2 al problema mas 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′ = x ∈ Zn | Ax≤ b+ k donde

Page 34: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

28

k = (k1, ...,km)

y ki =−2n

∑j=1

a2i j log(ε/n)

Sea E un vector aleatorio (n− 1)-dimensional con entradas distribuidas uniformemente en el

intervalo [−12 ,

12 ] y x ∈ K. Entonces, Pr(x+E /∈ P′)< ε

Para probar este teorema se utiliza la desigualdad de Hoeffding enunciada a continuacion

Teorema 3.5. Sean Y1, ...,Yn variables aleatorias independientes tales que ai ≤ Yi ≤ bi (i =

1, ...,n). Sea Y = (Y1 + ...+Yn)/n y µ = EY . Entonces para t > 0

Pr(Y −µ > t)≤ e−2t2/∑ni=1(bi−ai)

2(3.1)

Demostracion. Teorema 3.4

Sea x′ = x+E . Si ai denota el vector con la i-esima fila de la matriz A = (ai j) tenemos que

Pr(x+E /∈ K′) = Pr(x′ /∈ K′)

= Pr( at1x′ > b1 + k1 ∨ at

2x′ > b2 + k2 ∨ ...∨ atnx′ > bn + kn)

=m

∑i=1

Pr(atix′ > bi + ki)

Ahora, para cada i ∈ [m] se tiene que atix≤ bi entonces bi−at

ix≥ 0 y

Pr(atix′ > bi + ki) = Pr(at

ix+atiE > bi + ki)

= Pr(atiE > (bi−at

ix)+ ki)

< Pr(atiE > ki)

Page 35: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

29

Como E j se distribuye uniforme en [−12 ,

12 ] j = 1, ...,n entonces ai jE j es uniforme en [− |ai j|

2 ,|ai j|

2 ].

Entonces E = 0 por linealidad del valor esperado. Aplicando la desigualdad de Hoeffding a las

variables ai jE j j = 1, ...,n

Pr(atiE > ki)≤ e−k2

i /∑nj=1 2(ai j)

2

m

Y finalmente se tiene entonces que

Pr(x+E /∈ K′) =m

∑i=1

Pr(atix′ > bi + ki)

<m

∑i=1

Pr(atiE > ki)

<m

∑i=1

ε

m

= ε

3.3. Metodo 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 algun modelo log-linealMA. Pero se quiere

que la muestra tenga la distribucion de U |AU = Au dada por el lema 1.1.

Una forma de ajustar estas probabilidades es el metodo del rechazo. Asuma que Ω es un conjunto

finito y se quiere una muestra de una distribucion p∗(x) en Ω. Suponga que

Se conoce una funcion p(x) proporcional a p∗(x) que se puede evaluar.

Se conoce una distribucion q∗(x) en Ω de la cual se puede muestrear y una funcion q∗(x)

que se puede evaluar.

Se conoce una constante c > 0 tal que cq(x)≥ p(x) para cualquier x ∈Ω

El metodo del rechazo realiza lo siguiente

Page 36: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

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 sucesion (xt)t∈N es una cadena de Markov con distribucion 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 optima para esta eleccion de q serıa

c := maxv∈F(u)

1∏i∈R vi!

=1

mınv∈F(u) ∏i∈R vi!

Sin embargo aparece nuevamente el problema de la cardinalidad del conjunto F(u) para encon-

trar este maximo. El siguiente lema que permitira encontrar un aproximado de esta constante

c.

Lema 3.1. Sean v1, ...,vm enteros no negativos y k = ∑mi=1 vi. Entonces

m

∏i=1

vi!≥ (

⌈kn

⌉!)n

ym

∏i=1

1vi!≤ 1

(⌈ k

n

⌉!)n

Demostracion. Sean v1 y v2 enteros no negativos y suponga sin perdida de generalidad v1 ≥ v2

entonces

v1!v2! =v1(v1−1)!(v2 +1)!

v2 +1

=v1

v2 +1(v1−1)!(v2 +1)!

Page 37: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

31

Como v1 y v2 son enteros no negativos y v1 > v2 se tiene que v1v2+1 ≥ 1, entonces

≥ (v1−1)!(v2 +1)!

Ası, el producto v1, . . . ,vn se minimiza cuando mas cercanos estan los factores.

Note entonces que si la distribucion p∗ esta 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) .

Page 38: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

Capıtulo 4

Resultados

En este capıtulo se muestran algunos ejemplos para el modelo de independencia para los que

se implemento el nuevo algoritmo. En el ejemplo 4.1 se muestran ejemplos en dimension baja

donde el algoritmo funciona correctamente. Para comparar, tambien se implemento el mues-

treo utilizando la base Lattice y se observa en algunos casos un desempeno comparable. En el

ejemplo 4.2 se considera un ejemplo en dimension 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 genero una muestra de tamano N = 2500 y se comparo 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

se muestra el histograma del estadıstico chi-cuadrado y la densidad χ2(m−1)(n−1).

1. Modelo independencia para dos variables X y Y con 3 y 2 posibles resultados respectiva-

mente y entradas ui j ∈ 3, ...,9

X

1 2 3

Y1 3 7 8

2 7 4 5

CUADRO 4.1: Tabla de Contingencia 2×3

32

Page 39: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

33

FIGURA 4.1: Nuevo Algoritmo dimension2 FIGURA 4.2: Base Lattice dimension 2

2. Modelo de intependencia para dos variables X y Y con 4 y 2 posibles resultados respecti-

vamente.

Tabla con entradas ui j ∈ 3, ...,9

X

1 2 3 4

Y1 4 3 8 7

2 5 7 4 4

CUADRO 4.2: Tabla de Contingencia 2×4

FIGURA 4.3: Nuevo Algoritmo dimension3 FIGURA 4.4: Base Lattice dimension 3

Tabla con entradas ui j ∈ 4, ...,9

Page 40: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

34

X

1 2 3 4

Y1 8 8 4 9

2 8 8 6 7

CUADRO 4.3: Tabla de Contingencia 2×4

FIGURA 4.5: Nuevo Algoritmo dimension3 FIGURA 4.6: Base Lattice dimension 3

Tabla con entradas ui j ∈ 5, ...,9

X

1 2 3 4

Y1 9 6 6 5

2 8 5 6 6

CUADRO 4.4: Tabla de Contingencia 2×4

FIGURA 4.7: Nuevo Algoritmo dimension3 FIGURA 4.8: Base Lattice dimension 3

3. Modelo de intependencia para dos variables X y Y con 3 posibles resultados cada una.

Page 41: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

35

Tabla con entradas ui j ∈ 3, ...,9

X

1 2 3

Y1 5 9 9

2 7 9 3

3 6 5 9

CUADRO 4.5: Tabla de Contingencia 3×3

FIGURA 4.9: Nuevo Algoritmo dimension4 FIGURA 4.10: Base Lattice dimension 4

4. Tabla con entradas ui j ∈ 7, ...,10

X

1 2 3

Y1 10 10 9

2 10 9 8

3 10 8 10

CUADRO 4.6: Tabla de Contingencia 3×3

FIGURA 4.11: Nuevo Algoritmo dimen-sion 4 FIGURA 4.12: Base Lattice dimension 4

Page 42: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

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

1 2 3 4 5

Y1 5 4 6 4 4

2 4 4 5 4 5

CUADRO 4.7: Tabla de Contingencia 2×5

FIGURA 4.13: Nuevo Algoritmo dimen-sion 4 FIGURA 4.14: Base Lattice dimension 4

Tabla con entradas ui j ∈ 6,7,8

X

1 2 3 4 5

Y1 7 8 7 8 6

2 7 6 6 8 6

CUADRO 4.8: Tabla de Contingencia 2×5

• Tamano de muestra N = 2500

Page 43: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

37

FIGURA 4.15: Nuevo Algoritmo dimen-sion 4 FIGURA 4.16: Base Lattice dimension 4

• Tamano de muestra N = 25000 para el nuevo algoritmo

FIGURA 4.17: Nuevo Algoritmo dimension 4. N = 25000

Ejemplo 4.2. El siguiente ejemplo fue tomado de [5]. La siguiente tabla de contingencia clasi-

fica 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.

Page 44: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

38

Mes Nacimiento Mes de MuerteEne 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

CUADRO 4.9: Relacion entre mes de nacimiento y muerte

Para tamanos 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 numericos en el codigo o con problemas de concentracion 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 dimension del politopo en el que se toma la muestra es pequena.

Sin embargo es claro que la primera limitacion del codigo implementado es la dimension. Por

ejemplo, el simple hecho de pasar de una tabla 2× 3 a una 3× 3 equivale a muestrear en un

politopo de dimension 2 y pasar a uno de dimension 4 y la diferencia es evidente en las graficas.

En estos casos aumentar el tamano 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 metodo de Aoki, Hara y Takemura se mantiene practicamente igual en los diferentes

ejemplos.

Page 45: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

39

Otra limitacion que podrıa llegar a tener el metodo es la concentracion de la medida en dimen-

sion alta. Como muestra Koppen en [1] un hipercubo en dimension alta se debe imaginar como

un erizo. Es decir, en el hipercubo n− dimensional el volumen esta concentrado en una bola

central de radio 1/2 cubierta por 2n puntas de longitud√

n/2.

FIGURA 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 dimension el metodo del rechazo se empieza a tardar

mas pues es mas propenso a rechazar las tablas.

A futuro se podrıa pensar en metodos que permitieran iniciar el algoritmo no necesariamente en

la tabla de contingencia dada sino en algun punto central del politopo que hiciera que el muestreo

fuera mas eficiente. Ademas se podrıa pensar en mejorar la constante c del metodo del rechazo

que es difıcil de calcular para numeros grandes y tambien podrıa causar errores numericos en la

implementacion.

Page 46: Muestreo de Tablas de Contingencia para Modelos Log-Lineales

Bibliografıa

[1] Mario Koppen. 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. Sprin-

ger 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