muestreo de tablas de contingencia para modelos log-lineales
TRANSCRIPT
Muestreo de Tablas de Contingencia para Modelos
Log-Lineales
2 de junio de 2015
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.
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
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
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
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
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)
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
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
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
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
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]
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
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
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.
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
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)
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
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.
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)
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
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
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
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].
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 .
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.
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.
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
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]
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
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
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
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)
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
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)!
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) .
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
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
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.
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
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
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.
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.
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.
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