Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Práctica 3: Estimación de máxima verosimilitud de parámetros de densidades de probabilidad Tratamiento de la Información Curso 2014–II 18 de septiembre de 2014 Introducción Enunciado Variable unidimensional. A partir de los datos de la práctica 2, genere la variable Xtres34 definida como el valor de intensidad de gris del ṕıxel 34 de las representaciones del d́ıgito 3 en el conjunto de entrenamiento. Represente gráficamente el histograma de 20 intervalos de dicha variable. Vamos a suponer que Xtres34 son realizaciones de una variable aleatoria X que sigue una distribución exponencial. La densidad de probabilidad de una exponencial viene caracterizada por un parámetro λ y responde a la siguiente expresión: pX(x) = λ exp(−λx) · u(x) donde u(x) es el escalón unitario. Suponga que los elementos Xtres34 son 200 realizaciones independientes y obtenga la expresión del estimador anaĺıtico de máxima verosimilitud de λ, λ̂ML para estas 200 observaciones. A continuación vamos a realizar una búsqueda “fuerza bruta” del parámetro λ utilizando Matlab. Para ello 1. Implemente una función Matlab EvaluaLogVerosimilitud que tome como parámetros un conjunto de observaciones y un valor de parámetro lambda y devuelva la log- verosimilitud del conjunto de observaciones con respecto a una distribución expo- nencial de parámetro lambda: log[pX|λ(x|λ)]. 2. Defina una variable RangoLambda = 0.0001:0.0001:0.1.Almacene en una variable Verosim el valor de la log-verosimilitud para cada uno de los valores de RangoLambda. 3. Represente gráficamente Verosim frente a RangoLambda y, apoyándose en la función Matlab max compruebe el valor de RangoLambda que maximiza la verosimilitud de las observaciones. 4. Verifique que el resultado encontrado computacionalmente se ajusta al valor obtenido anaĺıticamente (esto es, el obtenido tras evaluar el estimador anaĺıtico en las 200 muestras de Xtres34). 1 Variable bidimensional A partir de los datos de la práctica 2, genere la variable Xtres3435 definida como una matriz 200×2 donde la primera columna almacena el valor de intensidad de gris del ṕıxel 34 para todas las representaciones del d́ıgito 3 en el conjunto de entrenamiento y la segunda columna hace lo propio con el ṕıxel 35. Vamos a asumir que la variable Xtres3435 está formada por 200 observaciones independientes extráıdas de una variable aleatoria que sigue una distribución Gaussiana bidimensional [X1, X2] T ∼ G([m34,m35] T ,Σ). En primer lugar calcule anaĺıticamente los estimadores de máxima verosimilitud del vector de medias y de la matriz de covarianzas de la Gaussiana bidimensional a partir de las observaciones almacenadas en Xtres3435: m̂ML = argmáx m p(Xtres3435|m) Σ̂ML = [ σ̂1,1 σ̂1,2 σ̂2,1 σ̂2,2 ] = argmáx Σ p(Xtres3435|Σ) Para la estimación de Σ puede apoyarse en las siguientes igualdades matriciales: d dX det(X) = det(X)(X−1)T d dX (aTX−1b) = −(X−1)Ta · bT (X−1)T Podemos realizar una valoración visual de la estimación. Para ello vamos a representar en la misma figura: 1. Un scatter plot de la primera columna de Xtres3435 (intensidad del ṕıxel 34) frente a la segunda columna (intensidad del ṕıxel 35) 2. Las curvas de nivel de la Gaussiana bidimensional con parámetros m̂ML y Σ̂ML esti- mados anteriormente. Para ello ejecute el siguiente código Matlab, suponiendo que C es una variable que almacena la matriz de covarianzas estimada, m almacena el vector (columna) media y iC almacena la inversa de la matriz de covarianzas: >> [xgrid, ygrid] = meshgrid(linspace(-50,300,50)); >> xygrid = [reshape(xgrid,50*50,1) reshape(ygrid,50*50,1)] - repmat(m’,50*50,1); >> ddp = 1/(2*pi*det(C))*exp(-0.5*sum((xygrid*iC).*xygrid,2)); >> ddpgrid = reshape(ddp,50,50); >> contour(xgrid,ygrid,ddpgrid);
Compartir