Estimadores anteriores uniformes inadecuados de amplitud transformada de error de cuadrado mínimo mínimo invariante de escala (MMSE)
Esta respuesta presenta estimadores invariantes de escala familiar, parametrizados por un único parámetro que controla tanto la distribución de amplitud previa bayesiana como la transformación de amplitud a otra escala. Los estimadores son estimadores de error cuadrado medio mínimo (MMSE) en la escala de amplitud transformada. Se supone un uniforme incorrecto antes de la amplitud transformada. Las transformaciones disponibles incluyen una escala lineal (sin transformación) y pueden acercarse a una escala logarítmica mediante la cual el estimador se aproxima a cero en todas partes. Los estimadores se pueden parametrizar para lograr una suma baja de error cuadrado a relaciones señal / ruido negativas (SNR).
Estimación bayesiana
El estimador de máxima verosimilitud (ML) en mi primera respuesta funcionó bastante mal. El estimador ML también puede entenderse como un estimador Bayesiano de máximo a posteriori (MAP) dada una distribución de probabilidad previa uniforme inadecuada. Aquí, incorrecto significa que lo anterior se extiende de cero a infinito con densidad infinitesimal. Debido a que la densidad no es un número real, el anterior no es una distribución adecuada, pero aún puede proporcionar una distribución posterior adecuada según el teorema de Bayes que luego puede usarse para obtener una estimación MAP o MMSE.
El teorema de Bayes en términos de funciones de densidad de probabilidad (PDF) es:
PDF( a ∣ m ) =PDF( m ∣ a )PDF( a )PDF( m )=PDF( m ∣ a )PDF( a )∫∞0 0PDF( m ∣ a )PDF( a )reuna.(1)
Un estimador MAP una^MAPA es el argumento del PDF posterior que lo maximiza:
una^MAPA=a r gm a xunaPDF( a ∣ m ) .(2)
Un estimador MMSE una^MMSE es la media posterior:
una^MMSE=a r gm a xuna^mi[ ( a -una^)2∣ m ] = E[ a ∣ m ] =∫∞0 0un PDF( a ∣ m ) da .(3)
Un prior uniforme incorrecto no es el único prior invariante de escala. Cualquier PDF anterior satisfactorio:
P D F ( |XkEl | )∝|XkEl |ε - 1,(4)
con exponente real ε - 1 , y ∝ significado: "es proporcional a", es invariante de escala en el sentido de que el producto de Xky una constante positiva sigue la misma distribución (ver Lauwers et al. 2010 ).
Una familia de estimadores
Se presentará una familia de estimadores, con estas propiedades:
- Escala-invariancia: si el contenedor limpio y complejoXk, o equivalentemente la amplitud limpia El |XkEl | , y la desviación estándar de ruido σ cada uno se multiplica por la misma constante positiva, luego también la amplitud estimada El |XkEl |ˆ se multiplica por esa constante.
- Error mínimo medio de amplitud transformada transformada.
- Uniforme inadecuado antes de la amplitud transformada.
Usaremos notación normalizada:
unametro1S N R=El |XkEl |σ=El |YkEl |σ=(σσ)2=(El |XkEl |σ)2=una2amplitud limpia normalizada,magnitud ruidosa normalizada,varianza normalizada del ruido,relación señal-ruido ( 10Iniciar sesión10(SNR) dB),(5)
dónde |Xk| es la amplitud limpia que deseamos estimar a partir de la magnitud ruidosa |Yk| del valor bin Yk whicy es igual a la suma del valor del contenedor limpio Xk más ruido de varianza gaussiano complejo simétrico circularmente σ2. La escala invariante anterior de |Xk|dado en la ecuación. 4 se traslada a la notación normalizada como:
PDF(a)∝aε−1.(6)
Dejar g(a) ser una función de transformación creciente de amplitud a. El uniforme incorrecto previo de amplitud transformada se denota por:
PDF(g(a))∝1.(7)
Eqs. 6 y 7 juntos determinan la familia de posibles transformaciones de amplitud. Están relacionados por un cambio de variables :
⇒⇒⇒sol′( a ) PDF( g( a ) )sol′( a )sol( a )sol( a )=∝∝=PDF( a )unaε - 1∫unaε - 1rea =unaεε+ cC1unaεε+C0 0.(8)
Suponemos sin prueba que la elección de las constantes C0 0 y C1no afectará la estimación de amplitud. Por conveniencia establecemos:
⇒⇒sol( 1 ) = 1ysol′( 1 ) = 1C0 0=ε - 1εyC1= 1sol( a ) =unaε+ ε - 1ε,(9)
que tiene un caso lineal especial:
sol( a ) = aSiε = 1 ,(10)
y un límite:
limε → 0sol( a ) = log( a ) + 1.(11)
La función de transformación puede representar convenientemente la escala de amplitud lineal (en ε = 1) y puede acercarse a una escala de amplitud logarítmica (como ε → 0) Para positivoε , El soporte del PDF de amplitud transformada es:
⇒0 < a < ∞ε - 1ε< g( a ) < ∞ ,(12)
La función de transformación inversa es:
sol- 1( g( a ) ) = ( ε g( a ) - ε + 1)1 / ε= a .(13)
La estimación transformada es entonces, usando la ley del estadístico inconsciente :
una^uni-MMSE-xform=a r gm i nuna^mi[ ( g( a ) - g(una^))2∣ m ] =sol- 1( E[ g( a ) ∣ m ] )=sol- 1(∫∞0 0sol( a ) PDF( a ∣ m )rea )=sol- 1(∫∞0 0sol( a ) f( a ∣ m ) duna∫∞0 0F( a ∣ m ) duna) ,(14)
dónde PDF( a ∣ b ) es el PDF posterior y F( a ∣ m ) es un PDF posterior no normalizado definido usando el teorema de Bayes (Ec. 1), el Rician PDF( m ∣ a ) = 2 mmi- (metro2+una2)yo0 0( 2 m a )de la ecuación 3.2 de la respuesta de mi estimador de ML, y la ecuación. 6:
PDF( a ∣ m )∝∝∝PDF( m ∣ a )PDF( a )2 mmi- (metro2+una2)yo0 0( 2 m a ) ×unaε - 1mi-una2yo0 0( 2 m a )unaε - 1= f( a ∣ m ) ,(15)
a partir del cual PDF( m ) se eliminó de la fórmula de Bayes porque es constante durante a .Combinando Eqs. 14, 9 y 15, resolviendo las integrales en Mathematica y simplificando, da:
una^uni-MMSE-xform=sol- 1(∫∞0 0unaε+ ε - 1ε×mi-una2yo0 0( 2 m a )unaε - 1reuna∫∞0 0mi-una2yo0 0( 2 m a )unaε - 1reuna)=( ε12 ε( Γ ( ε )L- ε(metro2) + ( ε - 1 ) Γ ( ε / 2 )L- ε / 2(metro2) )12Γ ( ε / 2 )L- ε / 2(metro2)- ε + 1 )1 / ε=(Γ ( ε )L- ε(metro2) + ( ε - 1 ) Γ ( ε / 2 )L- ε / 2(metro2)Γ ( ε / 2 )L- ε / 2(metro2)- ε + 1 )1 / ε=(Γ ( ε )L- ε(metro2)Γ ( ε / 2 )L- ε / 2(metro2))1 / ε,(dieciséis)
dónde Γes la función gamma yLes la función de Laguerre . El estimador colapsa a cero en todas partes a medida queε → 0 , entonces no tiene sentido usar negativo ε , que enfatizaría pequeños valores de unaaún más y dar una distribución posterior inadecuada. Algunos casos especiales son:
una^uni-MMSE-xform=metro2+ 1------√,si ε = 2 ,(17)
una^uni-MMSE=una^uni-MMSE-xform=mimetro2/ 2π--√yo0 0(metro2/ 2),si ε = 1 ,(18)
aproximado en general metropor ( ver cálculo ) una serie truncada de Laurent:
una^uni-MMSE≈ m -14 m-7 732metro3-59128metro5 5,(19)
Esta aproximación asintótica tiene un error de amplitud máxima absoluta de menos de 10- 6 para m > 7.7.
Las curvas del estimador se muestran en la figura 1.
Figura 1. Estimador una^uni-MMSE-xform en función de metro para diferentes valores de ε , de arriba a abajo: azul: ε = 2 , que minimiza el error de potencia cuadrada media suponiendo un uniforme incorrecto antes de la potencia, naranja: ε = 1 , que minimiza el error de amplitud cuadrada media suponiendo un uniforme incorrecto antes de la amplitud, verde: ε =12, rojo: ε =14 4, y morado: ε =18.
A m = 0 las curvas son horizontales con valor:
una^uni-MMSE-xform=21 - 1 / ε( Γ (1 + ε2))1 / επ1 / ( 2 ε ),si m = 0.(20)
En SNR negativo, el estimador uni-MMSE-xform se puede parametrizar usando baja ε para dar una suma menor de error cuadrado en comparación con el estimador de sustracción de potencia espectral sujeta, con una penalización correspondiente a valores intermedios de SNR cerca de 7 dB (Fig. 2).
Figura 2. Estimaciones de Monte Carlo con un tamaño de muestra de 105 5, de: Sólido: ganancia de la suma del error cuadrado en la estimación El |XkEl | por El |XkEl |ˆ en comparación con estimarlo con El |YkEl | ,
discontinuo: ganancia de la suma del error cuadrado en la estimación El |XkEl |2 por El |XkEl |2ˆ en comparación con estimarlo con El |YkEl |2, punteado: ganancia de la suma del error cuadrado en la estimación Xk por El |XkEl |ˆmiyo argumento(Yk) en comparación con estimarlo con Yk. Azul: estimador uni-MMSE-xform con ε = 1 (parte superior), ε =12 (medio) y ε =14 4, naranja: sustracción de potencia espectral sujeta.
Script de Python para la Fig. 1
Este guión extiende el guión de la pregunta A.
def est_a_uni_MMSE_xform(m, epsilon):
m = mp.mpf(m)
epsilon = mp.mpf(epsilon)
if epsilon == 0:
return mpf(0)
elif epsilon == 1:
return mp.exp(m**2/2)/(mp.sqrt(mp.pi)*mp.besseli(0, m**2/2))
elif epsilon == 2:
return mp.sqrt(m**2 + 1)
else:
return (mp.gamma(epsilon)*mp.laguerre(-epsilon, 0, m**2) / (mp.gamma(epsilon/2)*mp.laguerre(-epsilon/2, 0, m**2)))**(1/epsilon)
ms = np.arange(0, 6.0625, 0.0625)
est_as_uni_MMSE_xform = [[est_a_uni_MMSE_xform(m, 2) for m in ms], [est_a_uni_MMSE_xform(m, 1) for m in ms], [est_a_uni_MMSE_xform(m, 0.5) for m in ms], [est_a_uni_MMSE_xform(m, 0.25) for m in ms], [est_a_uni_MMSE_xform(m, 0.125) for m in ms]]
plot_est(ms, est_as_uni_MMSE_xform)
Script de Python para la Fig. 2
Este script extiende el script B de la pregunta. La función est_a_uni_MMSE_xform_fast
puede ser numéricamente inestable.
from scipy import special
def est_a_uni_MMSE_fast(m):
return 1/(np.sqrt(np.pi)*special.i0e(m**2/2))
def est_a_uni_MMSE_xform_fast(m, epsilon):
if epsilon == 0:
return 0
elif epsilon == 1:
return 1/(np.sqrt(np.pi)*special.i0e(m**2/2))
elif epsilon == 2:
return np.sqrt(m**2 + 1)
else:
return (special.gamma(epsilon)*special.eval_laguerre(-epsilon, m**2)/(special.gamma(epsilon/2)*special.eval_laguerre(-epsilon/2, m**2)))**(1/epsilon)
gains_SSE_a_uni_MMSE = [est_gain_SSE_a(est_a_uni_MMSE_fast, a, 10**5) for a in as_]
gains_SSE_a2_uni_MMSE = [est_gain_SSE_a2(est_a_uni_MMSE_fast, a, 10**5) for a in as_]
gains_SSE_complex_uni_MMSE = [est_gain_SSE_complex(est_a_uni_MMSE_fast, a, 10**5) for a in as_]
plot_gains_SSE(as_dB, [gains_SSE_a_uni_MMSE, gains_SSE_a_sub], [gains_SSE_a2_uni_MMSE, gains_SSE_a2_sub], [gains_SSE_complex_uni_MMSE, gains_SSE_complex_sub])
gains_SSE_a_uni_MMSE_xform_0e5 = [est_gain_SSE_a(lambda m: est_a_uni_MMSE_xform_fast(m, 0.5), a, 10**5) for a in as_]
gains_SSE_a2_uni_MMSE_xform_0e5 = [est_gain_SSE_a2(lambda m: est_a_uni_MMSE_xform_fast(m, 0.5), a, 10**5) for a in as_]
gains_SSE_complex_uni_MMSE_xform_0e5 = [est_gain_SSE_complex(lambda m: est_a_uni_MMSE_xform_fast(m, 0.5), a, 10**5) for a in as_]
plot_gains_SSE(as_dB, [gains_SSE_a_uni_MMSE_xform_0e5, gains_SSE_a_sub], [gains_SSE_a2_uni_MMSE_xform_0e5, gains_SSE_a2_sub], [gains_SSE_complex_uni_MMSE_xform_0e5, gains_SSE_complex_sub])
gains_SSE_a_uni_MMSE_xform_0e25 = [est_gain_SSE_a(lambda m: est_a_uni_MMSE_xform_fast(m, 0.25), a, 10**5) for a in as_]
gains_SSE_a2_uni_MMSE_xform_0e25 = [est_gain_SSE_a2(lambda m: est_a_uni_MMSE_xform_fast(m, 0.25), a, 10**5) for a in as_]
gains_SSE_complex_uni_MMSE_xform_0e25 = [est_gain_SSE_complex(lambda m: est_a_uni_MMSE_xform_fast(m, 0.25), a, 10**5) for a in as_]
plot_gains_SSE(as_dB, [gains_SSE_a_uni_MMSE_xform_0e25, gains_SSE_a_sub], [gains_SSE_a2_uni_MMSE_xform_0e25, gains_SSE_a2_sub], [gains_SSE_complex_uni_MMSE_xform_0e25, gains_SSE_complex_sub])
Referencias
Lieve Lauwers, Kurt Barbe, Wendy Van Moer y Rik Pintelon, Analizando Rice, distribuyeron datos de resonancia magnética funcional: un enfoque bayesiano , Meas. Sci. Technol. 21 (2010) 115804 (12pp) DOI: 10.1088 / 0957-0233 / 21/11/115804 .