this is for holding javascript data
Kyle Cranmer added file figures/james-stein/JamesStein.ipynb
almost 9 years ago
Commit id: 0c2ce8fb56b12e73385d734ae4d45695c0a3540b
deletions | additions
diff --git a/figures/james-stein/JamesStein.ipynb b/figures/james-stein/JamesStein.ipynb
new file mode 100644
index 0000000..d01476a
--- /dev/null
+++ b/figures/james-stein/JamesStein.ipynb
...
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# A Quick Demo of the James-Stein Estimator\n",
"\n",
"Kyle Cranmer, June 25, 2015\n",
"\n",
"[![](https://i.creativecommons.org/l/by/4.0/88x31.png)]( https://creativecommons.org/licenses/by/4.0/)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## The Problem\n",
"\n",
"\n",
"Consider a standard multivariate Gaussian distribution for $\\vec x$ in $n$ dimensions centered around $\\vec\\mu$\n",
"\n",
"\\begin{equation}\n",
"f(\\vec{x}|\\vec{\\mu}) = \\prod_{i=1}^{n} \\frac{1}{\\sqrt{2\\pi}} \\exp\\left(-\\frac{(x_i- \\mu_i)^2}{2}\\right)\\;.\n",
"\\end{equation}\n",
"\n",
"\n",
"We want to compare the mean squared error\n",
"\\begin{equation}\n",
"E[||\\bar{\\vec x}-\\vec\\mu||^2])\n",
"\\end{equation}\n",
"\n",
"of the sample mean (an unbiased estimator)\n",
"\\begin{equation}\n",
"\\overline x_i = \\frac{1}{m} \\sum_{j=1}^m x_{ij}\n",
"\\end{equation}\n",
"\n",
"to the James-Stein estimator\n",
"\\begin{equation}\n",
"x_{JS} = \\left( 1 - \\frac{n-2}{||\\bar{x}||^2} \\right) \\bar{x} \n",
"\\end{equation}\n",
"\n",
"\n",
"(where $i$ is the component of the vector and $j$ is an index over the samples).\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false,
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Populating the interactive namespace from numpy and matplotlib\n"
]
}
],
"source": [
"%pylab inline"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false,
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"def jamesSteinEstimator(x):\n",
" return x*(1. - (x.size-2.)/sum(x*x))"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false,
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"def RMS(x,mean):\n",
" return sqrt(sum((x-mean)*(x-mean)))"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false,
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"def doRun(nDim,nSamp=1000):\n",
" mean=zeros(nDim)\n",
" data = zeros(nDim*nSamp).reshape(nDim,nSamp)\n",
" for i in range(nDim):\n",
" mean[i] = 0.5 #set value of the mean's components here \n",
" data[i,:] = random.normal(mean[i],1,nSamp).T\n",
" data=data.T\n",
"\n",
" avRMS_js = 0\n",
" avRMS_mle = 0\n",
" for x in data:\n",
" avRMS_js += RMS(jamesSteinEstimator(x),mean)\n",
" avRMS_mle += RMS(x,mean)\n",
" avRMS_js /= nSamp\n",
" avRMS_mle /= nSamp\n",
" return (avRMS_js, avRMS_mle)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false,
"slideshow": {
"slide_type": "subslide"
}
},
"outputs": [],
"source": [
"nDimToTest = linspace(2,20)\n",
"av_js = zeros(nDimToTest.size)\n",
"av_mle = zeros(nDimToTest.size)\n",
"for i,nDim in enumerate(nDimToTest):\n",
" [av_js[i], av_mle[i]] = doRun(int(nDim))"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false,
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"image/png": [
"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\n",
"TkSuQmCC\n"
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(nDimToTest,av_js,c='b') #James Stein in blue\n",
"plt.plot(nDimToTest,av_mle,c='r') #MLE in red\n",
"plt.ylabel('Mean Squared Error')\n",
"plt.xlabel('Dimensionality')\n",
"plt.legend(('James-Stein', 'MLE'), loc='upper left')\n",
"plt.savefig('james-stein.pdf')"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"celltoolbar": "Slideshow",
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.6"
}
},
"nbformat": 4,
"nbformat_minor": 0
}